This preview shows page 1. Sign up to view the full content.
Unformatted text preview: allowing either hard-wired 26-bit operation or process-by-process mixed 26- and 32-bit operation. ARM architecture version 3G is version 3 without backwards compatibility to version 2a. ARM architecture version 3M introduces the signed and unsigned multiply and multiply-accumulate instructions that generate the full 64-bit result. Version 4 of the architecture adds the signed and unsigned half-word and signed byte load and store instructions and reserves some of the S WI space for architecturally defined operations. The system mode (a privileged mode that uses the user registers) is introduced, and several unused corners of the instruction space are trapped as undefined instructions. At this stage those uses of r15 which yielded 'pc + 12' in earlier ARMs are declared to give unpredictable results (so architecture version 4 compliant implementations need not reproduce the 'pc + 12' behaviour). This is the first architecture version to have a full formal definition. Version 2a Version 3 Version 3G Version 3M Version 4 Example and exercises 149 Version 4T The 16-bit Thumb compressed form of the instruction set is introduced in version 4T of the architecture. Version 5T of the ARM architecture has been introduced recently, and at the time of writing is supported only by ARM10 processors (and these will soon support v5TE). It is a superset of architecture version 4T, adding the BLX, CLZ and BRK instructions. Version 5TE adds the signal processing instruction set extensions described in Section 8.9 on page 239 to architecture version 5T. Version 5T Version 5TE Summary Table 5.7 summarizes the use of the ARM architecture versions by each core.
Table 5.7 Summary of ARM architectures. 5.24 Example and exercises
(See also Sections 3.4 and 3.5 on pages 69 and 72.) Example 5.1 Write a scalar product program which is significantly faster than that given in Section 5.8 on page 122. The original program takes ten cycles plus the (data dependent) multiply time for each pair of data values. Each data value...
View Full Document
- Spring '09