Image processor with high throughput internal communication protocol

US10872393B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10872393-B2
Application numberUS-201715595242-A
CountryUS
Kind codeB2
Filing dateMay 15, 2017
Priority dateMay 15, 2017
Publication dateDec 22, 2020
Grant dateDec 22, 2020

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.

A processor is described. The processor includes a network. A plurality of processing cores are coupled to the network. The processor includes a transmitter circuit coupled to the network. The transmitter circuit is to transmit output data generated by one of the processing cores into the network. The transmitter circuit includes control logic circuitry to cause the transmitter circuit to send a request for transmission of a second packet of output data prior to completion of the transmitter circuit's transmission of an earlier first packet of output data.

First claim

Opening claim text (preview).

The invention claimed is: 1. A processor, comprising: a network implementing a credit counter protocol that requires each sender to receive an acknowledgement from a receiver for a data packet to be transmitted before the sender sends data units belonging to the data packet; one or more processing cores coupled to the network; and a transmitter circuit coupling a first processing core of the one or more processing cores to the network, the transmitter circuit being configured to transmit data units output by the first processing core into the network, the transmitter circuit comprising control logic circuitry that is configured to cause the transmitter circuit to: initiate transmitting a first data packet to a first receiver of the processor, provide a request for a different second data packet to be transmitted to a different second receiver of the processor before a last data unit of the first data packet has been transmitted to the first receiver, receive a pre-issued acknowledgement for the different second data packet to be transmitted before the last data unit of the first data packet has been transmitted to the first receiver, increment a different second receiver-specific credit counter for the second receiver in response to receiving the pre-issued acknowledgement for the different second data packet to be transmitted, receive an indication that the last data unit of the first data packet has been consumed by the first receiver, increment a first receiver-specific credit counter in response to receiving the indication that the last data unit belonging to the first data packet has been consumed by the first receiver, and send a first data unit belonging to the different second data packet to the different second receiver using credits of the second receiver-specific credit counter incremented due to receiving the pre-issued acknowledgement for the different second data packet to be transmitted. 2. The processor of claim 1 , wherein the control logic circuitry comprises a plurality of credit counters, and wherein the control logic circuitry is configured to reassign each credit counter to a different respective receiver after a respective data packet is transmitted. 3. The processor of claim 1 , wherein the second receiver of the second data packet is a different component of the processor than the first receiver of the first data packet. 4. The processor of claim 1 , wherein the processor further comprises a line buffer, and wherein the first receiver of the first data packet is the line buffer. 5. The processor of claim 1 , wherein receiving the pre-issued transaction acknowledgement for the second data packet comprises receiving the pre-issued acknowledgement for the second data packet before sending any data units of the first data packet. 6. The processor of claim 1 , wherein the control logic circuitry is configured to increment the credits of the second receiver-specific credit counter due to receiving the pre-issued acknowledgment whenever the first receiver of the processor is a different component than the second receiver of the processor. 7. The processor of claim 1 , wherein the control logic circuitry is configured to send interleaved data units to the first receiver of the processor and the second receiver of the processor using the first receiver-specific credit counter for data units belonging to the first data packet and the second receiver-specific credit counter for data units belonging to the second data packet respectively. 8. A method performed by a processor having one or more processing cores and a network implementing a credit counter protocol that requires each sender to receive an acknowledgement from a receiver for a data packet to be transmitted before the sender sends data units belonging to the data packet, the method comprising: processing, by a first processing core of the one or more processing cores, program code to generate output data to be sent in a first data packet and a different second data packet; initiating, by a transmitter circuit coupling the first processing core to the network, transmitting the first data packet to a first receiver of the processor; providing, by the transmitter circuit, a request for the different second data packet to be transmitted to a different second receiver of the processor before a last data unit of the first data packet has been transmitted to the first receiver; receiving, by the transmitter circuit, a pre-issued acknowledgement for the different second data packet to be transmitted before the last data unit of the first data packet has been transmitted to the first receiver; incrementing a different second receiver-specific credit counter for the second receiver in response to receiving the pre-issued acknowledgement for the different second data packet to be transmitted; receiving, by the transmitter circuit, an indication that the last data unit of the first data packet has been consumed by the first receiver; incrementing a first receiver-specific credit counter in response to receiving the indication that the last data unit belonging to the first data packet has been consumed by the first receiver; and sending a first data unit belonging to the second data packet to the different second receiver using credits of the second receiver-specific credit counter incremented due to receiving the pre-issued acknowledgement for the second data packet to be transmitted. 9. The method of claim 8 , wherein the transmitter circuit comprises a plurality of credit counters, and further comprising reassigning each credit counter to a different respective receiver after a respective data packet is transmitted. 10. The method of claim 8 , wherein the second receiver of the processor is a different component of the processor than the first receiver of the processor. 11. The method of claim 8 , wherein the processor further comprises a line buffer, and wherein the first receiver is the line buffer. 12. The method of claim 8 , wherein receiving the pre-issued acknowledgement for the second data packet to be transmitted comprises receiving the pre-issued acknowledgement for the second data packet to be transmitted before sending any data units of the first data packet to be transmitted. 13. The method of claim 8 , further comprising incrementing the credits of the second receiver-specific credit counter due to receiving the pre-issued acknowledgment whenever the first receiver of the processor is a different component than the second receiver of the processor. 14. The method of claim 8 , further comprising sending interleaved data units to the first receiver and the second receiver using the first receiver-specific credit counter for data units belonging to the first data packet and the second receiver-specific credit counter for data units belonging to the second data packet respectively. 15. A processor, comprising: a network implementing a credit counter protocol that requires each sender to receive an acknowledgement from a receiver for a data packet to be transmitted before the sender sends data units belonging to the data packet; one or more processing cores coupled to the network; and a transmitter circuit coupling a first processing core of the one or more processing cores to the network, the transmitter circuit being configured to transmit data units output by the first processing core into the network, the transmitter circuit comprising means for: initiating transmitting a first data packet to a first receiver of the processor, providing a request for a different second data packet to be transmitted to a different second receiv

Assignees

Inventors

Classifications

  • using an external memory or storage device · CPC title

  • Credit based · CPC title

  • G06T1/20Primary

    Processor architectures; Processor configuration, e.g. pipelining · CPC title

  • Two dimensional arrays, e.g. mesh, torus · CPC title

  • with a network or matrix configuration · CPC title

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 US10872393B2 cover?
A processor is described. The processor includes a network. A plurality of processing cores are coupled to the network. The processor includes a transmitter circuit coupled to the network. The transmitter circuit is to transmit output data generated by one of the processing cores into the network. The transmitter circuit includes control logic circuitry to cause the transmitter circuit to send …
Who is the assignee on this patent?
Google Llc
What technology area does this patent fall under?
Primary CPC classification G06T1/20. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 22 2020 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 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).