Virtual linebuffers for image signal processors
US-9749548-B2 · Aug 29, 2017 · US
US10321077B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10321077-B2 |
| Application number | US-201715598027-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 17, 2017 |
| Priority date | Apr 23, 2015 |
| Publication date | Jun 11, 2019 |
| Grant date | Jun 11, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
An apparatus is described that include a line buffer unit composed of a plurality of a line buffer interface units. Each line buffer interface unit is to handle one or more requests by a respective producer to store a respective line group in a memory and handle one or more requests by a respective consumer to fetch and provide the respective line group from memory. The line buffer unit has programmable storage space whose information establishes line group size so that different line group sizes for different image sizes are storable in memory.
Opening claim text (preview).
The invention claimed is: 1. A device comprising: a plurality of line buffer interface units; and a memory unit configured to store image data partitioned into a plurality of line groups, wherein the device is configured to assign each line buffer interface unit to manage read and write requests for a respective line group of the plurality of line groups, wherein each line buffer interface unit is configured to receive a write request from a producer component, to identify a write location within the memory unit corresponding to the write request, and to store data at the write location within the memory unit according to the write request, wherein each line buffer interface unit is configured to receive a read request from one or more consumer components, to identify a read location within the memory unit corresponding to the read request, and to provide data stored at the read location within the memory unit according to the read request, wherein, upon a line buffer interface unit completing all outstanding read requests from one or more consumers components for a particular line group, the device is configured to reassign the line buffer interface unit to manage read and write requests for a different line group, wherein each line buffer interface unit has a dedicated programmable unit configuration space that is configured to store data representing properties of a line group to which the line buffer interface unit is assigned, and wherein upon a line buffer interface unit being reassigned from a first line group to a second line group, the device is configured to update the data in the programmable unit configuration space of the line buffer interface unit to represent properties of the second line group. 2. The device of claim 1 , wherein the data in the programmable unit configuration space represents a maximum number of consumer components that the line buffer interface unit can service simultaneously, a row width of the line group, or a base linear address in the memory unit of the line group. 3. The device of claim 1 , wherein the device has a programmable global configuration space that is configured to store data representing a total size of an image having image data stored in the memory unit. 4. The device of claim 3 , wherein the programmable global configuration space is configured to store data representing a number of active line buffer interface units. 5. The device of claim 1 , wherein the device is configured to dynamically compute one or more data values in the programmable unit configuration space from one or more data values in a programmable global configuration space of the device. 6. The device of claim 5 , wherein the device is configured to compute a number of full line group rows or a line group base address in the programmable unit configuration space from image size and stencil dimension elements of the programmable global configuration space. 7. The device of claim 1 , wherein each line buffer interface unit has translation circuitry that is configured to convert a pair of values into a linear address within the memory unit. 8. The device of claim 1 , wherein each line buffer interface unit is configured to maintain a pointer to a current or next segment of a line group to be provided on a next read request. 9. A method comprising: assigning, by a device having a plurality of line buffer interface units and a memory unit storing image data partitioned into a plurality of line groups, each line buffer interface unit to manage read and write requests for a respective line group of the plurality of line groups, receiving, by a particular line buffer interface unit of the plurality of line buffer interface units, a write request from a producer component of the device; identify, by the particular line buffer interface unit, a write location within the memory unit corresponding to the write request; storing, by the particular line buffer interface unit, data at the write location within the memory unit according to the write request; receiving, by the particular line buffer interface unit, a read request from one or more consumer components of the device; identifying, by the particular line buffer interface unit, a read location within the memory unit corresponding to the read request; providing, by the particular line buffer interface unit, data stored at the read location within the memory unit according to the read request; receiving, by the device, an indication that a line buffer interface unit has completed all outstanding read requests from one or more consumers components for a particular line group; and in response, reassigning, by the device, the line buffer interface unit to manage read and write requests for a different line group, wherein each line buffer interface unit has a dedicated programmable unit configuration space that is configured to store data representing properties of a line group to which the line buffer interface unit is assigned, and wherein reassigning the line buffer interface unit comprises updating, by the device, the data in the programmable unit configuration space of the line buffer interface unit to represent properties of the different line group. 10. The method of claim 9 , wherein the data in the programmable unit configuration space represents a maximum number of consumer components that the line buffer interface unit can service simultaneously, a row width of the line group, or a base linear address in the memory unit of the line group. 11. The method of claim 9 , wherein the device has a programmable global configuration space that is configured to store data representing a total size of an image having image data stored in the memory unit. 12. The method of claim 11 , wherein the programmable global configuration space is configured to store data representing a number of active line buffer interface units. 13. The method of claim 9 , further comprising dynamically computing, by the device, one or more data values in the programmable unit configuration space from one or more data values in a programmable global configuration space of the device. 14. The method of claim 13 , further comprising computing, by the device, a number of full line group rows or a line group base address in the programmable unit configuration space from image size and stencil dimension elements of the programmable global configuration space. 15. The method of claim 9 , wherein each line buffer interface unit has translation circuitry, and further comprising: converting, by translation circuitry of the particular line buffer interface unit, a pair of values into a linear address within the memory unit. 16. The method of claim 9 , further comprising maintaining, by the particular line buffer interface unit, a pointer to a current or next segment of a line group to be provided on a next read request.
Line sensors · CPC title
Memory management · CPC title
Television signal processing therefor · CPC title
Electricity · mapped topic
Related publications grouped by family.
Answers are generated from the same data shown on this page.