Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Product List
thumb instr
The Thumb instruction set is a subset of the ARM instruction set. The ARM instruction set is a 32-bit instruction set; the Thumb instruction set is a 16-bit instruction set. The most common ARM instructions were re-coded and compressed into 16 bits. Once the 16 bits are fetched from memory, they are decompressed to 32-bit instructions before they are decoded and executed. All operations are still 32-bit operations using 32-bit data and registers. To make the Thumb instruction set more efficient and smaller, the option to conditionally execute Thumb instructions has been removed.  When using Thumb instructions, code density is improved by approximately 30%. This saves program memory space, which is important for single-chip solutions without an external memory interface. Since it typically takes more instructions in Thumb code to do the same task in ARM code, there is usually a performance penalty. There is a definite tradeoff between speed that you would get using ARM code or code density than you would achieve using Thumb code. Essentially, the designers have the option to optimize code towards either speed or density by using one or the other instruction set.
PTM Published on: 2011-11-02