版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二章ARM微处理器硬件结构,山东大学精品课程,嵌入式系统原理与接口技术,主编:贾智平张瑞华,清华大学出版社,2,内容提要,ARM存储系统机制,ARM处理器模式及内部寄存器,ARM处理器结构和技术特征,计算机体系结构,3,计算机体系结构,计算机中,按内存的组成分两种典型的结构:1.冯诺依曼结构/普林斯顿结构,4,冯诺依曼体系结构,指令寄存器,控制器,数据通道,输入,输出,中央处理器,存储器,程序,指令0,指令1,指令2,指令3,指令4,数据,数据0,数据1,数据2,结构特点:1、指令和数据存储在相同的内存空间,但存储地址不同。2、处理器利用相同的总线处理内存中的指令和数据,指令和数据具有相同的
2、数据宽度,指令与数据无法同时存取。,ARM7嵌入式微处理器亦采用此结构,5,哈佛体系结构,指令寄存器,控制器,数据通道,输入,输出,CPU,程序存储器,指令0,指令1,指令2,数据存储器,数据0,数据1,数据2,地址,指令,地址,数据,结构特点:1、指令存储和数据存储分开,指令和数据分别位于不同的存储空间。2、指令与数据的存取采用不同总线,取指令和存取数据可同时进行,微处理器具有较高的执行效率。,数字信号处理器DSP通常采用哈佛结构,ARM9嵌入式微处理器亦采用此结构。,6,第2章ARM微处理器硬件结构,1,2,计算机体系结构,ARM处理器结构和技术特征,ARM处理器模式及内部寄存器,3,4,
3、ARM存储系统机制,7,ARM简介,ARM公司简介ARM是AdvancedRISCMachines的缩写,它是一家微处理器行业的知名企业,该企业设计了大量高性能、廉价、耗能低的RISC(精简指令集)处理器。公司的特点是只设计芯片,而不生产。它将技术授权给世界上许多著名的半导体、软件和OEM厂商,并提供服务,8,ARM简介,ARM公司简介,将技术授权给其它芯片厂商,形成各具特色的ARM芯片,9,ARM处理器内核(简称ARM核),所谓ARM核就是传统意义上的微处理器,目前ARM公司共推出了7个ARM版本,这些版本的变化主要体现在内核的变化和内核的扩展。ARM核=ALU+CU+R+内部总线主要包括:
4、1、算术逻辑部件2、控制部件3、寄存器组4、内部总线。,10,ARM简介,ARM处理器的应用当前主要应用于消费类电子领域;到目前为止,基于ARM技术的微处理器应用约占据了32位嵌入式微处理器75以上的市场份额全球80%的GSM/3G手机、99%的CDMA手机以及绝大多数PDA产品均采用ARM体系的嵌入式处理器,“掌上计算”相关的所有领域皆为其所主宰。ARM技术正在逐步渗入到我们生活的各个方面。,11,ARM简介,ARM体系结构,ARM处理器为RISC芯片,其简单的结构使ARM内核非常小,这使得器件的功耗也非常低。它具有经典RISC的特点:,12,ARM体系结构版本,ARM体系结构共定义了7个版
5、本,版本号分别为1-7。同时,各版本中还有一些变种,这里将某些特定功能称为ARM体系的变种(variant)ARM体系结构版本的变化主要体现为增加ARM核外围的组件以改善ARM性能和增加内核的功能。硬件ARM核外围的组件扩展:1、cache和紧耦合存储器TCM(片上RAM)2、存储管理部件MMU3、协处理器(配置cache、TCM和存储管理),12,13,ARM体系结构版本,ARM核的扩充功能:1、T变种Thumb指令集2、M变种增加64位长乘法指令3、E变种增强型DSP指令E变种的ARM体系增加了一些增强处理器对典型的DSP算法处理能力的附加指令。4、J变种java加速器Jazelle提供了
6、Java加速功能,使得Java代码的运行速度比普通的Java虚拟机提高了8倍。5、SIMD变种(单指令流多数据流)ARM多媒体功能扩展ARM媒体功能扩展SIMD技术极大地提高了嵌入式应用系统的音频和视频处理能力,可使微处理器的音频和视频处理性能提高4倍。,14,ARM体系结构版本,ARM体系结构版本V1-V7(自学)主要是:寻址能力提高、增加不同的指令增加不同的硬件处理部件在不同的版本,有不同应用的处理芯片ARMv7定义了3种不同的处理器配置(processorprofiles):ProfileA是面向复杂、基于虚拟内存的OS和应用;ProfileR是针对实时系统;ProfileM是针对低成本
7、应用的系统。,15,ARM处理器的分类,结构体系版本(Architecture)ARMv4TARMv5TEARMv6ARMCortex(v7),ProcessorFamilyARM7ARM9ARM10ARM11ARMCortex,16,ARM各系列处理器,ARM公司开发了很多系列的ARM处理器核,目前最新的系列已经是ARM11了,而ARM6核以及更早的系列已经很罕见了。目前应用比较广泛的系列是:,ARM7,ARM9,ARM9E,ARM10,ARM11,SecurCore,Cortex,Xscale,17,ARM命名规则:1、基于ARMArchitecture的版本命名规则:|ARMVn|var
8、iants|x(variants)|Vnn-指令集版本号,n1:7。variants-变种。x(variants)-排除x后指定的变种例,ARMv5TxM表示ARM指令集版本为5,支持T变种,不支持M变种。,18,2、基于ARM处理器系列命名规则ARMxyzTDMIEJF-Sx-处理器系列y-存储管理/保护单元z-cacheD-支持片上调试(加断点,单步执行)I-支持EmbeddedICE,支持嵌入式跟踪调试。开发环境可跟踪调试目标板。-S-可综合版本,无硬核,工艺固定不可综合。,19,ARM7TDMI,例:ARM7TDMI:ARM720T:带MMU的处理器核心,支持操作系统;ARM7EJ-S
9、:带有DSP和JazelleTM技术,能够实现Java加速功能,处理器的可综合版本;,20,ARM7,ARM7微处理器系列特点:冯诺伊曼体系结构;ARM7TDMI是目前应用最广的微处理器核;ARM720T带有MMU和8KB的指令数据混合cache;ARM7EJ执行ARMv5TEJ指令,5级流水线,提供Java加速指令,没有存储器保护。,21,ARM7TDMI,简介,ARM7TDMI处理器是ARM通用32位微处理器家族的成员之一。它具有优异的性能,但功耗却很低,使用门的数量也很少。它属于精简指令集计算机(RISC),比复杂指令集计算机(CISC)要简单得多。这样的简化实现了:,高的指令吞吐量;出
10、色的实时中断响应;小的、高性价比的处理器宏单元。,22,ARM7TDMI,三级流水线,ARM7TDMI处理器使用流水线来增加处理器指令流的速度。这样可使几个操作同时进行,并使处理和存储器系统连续操作,能提供0.9MIPS/MHz的指令执行速度。ARM7TDMI的流水线分3级,分别为:取指译码执行,23,ARM7TDMI,存储器访问,ARM7TDMI处理器使用了冯诺依曼(VonNeumann)结构,指令和数据共用一条32位总线。只有装载、存储和交换指令可以对存储器中的数据进行访问。数据可以是字节(8位)、半字(16位)或者字(32位)。,24,ARM7TDMI结构框图,25,基本组成:(详见前图
11、)1、寄存器块由通用寄存器和状态寄存器组成,主要用来保存处理器状态和处理器工作中的数据。2、5个对外端口2个读端口,用于读2个源操作数;1个写端口,用于写入目的操作数;上述端口都可访问任意寄存器;1个专门访问程序计数器R15的附加读端口;1个附加写端口。,26,3、桶式移位器:主要完成指令中第2个操作数移位。4、ALU:执行算术逻辑运算5、地址寄存器和增值器:选择和保存所有存储器地址,并在需要时通过地址增值器生成顺序地址。6、数据寄存器:对传送到存储器或从存储器取回的数据暂存。7、控制通路/控制器:基本功能模块是指令解码器和相关的控制逻辑。,26,27,ARM处理器工作状态,ARM和Thumb
12、状态ARM指令系统(V4版以后具有Thumb指令集):32位ARM指令集:固定的32位指令,Load/StoreRISC特征,3地址格式。16位Thumb指令集:是ARM指令集的子集,按16位指令重新编码,固定的16位指令,Load/StoreRISC特征,2地址格式。,注意:两个状态之间的切换并不影响处理器模式或寄存器内容。,28,处理器状态切换,使用BX指令将ARM7TDMI内核的操作状态在ARM状态和Thumb状态之间进行切换,程序如下所示。,;从Arm状态切换到Thumb状态LDRR0,=Lable+1BXR0;从Thumb状态切换到ARM状态LDRR0,=LableBXR0,地址最低
13、位为1,表示切换到Thumb状态,地址最低位为0,表示切换到ARM状态,跳转地址标号,29,流水线技术,流水线(Pipeline)技术:若干个指令可并行执行提高了CPU的运行效率内部信息流要求通畅流动(pc-8)add(pc-4)sub(pc)cmp,29,译码,取指,执行add,译码,取指,执行sub,译码,取指,执行cmp,时间,3周期指令的ARM3级流水线,1T,2T,3T,30,流水线技术,为增加处理器指令流的速度,ARM7系列使用3级流水线允许多个操作同时处理,比逐条指令执行要快。PC指向正被取指的指令,而非正在执行的指令,Fetch,Decode,Execute,从存储器中读取指令
14、,解码指令,寄存器读(从寄存器Bank)移位及ALU操作寄存器写(到寄存器Bank),PCPC,PC-4PC-2,PC-8PC-4,ARMThumb,当前pc所指向的指令,已完成取指的指令,已完成解码的指令,31,在ARM7的3级流水线结构中流水线易出现阻塞或间断,这必然降低了流水线的效率,为了提高处理器的性能,必然要考虑如何优化处理器的组织结构。(1)缩短程序执行时间:提高时钟频率fclk减少每条指令的平均时钟周期数CPI,流水线技术,Tprog:程序执行时间Ninst:指令条数CPI:指令平均时钟周期数FCLK:时钟频率,32,流水线技术,(2)解决流水线相关:结构相关数据相关控制相关,如
15、果某些指令在流水线中重叠执行时,产生资源冲突,则称该流水线存在结构相关。解决:资源重复(Cache分离、ALU中单独的地址计算加法器),写后读”、“写后写”“读后写”解决:专用通路、流水线互锁技术,当流水线遇到分支指令和其他会改变PC值的指令时,取指取决于指令执行条件,可能需重新取指,致使流水线停顿。解决:引入延时分支、尽早计算转移成功时的目标地址。,addr0,r1,r2movr2,r0,addr0,r1,r2addr0,r3,r4,movr2,r0addr0,r1,r2,33,多周期ARM指令的3级流水线操作,STR计算存储器地址与ADD译码,都为下一周期产生数据传送控制信号,不能同步进行。Dataxfer-excute占用数据路径,两条指令不能同时译码。,取指与存数冲突,若流水线产生资源冲突,则称该流水线存在结构相关。如,取指存数冲突,2条指
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年中医耳鼻喉科肺经郁热鼻窒辨证技能测试卷及答案
- 林区火灾预防方法和扑救对策培训
- 起升机构操作要领及安全技术培训
- 汽车加油站火灾危险性及对策培训
- (2026年)医院放射防护管理规章制度
- (2026年)学校防欺凌信息员制度
- (2026年)物业管理公司走访制度
- 国内Geo优化服务商:2026年市场格局与三大代表平台深度解析
- 2025年河南省焦作市中站区数学四下期中检测试题含解析
- 2025年河南省南阳市方城县部分校数学四下期中复习检测模拟试题含解析
- 2026年秋苏教版科学五年级上册教学工作计划
- (2026年秋)二年级上册语文教案
- 火车站项目顶棚吊顶施工方案
- 2026年物流师资格认证(CICP)考试(助理物流师三级)在线题库
- 2026年英语四级听力真题及听力音频
- 新版2025-2026新人教版小学2二年级数学上册(全册)教案【新教材】
- 2026年广东佛山市中考一模化学试卷(无答案)
- 浙江省水利建设工程文明标化工地创建指导手册(2024年)
- 子宫内膜癌护理查房
- LJC改性石膏内隔墙及装配式装修技术规程
- (正式版)DB43∕T 1697-2019 《建设项目临时用地复垦规范》
评论
0/150
提交评论