SIMD/MIMD processing on a reconfigurable array
First Claim
Patent Images
1. An apparatus for programming an M×
- N array of reconfigurable processor cells, each cell being operative according to a context instruction, comprising;
an execution mode signal generator, connected to each cell in the array and having an execution mode signal for controlling an execution mode of each cell; and
an enable register connected to the array and providing an enable signal to each cell in the array for controlling delivery of a next context instruction to each enabled cell based on the execution mode.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method for programming an M×N array of cells. Each cell is reconfigurable to execute a function according to a context instruction. The context instruction defines an operation of the array. An enable register includes a row enable register and a column enable register, corresponding to the M rows and N columns. Each cell is individually and independently enabled for receiving a next context instruction, according to an enable signal provided by the enable register. Non-enabled cells execute a present context. Enabled cells receive and execute an updated context. In this way, the array of cells can be configured to execute any number of independent functions for the operation.
97 Citations
15 Claims
-
1. An apparatus for programming an M×
- N array of reconfigurable processor cells, each cell being operative according to a context instruction, comprising;
an execution mode signal generator, connected to each cell in the array and having an execution mode signal for controlling an execution mode of each cell; and
an enable register connected to the array and providing an enable signal to each cell in the array for controlling delivery of a next context instruction to each enabled cell based on the execution mode. - View Dependent Claims (2, 3, 4, 5, 6)
- N array of reconfigurable processor cells, each cell being operative according to a context instruction, comprising;
-
7. A SIMD/MIMD system for processing data, comprising:
-
an M row ×
N column array of independently enabled processing cells, wherein each cell includes a context register for storing a context instruction which controls an operation unit of the cell;
an enable register having a row enable register for providing a row enable signal to each row in the array, and a column enable register for providing a column enable signal to each column in the array;
an execution mode generator for generating an execution mode signal for controlling an execution mode of the array; and
a control circuit connected to each processing cell, each control circuit having inputs for receiving the row enable signal, the column enable signal, and the execution mode signal, and including logic that outputs a first control signal for controlling input of the data to the operation unit of the cell, and a second control signal for controlling input of the context instruction to the context register of the cell. - View Dependent Claims (8)
-
-
9. A method, comprising:
-
enabling a sub-unit of cells for a new context instruction in an M×
N array of cells, wherein each non-enabled cell maintains its present context, instruction; and
providing the new context instruction to each cell in the sub-unit. - View Dependent Claims (10)
-
-
11. A method of programming a operations context for a M×
- N array of cells, comprising;
selecting an execution mode for each cell in the array, wherein the execution mode includes a MIMD execution mode and a SIMD execution mode;
executing, by each cell having the MIMD execution mode, a present context; and
executing, by each cell having the SIMD execution mode, an updated context. - View Dependent Claims (13, 14, 15)
- N array of cells, comprising;
-
12. A dynamically reconfigurable processing cell for an M×
- N array of cells, comprising;
a clock signal input for receiving a global clock signal;
at least one functional unit configured to execute an operation;
a context register, connected to each functional unit, configured to output a context instruction that controls each functional unit;
a register file for storing a result from said at least one functional unit;
a first control input connected to the register file for receiving a first enable signal that controls latching of the result from said at least one functional unit by the register file; and
a second control input connected to the context register for receiving a second enable signal that controls latching of a next context instruction by the context register.
- N array of cells, comprising;
Specification