Broadcast instruction for use in a high performance computer system
AssigneenCUBE Corporation
InventorsStephen R. Colley, Doran K. Wilde
Life of this patent
Estimating the term…
Loading patent…
AssigneenCUBE Corporation
InventorsStephen R. Colley, Doran K. Wilde
Estimating the term…
A broadcast pointer instruction has a first source operand (address pointer value) which is the starting address in a memory of message data to be broadcast to a number of processors through output ports. The broadcast pointer instruction has a first destination operand (first multibit mask), there being one bit position in the first mask for each one of the plurality of output ports. The address pointer value is loaded into each of the output ports whose numbers correspond to bit positions in the first mask that are set to be one, such that each output port that is designated in the first mask receives the starting address of the message data in the memory. A broadcast count instruction has a second source operand (a byte count value) equal to the number of bytes in the message data. The broadcast count instruction has a second destination operand (a second multibit mask), there being one bit position in the second mask for each one of the plurality of output ports. The byte count value is sent to each of the output ports whose numbers correspond to bit positions in the second mask register that are set to be one, such that each output port that is designated in the second mask receives the byte count value corresponding to the number of bytes in the message data that are to be transferred from the memory. Once the byte count is initialized, data are transferred from the starting address in memory over each output port designated in the masks, until the byte count is decremented to zero.
For use in a data processing system comprised of a plurality of processors, each one of said processors including an execution unit (46) and a memory (51), said processors being able to communicate with each other through a plurality of input and output ports (48), each output port including an output address pointer register (170) which points to locations in said memory (51) from which data are to be transferred, at least one of said processors including instruction decoding means (44) and an address unit (42) having access to said memory (51) over a memory interface (50), said memory (51) having stored therein a broadcast pointer instruction (400), said address unit (42), and said I/O ports being connected together by a common address bus (52) and a common data bus (54), said I/O ports having access to said memory (51) over said memory interface (50), a communication mechanism in said one processor comprising:
Dependencies are inferred from the claim text.