Claims
- 1. A system for controlling a multiplexer which transfers data from an first locationto 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.
- 2. The system of claim 1 wherein the second logic comprises:complement logic that computes the twos complement of a desired location signal.
- 3. The system of claim 2 wherein the complement logic comprises:a summer that adds a one's complement of the desired location signal and logical one.
- 4. The system of claim 1 wherein the start logic further comprises:a decoder, which receives the output start byte, and produces a bit stream comprising a number of bits equal to the number of bytes of the plurality of bytes of the second location, wherein the bit stream is the start byte information.
- 5. The system of claim 4 wherein the data is formatted in one of big endian format and little endian format; and wherein:each logic instantiation of the plurality of instantiation of logic is arranged to receive a first portion of the bit stream in a first order for big endian format; and each logic instantiation of the plurality of instantiation of logic is arranged to receive a second portion of the bit stream in a second order for little endian format.
- 6. The system of claim 5 wherein:each first order is different for each logic instantiation, and is shifted with respect to adjacent instantiations; and each second order is different for each logic instantiation, and is shifted with respect to adjacent instantiations.
- 7. The system of claim 5 wherein each of the plurality of instantiation of logic comprises:a format selection multiplexer for selecting between the first portion and the second portion, based upon an endian signal, and producing the selection signal.
- 8. The system of claim 1 wherein:the first location has fewer bytes than the second location.
- 9. 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.
- 10. The method of claim 9 wherein the step of determining the second start byte comprises the step of:computing the twos complement of a desired, location signal.
- 11. The method of claim 10 wherein the step of computing comprises the step of:adding a one's complement of the desired location signal and logical one.
- 12. The method of claim 9 wherein the step of determining start byte information comprises the step of:decoding the output start byte into a bit stream comprising a number of bits equal to the number of bytes of the plurality of bytes of the second location, wherein the bit stream is the start byte information.
- 13. The method of claim 12 wherein the data is formatted in one of big endian format and little endian format; and wherein the step of providing a plurality of instantiations of logic comprises the steps of:arranging each logic instantiation of the plurality of instantiation of logic to receive a first portion of the bit stream in a first order for big endian format; and arranging each logic instantiation of the plurality of instantiation of logic to receive a second portion of the bit stream in a second order for little endian format.
- 14. The method of claim 13 wherein:each first order is different for each logic instantiation, and is shifted with respect to adjacent instantiations; and each second order is different for each logic instantiation, and is shifted with respect to adjacent instantiations.
- 15. The method of claim 13 wherein the step of forming, comprises the step of:selecting, by each instantiation, between the first portion and the second portion, based upon an endian signal, and producing the plurality of selection signals.
- 16. The method of claim 9 wherein:the first location has fewer bytes than the second location.
RELATED APPLICATIONS
This application is related to co-pending and commonly assigned U.S. patent application Ser. No. 09/510,277 entitled “DUAL BYTE PORT ROTATOR,” the disclosures of which are hereby incorporated herein by reference.
US Referenced Citations (5)
Number |
Name |
Date |
Kind |
5446482 |
Van Aken et al. |
Aug 1995 |
A |
5524256 |
Turkowski |
Jun 1996 |
A |
5845100 |
Gupta et al. |
Dec 1998 |
A |
5867672 |
Wang et al. |
Feb 1999 |
A |
6212539 |
Huck et al. |
Apr 2001 |
B1 |
Non-Patent Literature Citations (1)
Entry |
German Office Action dated Dec. 4, 2001. |