Line buffer unit for image processor

US10321077B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10321077-B2
Application numberUS-201715598027-A
CountryUS
Kind codeB2
Filing dateMay 17, 2017
Priority dateApr 23, 2015
Publication dateJun 11, 2019
Grant dateJun 11, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

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.

First claim

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.

Assignees

Inventors

Classifications

  • H04N25/701Primary

    Line sensors · CPC title

  • G06T1/60Primary

    Memory management · CPC title

  • Television signal processing therefor · CPC title

  • H04N5/3692Primary

    Electricity · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10321077B2 cover?
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 pro…
Who is the assignee on this patent?
Google Llc
What technology area does this patent fall under?
Primary CPC classification H04N25/701. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jun 11 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).