最新版《嵌入式系统技术》课件第3章ARM体系结构.ppt

上传人(卖家):晟晟文业 文档编号:4487953 上传时间:2022-12-14 格式:PPT 页数:193 大小:3.10MB
下载 相关 举报
最新版《嵌入式系统技术》课件第3章ARM体系结构.ppt_第1页
第1页 / 共193页
最新版《嵌入式系统技术》课件第3章ARM体系结构.ppt_第2页
第2页 / 共193页
最新版《嵌入式系统技术》课件第3章ARM体系结构.ppt_第3页
第3页 / 共193页
最新版《嵌入式系统技术》课件第3章ARM体系结构.ppt_第4页
第4页 / 共193页
最新版《嵌入式系统技术》课件第3章ARM体系结构.ppt_第5页
第5页 / 共193页
点击查看更多>>
资源描述

1、第3章 ARM体系结构 主要内容ARM体系结构概述体系结构概述 编程模型编程模型ARM基本寻址方式基本寻址方式ARM指令集指令集ARM9TDMI内核内核ARM9与与ARM7的比较的比较ARM920T核核 3.1.1 ARM体系结构的特点 ARM ARM即即Advanced RISC MachinesAdvanced RISC Machines的缩写。的缩写。ARMARM公司公司19901990年年成立,是设计公司。成立,是设计公司。ARMARM是知识产权(是知识产权(IPIP)供应商供应商,本身不生,本身不生产芯片,靠转让设计许可,由合作伙伴公司来生产各具特色产芯片,靠转让设计许可,由合作伙伴

2、公司来生产各具特色的芯片。的芯片。ARM ARM处理器的处理器的3 3大特点是:大特点是:耗电少、成本低、功能强;耗电少、成本低、功能强;1616位位/32/32位双指令集;位双指令集;全球众多合作伙伴保证供应。全球众多合作伙伴保证供应。ARMARM处理器为处理器为RISCRISC芯片,其简单的结构使芯片,其简单的结构使ARMARM内内核非常小,这使得器件的功耗也非常低。它具有经核非常小,这使得器件的功耗也非常低。它具有经典典RISCRISC的特点:的特点:大的、统一的寄存器文件;大的、统一的寄存器文件;装载装载/保存结构,数据处理保存结构,数据处理 操作只针对寄存器操作只针对寄存器的内容,而

3、不直接对存储器进行操作;的内容,而不直接对存储器进行操作;简单的寻址模式简单的寻址模式;统一和固定长度的指令域,简化了指令的译码,统一和固定长度的指令域,简化了指令的译码,便于指令流水线设计。便于指令流水线设计。3.1.1 ARM体系结构的特点3.1.1 ARM体系结构的特点ARMARM体系结构的特点:体系结构的特点:RISCRISC型处理器结构型处理器结构ARM/ThumbARM/Thumb指令集指令集多处理器状态模式多处理器状态模式嵌入式在线仿真调试嵌入式在线仿真调试灵活和方便的接口灵活和方便的接口ARMARM体系结构具有协处理器接口体系结构具有协处理器接口 ARMARM处理器核还具有片上

4、总线处理器核还具有片上总线AMBA(AHB/ASB/APB)AMBA(AHB/ASB/APB)低电压低功耗的设计低电压低功耗的设计 3.1.1 ARM体系结构的特点ARMARM目前的产品系列:目前的产品系列:ARM7ARM7ARM9ARM9ARM9EARM9EARM10ARM10SecurCoreSecurCore通用处理器系列通用处理器系列专门为安全设备设专门为安全设备设计的处理器系列计的处理器系列3.1.2 ARM处理器结构ARM的体系结构的体系结构 ARM的流水线结构的流水线结构ARM存储器结构存储器结构ARM I/O结构结构ARM AMBA接口接口ARM协处理器接口协处理器接口ARM

5、JTAG 调试接口调试接口 1.ARM的体系机构由由3232位位ALUALU、3131个个3232位通用寄存器及位通用寄存器及6 6位位状态寄存器、状态寄存器、32328 8位乘法器、位乘法器、32323232位桶形移位寄存器、位桶形移位寄存器、指令译码及控制逻指令译码及控制逻辑、指令流水线和辑、指令流水线和数据数据/地址寄存器组地址寄存器组成。成。v ALUALU由两个操作数锁存器、加法器、逻辑功能、结果及零检测逻辑构成。由两个操作数锁存器、加法器、逻辑功能、结果及零检测逻辑构成。ALU ALU的逻辑结构的逻辑结构v ALUALU 每一时钟周期由双相时钟组成。每一时钟周期由双相时钟组成。AL

6、UALU的最小数据通路周期由以下组成:的最小数据通路周期由以下组成:寄存器读时间;寄存器读时间;移位器延迟;移位器延迟;ALUALU延迟;延迟;寄存器写建立时间;寄存器写建立时间;双相时钟间非重叠时间。双相时钟间非重叠时间。ALU ALU的数据通路时序的数据通路时序v 桶形移位寄存器桶形移位寄存器 为了减少移位的延迟时间,为了减少移位的延迟时间,ARMARM采用了采用了32323232位的桶形移位寄存器。位的桶形移位寄存器。这样,可以使左移这样,可以使左移/右移右移n n位、环移位、环移n n位和算术右移位和算术右移n n位等都可以一次完成。位等都可以一次完成。v 高速乘法器高速乘法器 ARM

7、 ARM为了提高运算速度,采用为了提高运算速度,采用两位乘法两位乘法的方法的方法。两位乘两位乘法根据乘数的法根据乘数的2 2位来实现位来实现“加加-移位移位”运算。运算。乘数乘数A An-1n-1A An n:00-00-原部分积原部分积S S右移右移2 2位;位;01-01-原部分积原部分积S S加被乘数后右移加被乘数后右移2 2位;位;10-10-原部分积原部分积S S加加2 2倍被乘数后,右移倍被乘数后,右移2 2位;位;11-11-原部分积原部分积S S加加3 3倍被乘数后,右移倍被乘数后,右移2 2位。位。2 2倍被乘数可通过将被乘倍被乘数可通过将被乘数左乘数左乘1 1位来实现;位来

8、实现;3 3倍可看作倍可看作4-1(114-1(11100-100-1)1),故先减,故先减1 1倍被乘数,倍被乘数,再加再加4 4倍被乘数来实现。倍被乘数来实现。4 4倍被乘数的操作实际上倍被乘数的操作实际上是在该是在该2 2位乘数位乘数1111的高的高1 1位位乘数加乘数加“1 1”,且此,且此“1 1”可暂存在可暂存在CoutCout进位触发器进位触发器中。中。v 高速乘法器高速乘法器 ARM ARM的高速乘法器采用的高速乘法器采用32328 8位的结构,内部结构如下:位的结构,内部结构如下:v 浮点部件浮点部件 浮点部件是作为选件为浮点部件是作为选件为ARMARM体系结构选用,体系结构

9、选用,FPA10FPA10浮点加速器以协处浮点加速器以协处理器方式与理器方式与ARMARM相连,并通过协处理器指令的解释来执行。相连,并通过协处理器指令的解释来执行。v 控制器控制器 ARMARM的控制器采用硬接线的可编程逻辑阵列的控制器采用硬接线的可编程逻辑阵列PLAPLA。输入端输入端1414根,输出根,输出4040根,分散控制根,分散控制Load/StoreLoad/Store多路、乘法器、协处理器以及地址、寄存器、多路、乘法器、协处理器以及地址、寄存器、ALUALU和移位器的控制。和移位器的控制。v 寄存器寄存器ARMARM内含内含3737个个寄存器,其中:寄存器,其中:3131个通用

10、个通用3232位寄存器位寄存器6 6个状态寄存器个状态寄存器 3.1.2 ARM处理器结构ARM的体系结构的体系结构 ARM的流水线结构的流水线结构ARM存储器结构存储器结构ARM I/O结构结构ARM AMBA接口接口ARM协处理器接口协处理器接口ARM JTAG 调试接口调试接口 v 指令执行的阶段指令执行的阶段计算机中的计算机中的1 1条指令的执行可以分若干个阶段:条指令的执行可以分若干个阶段:取指,从存储器中取出指令取指,从存储器中取出指令(fetch)fetch);译码,指令译码译码,指令译码(dec)dec):取操作数,假定操作数从寄存器组中取取操作数,假定操作数从寄存器组中取(r

11、eg)reg);执行运算执行运算(ALU)ALU);存储器访问,操作数与存储器有关存储器访问,操作数与存储器有关(mem)mem);结果写回寄存器结果写回寄存器(res)res)。v 指令执行的阶段指令执行的阶段流水线的停顿流水线的停顿相邻指令执行的数据相关性会产生指令执行的停顿。相邻指令执行的数据相关性会产生指令执行的停顿。v 指令执行的阶段指令执行的阶段碰到分支类指令,则会使后面紧接该条指令的几条指碰到分支类指令,则会使后面紧接该条指令的几条指令的执行都无效。令的执行都无效。遇到分支指令遇到分支指令v ARMARM体系结构的体系结构的3 3级流水线级流水线 ARM7 ARM7体系结构采用了

12、体系结构采用了3 3级流水线,分为取指,译码和执级流水线,分为取指,译码和执行。下图是单周期行。下图是单周期3 3级流水线的操作示意图。级流水线的操作示意图。v ARMARM体系结构的体系结构的3 3级流水线级流水线 由于取指的存储器访问和执行的数据通路占用都是不可同时共享的资由于取指的存储器访问和执行的数据通路占用都是不可同时共享的资源,因此对多周期指令来说,会产生流水线阻塞。如图源,因此对多周期指令来说,会产生流水线阻塞。如图3-123-12所示下图的影所示下图的影印框周期都是与存储器访问有关的。因此在流水线设计中不允许重叠印框周期都是与存储器访问有关的。因此在流水线设计中不允许重叠 。v

13、 ARMARM体系结构的体系结构的5 5级流水线级流水线 5 5级流水线把存储器的取指与级流水线把存储器的取指与数据存取分开,增加了数据存取分开,增加了I-CacheI-Cache和和D-CacheD-Cache以提高存储器存取的以提高存储器存取的效率,增加了数据写回的专门效率,增加了数据写回的专门通路和寄存器,以减少数据通通路和寄存器,以减少数据通路冲突。路冲突。这样,这样,5 5级流水线分为:级流水线分为:取指、取指、指令译码、执行、数据缓存和指令译码、执行、数据缓存和写回写回。3.1.2 ARM处理器结构ARM的体系结构的体系结构 ARM的流水线结构的流水线结构ARM存储器结构存储器结构

14、ARM I/O结构结构ARM AMBA接口接口ARM协处理器接口协处理器接口ARM JTAG 调试接口调试接口 v ARMARM存储器结构存储器结构 ARM ARM架构的处理器,有的带有指令架构的处理器,有的带有指令CacheCache和数据和数据CacheCache,但片内不带有但片内不带有片内片内RAMRAM和片内和片内ROMROM,系统所需的系统所需的RAMRAM和和ROMROM须通过总线外接,如下图须通过总线外接,如下图。3.1.2 ARM处理器结构ARM的体系结构的体系结构 ARM的流水线结构的流水线结构ARM存储器结构存储器结构ARM I/O结构结构ARM AMBA接口接口ARM协

15、处理器接口协处理器接口ARM JTAG 调试接口调试接口 v ARMARM I/OI/O结构结构 ARM ARM架构中的处理器核和处理器内核一般都没有架构中的处理器核和处理器内核一般都没有I/OI/O的部件和的部件和模块,构成模块,构成ARMARM架构的处理器中的架构的处理器中的I/OI/O可通过可通过AMBAAMBA总线来扩充。总线来扩充。(1 1)存储器映像)存储器映像I/OI/O ARM ARM采用存储器映像采用存储器映像I/OI/O的方式,即把的方式,即把I/OI/O端口地址作为特殊的存储器端口地址作为特殊的存储器地址。不过地址。不过I/OI/O的输入的输入/输出与真正的存储器读输出与

16、真正的存储器读/写仍然有所不同:存储器写仍然有所不同:存储器的单元重复读多次的值是一致的;而的单元重复读多次的值是一致的;而I/OI/O设备的连续设备的连续2 2次输入,其输入值可次输入,其输入值可能会有所不同。能会有所不同。(2 2)直接存储器存取)直接存储器存取DMADMA 在在I/OI/O的数据流量比较大,中断处理比较频繁的场合,会明显影响系的数据流量比较大,中断处理比较频繁的场合,会明显影响系统的性能。因此,许多系统就采用了直接存储器存取统的性能。因此,许多系统就采用了直接存储器存取DMADMA,这样,这样,I/OI/O的数的数据块传送至存储器的缓冲器区域就不需要处理器介入。而中断也仅

17、仅出现据块传送至存储器的缓冲器区域就不需要处理器介入。而中断也仅仅出现在出现出错时或缓冲器满时。在出现出错时或缓冲器满时。(3 3)中断)中断IRQIRQ和快速中断和快速中断FIQFIQ 一般的一般的ARMARM没有没有DMADMA的功能,为了提高的功能,为了提高I/OI/O处理的能力,对于一些要求处理的能力,对于一些要求I/OI/O处理速率比较高的事件,系统安排快速中断处理速率比较高的事件,系统安排快速中断FIQ(Fast Interrupt)FIQ(Fast Interrupt),而而对其余的对其余的I/OI/O源仍安排一般中断源仍安排一般中断IRQIRQ。3.1.2 ARM处理器结构AR

18、M的体系结构的体系结构 ARM的流水线结构的流水线结构ARM存储器结构存储器结构ARM I/O结构结构ARM AMBA接口接口ARM协处理器接口协处理器接口ARM JTAG 调试接口调试接口 v ARMARM协处理器接口协处理器接口 ARMARM为了便于片上系统为了便于片上系统SOCSOC的设计,处理器内核尽可能精简,要增加的设计,处理器内核尽可能精简,要增加系统的功能,可以通过协处理器来实现。在逻辑上,系统的功能,可以通过协处理器来实现。在逻辑上,ARMARM可以扩展可以扩展1616个个协处理器,每个协处理器可有协处理器,每个协处理器可有1616个寄存器。个寄存器。协处理器号协处理器号功功

19、能能1515系统控制系统控制1414调试控制器调试控制器13138 8保留保留7 74 4用户用户3 30 0保留保留 例如,例如,MMUMMU和保护单元的系统控制都采用和保护单元的系统控制都采用CP15CP15协处理器;协处理器;JTAG JTAG调试中的协处理器为调试中的协处理器为CP14CP14,即调试通信通道即调试通信通道DCC(DebugDCC(Debug Communication Channel)Communication Channel)。3.1.2 ARM处理器结构ARM的体系结构的体系结构 ARM的流水线结构的流水线结构ARM存储器结构存储器结构ARM I/O结构结构ARM

20、 AMBA接口接口ARM协处理器接口协处理器接口ARM JTAG 调试接口调试接口 v ARM AMBAARM AMBA接口接口 ARMARM处理器也可以通过先进微控制器总线架构处理器也可以通过先进微控制器总线架构AMBA(Advanced AMBA(Advanced Microcontroller Bus Architecture)Microcontroller Bus Architecture)来扩展不同体系架构的宏单元及来扩展不同体系架构的宏单元及I/OI/O部件。部件。AMBAAMBA事实上已成为片上总线事实上已成为片上总线OCB(On Chip Bus)OCB(On Chip Bus

21、)标准。标准。AMBAAMBA包括以下三类总线:包括以下三类总线:先进高性能总线先进高性能总线AHBAHB先进系统总线先进系统总线ASBASB先进外围总线先进外围总线APBAPB3.1.2 ARM处理器结构ARM的体系结构的体系结构 ARM的流水线结构的流水线结构ARM存储器结构存储器结构ARM I/O结构结构ARM AMBA接口接口ARM协处理器接口协处理器接口ARM JTAG 调试接口调试接口 v JTAG JTAG调试接口的结构调试接口的结构 由测试访问端口由测试访问端口TAP(Test Access Port)TAP(Test Access Port)控制器、旁路控制器、旁路(Bypa

22、ss)Bypass)寄存器、寄存器、指令寄存器、数据寄存器以及与指令寄存器、数据寄存器以及与JTAGJTAG接口兼容的接口兼容的ARMARM架构处理器组成。架构处理器组成。v JTAG JTAG的控制寄存器的控制寄存器 测试访问端口测试访问端口TAPTAP控制器控制器 对嵌入在对嵌入在ARMARM处理器核内部的测试功能电路进行访问控制,是一个处理器核内部的测试功能电路进行访问控制,是一个同步状态机。通过测试模式选择同步状态机。通过测试模式选择TMSTMS和时钟信号和时钟信号TCKTCK来控制其状态机。来控制其状态机。指令寄存器指令寄存器 是串行移位寄存器,通过它可以串行输入执行各种操作的指令。

23、是串行移位寄存器,通过它可以串行输入执行各种操作的指令。数据寄存器组数据寄存器组 是一组串行移位寄存器。操作指令被串行装入由当前指令所选择的是一组串行移位寄存器。操作指令被串行装入由当前指令所选择的数据寄存器,随着操作的进行,测试结果被串行移出。其中:数据寄存器,随着操作的进行,测试结果被串行移出。其中:器件器件IDID寄存器:读出在芯片内固化的寄存器:读出在芯片内固化的IDID号。号。旁路寄存器:旁路寄存器:1 1位移位寄存器,用位移位寄存器,用1 1个时钟的延迟把个时钟的延迟把TDITDI连至连至TDOTDO,使测试者在同一电路板测试循环内访问其他器件。使测试者在同一电路板测试循环内访问其

24、他器件。边界扫描寄存器边界扫描寄存器(扫描链扫描链):截取:截取ARMARM处理器核与芯片引脚之间所有处理器核与芯片引脚之间所有信号,组成专用的寄存器位。信号,组成专用的寄存器位。v JTAG JTAG测试信号测试信号 TRSTTRST:测试复位输入信号,测试接口初始化。测试复位输入信号,测试接口初始化。TCKTCK:测试时钟,在测试时钟,在TCKTCK时钟的同步作用下,通过时钟的同步作用下,通过TDITDI和和TDOTDO引脚串行移入引脚串行移入/移出数据或指令,同时也为测试访问端口移出数据或指令,同时也为测试访问端口TAPTAP控制器的状态机提供时钟。控制器的状态机提供时钟。TMSTMS:

25、测试模式选择信号,控制测试接口状态机的操作。测试模式选择信号,控制测试接口状态机的操作。TDITDI,测试数据输入线,其串行输入数据送至边界扫描寄存测试数据输入线,其串行输入数据送至边界扫描寄存器或指令寄存器器或指令寄存器(由由TAPTAP控制器的当前状态及已保存在指令寄控制器的当前状态及已保存在指令寄存器中的指令来控制存器中的指令来控制)。TDOTDO:测试数据输出线,把从边界扫描链采样的数据传播至测试数据输出线,把从边界扫描链采样的数据传播至串行测试电路中的下一个芯片。串行测试电路中的下一个芯片。v TAP TAP状态机状态机 测试访问端口测试访问端口TAPTAP控制器是一个控制器是一个1

26、616状态状态的有限状态机,为的有限状态机,为JTAGJTAG提供控制逻辑。提供控制逻辑。状态转移图如右图:状态转移图如右图:v JTAG JTAG接口控制指令接口控制指令 控制指令用于控制控制指令用于控制JTAGJTAG接口各种操作,控制指令包括公用接口各种操作,控制指令包括公用(Public)Public)指令和私有指令和私有(Private)Private)指令。最基本的公用指令有:指令。最基本的公用指令有:BYPASS BYPASS:旁路片上系统逻辑指令,用于未被测试的芯片,即把旁路片上系统逻辑指令,用于未被测试的芯片,即把TDITDI与与TPOTPO旁路旁路(1(1个时钟延迟个时钟延

27、迟)。EXTEST EXTEST:片外电路测试指令,用于测试电路板上芯片之间的互片外电路测试指令,用于测试电路板上芯片之间的互连。连。IDCODE IDCODE:读芯片读芯片IDID码指令,用于识别电路板上的芯片。此时,码指令,用于识别电路板上的芯片。此时,IDID寄存器在寄存器在TDITDI与与TDOTDO引脚之间,在引脚之间,在capture DRcapture DR状态中,芯片的状态中,芯片的IDID复制至该寄存器,然后在复制至该寄存器,然后在shift DRshift DR状态中移出。状态中移出。INTEST INTEST:片内测试指令,边界扫描寄存器位于片内测试指令,边界扫描寄存器位

28、于TDITDI与与TDOTDO引脚之引脚之间,处理器核逻辑输入和输出状态被该寄存器捕获和控制。间,处理器核逻辑输入和输出状态被该寄存器捕获和控制。3.1.3 ARM处理器内核 ARMARM体系结构的处理器内核有:体系结构的处理器内核有:ARM7TDMIARM7TDMI、ARM8ARM8、ARM9TDMIARM9TDMI、ARM10TDMIARM10TDMI及及ARM11TDMIARM11TDMI等。等。v ARM7TDMI ARM7TDMIARM7TDMIARM7TDMI名字原义如下:名字原义如下:ARM7 ARM6 32ARM7 ARM6 32位整数核的位整数核的3 3V V兼容的版本;兼容

29、的版本;T 16T 16位压缩指令集位压缩指令集Thumb;Thumb;D D 在片调试(在片调试(DebugDebug)支持,允许处理器响应调支持,允许处理器响应调 试请求暂停;试请求暂停;M M 增强型乘法器(增强型乘法器(MultiplierMultiplier),),与以前处理器与以前处理器 相比性能更高,产生全相比性能更高,产生全6464位结果;位结果;I I 嵌入式嵌入式ICEICE硬件提供片上断点和调试点支持。硬件提供片上断点和调试点支持。v ARM7TDMI ARM7TDMI体系结构图体系结构图 v ARM7TDMI ARM7TDMI引脚图引脚图 采用了采用了3 3级流水线结构

30、,指令执行分为取指、译码和执行等级流水线结构,指令执行分为取指、译码和执行等3 3个阶段;个阶段;运算器能实现运算器能实现3232位整数运算;位整数运算;采用了高效的乘法器,用采用了高效的乘法器,用32328 8位乘法器实现位乘法器实现32323232位乘法位乘法(结果为结果为6464位位)。采用采用v4Tv4T版指令,支持版指令,支持1616位位ThumbThumb指令集;指令集;嵌入式嵌入式ICE(Embedded-ICE)ICE(Embedded-ICE)模块为模块为ARM7TDMIARM7TDMI提供了片内调试功能。同提供了片内调试功能。同时通过时通过JTAGJTAG接口可以很方便地用

31、接口可以很方便地用PCPC主机对主机对ARM7TDMIARM7TDMI进行开发和调试。进行开发和调试。还提供了存储器接口、还提供了存储器接口、MMUMMU接口、协处理器接口和调试接口,以及时接口、协处理器接口和调试接口,以及时钟与总线等控制信号。钟与总线等控制信号。v ARM7TDMI ARM7TDMI主要特点主要特点v ARM7TDMI ARM7TDMI主要性能指标主要性能指标 工艺:工艺:0.350.35m(m(新近采用新近采用0.250.25m)m);金属布线:金属布线:3 3层;层;电压:电压:3.33.3V(V(新近采用新近采用1.21.2V V、0.9V)0.9V);管子数:管子数

32、:7420974209只;只;内核芯片面积:内核芯片面积:2.12.1mmmm2 2;时钟:时钟:0 06666MHzMHz;MIPSMIPS:6666;功耗:功耗:8787mWmW;MIPS/WMIPS/W:690(690(采用采用0.250.25mm工艺,工艺,0.90.9V V电压,可达电压,可达1 2001 200MIPS/W)MIPS/W)。v ARM9TDMI ARM9TDMI主要性能指标主要性能指标 工艺:工艺:025025m(0.18m(0.18m)m);金属布线:金属布线:3 3层;层;电压:电压:2.52.5V(1.2V)V(1.2V);管子数:管子数:11 10011 1

33、00只;只;核芯片面积:核芯片面积:2.12.1mmmm2 2;时钟:时钟:02000200MHzMHz;MIPSMIPS:220220;功耗:功耗:150150mWmW;MIPS/WMIPS/W:1 5001 500。v ARM9TDMI ARM9TDMI流水线结构流水线结构ARM9TDMIARM9TDMI处理器内核采用了处理器内核采用了5 5级流水线级流水线。v ARM9TDMI ARM9TDMI主要特点主要特点 采用指令和数据分离访问的方式,即采用了指令采用指令和数据分离访问的方式,即采用了指令CacheCache和数据和数据CacheCache。用专门硬件来直接完成用专门硬件来直接完成

34、ARMARM与与ThumbThumb指令的译码。指令的译码。ARM9TDMIARM9TDMI也有协处理器接口,允许在芯片增加浮点、也有协处理器接口,允许在芯片增加浮点、数字信号处理或其他专用的协处理器。数字信号处理或其他专用的协处理器。ARM9TDMIARM9TDMI也提供也提供相应的软核。相应的软核。ARM9E-SARM9E-S是具有是具有DSPDSP功能的能执行功能的能执行v5TEv5TE版版ARMARM指令的指令的ARM9TDMIARM9TDMI软核,当然其芯片面积要增加软核,当然其芯片面积要增加3030。在在ARM9ARM9流水线设计中,增加专用流水段用于存储器访流水线设计中,增加专用

35、流水段用于存储器访问和将结果写回到寄存器组。而且,寄存器读也移到译问和将结果写回到寄存器组。而且,寄存器读也移到译码段。这些改变通过减少在单一时钟周期内操作最大的码段。这些改变通过减少在单一时钟周期内操作最大的逻辑数目,允许更高的时钟频率。逻辑数目,允许更高的时钟频率。v ARM10TDMI ARM10TDMI ARM10TDMI ARM10TDMI在系统结构上主要采用增加时钟速率和减少每条指令平均在系统结构上主要采用增加时钟速率和减少每条指令平均时钟周期数时钟周期数CPI(Clock Per Instruction)CPI(Clock Per Instruction)两大措施,以同样的工艺,

36、同样两大措施,以同样的工艺,同样的芯片面积,在性能上的芯片面积,在性能上2 2倍于倍于ARM9TDMIARM9TDMI。ARM10TDMI ARM10TDMI采用提高时钟速率、采用提高时钟速率、6 6级流水线、分支预测逻辑、级流水线、分支预测逻辑、6464位存储位存储器和无阻塞的存器和无阻塞的存/取逻辑等措施,使取逻辑等措施,使ARM10TDMIARM10TDMI的性能得到很大提高,是的性能得到很大提高,是目前高档目前高档ARMARM体系结构的处理器内核。体系结构的处理器内核。流水线结构流水线结构3.1.4 ARM处理器核 在最基本的在最基本的ARMARM处理器内核基础上,可增加处理器内核基础

37、上,可增加CacheCache、存存储器管理单元储器管理单元MMUMMU、协处理器协处理器CP15CP15、AMBAAMBA接口以及接口以及EMTEMT宏单宏单元等,构成元等,构成ARMARM处理器核。处理器核。以以ARM7TDMIARM7TDMI处理器内核为基础的有:处理器内核为基础的有:ARM720TARM720T处理器核处理器核 ARM740TARM740T处理器核处理器核 以以ARM9TDMIARM9TDMI处理器内核为基础的有:处理器内核为基础的有:ARM920TARM920T处理器核处理器核 ARM940TARM940T处理器核处理器核 v ARM720T ARM720T ARM7

38、20TARM720T处理器核是在处理器核是在ARM7TDMIARM7TDMI处理器内核基础上,增加处理器内核基础上,增加8 8KBKB的数据的数据与指令与指令CacheCache,支持段式和页式存储的支持段式和页式存储的MMUMMU、写缓冲器及写缓冲器及AMBAAMBA接口构成。接口构成。v ARM740T ARM740T ARM740T ARM740T处理器核与处理器核与ARM720TARM720T处理器核相比,结构基本处理器核相比,结构基本相同,但相同,但ARM740ARM740处理器核处理器核没有存储器管理单元没有存储器管理单元MMUMMU,不支持不支持虚拟存储器寻址;而是用存储器保护单

39、元来提供基本保护虚拟存储器寻址;而是用存储器保护单元来提供基本保护和和CacheCache的控制。这为低价格低功耗的嵌入式应用提供了合的控制。这为低价格低功耗的嵌入式应用提供了合适的处理器核。由于在嵌入式应用中运行固定软件,也不适的处理器核。由于在嵌入式应用中运行固定软件,也不需要进行地址变换,所以可以省去地址变换后备缓冲器需要进行地址变换,所以可以省去地址变换后备缓冲器TLBTLB。v ARM920T ARM920T ARM920TARM920T处理器核是在处理器核是在ARM9TDMIARM9TDMI处理器内核基础上,增加了分离式处理器内核基础上,增加了分离式的指令的指令CacheCache

40、和数据和数据CacheCache,并带有相应的存储器管理单元并带有相应的存储器管理单元I-MMUI-MMU和和D-MMUD-MMU、写缓冲器及写缓冲器及AMBAAMBA接口等。接口等。ARM920TARM920T处理器核特性:处理器核特性:工艺:工艺:0.250.25mm;金属布线:金属布线:4 4层;层;电压:电压:2.52.5V V;管子数:管子数:2 500 0002 500 000只;只;核芯片面积:核芯片面积:232325 25 mmmm2 2;时钟:时钟:0 0200200MHzMHz;MIPSMIPS:220220;功耗:功耗:560560mWmW;MIPS/WMIPS/W:39

41、0390。v ARM920T ARM920T特性特性v ARM940T ARM940T ARM940TARM940T处理器核与处理器核与ARM740TARM740T处理器核相似,采用了处理器核相似,采用了ARM9TDMIARM9TDMI处理器内核,是处理器内核,是ARM920TARM920T处理器核的简化。处理器核的简化。没有存没有存储器管理单元储器管理单元MMUMMU,不支持虚拟存储器寻址,而是用有储器不支持虚拟存储器寻址,而是用有储器保护单元来提供存储保护和保护单元来提供存储保护和CacheCache控制。控制。ARM940TARM940T的存储保的存储保护单元结构与护单元结构与ARM74

42、0TARM740T的基本相同。的基本相同。主要内容ARM体系结构概述体系结构概述 编程模型编程模型ARM基本寻址方式基本寻址方式ARM指令集指令集ARM9TDMI内核内核ARM9与与ARM7的比较的比较ARM920T核核 3.2.1 数据类型 ARM ARM处理器支持下列数据类型:处理器支持下列数据类型:Byte Byte 字节字节,8,8位;位;Halfword Halfword 半字半字,16,16位(半字必须与位(半字必须与2 2字节边界对准);字节边界对准);Word Word 字字,32,32 位(字必须与位(字必须与4 4字节边界对准)。字节边界对准)。3.2.2 处理器模式 AR

43、M ARM体系结构支持体系结构支持7 7种处理器模式。种处理器模式。处理器处理器模模 式式说说 明明用户用户usrusr正常程序执行模式正常程序执行模式FIQFIQfiqfiq支持高速数据传送或通道处理支持高速数据传送或通道处理IRQIRQirqirq用于通用中断处理用于通用中断处理管理管理svcsvc操作系统保护模式操作系统保护模式中止中止abtabt实现虚拟存储器和实现虚拟存储器和/或存储器保护或存储器保护未定义未定义undund支持硬件协处理器的软件仿真支持硬件协处理器的软件仿真系统系统syssys运行特权操作系统任务运行特权操作系统任务v 处理器模式分类处理器模式分类处理器模式处理器模

44、式用户模式用户模式 特权模式特权模式 异常模式异常模式 系统模式系统模式 FIQFIQIRQIRQ管理管理中止中止未定未定义义 3.2.3 处理器工作状态 ARM ARM处理器有两种工作状态:处理器有两种工作状态:ARMARM:32 32位,这种状态下执行字对准的位,这种状态下执行字对准的ARMARM指令;指令;ThumbThumb:1616位,这种状态下执行半字对准的位,这种状态下执行半字对准的ThumbThumb指令。指令。ARMARM处理器在两种工作状态之间可以切换。处理器在两种工作状态之间可以切换。ARMARM和和ThumbThumb之间状态的切换之间状态的切换不影响处理器的模式或寄存

45、器的内容。不影响处理器的模式或寄存器的内容。(1 1)进入)进入ThumbThumb状态。当操作数寄存器的状态位(位状态。当操作数寄存器的状态位(位00)为)为1 1时,执时,执行行BXBX指令进入指令进入ThumbThumb状态。如果处理器在状态。如果处理器在ThumbThumb状态进入异常,则当异常状态进入异常,则当异常处理处理(IRQIRQFIQFIQUndefUndefAbortAbort和和 SWI)SWI)返回时,自动转换到返回时,自动转换到ThumbThumb状态。状态。(2 2)进入)进入ARMARM状态。当操作数寄存器的状态位(位状态。当操作数寄存器的状态位(位00)为)为0

46、 0时,执行时,执行BXBX指令进入指令进入ARMARM状态。处理器进行异常处理状态。处理器进行异常处理(IRQIRQFIQFIQResetResetUndefUndef AbortAbort和和SWI)SWI)。在此情况下,把在此情况下,把PCPC放入异常模式链接寄存器中。从异常向放入异常模式链接寄存器中。从异常向量地址开始执行也可以进入量地址开始执行也可以进入ARMARM状态。状态。3.2.4 寄存器组织ARMARM处理器总共有处理器总共有3737个寄存器:个寄存器:3131个通用寄存器,包括程个通用寄存器,包括程序计数器(序计数器(PCPC)。)。这些寄存这些寄存器是器是3232位的。位

47、的。6 6个状态寄存器。这些寄存个状态寄存器。这些寄存器也是器也是3232位的,但只使用了位的,但只使用了其中的其中的1212位。位。v 通用寄存器通用寄存器通用寄存器(通用寄存器(R0R15R0R15)可分成可分成3 3类:类:不分组寄存器不分组寄存器R0R7:R0R7:在所有的处理器模式下,它们每一个都访问一样的在所有的处理器模式下,它们每一个都访问一样的3232位物理寄存器位物理寄存器。分组寄存器分组寄存器R8R14:R8R14:它们每一个访问的物理寄存器取决于当前的处理器模式。每种处理它们每一个访问的物理寄存器取决于当前的处理器模式。每种处理器模式有专用的分组寄存器用于快速异常处理。器

48、模式有专用的分组寄存器用于快速异常处理。寄存器寄存器R13R13通常用作通常用作堆栈指针,称作堆栈指针,称作SPSP。寄存器寄存器R14R14用作子程序链接寄存器,也称为链接用作子程序链接寄存器,也称为链接寄存器寄存器LRLR。寄存器寄存器R8R12R8R12各有两组物理寄存器。一组为各有两组物理寄存器。一组为FIQFIQ模式,另一组为模式,另一组为除除FIQFIQ以外的其它模式。以外的其它模式。寄存器寄存器R13R13、R14R14各有各有6 6个分组的物理寄存器。个分组的物理寄存器。1 1个用于用户模式个用于用户模式和系统模式,而其它和系统模式,而其它5 5个分别用于个分别用于5 5种异常

49、模式。种异常模式。程序计数器程序计数器R15:R15:在在ARMARM状态,位状态,位1:01:0为,位为,位31:2 31:2 保存保存PCPC在在ThumbThumb状态,位状态,位00为为0 0,位,位31:131:1保存保存 PCPC。v 程序状态寄存器程序状态寄存器 在所有处理器模式下都可以访问当前程序状态寄存器在所有处理器模式下都可以访问当前程序状态寄存器CPSRCPSR(Current Program Status RegisterCurrent Program Status Register)。)。CPSRCPSR包含包含条件码标志条件码标志、中断中断禁止位禁止位、当前处理器模

50、式当前处理器模式以及以及其它状态和控制信息其它状态和控制信息。每种异常模式都有。每种异常模式都有一个程序状态保存寄存器一个程序状态保存寄存器SPSRSPSR(Saved Program Status RegisterSaved Program Status Register)。)。当异常出现时,当异常出现时,SPSRSPSR用于保留用于保留CPSRCPSR的状态。的状态。CPSRCPSR和和SPSRSPSR格式如下:格式如下:v 程序状态寄存器程序状态寄存器条件码标志条件码标志 N N、Z Z、C C、V V(NegativeNegative、ZeroZero、CarryCarry、oVerf

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(最新版《嵌入式系统技术》课件第3章ARM体系结构.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|