US2005160406A1PendingUtilityA1

Programmable digital image processor

Priority: Oct 7, 1999Filed: Jan 12, 2005Published: Jul 21, 2005
Est. expiryOct 7, 2019(expired)· nominal 20-yr term from priority
H04N 25/00H04N 19/61G06T 1/60H04N 5/907H04N 19/42H04N 9/8042H04N 5/85H04N 5/781
45
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A programmable image transform system has a programmable addressing and arithmetic blocks. In the programmable addressing block, an input address generator has an input addressing microsequencer and an input addressing memory that stores an input addressing procedure. The microsequencer executes the input addressing procedure to generate addresses from which to request image data. In the programmable arithmetic block, an arithmetic block memory stores an image processing procedure and a microsequencer executes the image processing procedure using the image data to generate transformed image data.

Claims

exact text as granted — not AI-modified
1 - 46 . (canceled)  
   
   
       47 . An image processor for processing image data in a system, said system having a microprocessor, said image processor comprising: 
 an arithmetic processing block including a buffer array and an N number of processing elements, said buffer array having an M number of rows and an N+1 number of columns, each of said N+1 number of columns defining each of an N+1 number of memory banks, wherein each of said N number of processing elements is associated with a corresponding one of said N+1 number of memory banks, and wherein (N+1)th memory bank of said N+1 number of memory banks provides boundary data for Nth processing element of said N number of processing elements;    a controller configured to control said N number of processing elements, said controller being in communication with said microprocessor of said system.    
   
   
       48 . The image processor of  claim 47 , wherein (N+1)th memory bank of said N+1 number of memory banks provides said boundary data for said Nth processing element of said N number of processing elements while convolutional algorithm is being applied to said image data.  
   
   
       49 . The image processor of  claim 47 , wherein said controller reads said image data in one of said N+1 number of memory banks, performs computation on said image data, and stores said images data in a different one of said N+1 number of memory banks.  
   
   
       50 . The image processor of  claim 47 , wherein said controller is a SIMD controller and simultaneously controls said N number of processing elements.  
   
   
       51 . The image processor of  claim 47  further comprising a programmable input addresser for transferring said image data from a data source to said arithmetic processing block by providing a source address onto a source address path, said source address identifying said data source.  
   
   
       52 . The image processor of  claim 47  further comprising a programmable output addresser for transferring said image data from said arithmetic processing block to a memory by providing a write address onto a write path, said write address identifying a write address in said memory for storage of said image data.  
   
   
       53 . The image processor of  claim 47  further comprising a Huffman encoder for encoding said image data received from said controller to generate an encoded image data, and a Huffman decoder for decoding said encoded image data.  
   
   
       54 . The image processor of  claim 53  further comprising one or more Huffman control registers for use by said Huffman encoder and said Huffman decoder.  
   
   
       55 . An image processor for processing image data in a system, said system having a microprocessor, said image processor comprising: 
 an arithmetic processing means for processing said image data, said arithmetic processing means including a buffer array and an N number of processing elements means for controlling said buffer array, said buffer array having an M number of rows and an N+1 number of columns, each of said N+1 number of columns defining each of an N+1 number of memory banks, wherein each of said N number of processing elements means is associated with a corresponding one of said N+1 number of memory banks, and wherein (N+1)th memory bank of said N+1 number of memory banks provides boundary data for Nth processing element means of said N number of processing elements means;    a controller means for controlling said N number of processing elements, said controller being in communication with said microprocessor of said system.    
   
   
       56 . The image processor of  claim 55 , wherein (N+1)th memory bank of said N+1 number of memory banks provides said boundary data for said Nth processing element means of said N number of processing elements means while convolutional algorithm is being applied to said image data.  
   
   
       57 . The image processor of  claim 55 , wherein said controller means reads said image data in one of said N+1 number of memory banks, performs computation on said image data, and stores said images data in a different one of said N+1 number of memory banks.  
   
   
       58 . The image processor of  claim 55 , wherein said controller means is a SIMD controller and simultaneously controls said N number of processing elements means.  
   
   
       59 . The image processor of  claim 55  further comprising a programmable input addresser means for transferring said image data from a data source to said arithmetic processing means by providing a source address onto a source address path, said source address identifying said data source.  
   
   
       60 . The image processor of  claim 55  further comprising a programmable output addresser means for transferring said image data from said arithmetic processing means to a memory by providing a write address onto a write path, said write address identifying a write address in said memory for storage of said image data.  
   
   
       61 . The image processor of  claim 55  further comprising a Huffman encoder means for encoding said image data received from said controller means to generate an encoded image data, and a Huffman decoder means for decoding said encoded image data.  
   
   
       62 . The image processor of  claim 61  further comprising one or more Huffman control registers for use by said Huffman encoder and said Huffman decoder.  
   
   
       63 . A method for use by an image transform processor for processing image data, the method comprising: 
 receiving the image data, using a programmable arithmetic processor, from a data source over a data path    processing the image data, using the programmable arithmetic processor, wherein the programmable arithmetic processor comprises a first set of local buffers and a second set of local buffers;    using each buffer in the first set of local buffers alternately for fetching input image data;    using each buffer in the second set of local buffers alternately for storing output image data; and    controlling transfer of the image data, using a programmable input addresser, from the data source to the programmable arithmetic processor by providing a source address onto a source address path, wherein the source address identifies the data source.    
   
   
       64 . The method of  claim 63  further comprising: 
 controlling transfer of the image data to the programmable arithmetic processor by providing a storage address to the programmable arithmetic processor, wherein the storage address identifies a location within the programmable arithmetic processor for storage of the image data.    
   
   
       65 . The method of  claim 63 , wherein the data source being a frame capture processor, and the source address identifying the frame capture processor.  
   
   
       66 . The method of  claim 63 , wherein the data source being a memory, the source address being a memory address identifying a location of the image data within the memory.  
   
   
       67 . The method of  claim 63 , wherein the data source being a memory, the source address path being a read address bus coupled between the programmable input addresser and the memory, the source address being a memory address identifying a location of the image data within the memory.  
   
   
       68 . The method of  claim 63  further comprising: 
 controlling transfer of the image data, using a programmable output addresser, from the programmable arithmetic processor to a memory by providing a write address onto a write path, the write address identifying a write address in the memory for storage of the image data.    
   
   
       69 . The method of  claim 68 , wherein the write path is a write address bus electrically connected to the programmable output addresser and the memory.  
   
   
       70 . The method of  claim 68 , wherein the programmable output addresser further controlling transfer of the image data by providing a retrieval address to the programmable arithmetic processor, the retrieval address identifying a location within the programmable arithmetic processor for retrieval of the image data.  
   
   
       71 . The method of  claim 70 , wherein the retrieval location within the programmable arithmetic processor is a buffer.  
   
   
       72 . The method of  claim 70 , wherein the retrieval location within the programmable arithmetic processor is at least one buffer of a plurality of buffers.  
   
   
       73 . The method of  claim 63  further comprising: 
 controlling transfer of the image data, using a programmable output addresser, from the programmable arithmetic processor to a memory by: 
 (i) providing a write address onto a write address bus coupled between the programmable output addresser and the memory, the write address identifying a write address in the memory for storage of the image data, and  
 (ii) providing a retrieval address to the programmable arithmetic processor, the retrieval address identifying a local buffer within the programmable arithmetic processor for retrieval of the image data.

Join the waitlist — get patent alerts

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

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