Arm Enterprises GP4020 GPS Receiver User Manual


 
3: ARM7TDMI
TM
Microprocessor
20 GP4020 GPS Baseband Processor Design Manual
If a 16-bit architecture only has 16-bit instructions, and a 32-bit architecture only has 32-bit instructions, then overall
the 16-bit architecture will have better code density. Also 16-bit will have better than one half the performance of
the 32-bit architecture.
Clearly 32-bit performance comes at the cost of code density. Thumb breaks this constraint by implementing a 16-
bit instruction length on a 32-bit architecture, making the processing of 32-bit data efficient with a compact
instruction coding. This provides far better performance than a 16-bit architecture, with better code density than a
32-bit architecture.
Thumb also has a major advantage over other 32-bit architectures with 16-bit instructions. This is the ability to
switch back to full ARM code and execute at full speed. Thus critical loops for applications such as fast interrupts,
DSP algorithms can be coded using the full ARM instruction set, and linked with Thumb code. The overhead of
switching from Thumb code to ARM code is folded into sub-routine entry time. Various portions of a system can be
optimised for speed or for code density by switching between Thumb and ARM execution as appropriate.
Figure 3.1 ARM7TDMI Architecture