Patent ID: 6675285
Filing Date: 2004-01-06
Classification: G06F,G06T

Abstract:
A computation module, comprising:a computation engine operable to perform an operation based on an operation code and to provide a corresponding result, wherein an output of the computation engine is coupled via an intermediate data path to an input of the computation engine; an input controller operably coupled to receive input data and to provide the input data via an input data path to the computation engine; an output controller operably coupled to receive final processed data from the computation engine via an output data path and to provide the final processed data as output data; a plurality of thread controllers, wherein each of the plurality of thread controllers manages at least one corresponding thread of a plurality of threads, wherein the plurality of threads constitutes an application, and wherein each of the plurality of threads includes at least one operation code; an arbitration module operably coupled to the computation engine via an instruction path, wherein the arbitration module utilizes an application specific prioritization scheme to provide operation codes from the plurality of thread controllers to the computation engine via the control path; a first data flow memory dedicated to the input data path for storing the input data in predetermined locations of the first data flow memory, wherein the predetermined locations are based on particular elements of the input data; a second data flow memory dedicated to the output data path for storing the final processed data in predetermined locations of the second data flow memory, wherein the predetermined locations are based on particular elements of the final processed data; and a third data flow memory dedicated to the intermediate data path for storing intermediate data in predetermined locations of the third data flow memory, wherein the predetermined locations of the third data flow memory are based on particular elements of the intermediate data that corresponds to a particular one of the plurality of threads.