Distributed MUX scheme for bi-endian rotator circuit
AssigneesHewlett-Packard Development Company, L.P., Intel Corporation
InventorsDaming Jin, Dean A. Mulla, Douglas J Cutter, Thomas Grutkowski
Life of this patent
Estimating the term…
Abstract
The inventive control logic provides the selection signals for a bi-endian rotator MUX. The logic determines the starting point for the data transfer by determining which input register byte is going to Byte 0 of the output register. The control logic passes the starting point to single decoder. The decoded value is then sent to a plurality of MUXs, one for each of the output register bytes. Each of the MUXs is prewired to receive a portion of bits of the decoded value, and the portion is arranged in a particular order. The MUXs then send their respective outputs to the rotator MUX as selection control signals.
Claims16
A system for controlling a multiplexer which transfers data from an first location
- to an second location, wherein each of the first and second locations include a plurality of bytes, and the data is formatted in one of big endian format and little endian format, the system comprising:
- start logic that determines start byte information, wherein the start byte is which input byte location will have its data transferred to the first byte of the second location, and wherein the start logic comprises first logic for determining the first start byte for the big endian format, second logic for determining the second start byte for the little endian format, and a format selection multiplexer for selecting between the first logic and the second logic, based upon an endian signal, and producing an output start byte which is associated with the start byte information;
- and
- a plurality of instantiations of logic, each of which is associated with a particular one of the plurality of bytes of the second location, wherein each logic is configured for its associated byte and forms a selection signal based on the start byte information;
- wherein the plurality of selection signals from the plurality of instantiations of logic control the multiplexer, and the first logic comprises a summer that adds a desired location signal, a size of the data, and minus logical one.
A method for controlling a multiplexer which transfers data from an first location to an second location, wherein each of the first and second locations include a plurality of bytes, and the data is formatted in one of big endian format and little endian format, the method comprising the steps of:
- determining start byte information, wherein the start byte is which input byte location will have its data transferred to the first byte of the second location;
- providing a plurality of instantiations of logic, each of which is associated with a particular one of the plurality of bytes of the second location, wherein each logic is configured for its associated byte;
- and
- forming, via the plurality of instantiations of logic, a plurality of selection signals based on the start byte information for controlling the multiplexer;
- wherein the step of determining start byte information comprises the steps of:
- determining the first start byte for the big endian format, which comprises adding a desired location signal, a size of the data, and minus logical one;
- determining the second start byte for the little endian format;
- and
- selecting between the first logic and the second logic, based upon an endian signal, to produce an output start byte which is associated with the start byte information.
Dependencies are inferred from the claim text.