With this design generation, ARM moved from a von Neumann architecture Princeton architecture to a modified; meaning split cache Harvard architecture with separate instruction and data buses and cachessignificantly increasing its potential speed. Key improvements over ARM7 cores, enabled by spending more transistors, include: . Additionally, some ARM9 cores incorporate "Enhanced DSP" instructions, such as a multiply-accumulate, to support more efficient implementations of digital signal processing algorithms.
Joe Lemieux. Joe LemieuxSeptember 24, To reduce the memory costs of these extra instructions, consider a processor with Thumb.
Wikipedia has related information at ARM Architecture. When the return address is placed in pc r15returning from the subroutine, the sp, fp, sl, and v1-v6 registers must contain the same values they did when the subroutine was called. Every execution environment has a limit to how low in memory the stack can grow -- the "minimum sp". In order to give interrupts which may occur at any time room to work, at every instant the memory between sp and the "minimum sp" must contain nothing of value to the executing program.
It also designs cores that implement this instruction set and licenses these designs to a number of companies that incorporate those core designs into their own products. Processors that have a RISC architecture typically require fewer transistors than those with a complex instruction set computing CISC architecture such as the x86 processors found in most personal computerswhich improves cost, power consumption, and heat dissipation. Arm Holdings periodically releases updates to the architecture.
The Thumb instruction set is a subset of the most commonly used bit ARM instructions. Thumb instructions are each 16 bits long, and have a corresponding bit ARM instruction that has the same effect on the processor model. Thumb instructions operate with the standard ARM register configuration, allowing excellent interoperability between ARM and Thumb states.
The ARM family is not exactly simple to figure out. ARM cores don't match architecture numbers, letter suffixes are not always straightforward, and while looking for information on the ARM core in my PVR, the only thing I can say for certain is it is an ARM9 processor, and apparently nobody knows what the '26' suffix means. It started with the ARM2.