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
OG exemplary drawing
 
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.