| US 7,480,783 B2 | ||
| Systems for loading unaligned words and methods of operating the same | ||
| Mark O. Homewood, North Somerset (United Kingdom); and Paolo Faraboschi, Barcelona (Spain) | ||
| Assigned to STMicroelectronics Limited, Bristol (United Kingdom); and Hewlett-Packard Company, Palo Alto, Calif. (US) | ||
| Filed on Aug. 19, 2004, as Appl. No. 10/922,242. | ||
| Claims priority of application No. 03255133 (EP), filed on Aug. 19, 2003. | ||
| Prior Publication US 2006/0010304 A1, Jan. 12, 2006 | ||
| Int. Cl. G06F 12/00 (2006.01); G06F 9/26 (2006.01); G06F 9/34 (2006.01) | ||
| U.S. Cl. 711—201 [711/217; 712/204; 712/205; 712/206; 712/207; 712/300] | 12 Claims |

| 1. A method of loading a sequence of unaligned words starting from a first unaligned word address in a memory, said unaligned
words comprising a plurality of indexed portions crossing a plurality of word boundaries, the method comprising:
loading a first aligned word by executing a load instruction, said first aligned word commencing at a first aligned word address
rounded from said first unaligned word address;
identifying an index representing the location of the first unaligned word address relative to the first aligned word address;
loading a second aligned word commencing at a second aligned word address rounded from a second unaligned word address;
combining indexed portions of the first and second aligned words using the identified index to construct a first unaligned
word;
loading at least one subsequent third aligned word commencing at a third aligned word address from a subsequent third unaligned
word address plus a second offset; and
combining indexed portions of the subsequent third aligned word and the second aligned word to construct a subsequent second
unaligned word.
|