Patent ID: 7991909
Filing Date: 2011-08-02
Classification: G06F

Abstract:
1. An apparatus for communicating between a plurality of processing elements and a processor in an integrated circuit, the processor enabled to execute an instruction of a plurality of instructions, comprising: a first lookup table configured to store a first set of information, wherein information in the first set of information represents which processing element of the plurality of processing elements is capable of performing which instruction of the plurality of instructions, the first set of information including associations between each instruction of the plurality of instructions and a respective plurality of the processing elements capable of performing the instruction, the first set of information indicating for each respective plurality of processing elements, fastest to slowest runtimes for performing the associated instruction by the processing elements; a second lookup table configured to store a second set of information wherein information in the second set of information represents which instruction of the plurality of instructions is being serviced by which of the plurality of processing elements; and control logic, coupled to the processor, the first lookup table, and the second lookup table, the control logic configured to communicate data from the processor to the plurality of processing elements based on the first set of information, and communicate data from the plurality of processing elements to the processor based on the second set of information; wherein the control logic is further configured to select, in response to a first instruction of the plurality of instructions, one processing element of the respective plurality of processing elements that is associated with the first instruction to service the first instruction, the selection based on the runtimes at which the processing elements in the respective plurality of processing elements can perform the first instruction; wherein the control logic is further configured to select, in response to a second instruction of the plurality of instructions and in response to the second set of information indicating the second instruction is being processed by two or more of the plurality of processing elements, data from one of the two or more processing elements to communicate to the processor, the selection based on relative times at which the second instruction was provided to the two or more processing elements as indicated by the second set of information.