您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 第6章ARMCortex-A8处理器(2014年4月1日).
共35页1第6章ARMCortex-A8处理器1学时本章的主要内容1、Cortex-A8处理器技术特点;2、Cortex-A8内部功能及特点;3、Cortex-A8内核工作模式;4、Cortex-A8存储系统。共35页2本章教学要求介于后期课程及实验平台采用的是基于Cortex-A8处理器,本章主要讲述该处理器的特点和功能。要求大家了解这些内容。共35页36.1ARMCortex-A8处理器技术特点ARMCortex-A8处理器是一款适用于复杂操作系统及用户应用的应用处理器,支持智能能源管理(IntelligentEnergyManger,IEM)技术的ARMArtisan库及先进的泄漏控制技术,使得Cortex-A8处理器实现了非凡的速度和功耗效率。共35页4在65nm工艺下,ARMCortex-A8处理器的功耗不到300mW,能够提供高性能和低功耗。它第一次为低费用、高容量的产品带来了台式机级别的性能。Cortex-A8处理器是第一款基于下一代ARMv7架构的应用处理器,使用了能够带来更高性能、更低功耗和更高代码密度的Thumb-2技术。共35页5它首次采用了强大的NEON信号处理扩展集,为H.264和MP3等媒体编解码提供加速。Cortex-A8的解决方案还包括Jazelle-RCTjava加速技术,对实时(JTT)和动态调整编译(DAC)提供最优化,同时减少内存占用空间高达3倍。NEON技术可加速多媒体和信号处理算法(如视频编码/解码、2D/3D图形、游戏、音频和语音处理、图像处理技术、电话和声音合成),其性能至少为ARMv5性能的3倍,为ARMv6SIMD性能的2倍。共35页6该处理器配置了先进的超标量体系结构流水线,能够同时执行多条指令。处理器集成了一个可调尺寸的二级高速缓冲存储器,能够同高速的16KB或者32KB一级高速缓冲存储器一起工作,从而达到最快的读取速度和最大的吞吐量。新处理器还配置了用于安全交易和数字版权管理的TrustZone技术。13级共35页7Cortex-A8处理器使用了先进的分支预测技术,并且具有专用的NEON整型和浮点型流水线进行媒体和信号处理。在使用小于4mm2的硅片及低功耗的65nm工艺情况下,Cortex-A8处理器的运行频率将高于600MHz(不包括NEON追踪技术和二级高速缓冲存储器)。共35页8在高性能的90nm和65nm工艺下,Cortex-A8处理器运行频率最高可达1GHz,能够满足高性能消费产品设计的需要。共35页96.2Cortex-A8内部功能及特点Cortex-A8处理器是一款高性能、低功耗的处理器芯片,并且支持Cache、虚拟存取,它的特性如下:(1)完全执行V7-A体系指令集;(2)可配置64位或128位AMBA高速总线接口AXI;(3)具有一个集成的整型流水线;AdvancedMicrocontrollerBusArchitectureAdvancedeXtensibleInterface共35页10(4)具有一个NEON技术下执行SIMD/VFP的流水线;(5)支持动态分支预取,全局历史缓存,8入口返回栈;(6)具有独立的数据/指令MMU;(7)16KB/32KB可配置1级Cache;(8)具有带奇偶校验及ECC校验的2级Cache;SingleInstructionMultipleData单指令多重数据/VFP提供大多数适用于浮点运算的应用共35页11(9)支持ETM的非侵入式调试;(10)具有静态/动态电源管理功能。ARMv7体系指令集方面表现如下特点:(1)支持ARNThumb-2高密度指令集;(2)使用ThumbEE,执行环境加速;(3)完全扩展体系加强了安全应用的可靠性;嵌入式跟踪宏单元共35页12(4)先进的SIMD体系技术用于加速多媒体应用;(5)支持VFP第三代向量浮点运算。共35页136.3Cortex-A8内核工作模式Cortex-A8基于ARMv7-A架构,共有8种工作模式:(1)用户模式(User)简称Usr,正常程序执行模式,大部分任务执行在这种模式下;(2)快速中断模式(FIQ)简称Fiq,当一个高优先级(fast)中断产生时将会进入这种模式,一般用于高速数据传输和通道处理;共35页14(3)外部中断模式(IRQ)简称Irq,当一个低优先级(normal)中断产生时将会进入这种模式,一般用于通常的中断处理;(4)特权模式(Supervisor)简称Svc,当复位或软中断指令执行时进入这种模式,是一种供操作系统使用的保护模式;共35页15(5)数据访问终止模式(Abort)简称Abt,当存取异常时将会进入这种模式,用于虚拟存储或存储保护;(6)未定义指令中止模式(Undef)简称Und,当执行未定义指令时进入这种模式,有时用于通过软件仿真协处理器硬件的工作方式;共35页16(7)系统模式(System)简称Sys,使用和User模式相同寄存器集的模式,用于运行特权级操作系统任务;(8)监控模式(Monitor)简称Mon,可以在安全模式与非安全模式之间进行转换。共35页17除用户模式外的其它7种处理器模式称为特权模式(PrivilegedModes)。在特权模式下,程序可以访问所有的系统资源,也可以任意的进行处理器模式切换。其中以下6种模式称为异常模式:(1)快速中断模式(FIQ)(2)外部中断模式(IRQ)(3)特权模式(Supervior)共35页18(4)数据访问中止模式(Abort)(5)未定义指令中止模式(Undef)(6)监控模式(Monitor)处理器模式可以通过软件控制进行切换,也可以通过外部中断或异常处理过程进行切换。共35页19大多数的用户程序运行在用户模式下。当处理器工作在用户模式时,应用程序不能够访问受操作系统保护的一些系统资源,应用程序也不能直接进行处理器模式切换。当需要进行处理器模式切换时,应用程序可以产生异常处理,在异常处理过程中进行处理器模式切换。这种体系结构可以使操作系统控制整个系统资源的使用。共35页20当应用程序发生异常中断时,处理器进入相应的异常模式。在每一种异常模式中都有一组专用寄存器以供相应的异常处理程序使用,这样就可以保证在进入异常模式时用户模式下的寄存器(保存程序运行状态)不被破坏。共35页216.4Cortex-A8存储系统ARM存储系统有非常灵活的体系结构,可以适应不同的嵌入式应用系统的需要。ARM存储器系统可以使用简单的平板式地址映射机制(就像一些简单的单片机一样,地址空间的分配方式是固定的,系统中各部分都使用物理地址),也可以使用其他技术提供功能更为强大的存储系统。共35页22这些强大的技术有:(1)系统可能提供多种类型的存储器件,如:Flash、ROM、SRAM;(2)Cache技术;(3)写缓存技术(WriteBuffers);(4)虚拟内存和I/O地址映射技术。共35页23(1)使用Cache,缩小处理器和存储系统速度差别,从而提高系统的整体性能;(2)使用内存映射技术实现虚拟空间到物理空间的映射。Rom、Flash与SDRAM速度问题;(3)引入存储保护机制,增强系统的安全性;大多数的系统通过下面的方法之一可实现对复杂存储系统的管理。共35页24(4)引入一些机制保证将I/O操作映射成内存操作后,各种I/O操作能够得到正确的结果。在ARM系统中,要实现对存储系统的管理通常使用协处理器CP15,它通常也被称为系统控制协处理器(SystemControlCoprocessor)。共35页25ARM的存储器系统是由多级构成的,可以分为内核级、芯片级、板卡级、外设级,如下图所示:紧耦合内存(TCM:TightlyCoupledMemories)。共35页266.4.1协处理器(CP15)ARM处理器支持16个协处理器。在程序执行过程中,每个协处理器忽略属于ARM处理器和其它协处理器的指令。当一个协处理器硬件不能执行属于它的协处理器指令时,将产生一个未定义指令异常中断,在该异常中断处理程序中,可以通过软件模拟该硬件的操作。共35页27除了CP15外,在具体的各种存储管理机制中可能还会用到其它一些技术,如在MMU中除了CP15外,还使用了页表技术等。在一些没有标准存储管理的系统中,CP15是不存在的。在这种情况下,针对CP15的操作指令将被视为未定义指令,指令的执行结果不可预知。CP15包含16个32位寄存器,其编号为0~15。共35页28实际上对于某些编号的寄存器可能对应多个物理寄存器,在指令中指定特定的标志位来区分这些物理寄存器。CP15中的寄存器可能是只读的,也可能是只写的,还有一些是可读写的。在对协处理器寄存器进行操作时,需要注意以下几个问题:(1)寄存器的访问类型(只读/只写/可读可写);共35页29(2)不同的访问引发不同的功能;(3)相同编号的寄存器是否对应不同的物理寄存器;(4)寄存器的具体作用。共35页306.4.2存储管理单元(MMU)在创建多任务嵌入式系统时,最好用一个简单的方式来编写、装载及运行各自独立的任务。目前大多数的嵌入式系统不再使用自己定制的控制系统,而是使用操作系统来简化这个过程。较高级的操作系统采用基于硬件的存储管理单元(MMU)来实现上述操作。共35页31MMU提供的一个关键服务是使各个任务作为独立的程序在自己的私有存储空间中运行。在带MMU的操作系统控制下,运行的任务无需知道其他与之无关的任务的存储需求情况,这样就简化了各个任务的设计。MMU提供了一些资源以允许使用虚拟存储器。共35页32MMU作为转换器,将程序和数据的虚拟地址转换成实际的物理地址。6.4.3高速缓冲存储器(Cache)Cache是一个容量小但存取速度非常快的存储器,它保存最近用到的存储器数据副本。对程序员来说,Cache是透明的。共35页33它自动决定保存哪些数据、覆盖哪些数据。现在Cache通常与处理器在同一芯片上实现。Cache能发挥作用是因为程序具有局部性。所谓局部性就是指在任何特定的时间,处理器趋于对相同区域的数据(如堆栈)多次执行相同的指令(如循环)。共35页34Cache经常与写缓存器(WriteCache)一起使用。写缓存器是一个非常小的先进先出(FIFO)存储器,位于处理器核与主存之间。使用写缓存的目的是:将处理器核和Cache从较慢的主存写操作中解脱出来。共35页35通过引入Cache和写缓存器区,存储系统的性能得到了很大的提高,但同时也带来了一些问题。如:由于数据将存在于系统中不同物理位置,可能造成数据的不一致性。
本文标题:第6章ARMCortex-A8处理器(2014年4月1日).
链接地址:https://www.777doc.com/doc-7098447 .html