® ARM体系结构 (Advanced RISC Machines) 李曦 llxx@ustc.edu.cn
ARM体系结构 (Advanced RISC Machines) 李曦 llxx@ustc.edu.cn
内容提要 ARM体系结构概览 -ARM历史 -ARM体系结构特征 Application programs -ARM片上总线AMBA -ARM对调试的支持 一虚存管理 ·ARM编程模型 Operating system -ARM微处理器的工作状态 -ARM体系结构的存储器模式 一 ARM微处理器的操作模式 Hardware - ARM体系结构的寄存器组织 -ARM微处理器的异常状态 ·Cortex M处理器 llxx@ustc.edu.cn 2/111
内容提要 • ARM体系结构概览 – ARM历史 – ARM体系结构特征 – ARM片上总线AMBA – ARM对调试的支持 – 虚存管理 llxx@ustc.edu.cn 2/111 • ARM编程模型 – ARM微处理器的工作状态 – ARM体系结构的存储器模式 – ARM微处理器的操作模式 – ARM体系结构的寄存器组织 – ARM微处理器的异常状态 • Cortex M处理器
ARM Partnership Model ATAP Partners WIN-FINITY BARCO SOTA SILEX EPI ASHLING CoWare Tools Partners DNP dbgnaesnolo9y SIEMENS NSW virtio iNNOVEDA. Computex Think COMIT ¥0 GITECH STEPMIND YOKOGAWA ADS Tektronix' WindRrver Sophia ARCADIA Axis systems SIDSA TOPPAN Verisity Aptix WIPRO SEOOU INCHIF QUALCOM ZTEIC GOODRICH Z A i Q 人置 FUJTSU ERICSSON三 Agilent Technologies Nliant HOYA OKI ④ MOTOROLA ADMtek NEC intersil sCIwOrX FARADAY MAZ NMAIE TOSHIBA AMI synoPsyS ◆MICRONAS PHILIPS s P UMC 曼 MIKOS mordic TALITY EPSON女 ②Chartered G parthus FLE>TRONICS SANYO 元GH 器 LAUTERBACH cadence SynOPSys Semiconductor CT■ 起n AKM FIRMWARE SYSTEMS D地21兰 Panasonico Interniche Microsoft agere eoL CN SHARP ZEEvo intel. echnologies,inc :WY1装DAI 围清 Virata SONY YAMAHA 中 Triscend.N ACCESS (cogency) PRAIRIEOCMM INTERTRUST US Software ZARLINK GEOWORKS ArrayComm ERICSSON三 Tao Systems Silicon Wave 段E5 ONEXT zi corporation 任KADAK6e画 hquid audo OSE Microsoft Bluetooth" symbian AX目 symbian Symmetricom CPS WindRiver MICROWARE ETNOTEAM DaDolby intr s01 oP Noe AVA RTOS Partners LYNUXWORKS ASAHI CHEMICAL INDUSTRY CO.LTO Software Partners
ARM Partnership Model
ARM Powered Products NOKIA llxx@ustc.edu.cn 4/111
ARM Powered Products llxx@ustc.edu.cn 4/111
Development of the ARM Architecture Improved Halfword ARM/Thumb Jazelle and signed Interworking Java bytecode halfword CLZ execution byte support System SA-110 Saturated maths ARM9EJ-S ARM926EJ-S mode SA-1110 DSP multiply- accumulate ARM7EJ-S ARM1026EJ-S instructions ARM1020E SIMD Instructions Thumb instruction Multi-processing Early ARM set XScale V6 Memory architectures ARM7TDMI ARM9TDMI ARM9E-S architecture (VMSA) Unaligned data ARM720T ARM940T ARM966E-S support ARM1136EJ-S
Development of the ARM Architecture SA-110 1 Halfword and signed halfword / byte support System 2 mode 4 SA-1110 Improved ARM/Thumb Interworking CLZ 5TE Saturated maths DSP multiplyARM9EJ-S 5TEJ ARM7EJ-S ARM926EJ-S Jazelle Java bytecode execution ARM1026EJ-S ARM7TDMI 4T Thumb instruction set ARM9TDMI SA-1110 ARM720T ARM940T DSP multiplyaccumulate instructions XScale ARM1020E ARM9E-S ARM966E-S 3 Early ARM architectures ARM7EJ-S 6 ARM1136EJ-S ARM1026EJ-S SIMD Instructions Multi-processing V6 Memory architecture (VMSA) Unaligned data support
ARM处理器的特点 ·ARM处理器本身是32位设计,但也配备16位指令集。 -16位指令占用的存储器空间节省35%。 ·条件执行 -标志寄存器APSR(N,Z,C,V等条件标志) -所有的指令都可根据前面的执行结果决定是否被执行, 提高了指令的执行效率。 ·提高代码密度和执行速度 ·可用Load/Store?指令批量传输数据。 可在一条数据处理指令中同时完成逻辑处理和移 位。 ·支持基于ARM处理器核的高集成SOC调试 llxx@ustc.edu.cn 6/111
• ARM处理器本身是32位设计,但也配备16位指令集。 –16位指令占用的存储器空间节省35%。 • 条件执行 –标志寄存器APSR(N,Z,C,V等条件标志) –所有的指令都可根据前面的执行结果决定是否被执行, 提高了指令的执行效率。 ARM处理器的特点 llxx@ustc.edu.cn 6/111 提高了指令的执行效率。 • 提高代码密度和执行速度 • 可用Load/Store指令批量传输数据。 • 可在一条数据处理指令中同时完成逻辑处理和移 位。 • 支持基于ARM处理器核的高集成SOC调试
ARM7的特征 》 The ARM7 Thumb Family ARM720T Open platform processor core ARM7EJ MMU ARM7TDMI-S Jazelle-enabled core 8K Cache ARM7TDMI Integer core Synthesizable integer core EmbeddedICE-RT EmbeddedICE-RT EmbeddedICE-RT EmbeddedICE-RT ETM9 Interface ETM7 Interface ETM7 Interface ETM7 Interface DSP Extensions ARM v4T ARM v4T ARM V4T Jazelle Extensions ARM7 Core ARM7 Core ARM7 Core ARM V5TEJ Thumb Extensions Thumb Extensions Thumb Extensions Thumb Extensions AHB Interface PERFORMANCE CHARACTERISTICS Processor Generic Performance Power Consumption Area Frequency Foundry Process MIPS/MHz mW/MHz mm' MHz (Dhrystone 2.1) (Typical) (Worst case) ARM7TDMI 0.18μm 09 0.25 0.53 90 ARM7TDMI-S 0.18μm 0.9 0.39 0.62 80-110 ARM7EJ-S 0.18μm 1.0 0.45 0.95 80-110 ARM720T 0.18m 0.9 0.65 3.00 75 ARM7TDMI 0.13μm 0.9 0.06 0.26 133 ARM7TDMI-S 0.13um 0.9 0.10 0.32 100-133 ARM7EJ-S 0.13m 1.0 0.18 0.42 100-133 ARM720T 0.13m 0.9 0.20 240 100 7187
ARM7的特征 llxx@ustc.edu.cn 7/87
ARM7微处理器系列 ·三级流水线结构。最高可达130MIPS。 -取指、译码、执行 ·对操作系统的支持广泛 -包括Vindows CE、Linux、Palm OS等。 ·指令系统与ARM9系列、ARM10E系列兼容 ·ARM7TMD1是日前使用最广泛的32位嵌入式 RISC处理器,属低端ARM处理器核。 -Samsung公司的S3C44B0 llxx@ustc.edu.cn 8/111
ARM7微处理器系列 • 三级流水线结构。最高可达130MIPS。 – 取指、译码、执行 • 对操作系统的支持广泛 – 包括Windows CE、Linux、Palm OS等。 llxx@ustc.edu.cn 8/111 • 指令系统与ARM9系列、ARM10E系列兼容 • ARM7TMDI是目前使用最广泛的32位嵌入式 RISC处理器,属低端ARM处理器核。 – Samsung公司的S3C44B0
ARM处理器结构 A31:0 ALE Address Register Address Register Address Address BN Incrementer Incrementer Register Bank Instruction (31 x 32bit registers) ◆EC Decoder (6 status registers) DATA3Z Register Bank & BGEND Logic uc 限0C32 Control -MCK ◆nWAIT Bocth's Booth's Instruction ◆nw Multiplier Multiplier Decoder ◆nBW & E= Control 庄品 Barrel Logic Shifter 卡 Barrel ◆0C Shifter ◆nTRANS ◆nREO 0 32 bit ALU Instruction 32 bit ALU C鬥 Pipeline CPA Read Data C图 以t Register Write Data Register Instruction Pipeline Write Data Register Read Data Register 个 7 DOUTI:0 nENOUT DATABI
ARM处理器结构 llxx@ustc.edu.cn 9/87
ARM9微处理器系列 ·5级流水线,哈佛结构,最高可达300M川PS。 -取指->指令译码->执行->数据缓存->写回 ·支持32位的高速AMBA总线接口。 。 全性能的MMU,支持Vindows CE、Linux、 Palm OS等多种主流嵌入式操作系统。 ·支持数据Cache和指令Cache,具有更高的指令 和数据处理能力。 ·ARM9系列主要应用于无线设备、仪器仪表、安 全系统、机顶盒、高端打印机、数字照相机和数 字摄像机等。 llxx@ustc.edu.cn 10/111
ARM9微处理器系列 • 5级流水线,哈佛结构,最高可达300MIPS。 –取指->指令译码->执行->数据缓存->写回 • 支持32位的高速AMBA总线接口。 • 全性能的MMU,支持Windows CE、Linux、 Palm OS等多种主流嵌入式操作系统。 llxx@ustc.edu.cn 10/111 • 支持数据Cache和指令Cache,具有更高的指令 和数据处理能力。 • ARM9系列主要应用于无线设备、仪器仪表、安 全系统、机顶盒、高端打印机、数字照相机和数 字摄像机等