Computing architecture with concurrent programmable data co-processor

US9858220B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9858220-B2
Application numberUS-201514660589-A
CountryUS
Kind codeB2
Filing dateMar 17, 2015
Priority dateMar 17, 2014
Publication dateJan 2, 2018
Grant dateJan 2, 2018

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 coprocessor (PL) is disclosed. The PL includes a memory router, at least one collection block that is configured to transfer data to/from the memory router, each collection block includes a collection router that is configured to i) transfer data to/from the memory router, ii) transfer data to/from at least one collection router of a neighboring collection block, and iii) transfer data to/from blocks within the collection block, and at least one programmable operator that is configured to i) transfer data to/from the collection router, and ii) perform a programmable operation on data received from the collection router.

First claim

Opening claim text (preview).

The invention claimed is: 1. A coprocessor (PL) unit, comprising: a memory router configured to i) transfer data to/from an external memory device, the transfer of data being initiated by an external processing system (PS) and ii) distribute the data to a plurality of blocks within the PL unit; and at least one collection block configured to transfer data to/from the memory router, each collection block including a collection router configured to i) transfer data to/from the memory router, ii) transfer data to/from at least one collection router of a neighboring collection block, and iii) transfer data to/from blocks within the collection block, at least one programmable operator configured to i) transfer data to/from the collection router, and ii) perform a programmable operation on data received from the collection router, the PL unit configured to perform programmable operations on data transferred from the external memory and provide the operated-on data to the external memory with substantially zero overhead to the PS. 2. The PL unit of claim 1 , the at least one collection block further comprising: at least one multiply-accumulator (MAC) block configured to i) transfer data to/from the collection router, ii) transfer data to/from the at least one programmable operator, and iii) perform multiply and accumulate operations on data received from the collection router and/or the at least one programmable operator. 3. The PL unit of claim 1 , the programmable operation performed by the programmable operator includes max-pooling operations. 4. The PL unit of claim 1 , the programmable operation performed by the programmable operator includes pixel-wise subtraction operations. 5. The PL unit of claim 1 , the programmable operation performed by the programmable operator includes pixel-wise addition operations. 6. The PL unit of claim 1 , the programmable operation performed by the programmable operator includes pixel-wise multiplication operations. 7. The PL unit of claim 1 , the programmable operation performed by the programmable operator includes pixel-wise division operations. 8. The PL unit of claim 1 , the programmable operation performed by the programmable operator includes non-linear operations. 9. The PL unit of claim 1 , the programmable operation performed by the programmable operator includes MAC operations. 10. The PL unit of claim 1 , the programmable operation performed by the programmable operator includes non-linear operations. 11. The PL unit of claim 1 , the at least one collection unit is implemented based on field programmable gate array technology. 12. The PL unit of claim 1 , the at least one collection unit is implemented based on field programmable gate array (FPGA) technology. 13. The PL unit of claim 1 , the at least one collection unit is implemented based on application specific integrated circuit (ASIC) technology. 14. The PL unit of claim 1 , the PL unit includes a plurality of collection units. 15. The PL unit of claim 1 , the PL unit includes at least 50 collections units. 16. The PL unit of claim 1 , the PL unit includes at least 5 collections units. 17. The PL unit of claim 1 , the PL unit includes at least 5 collections units. 18. The PL unit of claim 2 , the collection router is further configured to transfer data to/from the at least one MAC. 19. The PL unit of claim 10 , the non-linear operations include applying a sigmoid function to a series. 20. The PL unit of claim 18 , the at least one programmable operator further configured to perform a programmable operation on data received from the at least one MAC.

Assignees

Inventors

Classifications

  • using electronic means · CPC title

  • Storage comprising a plurality of storage devices · CPC title

  • Cross-Sectional Technologies · mapped topic

  • Multiprogramming arrangements · CPC title

  • G06F13/28Primary

    using burst mode transfer, e.g. direct memory access {DMA}, cycle steal (G06F13/32 takes precedence) · 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 US9858220B2 cover?
A coprocessor (PL) is disclosed. The PL includes a memory router, at least one collection block that is configured to transfer data to/from the memory router, each collection block includes a collection router that is configured to i) transfer data to/from the memory router, ii) transfer data to/from at least one collection router of a neighboring collection block, and iii) transfer data to/fro…
Who is the assignee on this patent?
Purdue Research Foundation
What technology area does this patent fall under?
Primary CPC classification G06F13/28. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 02 2018 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).