High speed mask and logical combination operations for parallel processor units
AssigneeCPU Technology, Inc.
InventorsEdward C. King, Alan G. Smith
Life of this patent
Estimating the term…
Abstract
A computer system having a plurality of parallel processor units with each processor unit having an output bus of n bits and an associated mask register is provided. The computer system comprises a bus unit, coupled to the output bus of each processor unit and each associated mask register, for masking the output bus bits with bits in the mask register of each processor unit and logically combining the resulting masked bits from each processor unit into an output bus of n bits in one computer operation.
Claims10
A computer system comprising
- a plurality of processor units, said processor units connected in parallel to a memory for parallel processing, each processor unit having:
- an instruction unit;
- a plurality of registers, each register holding a plurality of N bits, i=0 to N-1;
- and
- an execution unit connected to each of said plurality of registers, said execution unit, in a selected processor unit masking a plurality of bits in a selected register responsive to control signals from an instruction unit in said selected processor unit by logically ANDing an ith bit of said selected register with an ith bit of a second selected register in each selected processor unit for a resulting ith masked bit;
- and said computer system further comprising
- combining means, connected to said execution unit to said plurality of registers in each of said processor units, for logically combining a plurality of masked bits of said selected register in each said selected processor unit into a plurality of output bits by logically ORing said ith masked bit from each said selected processor unit for an ith parallel output bit and transmitting said plurality of output bits to each said selected register in each said selected processor unit in a single computer operation.
A computer system comprising
- a plurality of processor units, said processor units connected in parallel to a memory for parallel processing, each processor unit having:
- an instruction unit;
- a plurality of registers, each register holding a plurality of N bits, i=0 to N-1;
- and
- an execution unit connected to each of said plurality of registers, said execution unit in a selected processor unit masking a plurality of bits in a selected register responsive to control signals from an instruction unit in said selected processor unit by logically ANDing an ith bit of said selected register with an ith bit of a second selected register in each selected processor unit for a resulting ith masked bit;
- and said computer system further comprising
- combining means, connected to said execution unit to said plurality of registers in each of said processor units, for logically combining a plurality of masked bite of said selected register in each Said selected processor unit into a plurality of output bits by logically EX-ORing said ith masked bit from each said selected processor unit for an ith parallel output bit and transmitting said plurality of output bits to each said selected register in each said selected processor unit in a single computer operation.
A computer system comprising
- a plurality of processor units, said processor units connected in parallel to a memory for parallel processing, each processor unit having:
- an instruction unit;
- a plurality of registers, each register holding a plurality of bits;
- and
- an execution unit connected to each of said plurality of registers, said execution unit in a selected processor unit masking a plurality of bits in a selected register responsive to control signals from an instruction unit in said selected processor unit and determining said masked bits of said selected register in each of said selected processor units in response to a predetermined instruction in each of said selected processor units;
- and said computer system further comprising
- combining means, connected to said execution unit to said plurality of registers in each of said processor units, for waiting for determination of masked bits from said selected register in a last selected processor unit before logically combining all of said masked bits from each said selected register in each of said selected processor units into a plurality of output bits and transmitting said plurality of output bits to each said selected register in each of said selected processor units in a single computer operation.
In a computer system having a plurality of processor units, each processor unit having an instruction unit, a plurality of registers, and an execution unit, each register of said plurality of registers holding a plurality of bits, each processor unit connected in parallel to a memory through a bus unit, a method of operating said computer system comprising:
- selecting a first register and a second register in at least one of said plurality of processor units and identifying said other processor units having said any other first selected registers;
- masking bits in said first selected register including logically ANDing said bits in said first selected register with bits in said second selected register;
- logically combining masked bits of said first selected register in said at least one processor unit with masked bits of any other first selected registers in other processor units into a plurality of output bits in a single computer operation;
- and
- storing said plurality of output bits in each of said first selected registers in said single computer operation.
In a computer system having a plurality of processor units, each processor unit having an instruction unit, a plurality of registers, and an execution unit, each register of said plurality of registers holding a plurality of bits, each processor unit connected in parallel to a memory through a bus unit, a method of operating said computer system comprising:
- selecting a plurality of first registers and second registers in said plurality of processor units;
- masking bits in said plurality of said first selected registers with bite in said plurality of second selected registers including logically ANDing said bits in said plurality of said first selected registers with bits in said plurality of second selected registers, bits of all but one of said plurality of said first selected registers being masked cut;
- logically combining masked bits of all of said plurality of said first selected registers in said plurality of said processor units into a plurality of output bits;
- and
- storing said plurality of output bite in each of said first selected registers in said single computer operation;
- whereby masked bits of said one of said selected plurality of first registers are distributed to all of said selected plurality of first registers in said single computer operation.
In a computer system having a plurality of processor units, each processor unit having an instruction unit, a plurality of registers, and an execution unit, each register of said plurality of registers holding a plurality of bits, each processor unit connected in parallel to a memory through a bus unit, a method of operating said computer system comprising:
- selecting a first register in at least one of said plurality of processor units;
- masking bits in said first selected register;
- logically combining masked bite of said first selected register in said at least one processor unit with masked bits of any other first selected registers in other processor unite into a plurality of output bits in a single computer operation;
- ordering a plurality of said logically combining steps when combinations of masked bits of said plurality of selected first registers are to be logically combined;
- and
- applying each of said logically combining steps when each combination of masked bits of said plurality of selected first registers is ready to be logically combined.
Dependencies are inferred from the claim text.