IP Library Granted Patent US 8,078,830
Granted Patent B2
US 8,078,830 · App. 12/302,171 · Granted Dec 13, 2011

Processor array accessing data in memory array coupled to output processor with feedback path to input sequencer for storing data in different pattern

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 8,078,830
App. No.
12/302,171
Granted
Dec 13, 2011
Kind
B2
Abstract

An integrated circuit arrangement has a processor array ( 2 ) with processor elements ( 4 ) and a memory ( 6 ) with memory elements ( 8 ) arranged in rows ( 32 ) and columns ( 30 ). The columns ( 30 ) of memory elements ( 8 ) are addressed by respective processor elements ( 4 ). An input sequencer ( 14 ) and feedback path ( 24 ) cooperate to reorder input data in the memory ( 6 ) to carry out both block and line based processing.

Claims (41)

1. An integrated circuit arrangement, comprising:

a processor array with a plurality of processor elements for processing data in parallel;

a memory array including a plurality of memory elements accessible in parallel by the plurality of processor elements;

a data input for accepting data;

an input sequencer arranged to accept input data and to store data in the memory elements of the memory array;

an output processor for taking data from the memory array; and

a controller for controlling the processor array;

the integrated circuit arrangement further comprising a feedback path from the output processor to the input sequencer, the input sequencer being arranged to accept input data from the data input and from the feedback path and the output processor being arranged to take data from the memory array and to output the data from the memory array on an output of the output processor and to send the data from the memory array back to the input sequencer along the feedback path.

2. An integrated circuit arrangement according to claim 1 wherein the memory array includes an array of columns, each of the columns including a column of a plurality of the memory elements, each of the columns being addressable by a respective one or more of the processor elements.

3. An integrated circuit arrangement according to claim 2 wherein the controller is arranged to cause the processor array to operate selectably in one of a plurality of modes, in which the input data is stored in the memory elements in different arrangements depending on the selected mode.

4. An integrated circuit arrangement according to claim 3 wherein one of the modes is a column processing mode in which the input sequencer is arranged to accept a sequence of data items as input data and to store the data items in the memory elements starting with the one of the columns of memory elements, followed by subsequent columns of memory elements in turn.

5. An integrated circuit arrangement according to claim 3 , wherein one of the modes is a row processing mode in which the input sequencer is arranged to accept a sequence of data items as input data and to output the data items in the memory elements in rows starting with one of the rows of memory elements followed by subsequent rows of memory elements in turn.

6. An integrated circuit arrangement according to claim 3 wherein one of the modes is a reordering mode in which the input sequencer is arranged to accept a sequence of data items as input data and to output the data items to the memory elements in a reordered sequence in the memory elements other than in order of the rows or columns of memory elements.

7. An integrated circuit arrangement according to claim 6 wherein in the reordering mode the controller is arranged to cause data items to flow around the path from the input sequencer, memory elements, output processor and feedback path back to the input sequencer to store the data items in the memory elements in the reordered sequence.

8. An integrated circuit arrangement processor array according to claim 1 wherein the integrated circuit arrangement is arranged to store input data in the memory elements in a first pattern, to carry out processing on the data in that pattern, and then to output data from the memory elements through feedback path and input sequencer to rearrange the data in a different pattern in the memory elements and then to carry out further processing on the data in that different pattern.

9. A method of operating an integrated circuit arrangement having an input sequencer, a processor array with plurality of processor elements for processing data in parallel, a memory array having a plurality of memory elements accessible in parallel by the plurality of processor elements; an output processor for taking data from the memory array and a feedback path from the output processor to the input sequencer, the method comprising:

accepting input data in the input sequencer;

storing the input data in the memory elements in a first pattern; and

outputting the data from the memory elements and sending the output data back through the output processor, the feedback path and the input sequencer and back into the memory elements in a different second pattern.

10. A method according to claim 9 wherein the memory elements are arranged in rows and columns, each of the columns being addressable by a respective one or more of the processor elements, the method further comprising:

causing the integrated circuit arrangement to operate selectably in one of a plurality of modes, wherein the input sequencer is arranged to store input data in the memory elements in different arrangements depending on the selected mode.

11. A method according to claim 10 wherein one of the modes is a column processing mode comprising:

accepting a sequence of data items as input data; and

storing the data items in the memory elements starting with the one of the columns of memory elements, followed by subsequent columns of memory elements in turn.

12. A method according to claim 10 , wherein one of the modes is a row processing mode comprising:

accepting a sequence of data items as input data; and

storing the data items in the memory elements in rows starting with one of the rows of memory elements followed by subsequent rows of memory elements in turn.

13. A method according to claim 10 wherein one of the modes is a reordering mode comprising:

accepting a sequence of data items as input data; and

storing the data items to the memory array in a reordered sequence in the memory elements.

14. A method according to claim 13 comprising, in the reordering mode, storing the data items to the memory array, outputting the data items from the memory array and sending the data items back through the feedback path to store the data items in the memory elements in the reordered sequence.

15. A non-transitory computer program product including computer program code means arranged to cause a processor array with a plurality of processor elements for processing data in parallel;

a memory array including a plurality of memory elements accessible in parallel by the plurality of processor elements;

a data input for accepting data;

an input sequencer arranged to accept input data and to store data in the memory elements of the memory array;

an output processor for taking data from the memory array; and

a controller for controlling the processor array;

the integrated circuit arrangement further comprising a feedback path from the output processor to the input sequencer, the input sequencer being arranged to accept input data from the data input and from the feedback path and the output processor being arranged to take data from the memory array and to output the data from the memory array on an output of the output processor and to send the data from the memory array back to the input sequencer along the feedback path to execute the method comprising:

accepting input data in the input sequencer;

storing the input data in the memory elements in a first pattern; and

outputting the data from the memory elements and sending the output data back through the output processor, the feedback path and the input sequencer and back into the memory elements in a different second pattern.

Assignments (17)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051030/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042985 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051029/0387 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12298143 PREVIOUSLY RECORDED ON REEL 042762 FRAME 0145. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Oct 22, 2019
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 051145/0184 →
RELEASE OF SECURITY INTEREST Recorded Sep 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 050745/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042985/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12681366 PREVIOUSLY RECORDED ON REEL 039361 FRAME 0212. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded May 9, 2017
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042762/0145 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2016
From: BROADCOM CORPORATION
To: NXP B.V.
Reel/Frame 039901/0237 →
PATENT RELEASE Recorded Aug 17, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 039707/0471 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Aug 10, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 039646/0092 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 12092129 PREVIOUSLY RECORDED ON REEL 038017 FRAME 0058. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY AGREEMENT SUPPLEMENT. Recorded Jul 14, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 039361/0212 →
SECURITY AGREEMENT SUPPLEMENT Recorded Mar 7, 2016
From: NXP B.V.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 038017/0058 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2014
From: NXP B.V.
To: BROADCOM CORPORATION
Reel/Frame 033579/0267 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 24, 2008
From: KLEIHORST, RICHARD P.; ABBO, ANTENEH A.; CHOUDHARY, VISHAL SUHAS
To: NXP, B.V.
Reel/Frame 021882/0797 →