US2018005346A1PendingUtilityA1

Core Processes For Block Operations On An Image Processor Having A Two-Dimensional Execution Lane Array and A Two-Dimensional Shift Register

Assignee: GOOGLE INCPriority: Jul 1, 2016Filed: Jul 1, 2016Published: Jan 4, 2018
Est. expiryJul 1, 2036(~9.9 yrs left)· nominal 20-yr term from priority
G06F 9/3001G06T 1/20G06F 9/30032G06F 15/8023G11C 19/28G06V 10/955G06F 1/20G06F 9/30036
51
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method is described that includes, on an image processor having a two dimensional execution lane array and a two dimensional shift register array, doubling a simultaneous shift amount of multiple rows or columns of the two dimensional shift register array with each next iteration. The method also includes executing one or more instructions within respective lanes of the two dimensional execution lane array in between shifts of iterations. Another method is described that includes, on an image processor having a two dimensional execution lane array and a two dimensional shift register array, repeatedly executing one or more instructions within respective lanes of the execution lane array that select between content in different registers of a same array location in between repeated simultaneous shifts of multiple rows or columns of data in the two dimensional shift register array.

Claims

exact text as granted — not AI-modified
1 . A machine readable storage medium containing program code that when processed by an image processor comprising a two dimensional execution lane array and a two dimensional shift register array causes the image processor to perform a method, comprising:
 doubling a simultaneous shift amount of multiple rows or columns of the two dimensional shift register array with each next iteration;   executing one or more instructions within respective lanes of the two dimensional execution lane array in between shifts of iterations.   
     
     
         2 . The machine readable storage medium of  claim 1  wherein the method is a row or column summation operation simultaneously performed on multiple respective rows or columns of an array of data. 
     
     
         3 . The machine readable storage medium of  claim 1  wherein the method is a row or column prefix summation operation simultaneously performed on multiple respective rows or columns of an array of data. 
     
     
         4 . The machine readable storage medium of  claim 1  wherein the method is a find minimum or find maximum operation simultaneously performed on multiple respective rows or columns of an array of data that repeats an index value of a minimum or maximum value across a respective row or column. 
     
     
         5 . The machine readable storage medium of  claim 1  wherein shifting the two dimensional shift register array comprises wrapping content of the two-dimensional register array around opposite edges of the two dimensional shift register array. 
     
     
         6 . The machine readable storage medium of  claim 1  wherein the method is to perform any of:
 a) calculate statistics; 
 b) suppress noise; 
 c) down-sample; 
 d) determine an integral image; 
 e) accelerate a box filter; 
 f) post process a block matching algorithm. 
 
     
     
         7 . A machine readable storage medium containing program code that when processed by an image processor comprising a two dimensional execution lane array and a two dimensional shift register array causes the image processor to perform a method, comprising:
 repeatedly executing one or more instructions within respective lanes of the execution lane array that select between content in different registers of a same array location in between repeated simultaneous shifts of multiple rows or columns of data in the two dimensional shift register array.   
     
     
         8 . The machine readable storage medium of  claim 7  wherein the method further comprises repeatedly doubling the simultaneous shift distance. 
     
     
         9 . The machine readable storage medium of  claim 8  wherein the method is a row or column prefix summation operation simultaneously performed on multiple respective rows or columns of an array of data. 
     
     
         10 . The machine readable storage medium of  claim 8  wherein the method is a find minimum or find maximum operation simultaneously performed on multiple respective rows or columns of an array of data that repeats an index value of a minimum or maximum value across a respective row or column. 
     
     
         11 . The machine readable storage medium of  claim 7  wherein the method is a row or column prefix summation operation simultaneously performed on multiple respective rows or columns of an array of data. 
     
     
         12 . The machine readable storage medium of  claim 7  wherein the method is a find minimum or find maximum operation simultaneously performed on multiple respective rows or columns of an array of data that repeats an index value of a minimum or maximum value across a respective row or column. 
     
     
         13 . The machine readable storage medium of  claim 7  wherein the method is a butterfly operation for a Fast Fourier Transform. 
     
     
         14 . The machine readable storage medium of  claim 7  where the method is to perform any of:
 a) determine an integral image; 
 b) accelerate a box filter; 
 c) calculate statistics; 
 d) post process a block matching algorithm. 
 
     
     
         15 . A machine readable storage medium containing program code that when processed by a processing unit causes a method to be performed, comprising:
 articulating a method in a higher level program code that accesses data with memory read and write instructions having an instruction format that specifies a memory location in x,y coordinates, the higher level program code to be compiled into object code that is executable on an image processor having a two dimensional execution lane array and a two dimensional shift register array, the object code to cause the image processor to:   double a simultaneous shift amount of multiple rows or columns of the two dimensional shift register array with each next iteration;   execute one or more instructions within respective lanes of the two dimensional execution lane array in between shifts of iterations.   
     
     
         16 . The machine readable storage medium of  claim 15  wherein the object code is to implement a row or column summation operation simultaneously performed on multiple respective rows or columns of an array of data. 
     
     
         17 . The machine readable storage medium of  claim 15  wherein the object code is to implement a row or column prefix summation operation simultaneously performed on multiple respective rows or columns of an array of data. 
     
     
         18 . The machine readable storage medium of  claim 15  wherein the object code is to implement a find minimum or find maximum operation simultaneously performed on multiple respective rows or columns of an array of data that repeats an index value of a minimum or maximum value across a respective row or column. 
     
     
         19 . The machine readable storage medium of  claim 15  wherein the object code is to perform any of:
 a) calculate statistics; 
 b) suppress noise; 
 c) down-sample; 
 d) determine an integral image; 
 e) accelerate a box filter; 
 f) post process a block matching algorithm. 
 
     
     
         20 . A machine readable storage medium containing program code that when processed by a processing unit causes a method to be performed, comprising:
 articulating a method in a higher level program code that accesses data with memory read and write instructions having an instruction format that specifies a memory location in x,y coordinates, the higher level program code to be compiled into object code that is executable on an image processor having a two dimensional execution lane array and a two dimensional shift register array, the object code to cause the image processor to:   repeatedly execute one or more instructions within respective lanes of the execution lane array that select between content in different registers of a same array location in between repeated simultaneous shifts of multiple rows or columns of data in the two dimensional shift register array.   
     
     
         21 . The machine readable storage medium of  claim 20  wherein the object code is to repeatedly double the simultaneous shift distance. 
     
     
         22 . The machine readable storage medium of  claim 20  wherein the object code is to implement is a row or column prefix summation operation simultaneously performed on multiple respective rows or columns of an array of data. 
     
     
         23 . The machine readable storage medium of  claim 20  wherein the object code is to implement is a find minimum or find maximum operation simultaneously performed on multiple respective rows or columns of an array of data that repeats an index value of a minimum or maximum value across a respective row or column. 
     
     
         24 . The machine readable storage medium of  claim 20  the object code is to implement is a butterfly operation for a Fast Fourier Transform. 
     
     
         25 . The machine readable storage medium of  claim 20  where the object code is to perform any of:
 a) determine an integral image; 
 b) accelerate a box filter; 
 c) calculate statistics; 
 d) post process a block matching algorithm.

Join the waitlist — get patent alerts

Track US2018005346A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.