IP Library Granted Patent US 7,363,472
Granted Patent B2
US 7,363,472 · App. 09/972,797 · Granted Apr 22, 2008

Memory access consolidation for SIMD processing elements having access indicators

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 7,363,472
App. No.
09/972,797
Granted
Apr 22, 2008
Kind
B2
Abstract

A data processing apparatus includes a SIMD (Single Instruction Multiple Data) array ( 10 ) of processing elements. The processing elements are operably divided into a plurality of processing blocks, the processing blocks being operable to process respective groups of data items.

Claims (37)

1. A method of retrieving a data item from a memory unit in a data processing apparatus comprising a SIMD (single instruction multiple data) array of processing elements, wherein the processing elements are operably divided into a plurality of processing blocks, the processing blocks being operable to process respective groups of data items and wherein the data processing apparatus includes said memory unit in which data items are stored at addresses therein, and to which the plurality of processing elements have access, the method comprising:

for each processing element in the array which requires access to the memory unit, setting an access indicator to indicate that the processing element concerned requires access to the memory unit, and storing a target address of the memory unit to which such access is required;

selecting one of the processing elements having the access indicator set, and retrieving the stored target address from that selected processing element;

transmitting the retrieved target address and transaction identification information to the processing elements in the array;

for each processing element having the access indicator set, comparing the transmitted target address with the stored target address, and it the stored and transmitted target addresses are equivalent, clearing the access indicator and storing the transaction identification information;

retrieving at least one data item stored at the transmitted target address in the memory unit;

transmitting the at least one retrieved data item and associated transaction identification information to the processing elements in the array; and

for each processing element having stored transaction identification information, comparing the stored transaction identification information with the transmitted transaction identification information, and if the stored transaction information is equivalent to the transmitted transaction information, receiving the or each retrieved data item.

2. A method of writing data items to a memory unit in a data processing apparatus comprising a SIMD (single instruction multiple data) array of processing elements, wherein the processing elements are operably divided into a plurality of processing blocks, the processing blocks being operable to process respective groups of data items, and wherein the data processing apparatus includes the memory unit in which data items are stored at addresses therein, and to which the plurality of processing elements have access the method comprising:

for each processing element in the array which requires access to the memory unit, setting an access indicator to indicate that the processing element concerned requires access to the memory unit, and storing a target address of the memory unit to which such access is required;

selecting one of the processing elements having the access indicator set, and retrieving the stored target address from that selected processing element;

transmitting the retrieved target address and transaction identification information to all the processing elements in the array;

for each processing element having the access indicator set, comparing the transmitted target address with the stored target address, and if the stored and transmitted target addresses are equivalent, clearing the access indicator and storing the transaction identification information;

transmitting transaction identification information to the processing elements in the array;

for each processing element having stored transaction identification information, comparing the stored transaction identification information with the transmitted transaction identification information, and if the stored transaction information is equivalent to the transmitted transaction information, transmitting at least one data item to be stored in the memory unit at the target address; and

storing the at least one transmitted data item at the target address in the memory unit.

3. A method as claimed in claim 2 , wherein processing elements store data items at respective regions of the target memory address.

4. In a data processing apparatus, a method of retrieving a data item from a memory unit in which data items are stored at addresses therein, said data processing apparatus further comprising an array of a plurality of processing elements which have access to the memory unit, the method comprising:

for each processing element in the array which requires access to the memory unit, setting an access indicator to indicate that the processing element concerned requires access to the memory unit, and storing a target address of the memory unit to which such access is required;

selecting one of the processing elements having the access indicator set, and retrieving the stored target address from that selected processing element;

transmitting the retrieved target address and transaction identification information to the processing elements in the array;

for each processing element having the access indicator set, comparing the transmitted target address with the stored target address, and if the stored and transmitted target addresses are equivalent, clearing the access indicator and storing the transaction, identification information;

retrieving at least one data item stored at the transmitted target address in the memory unit;

transmitting the at least one retrieved data item and associated transaction identification information to the processing elements in the array; and

for each processing element having stored transaction identification information, comparing the stored transaction identification information with the transmitted transaction identification information, and if the stored transaction information is equivalent to the transmitted transaction information, receiving the at least one retrieved data item.

5. A method as claimed in claim 4 , wherein retrieved data is returned in the order in which the transaction identification information is produced.

6. A method as claimed in claim 4 , wherein the retrieved data is returned in the order in which it is retrieved from the memory.

7. A method of writing data items to a memory unit in a data processing apparatus including the memory unit in which data items are stored at addresses therein, and an array of a plurality of processing elements which have access to the memory unit, the method comprising:

for each processing element in the array which requires access to the memory unit, setting an access indicator to indicate that the processing element concerned requires access to the memory unit, and storing a target address of the memory unit to which such access is required;

selecting one of the processing elements having the access indicator set, and retrieving the stored target address from that selected processing element;

transmitting the retrieved target address and transaction identification information to all the processing elements in the array;

for each processing element having the access indicator set, comparing the transmitted target address with the stored target address, and if the stored and transmitted target addresses are equivalent, clearing the access indicator and storing the transaction identification information;

transmitting transaction identification information to the processing elements in the array;

for each processing element having stored transaction identification information, comparing the stored transaction identification information with the transmitted transaction identification information, and if the stored transaction information is equivalent to the transmitted transaction information, transmitting at least one data item to be stored in the memory unit at the target address; and

storing the at least one transmitted data item at the, target address in the memory unit.

8. A method as claimed in claim 7 , wherein processing elements store data items at respective regions of the target memory address.

9. A data processing apparatus comprising a SIMD (single instruction multiple data) array of processing elements, data storage means for storing data items for access by the processing elements, and control means for controlling access to the storage means in accordance with a method as claimed in claim 8 .

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2010
From: CLEARSPEED TECHNOLOGY LTD
To: RAMBUS INC.
Reel/Frame 024964/0861 →
CHANGE OF ADDRESS Recorded Jun 18, 2010
From: CLEARSPEED TECHNOLOGY LIMITED
To: CLEARSPEED TECHNOLOGY LIMITED
Reel/Frame 024555/0708 →