《ARM体系架构解析ppt课件.ppt》由会员分享,可在线阅读,更多相关《ARM体系架构解析ppt课件.ppt(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用第二章 ARM技术概述vARM概述vARM体系结构vThumb技术介绍经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用一、ARM概述ARM是什么?是什么?vAdvanced RISC Machines一个公司的名字英国知识产权核(IP)设计公司一类微处理器的通称一种技术的名字(ARM微处理器核)经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额
2、为消费者购买商品的价款或接受服务的费用 ARM 微处理器的应用领域及特点微处理器的应用领域及特点 ARM处理器市场覆盖率最高、发展趋势广阔基于ARM技术的32位微处理器,市场的占有率目前已达到80%。绝大多数IC制造商都推出了自己的ARM结构芯片。我国的中兴集成电路、大唐电讯、中芯国际和上海华虹,以及国外的一些公司如德州仪器、意法半导体、Philips、Intel、Samsung等都推出了自己设计的基于ARM核的处理器。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v应用一:工业控制领域作为32 的RISC 架
3、构,基于ARM 核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展,ARM 微控制器的低功耗、高性价比,向传统的8 位/16 位微控制器提出了挑战。v应用二:无线通讯领域目前已有超过85%的无线通讯设备采用了ARM 技术,ARM 以其高性能和低成本,在该领域的地位日益巩固。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v应用三:网络设备随着宽带技术的推广,采用ARM 技术的ADSL 芯片正逐步获得竞争优势。此外,ARM 在语音及视频处理上进行了优化,并获得广泛支持,
4、也对DSP 的应用领域提出了挑战。v应用四:消费类电子产品ARM 技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。v应用五:成像和安全产品现在流行的数码相机和打印机中绝大部分采用ARM 技术。手机中的32位SIM 智能卡也采用了ARM 技术。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vARM处理器的使用量经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vARM处理器的特点:1、体积小、低功耗、低成本、高性能;
5、2、支持Thumb(16 位)/ARM(32 位)双指令集,能很好的兼容8 位/16 位器件;3、大量使用寄存器,指令执行速度更快;4、大多数数据操作都在寄存器中完成;5、寻址方式灵活简单,执行效率高;6、指令长度固定;经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用几个重要概念:冯冯诺依曼体系结构模型诺依曼体系结构模型指令寄存器指令寄存器控制器控制器数据通道数据通道输入输入输出输出中央处理器中央处理器存储器存储器程序程序指令指令0指令指令1指令指令2指令指令3指令指令4数据数据数据数据0数据数据1数据数据2总线
6、经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v指令的执行周期T1)取指令(Instruction Fetch):TF2)指令译码(Instruction Decode):TD3)执行指令(Instruction Execute):TE4)存储(Storage):TS每条指令的执行周期:T=TF+TD+TE+TS经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用冯诺依曼体系的特点v1)数据与指令都存储在同一存储区中,取指令与取数据利
7、用同一数据总线。v2)被早期大多数计算机所采用v3)ARM7冯诺依曼体系结构简单,但速度较慢。取指不能同时取数据经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v哈佛体系结构模型哈佛体系结构模型指令寄存器指令寄存器控制器控制器数据通道数据通道输入输入输出输出中央处理器中央处理器程序存储器程序存储器指令指令0指令指令1指令指令2数据存储器数据存储器数据数据0数据数据1数据数据2总线总线经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v
8、哈佛体系结构的特点1)程序存储器与数据存储器分开.2)提供了较大的存储器带宽,各自有自己的总线。3)适合于数字信号处理.4)大多数DSP都是哈佛结构.5)ARM9是哈佛结构6)取指和取数在同一周期进行,提高速度,改进哈佛体系结构分成三个存储区:程序、数据、程序和数据共用。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用CISC:复杂指令集(Complex Instruction Set Computer)v具有大量的指令和寻址方式v8/2原则:80%的程序只使用20%的指令v大多数程序只使用少量的指令就能够运行。
9、vCISC CPU 包含有丰富的单元电路,因而功能强、面积大、功耗大。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用RISC:精简指令集(Reduced Instruction Set Computer)v在通道中只包含最有用的指令,只提供简单的操作。v确保数据通道快速执行每一条指令vLoad-store结构 处理器只处理寄存器中的数据,load-store指令用来完成数据在寄存器和外部存储器之间的传送。v使CPU硬件结构设计变得更为简单,RISC CPU包含较少的单元电路,因而面积小、功耗低 经营者提供商品或
10、者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用主要差别:v寄存器RISC指令集指令集 拥有更多的通用寄存器,每个可以存放数据和地址,寄存器为所有的数据操作提供快速的存储访问。CISC指令集指令集 多用于特定目的的专用寄存器。vLOAD STORE 结构RISC结构结构 Cpu 仅处理寄存器中的数据,采用独立的、专用的LOAD STORE 指令来完成数据在寄存器和外存之间的传送。(访存费时,处理和存储分开,可以反复的使用保存在寄存器中的数据,而避免多次访问外存)。CISC结构结构 能直接处理存储器中的数据。经营者提供商品或者服务
11、有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用 流水线:流水线:是把一个重复的过程分解为若干个子过是把一个重复的过程分解为若干个子过程,每个子过程可以与其他子过程同时进行。程,每个子过程可以与其他子过程同时进行。由于这种工作方式与工厂中的生产流水线十分相似,由于这种工作方式与工厂中的生产流水线十分相似,因此,把它称为流水线工作方式。因此,把它称为流水线工作方式。v 处理器按照一系列步骤来执行每一条指令。典型处理器按照一系列步骤来执行每一条指令。典型的步骤为:的步骤为:1)从存储器读取指令()从存储器读取指令(fetch)2)译码以鉴
12、别它是哪一类指令()译码以鉴别它是哪一类指令(dec)3)从寄存器组取得所需的操作数()从寄存器组取得所需的操作数(reg)4)将操作数进行组合以得到结果或存储器地址()将操作数进行组合以得到结果或存储器地址(exe)5)如果需要,则访问存储器存取数据()如果需要,则访问存储器存取数据(mem)6)将结果回写到寄存器组()将结果回写到寄存器组(res)流水线技术经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v三级流水线技术流水线技术经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增
13、加赔偿的金额为消费者购买商品的价款或接受服务的费用ARM9TDMI流水线技术InstructionFetch Shift+ALUMemoryAccessRegWriteRegReadRegDecodeFETCHDECODEEXECUTEMEMORYWRITEARM9TDMIARM or ThumbInst DecodeReg SelectRegReadShiftALURegWriteThumbARMdecompressARM decodeInstructionFetchFETCHDECODEEXECUTEARM7TDMI经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损
14、失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用 ARM存储器以存储器以8位为一个单元存储数据位为一个单元存储数据(一个字节一个字节),每个,每个存储单元分配一个存储地址。存储单元分配一个存储地址。ARM将存储器看作是从零地址开始的字节的线性组合。将存储器看作是从零地址开始的字节的线性组合。作为作为32位的微处理器,位的微处理器,ARM体系结构所支持的最大寻址空体系结构所支持的最大寻址空间为间为4GB(232字节)。字节)。从零字节到三字节放置第一个存储的从零字节到三字节放置第一个存储的字字数据,从第四个数据,从第四个字节到第七个字节放置第二个存储的字节到第七个字节放置第二个存储的字字
15、数据,依次排列。数据,依次排列。32位的字数据要使用位的字数据要使用4个地址单元,个地址单元,16位半数据要使用位半数据要使用2个个地址单元。地址单元。这样,就存在一个所存储的字或半字数据的排列顺序问这样,就存在一个所存储的字或半字数据的排列顺序问题。题。ARM体系结构可以用两种方法存储字数据,称为体系结构可以用两种方法存储字数据,称为大端格大端格式式和和小端格式小端格式。ARM存储格式经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v 大端格式大端格式(big-endian):字数据的高字节存储在低地址字数据的
16、高字节存储在低地址中,而字数据的低字节则存放在高地址中。中,而字数据的低字节则存放在高地址中。v 小端格式小端格式(low-endian):与大端存储格式相反。低地址与大端存储格式相反。低地址中存放的是字数据的低字节,高地址存放的是字数据的高中存放的是字数据的低字节,高地址存放的是字数据的高字节。字节。缺省设置为小端格式。缺省设置为小端格式。ARM存储格式经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用ARM存储格式大端的数据存放格式大端的数据存放格式 小端的数据存放格式小端的数据存放格式低地址低地址高地址高地址
17、地址地址A地址地址A+1地址地址A+2地址地址A+3word a=0 x f6 73 4b cdf6734bcd低地址低地址高地址高地址地址地址A地址地址A+1地址地址A+2地址地址A+3f6734bcd经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用二、ARM体系结构ARM系列产品表示ARM 926EJ-SARM 926EJ-SFamily number 7:ARM7 9:ARM910:ARM1011:ARM11Memory system 2:Cache,MMU,Process ID 4:Cache,MPU 6
18、:Write buffer,no cacheMemory size 0:Cache size(4-128KB)2:Reduced cache size 6:TCMSynthesizableExtensions E:DSP extension J:Jazelle extension T:Thumb support经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用标志含义说明T支持Thumb指令集Thumb指令集版本1:ARMv4TThumb指令集版本2:ARMv5TThumb-2:ARMv6TD片上调试使处理器能够停
19、止,以响应调试请求M支持长乘法32位乘32位得到64位,32位的乘加得到64位IEmbedded ICE提供片上断点和调试点EDSP指令增加了DSP算法处理器指令:16位乘加指令,饱和的带符号数的加减法,双字数据操作,cache预取指令JJava加速器Jazelle提高java代码的运行速度S可综合提供VHDL或Verilog语言设计文件经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用 ARM处理器的分类v基于指令集体系结构的分类v1,v2,v5,v5TEJ,v6等v基于处理器内核的分类ARM7,ARM9,ARM
20、10,ARM11,StrongARM,XScale等经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vARM体系结构版本v ARM架构自诞生至今,已经发生了很大的演变,至今已定义的版本有:v V1版架构v V2版架构v V3版架构v V4版架构v V5版架构v V6版架构经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vV1版架构v 该版架构只在原型机ARM1出现过,其基本性能:基本的数据处理指令(无乘法)字节、半字和字的LOAD/
21、STORE指令转移指令,包括子程序调用及链接指令软件中断指令寻址空间:64M字节(26)经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vV2版架构v 该版架构对V1版进行了扩展,如ARM2架构,增加了以下功能:乘法和乘加指令支持协处理器操作指令快速中断模式SWP/SWPB基本存储器与寄存器交换指令寻址空间:64M字节经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vV3版架构把寻址空间增至32位(4G字节),增加了当前程序状态寄存
22、器CPSR和程序状态保存寄存器SPSR以便于异常的处理。增加了中止和未定义二种处理器模式。ARM6就采用该版架构。指令集变化如下:增加了MRS/MSR指令,以访问新增的CPSR/SPSR寄存器增加了从异常处理返回的指令功能。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vV4版架构v V4版架构是目前应用最广的ARM体系结构,对V3版架构进行了进一步扩充,有的还引进了16位的Thumb指令集,使ARM使用更加灵活。ARM7、ARM8、ARM9和StrongARM都采用该版架构。指令集中增加了以下功能:有符号、无
23、符号的半字和有符号字节的Load/Store指令。增加了16位Thumb指令集完善了软件中断SWI指令的功能增加了处理器的特权模式。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vV5版架构v 这是最近几年推出ARM架构,在V4版基本上增加了一些新的指令,ARM10和XScale都采用该版架构,这些新增指令有:带有链接和交换的转移BLX指令计数前导零CLZ指令BKPT软件断点指令增加了信号处理指令为协处理器增加更多可选择的指令经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿
24、的金额为消费者购买商品的价款或接受服务的费用vv6版架构2001年发布的适合使用电池供电的便携式设备 增加了 SIMD功能扩展,提高了嵌入式应用系统的音频、视频处理能力。首先在2002年发布的ARM11处理器中使用经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用ARM处理器内核系列:vARM7 FamilyUnified Cache内存管理流水线级别ThumbDSPJazelleARM7TDMI无无3有无无ARM7TDMI-S无无3有无无ARM710T/720T8kMMU3有无无ARM740T8k或4kProte
25、ction Unit3有无无ARM7EJ-S无无3有有有经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vARM9 FamilyCache内存管理流水线级别ThumbDSPJazelleARM9TDMI无无5有无无ARM920T16K/16kMMU5有无无ARM922T8k/8kMMU5有无无ARM940T4k/4kProtection Unit5有无无经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vARM10 FamilyARM
26、10EJ-S无无6有有有ARM1026EJ-S0,4-128k/0,4-128kMMU6有有有Cache内存管理流水线级别ThumbDSPJazelleARM10E无无6有有无ARM1020E32k/32kMMU6有有无ARM1022E16k/16kMMU6有有无ARM10TDMI无无6有无无ARM1020T32k/32kMMU6有无无经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用vARM11 FamilyCache内存管理流水线级别ThumbDSPJazelle浮点运算ARM1136J-S4-64kMMU8有
27、有有无ARM1136JF-S4-64kMMU8有有有有ARM1156T2-S可配置9Thumb-2有无无ARM1156T2F-S可配置9Thumb-2有无有经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v指令集体系结构(ISA)ThumbDSPJazelleMediaTrustZoneThumb-2v4StrongARMv4T*ARM7T,ARM9v5T*ARM10T,XScalev5TE*ARM9E,ARM10Ev5TEJ*ARM7EJ,ARM9EJ,ARM10EJv6*ARM1136J(F)-Sv6Z*v6
28、T2*ARM1156T2(F)-S注:v5T支持的Thumb是对v4T中的Thumb的扩展经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用ARM芯片选择的一般原则芯片选择的一般原则v 从应用的角度,对在选择ARM芯片时所应考虑的主要因素有:v(1)ARM芯核 如果希望使用WinCE或Linux等操作系统以减少软件开发时间,就需要选择ARM720T以上带有MMU功能的ARM芯片.v(2)系统时钟控制器 系统时钟决定了ARM芯片的处理速度。ARM7的处理速度为0.9MIPS/MHz,常见的ARM7芯片系统主时钟为20
29、MHz-133MHz,ARM9的处理速度为1.1MIPS/MHz,常见的ARM9的系统主时钟为100MHz-233MHz,ARM10最高可以达到700MHz 经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v(3)内部存储器容量 在不需要大容量存储器时,可以考虑选用有内置存储器的ARM芯片。v(4)GPIO数量 在某些芯片供应商提供的说明书中,往往申明的是最大可能的GPIO数量,但是有许多引脚是和地址线、数据线、串口线等引脚复用的。这样在系统设计时需要计算实际可以使用的GPIO数量。P307-表6.26经营者提供
30、商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v(5)USB接口 许多ARM芯片内置有USB控制器,有些芯片甚至同时有USB Host和USB Slave控制器。v(6)中断控制器 ARM内核只提供快速中断(FIQ)和标准中断(IRQ)两个中断向量。但各个半导体厂家在设计芯片时加入了自己不同的中断控制器,以便支持诸如串行口、外部中断、时钟中断等硬件中断。外部中断控制是选择芯片必须考虑的重要因素,合理的外部中断设计可以很大程度的减少任务调度的工作量。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损
31、失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v(7)LCD控制器 有些ARM芯片内置LCD控制器,有的甚至内置64K彩色TFT LCD控制器。在设计PDA和手持式显示记录设备时,选用内置LCD控制器的ARM芯片较为适宜。v(8)扩展总线 大部分ARM芯片具有外部SDRAM和SRAM扩展接口,不同的ARM芯片可以扩展的芯片数量即片选线数量不同,外部数据总线有8位、16位或32位。某些特殊应用的ARM芯片如德国Micronas的PUC3030A没有外部扩展功能。v(9)DSP协处理器v(10)封装 主要的封装有QFP、TQFP、PQFP、LQFP、BGA、LBGA等形式,BGA封装具有
32、芯片面积小的特点,可以减少PCB板的面积,但是需要专用的焊接设备,无法手工焊接。另外一般BGA封装的ARM芯片无法用双面板完成PCB布线,需要多层PCB板布线。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用三、Thumb技术介绍v ARM的RISC体系结构的发展中已经提供了低功耗、小体积、高性能的方案。而为了解决代码长度的问题,ARM体系结构又增加了变种,开发了一种新的指令体系,这就是Thumb指令集,它是ARM技术的一大特色。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔
33、偿的金额为消费者购买商品的价款或接受服务的费用vThumb是ARM体系结构的扩展。它有从标准32位ARM指令集抽出来的36条指令格式,可以重新编成16位的操作码。这能带来很高的代码密度。v支持Thumb的ARM体系结构的处理器状态可以方便的切换、运行到Thumb状态,在该状态下指令集是16位的Thumb指令集。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v与与ARMARM指指令令集集相相比比ThumbThumb指指令令集集具具有有以以下下局局限限 完成相同的操作,Thumb指令通常需要更多的指令,因此在对系统运行时间要求苛刻的应用场合ARM指令集更为适合;Thumb指令集没有包含进行异常处理时需要的一些指令,因此在异常中断时,还是需要使用ARM指令,这种限制决定了Thumb指令需要和ARM指令配合使用。