Professional Documents
Culture Documents
ARM PROCESSOR: -
An ARM processor is any of several 32-bit RISC (reduced instruction set
computer) microprocessor s developed by Advanced RISC Machines, Ltd. The
ARM architecture was originally conceived by Acorn Computers Ltd. in the
1980s. Since then, it has evolved into a family of microprocessors extensively
used in consumer electronic devices such as mobile phone s, multimedia players,
pocket calculator s and PDA s (personal digital assistants).
ARM processor features include:
• Load/store architecture
• A 16x32-bit register
ARM provides developers with intellectual property (IP) solutions in the form of
processors, physical IP, cache and SoC designs, application-specific standard
products (ASSPs), related software and development tools — everything you
need to create an innovative product design based on industry-standard
components that are ‘next generation’ compatible.
RISC MACHINES: -
RISC is an acronym standing for "Reduced Instruction Set Computer", contrasted
with a CISC machine (Complex Instruction Set Computer).RISC claims of
simplicity in comparison to CISC:
1. Fixed 32-bit instruction size instead of variable .
RISC Organization:
1. Hard-wired instruction decode logic instead of microcoded ROMs to
decode
2. Pipelined execution
RISC Advantages:
1. Smaller die sizes
RISC Disadvantages:
1. Generally less code density than CISC
2. Cannot execute x86 code, at least not without some sort of conversion and
performance drawback
PROCESSOR OVERVIEW :-
ARM offers a wide range of processor cores based on a common architecture,
that deliver high performance together with low power consumption and system
cost.
The ARM processor range provides solutions for:
• Open platforms running complex operating systems for wireless,
consumer and imaging applications.
PROCESSOR FAMILIES:-
There are currently eight product families which make up the ARM processor
range:
• Cortex Processor Family
Further implementations of the ARM architecture are available from our Partners
such as the Intel® XScale™ microarchitecture.
ARM ARCHITECTURE :-
• v1 - ARM1.
• v2 - ARM2.
• v4 - StrongARM, ARM9.
• v5 - ARM10.
• VFP1 - ARM10 (some variants of).
• Thumb (T variants).
PROCESSOR TYPES:-
ARM 1:
• Very first ARM processor.
• It was first manufactured in April 1985, and was the very first commercial
RISC processor.
• It was "working silicon" in it's first incarnation, it exceeded it's design goals,
and it used less than 25,000 transistors.
The ARM 1 was used in a few evaluation systems on the BBC micro (Brazil -
BBC interfaced ARM), and a PC machine (Springboard - PC interfaced ARM).
It is believed a large proportion of Arthur was developed on the Brazil hardware.
ARM 2:
additions as the MUL and MLA instructions allowed for real-time digital signal
processing. The ARM2 chip features 27 registers of which 16 are accessible at
any one time. Four processor modes are available -
USR : user mode
IRQ : interrupt mode ( with a private copy of R13 and R14.)
FIQ : fast interrupt mode ( private copies of R8 to R14.)
SVC : supervisor mode. (private copies of R13 and R14.)
Only non USR mode code may change the processor mode providing hardware
security if the hardware and physical memory is only accessible from privileged
code. Due to the top six bits of the program counter being used to hold the
processor status flags this chip was restricted to addressing 26 bits of memory, or
a 64 Megabyte address space. In actuality there are eight bits of processor status
held in the PC register. Because an ARM instruction is always four bytes long the
bottom two bits of the PC were always an implied zero when the register was
being used as a PC. When that register is used for other operations the bottom
bits reflect the mode the processor is operating in. (00 - USR, 01 - IRQ, 10 - FIQ
& 11 - SVC)
A three stage instruction pipeline allows the chip to execute instructions quickly
with a fairly low transistor count. One side effect of the pipeline is the ability to get
a 'free' rotation/shift on every instruction as one stage of the pipeline dealt
exclusively with a barrel shift of a given register. Combined with the condition
execution of every instruction then long runs of code without branches, which
stall the pipeline, could be achieved allowing a fairly high instruction execution
speed for the clock rate. (About 0.6 instructions per clock cycle on average)
The ARM2 chip was clocked at 8 MHz giving an average performance of 4-4.7
MIPS.
1. ARM 3:
This processor cell is the first of the commercially available ARMs to have a full
32bit addressing capability. Additionally the processor now has 31 registers in it
along with six new processor modes :-
• User32 - 32 bit USR mode.
The SPSR register is a Saved Processor Status Register and holds a copy of the
CPSR (Current Processor Status Register) when the new mode is entered. The
addition of the Abort32 mode and this change, although the CPSR/SPSR is really
a corollary of the change to 32bits, allows the ARM6 cell to easily handle virtual
memory without the contortions you had to go through on earlier cell ARM chips.
Two new instructions for reading and writing the CPSR and SPSR registers were
added. The program counter is now fully 32 bit with the CPSR being hardware
shifted into position when the PC is read in 26 bit modes. (for backwards
compatibility.) The ARM6 cell is fully binary compatible, in the 26 bit modes, with
the earlier ARM cell's code. The chip is fully static, the clock can slowed to any
speed and the processor will maintain state. Finally the cell can work in either
big-endian or little endian operation can be hardware switched between the two
modes. Total register count in the ARM6 cell (not chip) is 36,000 transistors.
Several versions of the ARM6 cell have been produced. The ARM61 is a
hardwired version of the ARM6 cell in ARM2/3 compatibility mode. This chip
cannot enter the 32bit address/processor modes. The ARM600 range of chips is
an ARM6 cell with an inbuilt MMU, on chip cache similar to the ARM3 chip's, an
eight deep write back buffer with two independent addresses and a total
transistor count of 360,000. The cache has had performance tweaks, is now
controlled by the MMU and has been adjusted for 32 bit addressing. Three
ARM610 chip speeds have been produced. One at 20 MHz delivering 17 MIPS,
one at 30 MHz delivering 26 MIPS performance and finally one at 33MHz giving
around 27-28 MIPS.
Also available are the ARM60 (an ARM 6 cell as a chip, without anything else.),
ARM650 (An ARM6 with some RAM & peripheral controllers. Designed For
embedded control systems.), ARM6l (lower power ARM6 cell) and the ARM60l
(lower power version of the ARM 6 cell as a chip.).
4. ARM 7:
The ARM7 cell is functionally identical to the ARM6 cell in capabilities but may
be clocked faster than the ARM6. A variant of the ARM7 cell offers an improved
hardware multiply, suitable for DSP work.
Most of what is new in the ARM7 cell is internal changes on timings for various
signals. The ARM700 chip has a larger on chip cache (8kb, and radically altered
for power efficiency) to the ARM600, improving cache hit rates. It also has twice
the number of translation lookaside entries in the MMU and twice the number of
address on the write buffer. (Presumably now four address can be written to
before the buffer stalls.) At 40MHz the ARM710 delivers about 36 MIPS, or
around a 40% improvement over the ARM610.
ARM7 series devices are ARM7 (chip cell core.), ARM7D (the chip core with
debugging support.), ARM7DM ( an ARM7D with an enhanced multiply.),
ARM7DMI (an ARM7DM with ICEbreaker (tm). ICEbreaker is on chip support for
In-Circuit-Emulation.), ARM70DM (ARM7DMI as a chip.), ARM700 (ARM7 +
MMU + cache + Writeback Buffer.) and the ARM7500 (ARM7 + MMU + cache +
Writeback Buffer + IOMD + VIDC20). Nearly all of these cores can be offered
with the Thumb core as well.
5. ARM 8:
The ARM8 cell is directly compatible with the ARM6 and 7 devices. However it
includes a five stage pipeline (an idea duplicated in the StrongARM device), a
speculative instruction fetcher and internal tweaks to the processor to allow a
higher clock speed. The cache remains the same size but becomes a writeback
cache as well and a 64bit multiply instruction added.
Fabricated on 0.5 micron process the chip is listed as delivering 80 MIPS
performance with a 3.3 Volt device at 80 MHz. This is over twice the performance
of an ARM7 chip and lives up to the initial 'roadmap' promises made about the
ARM family. However it's performance is eclipsed by the StrongARM devices for
raw processing power.
6. STRONGARM :
This is the high speed variant of the ARM chip family, having been developed by
Armltd in conjunction with Digital. Architecturally it is similar to the ARM8 core,
sharing the five stage pipeline with that processor. A further difference is change
from a unified data and instruction cache to a split, Harvard architecture,
instruction and data cache. Each cache is 16kb in the SA110.
In terms of the instruction set there is one new instructions added, the halfword
load/store for moving 16 bit data units. Complete code compatibility is not
guaranteed with earlier processors because of two factors, The extended pipeline
means stack calls that store the Program Counter will have a value of the PC a
full sixteen bytes ahead of the currently executing instruction, rather than the
more normal eight bytes. Secondly the split cache introduces problems with self
modifying code being first executed, then treated as data, manipulated and an
attempt is then made to execute the altered code before it is flushed from the
instruction cache.
Such code fragments will break. Fortunately such code tends to be fairly rare and
confined to the OS (SWI handlers in particular). Produced on a 0.35 micron
process the SA110 part achieves 115 MIPS at 100 MHz, 185 MIPS at 160 MHz
and 230 MIPS at 200 MHz. The SA1100 part is designed for portable applications
and contains an SA core, MMU, read/write buffers (probably a Level 1 cache and
write buffer akin to the SA110 part), PCMCIA support, colour/greyscale LCD
controller and general purpose IO controller (including two serial ports and USB
support). It can be clocked at 133 or 200 MHz and consumes less than 500 mW
of power.
7. ARM 9 :
An incremental improvement over the ARM8 this chip features the same five
stage pipeline but is now a Harvard Architecture chip, like the StrongARM. This
probably means that same restrictions on self modifying code apply as for the
StrongARM.
It is initially going to be offered as two parts, the ARM9TDMI (Thumb, Debug
support, 64bit Mulitply and ICEBreaker In Circuit Emulation) - which is the base
core part, and the ARM940T. The ARM940T offers, above and beyond he base
core, 4kb Instruction/Data caches, a write buffer (8 words, 4 independant
addresses), AMBA bus interface, external co-processor support and a protection
unit for embedded applications (requires no address translation and allows eight,
independantly sized and level of protection, protected areas of memory). Both
parts are fabricated at 0.35 microns, clock at 150 MHz (producing 165 MIPS) with
the ARM9TDMI consuming 225 mW and the ARM950T 675mW.
8. ARM 10 :
ARM APPLICATIONS:-
1. ARM seems to be leading the way in this field of processing. The
processor has found this as one of its greatest niche markets, mainly
because of the steps the company has taken to fit into the embedded
market and the architecture it has adopted. DSP is prevalent with
embedded processor in cell phones, cordless phones, base stations,
pagers, modems, Smartphones and PDAs (Personal Digital or Data
Assistants). Other embedded applications that take advantage of such
processors are: disc drive controllers, automotive engine control and
management systems, digital auto surround sound, TV-top boxes and
internet appliances. Other products are still being modified to take
advantage of it: toys, watches, etc. The possible applications are almost
endless.
2. As the terminology has shifted around ultra mobile PCs, mobile internet
devices (MIDs) and net books, some may have made the assumption that
any given PC would be powered by either an Intel processor or one
designed by ARM Holdings plc (Cambridge, England) and implemented by
one of its semiconductor licenses.
3. In turns out that assumption is too simplistic. Some PC makers are using
an Intel processor to run the Windows operating system but finding ways
to let an ARM processor run some key applications for the sake of its
power efficiency and the resulting longer battery life for the computer.
4. Warren East, president and CEO of ARM, told analysts at a meeting held
to discuss the company's financial results that his company's collaborative
work with software vendors to port specific applications to ARM's
processor cores was yielding results in both mobile internet devices and in
PCs
• ARM is the processor used in both the Apple iPhone and Amazon's
Kindle.
• ARM shipped its 10 billionth processor this year and in 2008 alone
shipped 2.5 billion processors.
• ARM chips are in about 98 percent of all cell phones out today.