Mobile Handset Microprocessor Outline Terms n ISA Basics
Mobile Handset Microprocessor
Outline Terms n ISA Basics n ARM n Comparison between ARM and x 86 n 2
Terms ARM: Advanced RISC Machine n CISC: Complex Instruction Set Computer n ISA: Instruction Set Architecture n RISC: Reduced Instruction Set Computer n x 86: a generic name given to Intel processors beginning with the 8086 processor released in 1978 n 3
ARM and x 86 Microprocessor (or CPU, processor) is the brain of computing device n Two major types of microprocessors n ¨ Intel x 86 -based dominate the desktop market ¨ ARM-based dominate the mobile handset market n Before we introduce the ARM architecture, we need review some ISA basics which are useful to distinguish ARM from other architectures 4
Instruction Set Architecture (ISA) n A set of computer hardware instructions, for examples ¨ Arithmetic n ADD r 0, r 1, r 2; ¨ Register n n operations r 0 = r 1 + r 2 movement MOV r 0, r 2 An interface to allow easy communication between high level software and low level hardware 5
More about ISA n n n It defines the set of instructions, their binary formats and operation specifications It has a significant impact on microprocessor’s performance, cost and complexity All ISAs fall into two categories ¨ Complex Instruction Set Computer (CISC) architecture ¨ Reduced Instruction Set Computer (RISC) architecture 6
CISC Overview n n It contains a large set of computer instructions that range from very simple to very complex and specialized ones Each instruction might perform a series of operations inside a processor It makes chips easy to program and use memory more efficiently Typical chip example who runs CISC: Intel x 86 processors 7
Why CISC? n Memory in the early days was slow and expensive ¨ Bigger program -> more memory space -> more money and more slowly n It shifts the burden of generating machine codes from compiler to processor ¨ For example, instead of making a compiler to generate long machine codes for calculating a square-root, a CISC processor would have a builtin ability to do so 8
CISC Disadvantages The development of computer technology is constantly introducing new and complex set of instructions n More complex instructions make the hardware more complex n Almost 20% of the instructions are used repeatedly. The rest 80% are not used frequently n 9
RISC Overview It came out after the CISC architecture n It defines a small, simple and highly-optimized set of instructions, rather than a more specialized set of instructions often found in CISC n It is not just simply to reduce the size of the instruction set. The amount of work each instruction accomplishes is also reduced n 10
RISC History n n n 1975 – The first RISC project started at IBM 1980 – The original RISC prototype computer (801 Minicomputer) was built at IBM 1981 – The MIPS architecture grew out of a graduate course at Stanford Univ. 1982 – The Berkeley RISC project delivered RISC-I and RISC II 1990 s – RISC-based commercial products started to flourish and become prevalent 11
RISC Attributes The instruction set contains simple, basic instructions n The size of the instruction set is reduced n Each instruction has the same length n Each instruction completes in one machinecycle n It uses pipelining which allows the processor to handle several instructions at the same time n 12
CISC vs RISC Feature CISC RISC Philosophy Emphasize on hardware Emphasize on software Number of cycles per instruction Multiple Single Code size Small Large Power Many watts Several mill watts Computing Speed Faster Slower Cost Expensive Cheaper Temperature Need fan Lower 13
ARM – Advanced RISC Machines ARM is a family of instruction set architectures for computer processors based on the RISC architecture n ARM is developed by British company ARM Holdings n 95% of the world’s smartphones are using ARM-based processors n 14
ARM Holdings developed the instruction set and the ARM architecture, but does not manufacture ARM products. They periodically releases updates to its designs n ARM Holdings licenses chip designs to third parties, who design their own products n 15
ARM Chip Manufactures Apple n Samsung n Texas Instruments n Qualcomm n Nvidia n NXP n Applied. Micro n Atmel n Broadcom n Cypress n Freescale n ST Microelectronics n 16
ARM Chip Manufactures These manufactures implement the licensed architectures by putting the processor core inside their chipsets in combination with whatever GPUs, memory, interfaces, radios and other things they desire. n That is why two chipsets from different companies can both appear to contain the same processor. n 17
ARM Business Model ARM designs technology for energyefficient chips ARM licenses technology to semi conductor partner Partner develops chips using ARM’s designs Device manufacturer builds consumer products ARM gets license fee which is typically several million dollars for each design n ARM receives a royalty based on a percentage of the chip price, for each sold chip n 18
ARM Version Releases Version Release Year Features Implementations Typical Applications ARMv 1 1985 First commercial product ARM 1 BBC Micro computers ARMv 2 1987 Coprocessor support ARM 2, ARM 3 Acorn Archimedes computers ARMv 3 1992 32 bit, 25 MHz clock ARM 6, ARM 7 Zarlink GPS receiver, Acorn Risc PC 700 ARMv 4 1996 Thumb support ARM 7 TDI, ARM 8, ARM 9 TDMI, Strong. ARM Nintendo DS, Garmin Navigation devices, HP Jornada 7 xx ARMv 5 1999 DSP, Jazelle extensions ARM 10, Xsacle Samsung SGH-i 780, Blackberry 8700, HTC universal ARMv 6 2001 SIMD Trust. Zone, multiprocessing ARM 11, ARM 11 MP Raspberry Pi, Samsung I 5700, i. Phone 3 G/3 GS ARMv 7 2004 Floating point Cortex-A series, Cortex-R series, Cortex-M 3, Cortex. M 4 i. Phone 4/4 S/5/5 C, Google Nexus S, Apple i. Pad, HTC Desire, Samsung Galaxy S 2/S 3 ARMv 8 2011 64 bit Cortex-A 53, Cortex-A 57 Samsung Galaxy Note 4, i. Phone 5 S/6/6 Plus 19
A Generic ARM-based Design 16 bit RAM 32 bit RAM Interrupt Controller Peripherals 8 bit ROM I/O ARM Core 20
ARM Instruction Set n Three instruction types ¨ Data processing ¨ Data transfer ¨ Control flow 21
Data Processing Instructions n Arithmetic Operations ¨ ADD n r 0 = r 1 AND r 2 r 0, r 2 Comparison ¨ CMP n r 0, r 1, r 2; Register Movement ¨ MOV n r 0 = r 1 + r 2 Logical Operations ¨ AND n r 0, r 1, r 2; r 1, r 2 Multiplication ¨ MUL r 4, r 3, r 2; r 4 = r 3 * r 2 22
Data Transfer Instructions n Move data between ARM registers and memory ¨ Load n LDR r 0, [r 1]; r 0 = memory[r 1] ¨ Store n Instruction STR r 0, [r 1]; memory[r 1] = r 0 23
Control Flow Instructions n Determine which instructions get executed next 24
3 -Stage Pipeline n Each instruction’s processing can be divided into three stages: fetch, decode and execute 25
Why ARM Architecture n ARM processors significantly reduce costs, heat and power use, compared with x 86 processors. Such reductions are desirable for portable, battery-powered devices such as smartphones ¨ E. g. , ARM 7100 consumes 72 m. W when operating at 14 MIPS while Intel Atom (x 86) consumes ~1 W 26
What Makes ARM-based Chips Power Efficient n Slower speed ¨ They use lower-speed transistors which require lower voltage, reducing power consumption. n Smaller scale ¨ Fewer transistors are used because ARM is a RISC architecture. This means lots of operations are processed in small and simple chunks at the expense of more machine codes. 27
What Makes ARM-based Chips Power Efficient n Sleep mode ¨ Some modern ARM processors save power by going to sleep mode until it receives instructions to do something. X 86 currently only supports reducing the core frequency to run at lower voltage n Simple instructions ¨ The instruction set stays simple and minimal. Extension is done through co-processors 28
ARM Extensions n DSP (Digital Signal Processing) Enhancement ¨ Improves architecture for DSP and multimedia use ¨ Include variations on instructions such as signed multiply-accumulate, saturated add and subtract, and count leaning zeroes n Java Support ¨ Allows Java Bytecode to be executed directly in the ARM architecture 29
ARM Extensions n Multimedia Extension ¨ Add a 64/128 -bit instruction set that provides standardized acceleration for media and signal processing applications n Security Extensions ¨ Called Trust. Zone Technology ¨ Provide two virtual processors with hardwarebased access control instead of adding another dedicated security core 30
ARM and x 86 Instructions n An example: multiplying two numbers in memory. Data 1 in location 2: 3 and data 2 in location 5: 2; ¨ Store back the result in location 2: 3. ¨ n n Intel x 86: MULT 2: 3, 5: 2 ARM: LDR A, 2: 3 ¨ LDR B, 5: 2 ¨ MUL A, B ¨ STR 2: 3, A ¨ 31
x 86 vs ARM Features x 86 ARM Operand reuse Must reload the operand into register because the The operand can be reused registers are automatically erased after because it will remain in the computation register until another value is loaded in its place Code Length Relatively short More lines of code RAM Usage Little RAM is required More RAM is used Hardware Require more transistors, more hardware space, more power consumption Requires less transistors, less hardware space, less power consumption Focus Emphasis on speed and performance Emphasis mainly on power consumption Compatibility Compatible with most of the operating systems like Windows, Linux, Android, etc. Only supports Linux and Android so far Products Laptops, desktops and servers Smartphones, tablets 32
References n n n n n http: //en. wikipedia. org/wiki/ARM_architecture http: //www. quora. com/What-makes-ARM-based-chips-relatively-powerefficient https: //web. eecs. umich. edu/~prabal/teaching/eecs 373 -f 10/slides/lec 22. pdf http: //en. wikipedia. org/wiki/List_of_applications_of_ARM_cores http: //ir. arm. com/phoenix. zhtml? c=197211&p=irol-homeprofile http: //www. crn. com/news/components-peripherals/240003811/arm-snags 95 -percent-of-smartphone-market-eyes-new-areas-for-growth. htm https: //www. cis. upenn. edu/~milom/cis 501 -Fall 05/lectures/02_isa. pdf http: //www. slideshare. net/Manasa. Sushmitha/x 86 -and-arm-performancecomparison http: //cs. stanford. edu/people/eroberts/courses/soco/projects/risccisc/ http: //www. csie. nuk. edu. tw/~kcf/course/98_Spring/Embedded%20 System/ 2 -Introduction%20 to%20 ARM%20 architecture. pdf 33
- Slides: 33