IP Library › Granted Patent US 10,152,320
Granted Patent B2
US 10,152,320 · App. 15/225,638 · Granted Dec 11, 2018

Method of transferring data between external devices and an array processor

Inventors: Martin Vorbach (Lingenfeld, DE); Volker Baumgarte (Munich, DE); Frank May (Munich, DE); Armin Nuckel (Neupotz, DE)
Assignee: Scientia Sol Mentis AG
G06F9/30007G06F3/061G06F3/0608G06F3/0647G06F3/0673G06F3/0683G06F8/457G06F13/102G06F13/385
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,152,320
App. No.
15/225,638
Granted
Dec 11, 2018
Kind
B2
Abstract

A method for coordinating the transfer of data between external memory and an array of data processors using address generators and local memory includes loading a plurality of groups of operands into local memory, processing the plurality of groups of operands on a single processor, and then returning the processed results to the external memory.

Claims (16)

1. A method, comprising:

providing a processing device that includes:

an array of data processors;

a global internal memory for the array of data processors;

a plurality of address generators, wherein a data processor of the array of data processors is adapted to receive operands from the internal memory and to provide outputs to said internal memory according to addresses provided by corresponding ones of said plurality of address generators; and

a function control unit operatively connected to the array of data processors and to the address generators;

the function control unit receiving instructions from an external source;

responsive to a first set of said instructions, causing the internal memory to receive from an external memory at least two different groups of operands;

responsive to a second set of said instructions, causing the at least two different groups of operands to be forwarded to respective ones of said data processors according to the addresses of the corresponding ones of said plurality of address generators, thereby causing results of processing of the at least two groups of operands to be stored in a result data block in said internal memory; and

responsive to a third set of said instructions, causing the result data block to be transmitted from the internal memory to said external memory.

2. The method according to claim 1 further comprising generating said instructions with a compiler.

3. The method according to claim 2 wherein said compiler comprises a high level language compiler.

4. The method according to claim 3 wherein said high level language compiler is C.

5. The method of claim 1 wherein the at least two different groups of operands are received from the external source according to a program loop in said instructions.

6. The method of claim 1 wherein the loading of the at least two groups of operands from external memory, the causing processing of said at least two groups of operands, and the causing of transmission of the result data block to said external memory comprise at least three different groups of one or more instructions.

7. The method of claim 1 wherein the addresses of operands in internal memory are linear.

Assignments (2)
CHANGE OF NAME Recorded Mar 1, 2019
From: SCIENTIA SOL MENTIS AG
To: PACT XPP SCHWEIZ AG
Reel/Frame 048477/0650 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2018
From: PACT XPP TECHNOLOGIES AG
To: SCIENTIA SOL MENTIS AG
Reel/Frame 045532/0745 →
Priority Claims (34)
DE 101 10 530 · Mar 5, 2001 · national
DE 101 11 014 · Mar 7, 2001 · national
WO PCT/EP01/06703 · Jun 13, 2001 · international
DE 101 29 237 · Jun 20, 2001 · national
EP 1115021 · Jun 20, 2001 · regional
DE 101 35 210 · Jul 24, 2001 · national
DE 101 35 211 · Jul 24, 2001 · national
WO PCT/EP01/08534 · Jul 24, 2001 · international
DE 101 39/ 170 · Aug 16, 2001 · national
DE 101 42 231 · Aug 29, 2001 · national
DE 101 42 894 · Sep 3, 2001 · national
DE 101 42 903 · Sep 3, 2001 · national
DE 101 42 904 · Sep 3, 2001 · national
DE 101 44 732 · Sep 11, 2001 · national
DE 101 44 733 · Sep 11, 2001 · national
DE 101 45 792 · Sep 17, 2001 · national
DE 101 45 795 · Sep 17, 2001 · national
DE 101 46 132 · Sep 19, 2001 · national
WO PCT/EP01/11299 · Sep 30, 2001 · international
WO PCT/EP01/11593 · Oct 8, 2001 · international
DE 101 54 259 · Nov 5, 2001 · national
DE 101 54 260 · Nov 5, 2001 · national
EP 1129923 · Dec 14, 2001 · regional
EP 2001331 · Jan 18, 2002 · regional
DE 102 02 044 · Jan 19, 2002 · national
DE 102 02 175 · Jan 20, 2002 · national
DE 102 08 435 · Feb 7, 2002 · national
DE 102 06 653 · Feb 15, 2002 · national
DE 102 06 856 · Feb 18, 2002 · national
DE 102 06 857 · Feb 18, 2002 · national
DE 102 07 224 · Feb 21, 2002 · national
DE 102 07 225 · Feb 21, 2002 · national
DE 102 07 226 · Feb 21, 2002 · national
DE 102 08 434 · Feb 27, 2002 · national
Continuity (12)
Continuation 14728422 · Jun 2, 2015
Division 14500618 · Sep 29, 2014
Continuation 14318211 · Jun 27, 2014
Continuation In Part 14231358 · Mar 31, 2014
Continuation 13043102 · Mar 8, 2011
Division 12944068 · Nov 11, 2010
Division 12496012 · Jul 1, 2009
Continuation 10471061
Continuation In Part 12389116 · Feb 19, 2009
Continuation 10469910
Provisional Application 60317876 · Sep 7, 2001
Related Publication 20160357555A1 · Dec 8, 2016