嵌入式系统及应用Chapter2嵌入式硬件系统基础

上传人:壹****1 文档编号:584285564 上传时间:2024-08-30 格式:PPT 页数:176 大小:3.82MB
返回 下载 相关 举报
嵌入式系统及应用Chapter2嵌入式硬件系统基础_第1页
第1页 / 共176页
嵌入式系统及应用Chapter2嵌入式硬件系统基础_第2页
第2页 / 共176页
嵌入式系统及应用Chapter2嵌入式硬件系统基础_第3页
第3页 / 共176页
嵌入式系统及应用Chapter2嵌入式硬件系统基础_第4页
第4页 / 共176页
嵌入式系统及应用Chapter2嵌入式硬件系统基础_第5页
第5页 / 共176页
点击查看更多>>
资源描述

《嵌入式系统及应用Chapter2嵌入式硬件系统基础》由会员分享,可在线阅读,更多相关《嵌入式系统及应用Chapter2嵌入式硬件系统基础(176页珍藏版)》请在金锄头文库上搜索。

1、嵌入式系统及应用嵌入式系统及应用第二章第二章嵌入式硬件系统基础嵌入式硬件系统基础主要内容主要内容嵌入式硬件系统基本组成嵌入式硬件系统基本组成嵌入式微处理器嵌入式微处理器嵌入式系统总线嵌入式系统总线嵌入式存储系统嵌入式存储系统第一节第一节嵌入式硬件系统基本组成嵌入式硬件系统基本组成嵌入式系统的硬件是以嵌入式微处理器嵌入式系统的硬件是以嵌入式微处理器为核心,主要由嵌入式微处理器、总线、为核心,主要由嵌入式微处理器、总线、存储器、输入存储器、输入/ /输出接口和设备组成。输出接口和设备组成。嵌入式微处理器嵌入式微处理器总线总线存储器存储器输入输入/输出接口和设备输出接口和设备 嵌入式微处理器嵌入式微

2、处理器每个嵌入式系统至少包含一个嵌入式微处每个嵌入式系统至少包含一个嵌入式微处理器理器 嵌入式微处理器体系结构可采用冯嵌入式微处理器体系结构可采用冯诺依曼诺依曼(Von NeumannVon Neumann)结构或哈佛(结构或哈佛(HarvardHarvard)结构结构地址地址数据数据主存储器主存储器MOV r8,#8MOV r8,#8CPUCPUPCPC指令指令程序存储器程序存储器CPUCPUPCPC地址地址数据存储器数据存储器MOV r8,#8MOV r8,#8地址地址数据数据冯冯诺依曼结构诺依曼结构哈佛结构哈佛结构嵌入式微处理器嵌入式微处理器传统的微处理器采用的冯传统的微处理器采用的冯诺

3、依曼结构诺依曼结构将指令将指令和数据存放在同一存储空间中和数据存放在同一存储空间中,统一编址,指,统一编址,指令和数据通过同一总线访问。令和数据通过同一总线访问。哈佛结构则是不同于冯哈佛结构则是不同于冯诺依曼结构的一种并诺依曼结构的一种并行体系结构,其主要特点是行体系结构,其主要特点是程序和数据存储在程序和数据存储在不同的存储空间中不同的存储空间中,即程序存储器和数据存储,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立器是两个相互独立的存储器,每个存储器独立编制、独立访问。与之相对应的是系统中设置编制、独立访问。与之相对应的是系统中设置的两条总线(程序总线和数据总线),从而使的

4、两条总线(程序总线和数据总线),从而使数据的吞吐率提高了一倍数据的吞吐率提高了一倍。嵌入式微处理器嵌入式微处理器嵌入式微处理器的指令系统可采用精简指令集系统嵌入式微处理器的指令系统可采用精简指令集系统RISCRISC(Reduced Instruction Set ComputerReduced Instruction Set Computer)或复杂指令或复杂指令集系统集系统CISCCISC(Complex Instruction Set ComputerComplex Instruction Set Computer)CISCCISCRISCRISC价格价格由由硬硬件件完完成成部部分分软软

5、件件功功能能,硬硬件件复复杂性增加,芯片成本高杂性增加,芯片成本高由由软软件件完完成成部部分分硬硬件件功功能能,软软件件复复杂性增加,芯片成本低杂性增加,芯片成本低性能性能减减少少代代码码尺尺寸寸,增增加加指指令令的的执执行行周周期数期数使使用用流流水水线线降降低低指指令令的的执执行行周周期期数数,增加代码尺寸增加代码尺寸指令集指令集大大量量的的混混杂杂型型指指令令集集,有有简简单单快快速速的的指指令令,也也有有复复杂杂的的多多周周期期指指令令,符合符合HLLHLL(high level languagehigh level language)简简单单的的单单周周期期指指令令,在在汇汇编编指指

6、令令方方面有相应的面有相应的CISCCISC微代码指令微代码指令高级语言支高级语言支持持硬件完成硬件完成软件完成软件完成寻址模式寻址模式复复杂杂的的寻寻址址模模式式,支支持持内内存存到到内内存存寻址寻址简简单单的的寻寻址址模模式式,仅仅允允许许LOADLOAD和和STORESTORE指指令令存存取取内内存存,其其它它所所有有的的操作都基于寄存器到寄存器操作都基于寄存器到寄存器控制单元控制单元微码微码直接执行直接执行寄存器数目寄存器数目寄存器较少寄存器较少寄存器较多寄存器较多嵌入式微处理器嵌入式微处理器嵌入式微处理器有许多不同的体系,即使嵌入式微处理器有许多不同的体系,即使在同一体系中也可能具有

7、不同的在同一体系中也可能具有不同的时钟速度时钟速度和和总线数据宽度总线数据宽度、集成不同的外部接口集成不同的外部接口和和设备设备。据不完全统计,目前全世界嵌入式微处理据不完全统计,目前全世界嵌入式微处理器的品种总量已经超过千种,有几十种嵌器的品种总量已经超过千种,有几十种嵌入式微处理器体系,主流的体系有入式微处理器体系,主流的体系有ARMARM、MIPSMIPS、PowerPCPowerPC、SHSH、 X86X86等。等。 总线总线嵌入式系统的总线嵌入式系统的总线一般集成在嵌入式微一般集成在嵌入式微处理器中处理器中。从微处理器的角度来看,总线可分为从微处理器的角度来看,总线可分为片片外总线外

8、总线( (如:如:PCIPCI、ISAISA等等) )和和片内总线片内总线(如:(如:AMBAAMBA、 AVALONAVALON、OCPOCP、WISHBONEWISHBONE等)。等)。选择总线和选择嵌入式微处理器密切相选择总线和选择嵌入式微处理器密切相关,总线的种类随不同的微处理器的结关,总线的种类随不同的微处理器的结构而不同。构而不同。存储器存储器嵌入式系统的存储器包括嵌入式系统的存储器包括主存主存和和外存外存。大大多多数数嵌嵌入入式式系系统统的的代代码码和和数数据据都都存存储储在在处处理器可直接访问的存储空间即主存中理器可直接访问的存储空间即主存中。系系统统上上电电后后在在主主存存中

9、中的的代代码码直直接接运运行行。主主存存储储器器的的特特点点是是速速度度快快,一一般般采采用用ROMROM、EPROMEPROM、Nor FlashNor Flash、SRAMSRAM、DRAMDRAM等存储器件。等存储器件。存储器存储器目前有些嵌入式系统除了主存外,还有外目前有些嵌入式系统除了主存外,还有外存。外存是处理器不能直接访问的存储器,存。外存是处理器不能直接访问的存储器,用来存放各种信息,相对主存而言具有价用来存放各种信息,相对主存而言具有价格低、容量大的特点。格低、容量大的特点。在嵌入式系统中一般不采用硬盘而采用电在嵌入式系统中一般不采用硬盘而采用电子盘做外存,电子盘的主要种类有

10、子盘做外存,电子盘的主要种类有NandFlashNandFlash、 SD SD (Secure DigitalSecure Digital)卡、)卡、CompactFlashCompactFlash、SmartMediaSmartMedia、Memory Memory StickStick、MultiMediaCardMultiMediaCard、 DOCDOC(Disk Disk On ChipOn Chip)等。)等。 输入输入/输出接口和设备输出接口和设备嵌入式系统的大多数输入嵌入式系统的大多数输入/ /输出接口和部分输出接口和部分设备已经集成在嵌入式微处理器中。设备已经集成在嵌入式微

11、处理器中。输入输入/ /输出接口主要有输出接口主要有中断控制器中断控制器、DMADMA、串行串行和和并行接口并行接口等,设备主要有定时器等,设备主要有定时器(TimersTimers)、)、计数器(计数器(counterscounters)、)、看门看门狗(狗(watchdog timerswatchdog timers)、)、RTCRTC、UARTsUARTs、PWMPWM(Pulse width modulatorPulse width modulator)、)、AD/DAAD/DA、显示器、键盘和网络等。显示器、键盘和网络等。 第二节第二节嵌入式微处理器嵌入式微处理器嵌入式微处理器的发展

12、嵌入式微处理器的发展嵌入式微处理器的分类嵌入式微处理器的分类嵌入式微处理器的特点嵌入式微处理器的特点主流的嵌入式微处理器主流的嵌入式微处理器(ARM,MIPS,SH,PowerPC,x86)2020世纪世纪8080年代年代中后期中后期2020世纪世纪9090年代年代初期初期2020世纪世纪9090年代年代中后期中后期2121世纪世纪初期初期制作工艺制作工艺1 - 0.8 1 - 0.8 m m0.8 - 0.5 0.8 - 0.5 m m0.5 0.5 0.35 0.35 m m0.25 - 0.13 0.25 - 0.13 m m主频主频 33 MHz 33 MHz100 MHz100 MH

13、z200 MHz200 MHz 600 MHz 500K 500K2M2M5M5M22M22M位数位数8/16bit8/16bit8/16/32bit8/16/32bit8/16/32bit8/16/32bit8/16/32/64bit8/16/32/64bit嵌入式微处理器的发展嵌入式微处理器的发展嵌入式微处理器的分类嵌入式微处理器的分类嵌嵌入入式式微微处处理理器器种种类类繁繁多多,按按位位数数可可分分为为4 4位位、8 8位、位、1616位、位、3232位和位和6464位。位。按按用用途途来来分分,嵌嵌入入式式微微处处理理器器可可分分为为嵌嵌入入式式DSPDSP和通用的嵌入式微处理器两种:

14、和通用的嵌入式微处理器两种: 嵌嵌入入式式DSP:专专用用于于数数字字信信号号处处理理,采采用用哈哈佛佛结结构构,程程序序和和数数据据分分开开存存储储,采采用用一一系系列列措措施施保保证证数数字字信信号号的的处处理理速速度度,如如对对FFT(快速傅立叶变换)的专门优化。快速傅立叶变换)的专门优化。通通用用的的嵌嵌入入式式微微处处理理器器:一一般般是是集集成成了了通通用用微微处处理理器器的的核核、总总线线、外外围围接接口口和和设设备备的的SOCSOC芯片芯片,有些还将,有些还将DSP作为协处理器集成。作为协处理器集成。嵌入式微处理器的特点嵌入式微处理器的特点基础是通用微处理器基础是通用微处理器与

15、通用微处理器相比的区别:与通用微处理器相比的区别:体积小、重量轻、成本低、可靠性高体积小、重量轻、成本低、可靠性高功耗低功耗低工作温度、抗电磁干扰、可靠性等方工作温度、抗电磁干扰、可靠性等方面增强面增强嵌入式微处理器的特点嵌入式微处理器的特点体系结构体系结构指令集指令集性能性能功耗和管理功耗和管理成本成本集成度集成度嵌入式微处理器的集成度嵌入式微处理器的集成度用于桌面和服务器的微处理器的芯片内部通常用于桌面和服务器的微处理器的芯片内部通常只包括只包括CPUCPU核心、核心、CacheCache、MMUMMU、总线接口等部总线接口等部分,其他附加的功能如外部接口、系统总线、分,其他附加的功能如外

16、部接口、系统总线、外部总线和外部设备独立在其他芯片和电路内。外部总线和外部设备独立在其他芯片和电路内。 嵌入式微处理器除了集成嵌入式微处理器除了集成CPUCPU核心、核心、CacheCache、MMUMMU、总线等部分外,还集成了各种外部接口总线等部分外,还集成了各种外部接口和设备,如和设备,如中断控制器中断控制器、DMADMA、定时器定时器、UARTUART等。等。符合嵌入式系统的低成本和低功耗需求符合嵌入式系统的低成本和低功耗需求,一块单一的集成了大多数需要的功能块的芯片一块单一的集成了大多数需要的功能块的芯片价格更低,功耗更少。价格更低,功耗更少。 嵌入式微处理器的集成度嵌入式微处理器的

17、集成度嵌嵌入入式式微微处处理理器器是是面面向向应应用用的的,其其片片内内所所包包含含的的组件的数目和种类组件的数目和种类是由它的市场定位决定的。是由它的市场定位决定的。在最普通的情况下,嵌入式微处理器包括在最普通的情况下,嵌入式微处理器包括:片内存储器:部分嵌入式微处理器片内存储器:部分嵌入式微处理器外部存储器的控制器,外设接口外部存储器的控制器,外设接口(串口,并口串口,并口)LCD控制器:面向终端类应用的嵌入式微处理器控制器:面向终端类应用的嵌入式微处理器中断控制器,中断控制器,DMA控制器,协处理器控制器,协处理器定时器,定时器,A/D、D/A转换器转换器多媒体加速器:当高级图形功能需要

18、时多媒体加速器:当高级图形功能需要时总线总线其他标准接口或外设其他标准接口或外设嵌入式微处理器的集成度嵌入式微处理器的集成度单芯片方式(单芯片方式(Single ChipSingle Chip) 芯片组方式(芯片组方式(Chip SetChip Set):):由微处理器主由微处理器主芯片和一些从芯片组成芯片和一些从芯片组成 嵌入式微处理器的集成度嵌入式微处理器的集成度单芯单芯片方片方式:式:华邦华邦W90P710芯片芯片的内的内部部结构结构嵌入式微处理器的集成度嵌入式微处理器的集成度芯片组方式:芯片组方式:两芯片组的手两芯片组的手持持PC方案方案返回返回嵌入式微处理器的体系结构嵌入式微处理器的

19、体系结构算术格式(算术格式(Arithmetic FormatArithmetic Format) 由由于于低低成成本本和和低低功功耗耗的的限限制制,大大多多数数的的嵌嵌入入式式微微处处理理器器使使用用定定点点运运算算(fixed-pointarithmetic),即即数数值值被被表表示示为为整整数数或或在在1.0和和1.0之之间间的的分分数数,比比数数值值表表示示为为尾尾数数和和指指数数的的浮浮点点版版本的芯片便宜。本的芯片便宜。当嵌入式系统中需要使用浮点运算时,可采用当嵌入式系统中需要使用浮点运算时,可采用软件模拟软件模拟的方式的方式实现浮点运算,只不过这样要占用更多的处理器时间。实现浮点

20、运算,只不过这样要占用更多的处理器时间。 功能单元(功能单元(Functional UnitsFunctional Units) 通常包括不止一个的功能单元,典型的是包含一个通常包括不止一个的功能单元,典型的是包含一个ALU、移位移位器和器和MAC,处理器通常用一条指令完成乘法操作。处理器通常用一条指令完成乘法操作。 流水线(流水线(PipelinePipeline)通常采用通常采用单周期执行指令单周期执行指令,可能导致比较长的流水线,可能导致比较长的流水线 返回返回嵌入式微处理器的指令集嵌入式微处理器的指令集为满足应用领域的需要,嵌入式微处理器的指令为满足应用领域的需要,嵌入式微处理器的指令

21、集一般要针对特定领域的应用进行集一般要针对特定领域的应用进行剪裁和扩充剪裁和扩充。目前很多应用系统需要类似于目前很多应用系统需要类似于DSPDSP的数字处理功的数字处理功能。这些指令主要有:能。这些指令主要有:乘加乘加(MAC)(MAC)操作操作:它在一个周期中执行了一次乘法运算:它在一个周期中执行了一次乘法运算和一次加法运算。和一次加法运算。SIMDSIMD类操作类操作:允许使用一条指令进行多个并行数据流:允许使用一条指令进行多个并行数据流的计算。的计算。零开销的循环指令零开销的循环指令:采用硬件方式减少了循环的开销。:采用硬件方式减少了循环的开销。仅使用两条指令实现一个循环,一条是循环的开

22、始并仅使用两条指令实现一个循环,一条是循环的开始并提供循环次数,另一条是循环体。提供循环次数,另一条是循环体。多媒体加速指令多媒体加速指令:像素处理、多边形、:像素处理、多边形、3D操作等指令。操作等指令。 返回返回嵌入式微处理器的性能嵌入式微处理器的性能低端(低价,低性能)低端(低价,低性能) 一般低端嵌入式微处理器的性能最多达到一般低端嵌入式微处理器的性能最多达到50MIPS,应应用在对性能要求不高但对用在对性能要求不高但对价格和功耗价格和功耗有严格要求的应有严格要求的应用系统中。用系统中。 中档,低功耗中档,低功耗 中档的嵌入式微处理器可达到较好的性能(如中档的嵌入式微处理器可达到较好的

23、性能(如150MIPS以上),采用增加以上),采用增加时钟频率时钟频率、加深流水深度加深流水深度、增加增加Cache及一些额外的功能块来提高性能,并保持及一些额外的功能块来提高性能,并保持低功耗低功耗。 高端高端 嵌入式微处理器的性能嵌入式微处理器的性能高端嵌入式微处理器用于高端嵌入式微处理器用于高强度计算高强度计算的应用,的应用,使用不同的方法来达到更高的并行度使用不同的方法来达到更高的并行度 单指令执行乘法操作单指令执行乘法操作:通过加入额外的功能单元和扩展指令:通过加入额外的功能单元和扩展指令集,使许多操作能在一个单一的周期内并行执行。集,使许多操作能在一个单一的周期内并行执行。每个周期

24、执行多条指令每个周期执行多条指令:桌面和服务器的超标量处理器都支:桌面和服务器的超标量处理器都支持单周期多条指令执行,在嵌入式领域通常使用持单周期多条指令执行,在嵌入式领域通常使用VLIW(verylargeinstructionword)来实现,这样只需较少的硬件,总体来实现,这样只需较少的硬件,总体价格会更低些。例如价格会更低些。例如TI的的TMS320C6201芯片,通过使用芯片,通过使用VLIW方法,能在每个周期同时执行方法,能在每个周期同时执行8条独立的条独立的32位指令。位指令。使用多处理器使用多处理器:采用多处理器的方式满足应用系统的更高要:采用多处理器的方式满足应用系统的更高要

25、求。一些嵌入式微处理器采用特殊的硬件支持多处理器。如求。一些嵌入式微处理器采用特殊的硬件支持多处理器。如TI的的OMAP730包括了三个处理器核包括了三个处理器核ARM9、ARM7、DSP。返回返回嵌入式微处理器的功耗管理嵌入式微处理器的功耗管理大多数嵌入式系统有功耗的限制(特别是电池大多数嵌入式系统有功耗的限制(特别是电池供电的系统),它们不支持使用风扇和其他冷供电的系统),它们不支持使用风扇和其他冷却设备。却设备。 降低工作电压降低工作电压:1.8v、1.2v甚至更低,而且这个数值一直在下降。提供不同的时钟频率提供不同的时钟频率:通过软件设置不同的时钟分频。关闭暂时不使用的功能块关闭暂时不

26、使用的功能块:如果某功能块在一个周期内不使用,就可以被完全关闭,以节约能量。 嵌入式微处理器的功耗管理嵌入式微处理器的功耗管理提供功耗管理机制提供功耗管理机制 运行模式运行模式(Running Mode):处理器处于全速运行状态下。 待命模式待命模式(Standby Mode):处理器不执行指令,所有存储的信息是可用的,处理器能在几个周期内返回运行模式。 时钟关闭模式时钟关闭模式(clock-off mode):时钟完全停止,要退出这个模式系统需要重新启动。影响功耗的其他因素还有影响功耗的其他因素还有总线总线(特别是总线转(特别是总线转换器,可以采用特殊的技术使它的功耗最小)换器,可以采用特殊

27、的技术使它的功耗最小)和和存储器的大小存储器的大小(如果使用(如果使用DRAM,它需要不它需要不断的刷新)。为了使功耗最小,总线和存储器断的刷新)。为了使功耗最小,总线和存储器要保持在应用系统可接受的最小规模要保持在应用系统可接受的最小规模。 返回返回嵌入式微处理器的成本嵌入式微处理器的成本为降低价格,需要在嵌入式微处理器的设计中为降低价格,需要在嵌入式微处理器的设计中考虑不同的折衷方案。考虑不同的折衷方案。处理器的价格受如下因素影响处理器的价格受如下因素影响: :处理器的特点处理器的特点:功能块的数目、总线类型等。 片上存储器的大小片上存储器的大小。芯片的引脚数引脚数和封装形式封装形式:如P

28、QFP(Plastic Quad Flat Package)通常比BGA(Ball Grid Array Package)便宜。芯片大小芯片大小(die size):取决于制造的工艺水平。嵌入式微处理器的成本嵌入式微处理器的成本代码密度代码密度(code density):代码存储器的大小将影响价格,不同种类的处理器有不同的代码密度:CISC芯片代码密度高,但结构复杂,其额外芯片代码密度高,但结构复杂,其额外的控制逻辑单元使价格变得很高;的控制逻辑单元使价格变得很高;RISC芯片拥有简单的结构,代码密度低,因芯片拥有简单的结构,代码密度低,因为其指令集简单;为其指令集简单;VLIW代码密度最低

29、,因为它的指令字倾向于代码密度最低,因为它的指令字倾向于采用多字节。采用多字节。 主流的嵌入式微处理器主流的嵌入式微处理器目前主流的嵌入式微处理器系列主要有目前主流的嵌入式微处理器系列主要有ARMARM系列、系列、MIPSMIPS系列、系列、PowerPCPowerPC系列、系列、Super HSuper H系列和系列和X86X86系列等。系列等。属于这些系列的嵌入式微处理器产品很多,属于这些系列的嵌入式微处理器产品很多,有上千种以上。有上千种以上。UnitsUnits(millions)(millions)Source: Andrew Allison, Inside The New Comp

30、uter Industry, January 2001Embedded RISC Processor Shipments32位浪潮的到来位浪潮的到来Source:SemicoResearchCorp.andSIA/WSTSTotalMCU,bySub-Category(excl.DSP)TotalEmbeddedControlMarketShipmentsbyType总共约总共约26亿个亿个32位处理器位处理器付运,占总数付运,占总数96亿的亿的27%2005年年ARM为为17亿个,亿个,约占约占32位总量的位总量的70%左右左右X86系列系列主要由主要由AMD,Intel,NS,ST等公司提

31、等公司提供,如:供,如:Am186/88、Elan520、嵌入式嵌入式K6,386EX、STPC等。等。主要应用在主要应用在工业控制工业控制、通信通信等领域。等领域。国内由于对国内由于对X86体系比较熟悉,得到广泛体系比较熟悉,得到广泛应用,特别是嵌入式应用,特别是嵌入式PC的应用非常广泛。的应用非常广泛。MPC/PPC系列系列Motorola推出的推出的MPC系列,如系列,如MPC8XX。IBM推出推出PPC系列,如系列,如PPC4XX。主要应用在主要应用在通信通信、消费电子及工业控制、消费电子及工业控制、军用装备等军用装备等领域。领域。MPC/PPC系列系列IBM PowerPCIBM P

32、owerPC 集成集成10/100Mbps10/100Mbps以太网以太网控制器、串行和并行端口、内存控制器控制器、串行和并行端口、内存控制器以及其它外设的高性能嵌入式处理器。以及其它外设的高性能嵌入式处理器。Motorola MPCMotorola MPC 高度综合的高度综合的SOCSOC设备,设备,它结合了它结合了PPCPPC微处理器核心的功能、通信微处理器核心的功能、通信处理器和单硅成分内的显示控制器。这处理器和单硅成分内的显示控制器。这个设备可以在大量的电子应用中使用,个设备可以在大量的电子应用中使用,特别是在低能源、便携式、图象捕捉和特别是在低能源、便携式、图象捕捉和个人通信设备。个

33、人通信设备。技术技术0.25微米微米CMoSSA-12E282Dhrystone2.1MIPS200MHz375Dhrystone2.1MIPS266MHz200/100/66/50MHz266/133/66/66MHz晶体数量晶体数量480万万电源消耗电源消耗1.1瓦瓦信号信号 I/O300温度范围温度范围-40到到80度度电源供应电源供应2.5V( 逻辑电路逻辑电路 ),3.3V(I/O) ,支持,支持 5VI/Os456-Ball,EnhancedPBGA(35mmx35mm)性能性能频率频率 (CPU/SDRAM/PCI/EBC)封装封装PowerPC 405 GP技术规格* *Dhr

34、ystoneDhrystone是一个综合性的基准测试程序,它是为了测试编译器和是一个综合性的基准测试程序,它是为了测试编译器和CPUCPU处处理整数指令和控制功能的有效性,人为地选择一些典型指令综合起来形成理整数指令和控制功能的有效性,人为地选择一些典型指令综合起来形成的测试程序。的测试程序。 ARM系列系列ARM(Advanced RISC Machine)ARM(Advanced RISC Machine)公司是一家专门从公司是一家专门从事芯片事芯片IPIP设计与授权业务的英国公司,其产品有设计与授权业务的英国公司,其产品有ARMARM内核以及各类外围接口。内核以及各类外围接口。ARMAR

35、M内核是一种内核是一种3232位位RISCRISC微处理器,具有微处理器,具有功耗低功耗低、性价比高性价比高、代码密度高代码密度高等三大特色。等三大特色。目前,目前,90%90%的移动电话、大量的游戏机、手持的移动电话、大量的游戏机、手持PCPC和机顶盒等都已采用了和机顶盒等都已采用了ARMARM处理器,许多一流的处理器,许多一流的芯片厂商都是芯片厂商都是ARMARM的授权用户(的授权用户(LicenseeLicensee),如),如IntelIntel、SamsungSamsung、TITI、MotorolaMotorola、STST等,等,ARMARM已已成为业界公认的嵌入式微处理器标准。

36、成为业界公认的嵌入式微处理器标准。ARM处理器的分类处理器的分类结构体系版本结构体系版本(ArchitectureArchitecture)ARM v4TARM v5TE ARM v6ARM Cortex (v7)Processor FamilyProcessor FamilyARM7 ARM9ARM10ARM11ARM Cortex按应用特征分类按应用特征分类应用处理器应用处理器 Application Processor实时控制处理器实时控制处理器 Real-time Controller微控制器微控制器 Micro-controller特征:特征:MMU,Cache最快频率、最高性能、合

37、理功耗最快频率、最高性能、合理功耗特征:特征:MPU,Cache实时响应、合理性能、较低功耗实时响应、合理性能、较低功耗特征:特征:nosub-memorysystem一般性能、最低成本、极低功耗一般性能、最低成本、极低功耗v4v5TESA110v4TARM720TARM7TDMI-SARM920TARM940TARM922TARM966E-SARM946E-SARM1020Ev5TEJ/Jazellev6/JazelleARM7EJ-SARM926EJ-SARM1026EJ-SARM11Micro-ArchitectureRoadmap of ARM V4/V5/V6ARMV4ARMV4是是

38、目目前前支支持持的的最最老老的的架架构构,是是基基于于32-bit地地址址空空间间的的32-bit指指令令集集。ARMv4除除了了支支持持ARMv3的指令外还扩展了的指令外还扩展了:v支持支持halfword的存取的存取v支持支持byte和和halfword的符号扩展读的符号扩展读v支持支持Thumb指令指令v提供提供Thumb和和Normal状态的转换指令状态的转换指令v进一步的明确了会引起进一步的明确了会引起Undefined异常的指令异常的指令v对以前的对以前的26bits体系结构的体系结构的CPU不再兼容不再兼容 ARMv4TARMv4T增加了增加了16-bitThumb指令集,这指令

39、集,这样使得编译器能产生紧凑代码(相对于样使得编译器能产生紧凑代码(相对于32-bit代码,内存能节省到代码,内存能节省到35%以上以上)并保持并保持32-bit系统的好处。系统的好处。Thumb在处理器中仍然要扩展为标准的在处理器中仍然要扩展为标准的32位位ARM指令来运行。用户采用指令来运行。用户采用16位位Thumb指令集最大的好处就是可以获得更高的代指令集最大的好处就是可以获得更高的代码密度和降低功耗码密度和降低功耗。 ARMV5TE1999年年推推出出ARMv5TE其其增增强强了了Thumb体体系系,增增强强的的Thumb体体系系增增加加了了一一个个新新的的指指令令同同时时改改进进了

40、了Thumb/ARM相相互互作作用用、编编译译能能力力和和混混合合及及匹匹配配ARM与与Thumb例例程程,以以更更好好地地平平衡衡代代码码空空间间和和性性能能并并在在ARM ISA上上扩扩展展了了增增强强的的DSP指指令令集集:增增强强的的DSP指指令令包包括括支支持持饱饱和和算算术术(saturatedarithmetic), 并并且且针针对对Audio DSP应应用用提提高高了了70%性性能能。E扩扩展展表表示示在在通通用用的的CPU上上提提供供DSP能力。能力。ARMv5TEJ2000年推出年推出ARMv5TEJ,增加了,增加了Jazelle扩扩展以支持展以支持Java加速技术。加速技

41、术。Jazelle技术比仅仅基于软件的技术比仅仅基于软件的JVM性能提性能提高近高近8倍的性能减少了倍的性能减少了80的功耗。的功耗。ARMv62001年推出年推出ARMv6,它在许多方面做了改进如内,它在许多方面做了改进如内存系统、异常处理和较好地支持多处理器。存系统、异常处理和较好地支持多处理器。SIMD扩展使得广大的软件应用如扩展使得广大的软件应用如Video和和Audiocodec的性能提高了的性能提高了4倍。倍。Thumb-2和和TrustZone技术也用于技术也用于ARMv6中。中。ARMv6第一个实现是第一个实现是2002年春推出的年春推出的ARM1136J(F)-STM处理器,

42、处理器,2003年又推出了年又推出了ARM1156T2(F)-S和和ARM1176JZ(F)-S处理器。处理器。ARMv7ARMv7定义了定义了3种不同的处理器配置(种不同的处理器配置(processorprofiles): ProfileA是面向复杂、基于虚拟内存的是面向复杂、基于虚拟内存的OS和应用的和应用的ProfileR是针对实时系统的是针对实时系统的ProfileM是针对低成本应用的优化的微控制器的是针对低成本应用的优化的微控制器的。所有所有ARMv7profiles实现实现Thumb-2技术,同时还技术,同时还包括了包括了NEON技术的扩展提高技术的扩展提高DSP和多媒体处和多媒体

43、处理吞吐量理吞吐量400,并提供,并提供浮点支持浮点支持以满足下一代以满足下一代3D图形和游戏以及传统嵌入式控制应用的需要图形和游戏以及传统嵌入式控制应用的需要。ARMFamilyARM7 FamilyARM9 FamilyARM10 FamilyARM11 Family150DMIPS300DMIPS500DMIPS1000DMIPSARM Cortex FamilyARM720TARM1136JARM1176JZARM1026EARM920T/ARM922TARM926EJCortexAApplicationProcessorARM7TDMIARM1156T2ARM1026EARM946E

44、CortexREmbeddedRTControllerARM7TDMIARM966EARM968ECortexMMicro-controllerARM Architecture系列系列相应产品相应产品性能特点性能特点ARM7ARM7系列系列ARM7TDMI,ARM7TDMI-S,ARM720T,ARM7EJ三级流水三级流水性能:性能:0.9MIPS/MHz,可达到可达到130MIPs(Dhrystone2.1) ARM9ARM9系列系列ARM920T,ARM922T 五级流水,五级流水,性能:性能:1.1MIPS/MHz,可达,可达300MIPS(Dhrystone2.1),单,单32-bit

45、AMBAbus接口,支持接口,支持MMUARM9EARM9E系列系列ARM926EJ-S,RM946E-S,ARM966E-S,ARM968E-S,ARM996HS 五级流水五级流水,支持,支持DSP指令。指令。性性能:能:1.1MIPS/MHz,可达,可达300MIPS(Dhrystone2.1),高性能,高性能AHB,软核软核(softIP) ARM10ARM10系列系列ARM1020E,ARM1022EARM1026EJ-S 6级流水支持分支预测(级流水支持分支预测(branchprediction),支持),支持DSP指令。指令。性能:性能:1.35MIPS/MHz,可达,可达430+

46、Dhrystone2.1MIPS,可选支可选支持高性能浮点操作持高性能浮点操作,双双64位总线接口位总线接口,内部内部64位数据通路位数据通路系列系列相应产品相应产品性能特点性能特点ARM11 ARM11 系列系列ARM11MPCore,ARM1136J(F)-S,ARM1156T2(F)-S,ARM1176JZ(F)-S 8级流水线级流水线(9级级ARM1156T2(F)-S),独立的,独立的load-store和和arithmetic流水线,支持分支预测和返回流水线,支持分支预测和返回栈(栈(ReturnStack)。强大的)。强大的ARMv6指令集,指令集,支持支持DSP,SIMD(Si

47、ngleInstructionMultipleData)扩展,扩展,支持支持ARMTrustZone、Thumb-2核心技术。核心技术。740Dhrystone2.1MIPS,低功耗,低功耗0.6mW/MHz(0.13m,1.2V)CortexCortex系列系列Cortex-A8,Cortex-M3,Cortex-R4Cortex-A系列系列:面向用于复杂面向用于复杂OS和应用的应用处和应用的应用处理器(理器(applicationsprocessors),支持),支持ARM,ThumbandThumb-2指令集。指令集。Cortex-R系列:面向嵌入式实时领域的嵌入式处系列:面向嵌入式实时

48、领域的嵌入式处理器,支持理器,支持ARM,Thumb,和和Thumb-2指令集。指令集。Cortex-M系列:系列:面向深嵌入式价格敏感的嵌入面向深嵌入式价格敏感的嵌入式处理器式处理器,只支持只支持Thumb-2指令集指令集SecurCoreSecurCore 系列系列SecurCoreSC100,SecurCoreSC200用于用于SmartCard和和SecureIC的的32-bit解决方案。解决方案。支持支持ARM和和Thumb指令集,软核。指令集,软核。具有安全特征和低成本安全存储保护单元具有安全特征和低成本安全存储保护单元 当前的主流当前的主流ARM处理器处理器ARM7世界上最为广泛

49、使用的世界上最为广泛使用的CPU之一之一100MHzARM9100-300MHz1.7B ARM Powered shipment in year of 2005, 31% is ARM9 based.ARM11芯片已经面世芯片已经面世ARM11300-700+MHzSIMD指令扩展支持更丰富的多媒体应用指令扩展支持更丰富的多媒体应用40家授权芯片公司,一些已开始量产家授权芯片公司,一些已开始量产FOMAN902iFirstARM11basedphoneOMAP2420i.MX31/i.MX31L目前最快的嵌入式处理器目前最快的嵌入式处理器最快的处理器提供超过最快的处理器提供超过2000DMI

50、PS的性能的性能运行于运行于1GHz频率频率(90nmor65nm制造工艺制造工艺)功耗小于功耗小于300mWARMCortexA8ApplicationProcessorCortex-M3实现实现$1ARM芯片芯片ARMCortexArchitectureThumb-2ISA3StagePipeline1.22DMIPS/MHz30%overARM7TDMI33Kgates30%smallerthanARM7TDMILuminaryMicro的Stellaris系列MCU产品售价仅1美元ARM Cortex-M3 微控制器内核,专门针对MCU应用领域而设计,突出低成本、低功耗和高效率。领先嵌

51、入式处理器技术发展讨论领先嵌入式处理器技术发展讨论多处理器技术多处理器技术单处理器技术的性能提升终有一天会遭遇瓶颈单处理器技术的性能提升终有一天会遭遇瓶颈对嵌入式系统而言,尤其要考虑付出的代价对嵌入式系统而言,尤其要考虑付出的代价把任务进行并行分解是理想的选择把任务进行并行分解是理想的选择ARMMPcore可以集成可以集成1-4个个ARM11处理器处理器关键是要提供给软件开发者一个友好的编程界面关键是要提供给软件开发者一个友好的编程界面6464位处理器?位处理器?哪儿是系统性能瓶颈?哪儿是系统性能瓶颈?是需要是需要64位地址还是位地址还是64位数据?位数据?嵌入式系统比嵌入式系统比PC有更好的

52、条件来解决系统性能和带宽问题有更好的条件来解决系统性能和带宽问题PC系统在主板上,扩展系统带宽需要扩大每个组件的接口带宽系统在主板上,扩展系统带宽需要扩大每个组件的接口带宽SoC只需扩展片内总线,非常容易实现只需扩展片内总线,非常容易实现AMBA支持支持8-1024位总线宽度位总线宽度许多许多SoC设计以及设计以及ARM处理器内部已经使用处理器内部已经使用64位数据总线位数据总线ARM7TDMIThumb Thumb 架构扩展架构扩展, , 提供两个独立的指令集:提供两个独立的指令集:ARM ARM 指令,均为指令,均为 3232位位ThumbThumb指令,均为指令,均为 1616位位两种运

53、行状态,用来选择哪个指令集被执行两种运行状态,用来选择哪个指令集被执行内核具有内核具有DebugDebug扩展结构扩展结构增强乘法器增强乘法器 (32x8) (32x8) 支持支持6464位结果位结果EmbeddedICEEmbeddedICE 逻辑逻辑3级流水线级流水线冯冯诺依曼架诺依曼架构构CPI(CyclePerInstruction)约为约为1.9ARM7TDMIARM7TDMI内核内核MCLKnIRQnFIQnRESETBUSENBIGENDISYNCnWAITVDDVSSAPEDBE协处理器接口协处理器接口存储器管理存储器管理存储器接口存储器接口ABORTnOPCCPBCPAnCP

54、InTRANSnM4:0MAS1:0nRWnMREQLOCKSEQnENOUTA31:0DOUT31:0DIN31:0D31:0电源电源总线控制总线控制时钟时钟配置配置中断中断内核信号内核信号内核信号内核信号ARM7TDMIARM7TDMI内核内核TAP控制器控制器JTAG接口接口数据总线数据总线控制信号控制信号地址总线地址总线BUSSplitterEmbeddedICE逻辑逻辑方框图方框图方框图方框图乘法器乘法器指令指令解码解码地址地址自增器自增器nRESETnMREQSEQABORTnIRQnFIQnRWMAS1:0LOCKnCPICPACPBnWAITMCLKnOPCBIGENDISYN

55、CnTRANSnM4:0D31:0桶桶移位器移位器32位位ALUDBE写数据写数据寄存器寄存器读数据读数据寄存器寄存器地址寄存器地址寄存器寄存器寄存器BankA31:0ABE及及控制控制逻辑逻辑PCUpdate解码站解码站指令指令解压缩解压缩IncrementerPCABusBBusALUBusARM7TDMI内核内核内核内核ARM7TDMI指令流水线指令流水线为增加处理器指令流的速度,为增加处理器指令流的速度,ARM7 ARM7 系列使系列使用用3 3级级流水线。流水线。允许多个操作同时处理,而非顺序执行。 PC指向正被取指的指令,而非正在执行的指令。FetchDecodeExecute从存

56、储器中读取指令从存储器中读取指令解码指令中用到的寄存器解码指令中用到的寄存器寄存器读(从寄存器寄存器读(从寄存器Bank)移位及移位及ALU操作操作寄存器写(到寄存器寄存器写(到寄存器Bank)PCPCPC-4PC-2PC-8PC-4ARMThumbARM7TDMI指令流水线指令流水线操作操作周期周期 123456ADDSUBMOVANDORREORCMPRSBFetchDecode。FetchExecuteDecodeFetchExecuteDecodeFetchExecuteDecodeFetchFetchExecuteDecodeExecuteDecodeFetchExecuteDeco

57、deFetch最佳流水线最佳流水线最佳流水线最佳流水线该例中用该例中用6 6个时钟周期执行了个时钟周期执行了6 6条指令条指令所有的操作都在寄存器中(单周期执行)所有的操作都在寄存器中(单周期执行)指令周期数指令周期数 (CPI) = 1(CPI) = 1ARM7TDMIARM7TDMI内核内核地址地址地址地址数据读数据读AMBA接口接口写写缓冲缓冲MMU数据写数据写数据数据ARM7xxT控制控制逻辑逻辑CacheAMBA总线总线接口接口JTAG和非和非AMBA信号信号CP15带带CacheCache的的ARM7TDMIARM7TDMI ARM710T8K统一的统一的cache完整的内存管理单

58、元完整的内存管理单元(MMU),),支持虚拟地址支持虚拟地址和存储器保护和存储器保护写缓冲写缓冲ARM720T同同ARM710T,但支持但支持WinCEARM740T8K统一的统一的cache内存管理单元内存管理单元写缓冲写缓冲Write Write BufferBuffer: 当当 数数 据据 写写 到到 Write Write BufferBuffer后后 不不 需需 要要 CPUCPU的的 任任 何何 干干 预预 而而 由由Write Write BufferBuffer控控制制逻逻辑辑自自动动的的将将数数据据写写到到最最终终的的地地方方;CacheCache的的回回写写则则需需要要CP

59、UCPU的的干干预预。Write BufferWrite Buffer较小,通常只有几十个字节。较小,通常只有几十个字节。Read Read BufferBuffer:当当读读数数据据时时Read Read BufferBuffer自自动动多多读读取取一一些些字字节节,但但是是不不占占用用CPUCPU的的总总线线时时间间,所所以以能能加加快快读读数数据据的的速速度度;当当使使用用CacheCache时时如如果果要要从从内内存存中中读读取取数数据据则则每每个个数数据据都都会会占占用用CPUCPU的的时时间间,这这是是与与Read Read BufferBuffer的的最最大大不不同同点点。Rea

60、d Read BufferBuffer较较小小,通通常常只只有有几几十十个字节。个字节。 CacheCacheCacheCache与与与与BufferBufferBufferBuffer的区别的区别的区别的区别 ARM9TDMIHarvardHarvard架构架构增加了可用的存储器宽度增加了可用的存储器宽度l指令存储器接口指令存储器接口l数据存储器接口数据存储器接口可以实现对指令和数据存储器的同时访问可以实现对指令和数据存储器的同时访问5 5 级流水线级流水线实现了以下改进:实现了以下改进:改进改进CPI到到1.5提高了最大时钟频率提高了最大时钟频率ARM9TDMIInstructionFet

61、chShift+ALUMemoryAccessRegWriteRegReadRegDecodeFETCHDECODEEXECUTEMEMORYWRITEARM9TDMIARMorThumbInstDecodeRegSelectRegReadShiftALURegWriteThumbARMdecompressARMdecodeInstructionFetchFETCHDECODEEXECUTEARM7TDMI流水线流水线ARM9TDMIARM9TDMIDCacheICacheMMUGLUE外部外部存储器存储器ARM940T2x4KcachesMPU写缓冲写缓冲ARM9xxTARM920T2x16

62、KcachesMMU支持虚拟地址和内存保护支持虚拟地址和内存保护 写缓冲写缓冲带带CacheCache的的ARM9TDMIARM9TDMI ARM9E-S系列概述系列概述ARM9E ARM9E 基于基于 ARM9TDMI ARM9TDMI 内核,有以下扩展和增强内核,有以下扩展和增强单周期 32x16 乘法器EmbeddedICE 逻辑 RT改进的 ARM/Thumb 交互操作新的32x16和 16x16 乘法指令新的计数到零指令新的饱和算术指令ARM946E-SARM946E-SARM9E-S 内核指令和数据cache, 大小可选择指令和数据RAM,大小可选择保护单元AHB 总线接口ARM9

63、66E-SARM966E-S与 ARM946E-S相似, 但无 cacheARM926EJ-S系列概述系列概述JazelleJazelle状态允许直接执行状态允许直接执行Java 8Java 8位码位码ARM926EJ-SARM926EJ-SARM9E-S内核内核可配置的可配置的cache和和TCM紧耦合内存紧耦合内存(TightlyCoupledMemories)内存管理单元内存管理单元双重双重32位位AHB总线接口总线接口(多层多层)ARM10E系列概述系列概述v5TEv5TE架构架构CPI CPI 1.3 1.36 6 级流水线级流水线静态分支预测静态分支预测32kB 32kB 指令指令

64、cachecache和和32kB32kB数据数据cachecache支持支持“Hit under miss”Hit under miss”非阻塞的执行单元非阻塞的执行单元每周期每周期64 64 位的位的 LDM / STMLDM / STM操作操作EmbeddedICEEmbeddedICE逻辑逻辑 - RT-II- RT-II支持新的支持新的 VFPv1 VFPv1 结构结构同同ARM1020EARM1020E,除了,除了cachecache大小为大小为16kB16kB对对SUDL(singleSUDL(single user design license ) user design lic

65、ense )有效有效ARM1020EARM1022EARM9vsARM10流水线的对比流水线的对比流水线的对比流水线的对比 IntelStrongARM概述概述ARM V4 ARM V4 架构架构 ( (无无ThumbThumb支持支持) )5 5级流水线,降低跳转损耗级流水线,降低跳转损耗- -stage pipelinestage pipeline,reduced branch penaltyreduced branch penalty改进的乘法器(典型地比改进的乘法器(典型地比ARM9TDMIARM9TDMI 快快2 2个周期)个周期)不支持不支持 Multi-ICE Multi-ICE

66、 调试调试 ( (JTAGJTAG限制在连通性测限制在连通性测试试) )无外部协处理器接口无外部协处理器接口SA-110:SA-110: 16K 指令和数据 caches, 8 x 16 字节写缓冲.SA-1100/1110:SA-1100/1110:片上外设,存储器控制器更小的 cache 容量PID 寄存器指令断点,通过 CP15IntelXScale概述概述V5TE V5TE 兼容架构兼容架构7-87-8级流水线带统计分支预测级流水线带统计分支预测32k32k的数据和指令的数据和指令 Cache, Cache, 外加外加2k2k的数据的数据MinicacheMinicache8口写缓冲,

67、4口填充和追加缓冲完整的完整的3232位协处理器接口位协处理器接口调试和性能监控逻辑(通过CP14 )乘-加模块(作为CP0 )可配置的内核时钟速度100-733MHz ,来自 33-66MHz 输入时钟异步输入总线时钟可到100 MHz (最大总线内核时钟的1/3 )ARM微处理器:编程模型微处理器:编程模型数据类型数据类型 字节型数据(字节型数据(ByteByte):):数据宽度为8bits 半半字字数数据据类类型型(HalfWordHalfWord):数据宽度为16bits,存取式必须以2字节对齐的方式 字字数数据据类类型型(WordWord):数据宽度为32bits,存取式必须以4字节

68、对齐的方式 ARM微处理器:微处理器:CPU模式(模式(processormode)7 7 7 7种种种种CPUCPUCPUCPU模式模式模式模式 CPUCPU模式的转变:模式的转变:软件控制异常外部中断ARM微处理器:微处理器:CPU模式模式User模式模式程序不能访问有些受保护的资源程序不能访问有些受保护的资源只能通过异常的形式来改变只能通过异常的形式来改变CPU的当前运行模式的当前运行模式特权模式特权模式可以存取可以存取系统中的系统中的任何资源任何资源System模式模式与与User模式的运行环境一样模式的运行环境一样但是它可以不受任何限制的访问任何资源但是它可以不受任何限制的访问任何资

69、源该模式主要用于运行系统中的一些该模式主要用于运行系统中的一些特权任务特权任务FIQ模式模式IRQ模式模式Supervisor模式模式Abort模式模式Undefined模式模式异常模式异常模式:主要是在:主要是在外部中外部中断断或者程序执行或者程序执行非法操作非法操作时时会触发会触发ARM微处理器:处理器工作状态微处理器:处理器工作状态(PROCESSOROPERATINGSTATES)处理器有两种工作状态:处理器有两种工作状态:ARM:32位,执行字对准的ARM指令Thumb:16位,执行半字对准的Thumb指令ARMARM和和ThumbThumb之间状态的切换不影响处理器之间状态的切换不

70、影响处理器的模式或寄存器的内容的模式或寄存器的内容ARM微处理器:处理器工作状态微处理器:处理器工作状态进入进入ThumbThumb状态:状态:执行BX指令,并设置操作数寄存器的状态(位0)为1。在Thumb状态进入异常(IRQ, FIQ, UNDEF, ABORT,SWI etc.),当异常处理返回时自动转换到Thumb状态进入进入ARMARM状态:状态:执行BX指令,并设置操作数寄存器的状态(位0)为0。进入异常时,将PC放入异常模式链接寄存器中,从异常向量地址开始执行也可进入ARM状态ARM微处理器:处理器工作状态微处理器:处理器工作状态Thumb-2Thumb-2: :增加了混合模式能

71、力增加了混合模式能力定义了一个新的定义了一个新的32-bit指令集能在传统的指令集能在传统的16-bit指令运行的指令运行的Thumb状态下同时运行。状态下同时运行。这样能在一个系统中更好地平衡这样能在一个系统中更好地平衡ARM和和Thumb代码的能力,使系统能更好地利用代码的能力,使系统能更好地利用ARM级别的性能和级别的性能和Thumb代码的密度的优势代码的密度的优势 ARM微处理器:寄存器微处理器:寄存器ARMARM处理器有处理器有3737个寄存器个寄存器 31个个通通用用寄寄存存器器:程程序序计计数数器器、堆堆栈栈及及其其他他通用寄存器通用寄存器6个状态寄存器个状态寄存器这些寄存器不能

72、同时看到这些寄存器不能同时看到不同的处理器状态和工作模式确定哪些寄不同的处理器状态和工作模式确定哪些寄存器是对编程者是可见的存器是对编程者是可见的ARM微处理器:微处理器:ARMState寄存器寄存器ARM微处理器微处理器:ThumbState寄存器寄存器ARMState与与ThumbState寄存器关系寄存器关系ARM微处理器:通用寄存器微处理器:通用寄存器通用寄存器是通用寄存器是R0-R15R0-R15的寄存器,分为三类的寄存器,分为三类 没有对应影子寄存器的寄存器没有对应影子寄存器的寄存器R0-R7有对应影子寄存器的寄存器有对应影子寄存器的寄存器R8-R14程序计数器程序计数器R15(或

73、者或者PC)影影子子寄寄存存器器是是指指该该寄寄存存器器在在不不同同的的模模式式下下对应的物理寄存器对应的物理寄存器ARM微处理器:通用寄存器微处理器:通用寄存器R0-R7R0-R7所所有有模模式式下下,R0-R7所所对对应应的的物物理理寄寄存存器器都都是是相同的相同的这这八八个个寄寄存存器器是是真真正正意意义义上上的的通通用用寄寄存存器器,ARM体体系系结结构构中中对对它它们们没没有有作作任任何何特特殊殊的的假假设设,它们的功能都是等同的。它们的功能都是等同的。在在中中断断或或者者异异常常处处理理程程序序中中一一般般都都需需要要对对这这几几个寄存器进行保存。个寄存器进行保存。ARM微处理器:

74、通用寄存器微处理器:通用寄存器R8-R14R8-R14访问的物理寄存器取决于当前的处理器模式,若要访问特定的物理寄存器而不依赖当前的处理器模式,则要使用规定的名字。 R8-R12各有两组物理寄存器:一组为FIQ模式,另一组是除FIQ以外的其他模式。R13-R14各有6个分组的物理寄存器,一个用于用户模式和系统模式,其他5个分别用于5种异常模式。R13(也被称为SP指针)被用作栈栈指指针针,通常在系统初始化时需要对所有模式下的SP指针赋值,当CPU在不同的模式时栈指针会被自动切换成相应模式下的值。R14有两个用途,一是在调调用用子子程程序序时时用用于于保保存存调调用用返返回地址回地址,二是在发生

75、异常时用于保存异常返回地址发生异常时用于保存异常返回地址。ARM微处理器:通用寄存器微处理器:通用寄存器R15R15用作程序计数器用作程序计数器(PC),可以被读写可以被读写ARMstate:bits1:0为为0,bits31:2即为即为PC.THUMBstate:bit0为为0,bits31:1即为即为PCARM微处理器:程序状态寄存器微处理器:程序状态寄存器CPSRCPSR(当当前前程程序序状状态态寄寄存存器器)在在所所有有的的模模式下都是可以读写的,它主要包含:式下都是可以读写的,它主要包含:条件标志条件标志中断使能标志中断使能标志当前处理器的模式当前处理器的模式其它的一些状态和控制标志

76、其它的一些状态和控制标志ARM微处理器:程序状态寄存器微处理器:程序状态寄存器置置0表示执行表示执行32bit的的ARM指令指令置置1表示执行表示执行16bit的的Thumb指令指令NegativeZeroCarryOverflowIRQ中断的响应中断的响应:置置1:禁止响应:禁止响应置置0:允许响应:允许响应FIQ中断的响应中断的响应:置置1:禁止响应:禁止响应置置0:允许响应:允许响应条件标志条件标志模式控制位模式控制位ARM/Thumb控制标志控制标志中断标志中断标志ARM微处理器:程序状态寄存器微处理器:程序状态寄存器模式控制位模式控制位M0-M4M0-M4ARM微处理器:异常微处理器

77、:异常异异常常是是由由内内部部或或者者外外部部原原因因引引起起的的,当当异异常常发发生生时时CPUCPU将将暂暂停停执执行行当当前前指指令令自自动动到到指指定的向量地址读取指令并且执行。定的向量地址读取指令并且执行。在X86上,当有异常发生时CPU是到指定的向量地址读取要执行的程序的地址执行的程序的地址而ARM是到向量地址的地方读读取取指指令令,也就是ARM的向量地址处存放的是一条指令(一般是一条跳转指令) ARM微处理器:异常微处理器:异常ARM CPUARM CPU将引起异常的类型分为将引起异常的类型分为7 7种种ARM微处理器:异常微处理器:异常当异常出现时,异常模式分组的当异常出现时,

78、异常模式分组的R14和和SPSR用于用于保存状态,即:保存状态,即: R14_=returnlinkSPSR_=CPSRCPSR4:0=exceptionmodenumberCPSR5=0/*在在ARM状态执行状态执行*/if=ResetorFIQthenCPSR6=1/*禁止快速中断禁止快速中断*/CPSR7=1/*禁止正常中断禁止正常中断*/PC=exceptionvectoraddress当处理异常返回时,将当处理异常返回时,将SPSR传送到传送到CPSR,R14传送到传送到PCARM微处理器:异常微处理器:异常ResetReset:CPUCPU被复位后,进入被复位后,进入Supervi

79、sor Supervisor ModeMode并且禁止并且禁止FIQFIQ和和IRQIRQ。 Undefined InstructionsUndefined Instructions: CPUCPU执行一条执行一条未被定义的指令时就会触发该异常。这种未被定义的指令时就会触发该异常。这种机制可以用于通过软件仿真的方式扩展机制可以用于通过软件仿真的方式扩展THUMB or THUMB or ARMARM指令集指令集。SWISWI:软中断(软中断(SWISWI)是执行是执行SWISWI指令指令时触发时触发的,该异常主要用于的,该异常主要用于OSOS的系统调用。的系统调用。ARM微处理器:异常微处理器

80、:异常PrefetchPrefetch Abort Abort: CPUCPU在在读取指令时发生读取指令时发生读内存错误读内存错误并且并且该指令又要被执行该指令又要被执行则触发则触发该异常;如果只是在读取指令时发生了内该异常;如果只是在读取指令时发生了内存错误而该指令又未被执行则不会触发该存错误而该指令又未被执行则不会触发该异常。异常。Data AbortData Abort:当:当CPUCPU在在读写数据读写数据时,如果发时,如果发生错误则触发该异常。生错误则触发该异常。ARM微处理器:异常微处理器:异常IRQIRQ:当外部当外部IRQIRQ输入请求发生时(输入请求发生时(IRQIRQ中断中

81、断已经被使能),触发该异常。已经被使能),触发该异常。FIQFIQ: FIQFIQ通常被用于通常被用于快速传输数据快速传输数据。当外。当外部部FIQFIQ输入请求发生时(输入请求发生时(FIQFIQ中断已经被使中断已经被使能),触发该异常。能),触发该异常。ARM微处理器:异常微处理器:异常异常的优先级异常的优先级ARM微处理器:内存和微处理器:内存和I/OARM ARM 的寻址空间是线性的地址空间,为的寻址空间是线性的地址空间,为2 23232=4G =4G Bytes 0 to 3 Bytes 0 to 3 存储第一个存储第一个word, bytes 4 to 7word, bytes 4

82、 to 7存存储第二个储第二个wordwordARMARM支支持持大大端端(Big-endianBig-endian)和和小小端端(Little-Little-endianendian)的的内内存存数数据据方方式式,可可以以通通过过硬硬件件的的方方式式设置(没有提供软件的方式)端模式设置(没有提供软件的方式)端模式ARM微处理器:内存和微处理器:内存和I/O大端的数据存放格式大端的数据存放格式低地址低地址高地址高地址地址地址A地址地址A+1地址地址A+2地址地址A+3最高有效字节的地址最高有效字节的地址就是该就是该word的地址的地址最高有效字节最高有效字节位于最低地址位于最低地址worda=

83、0xf6734bcdf6734bcdARM微处理器:内存和微处理器:内存和I/O小端的数据格式小端的数据格式低地址低地址高地址高地址地址地址A地址地址A+1地址地址A+2地址地址A+3最低有效字节的地址最低有效字节的地址就是该就是该word的地址的地址最低有效字节最低有效字节位于最低地址位于最低地址worda=0xf6734bcdf6734bcdARM微处理器:内存和微处理器:内存和I/O大端大端: : 小端小端: :0xb32045000xddddddd00xb32045000xddddddd0 f6 f6 73 73 4b 4b cd cd0000dada 实例实例变量变量A:wordA=

84、0xf6734bcd,在内存中的起始,在内存中的起始地址为地址为0xb3204500变量变量B:halfwordB=218,在内存中的起始地址为,在内存中的起始地址为0xddddddd0ARM微处理器:内存和微处理器:内存和I/O数据信息数据信息状态信息状态信息控制信息控制信息数字量数字量模拟量模拟量开关量开关量连续几位二进制形式表示的数或字符。如连续几位二进制形式表示的数或字符。如键盘输入的信息以及打印机、显示器输出键盘输入的信息以及打印机、显示器输出的信息等的信息等时间上连续变化的量,如温度、压力、流时间上连续变化的量,如温度、压力、流量等量等只有两个状态的量,如阀门的合与断、电只有两个状

85、态的量,如阀门的合与断、电路的开与关等路的开与关等CPUCPU与与I/OI/O设备设备之间的之间的接口信接口信息息反映外设当反映外设当前工作状态前工作状态的信息的信息READY信号:输入设备是否准信号:输入设备是否准备好备好BUSY信号:输出设备是否忙信号:输出设备是否忙CPU向外部向外部设备发送的设备发送的控制命令信控制命令信息息读写控制信号读写控制信号时序控制信号时序控制信号中断信号中断信号片选信号片选信号其它操作信号其它操作信号数据、状态、控制信息都数据、状态、控制信息都是通过是通过CPUCPU的数据总线传的数据总线传送,存在送,存在I/OI/O接口的不同接口的不同端口中:数据、状态、控

86、端口中:数据、状态、控制端口制端口ARM微处理器:内存和微处理器:内存和I/OI/OI/O端口的编址方法,即端口的编址方法,即I/OI/O端口的地址安排方式端口的地址安排方式存储器映射编址存储器映射编址I/O映射编址映射编址I/OI/O端口的地址与内存地址统端口的地址与内存地址统一编址,即一编址,即I/OI/O单元与内存单单元与内存单元在同一地址空间元在同一地址空间I/OI/O端口与内存单元分开编址,端口与内存单元分开编址,即即I/OI/O单元与内存单元都有自单元与内存单元都有自己独立的地址空间己独立的地址空间ARM微处理器:内存和微处理器:内存和I/O存储器映射编址存储器映射编址I/OI/O

87、映射方式映射方式优点优点可采用丰富的内存操作指可采用丰富的内存操作指令访问令访问I/OI/O单元单元无需单独的无需单独的I/OI/O地址译码电地址译码电路路无需专用的无需专用的I/OI/O指令指令I/OI/O单元不占用内存空间单元不占用内存空间I/OI/O程序易读程序易读缺点缺点外设占用内存空间外设占用内存空间I/OI/O程序不易读程序不易读I/OI/O操作指令仅有单一的操作指令仅有单一的传送指令传送指令,I/O,I/O接口需有接口需有地址译码电路地址译码电路举例举例ARMARM中,中,I/OI/O端口与内存单端口与内存单元统一编址元统一编址Intel 80X86Intel 80X86系列,系

88、列,I/OI/O端口与内存单元分开编端口与内存单元分开编址,址,I/OI/O端口有自己独立端口有自己独立的地址空间,其大小为的地址空间,其大小为64KB64KBARM微处理器:内存和微处理器:内存和I/OARM ARM 的的I/OI/O端端口口都都是是内内存存映映射射的的方方式式,即即对对I/OI/O端端口口的的访访问问与与内内存存的的访访问问的的方方式式完完全全一一样。样。通通常常将将I/OI/O所所映映射射的的存存储储系系统统标标识识为为非非高高速速缓缓存存( (uncachableuncachable) )和和非非缓缓冲冲(unbufferableunbufferable) )。MIPS

89、:简介简介MIPSMIPS是世界上很流行的一种是世界上很流行的一种RISCRISC处理器。处理器。MIPSMIPS的意思是的意思是“无互锁流水级的微处理器无互锁流水级的微处理器”( (M Microprocessor without icroprocessor without i interlocked nterlocked p piped iped s stages)tages)。其机制是尽量利用软件办法避免流水线中的数其机制是尽量利用软件办法避免流水线中的数据相关问题。据相关问题。MIPSMIPS处理器是由斯坦福(处理器是由斯坦福(StanfordStanford)大学大学John Joh

90、n HenneryHennery教授领导的研究小组研制出来的。教授领导的研究小组研制出来的。President of Stanford University, USAComputer architecture book use MIPS as foundationMIPS:发展历程:发展历程1984年年MIPS计算机公司成立。计算机公司成立。1986年推出年推出R2000处理器。处理器。1988年推出年推出R3000处理器。处理器。1989年年IPOasMIPSComputerSystems,专注于专注于workstations1991年推出第一款年推出第一款64位商用微处理器位商用微处理器R

91、4000。1992年,年,SGI收购了收购了MIPS计算机公司之后,该公司又计算机公司之后,该公司又陆续推出陆续推出R8000(于于1994年)、年)、R10000(于于1996年)年)和和R12000(于于1997年)等型号的处理器。年)等型号的处理器。1998年,年,MIPS脱离脱离SGI成为成为MIPSTechnologies之后之后IPO,其战略发生变化,把重点放在了嵌入式系统上。,其战略发生变化,把重点放在了嵌入式系统上。MIPS:发展历程:发展历程1999年,年,MIPS公司发布公司发布MIPS32和和MIPS64架构架构标准,为未来标准,为未来MIPS处理器的开发奠定了基础。处理

92、器的开发奠定了基础。新的架构集成了所有原来的新的架构集成了所有原来的MIPS指令集,并且增指令集,并且增加了许多更强大的功能。加了许多更强大的功能。和和ARM公司一样,公司一样,MIPS公司本身并不从事芯片公司本身并不从事芯片的生产活动(只进行设计),不过其他公司如果的生产活动(只进行设计),不过其他公司如果要生产该芯片的话必须得到要生产该芯片的话必须得到MIPS公司的许可。公司的许可。MIPS:指令体系:指令体系MIPS指令集体系指令集体系ISA(MIPSInstructionSetArchitecture)从最早的从最早的MIPSIISA开始发展,到开始发展,到MIPSVISA,再到现在的

93、再到现在的MIPS32和和MIPS64结构,其所有结构,其所有版本都是与前一个版本兼容的。版本都是与前一个版本兼容的。在在MIPSIII的的ISA中,增加了中,增加了64位整数和位整数和64位位地址。地址。在在MIPSIV和和MIPSV的的ISA中增加了浮点数的中增加了浮点数的操作等。操作等。MIPS:指令体系:指令体系MIPSIMIPSVMIPS32和和MIPS64结构,结构,其所有版本都是与前一个版本兼容的。其所有版本都是与前一个版本兼容的。MIPS32和和MIPS64体系是为满足高性能、成本体系是为满足高性能、成本敏感的需求而设计的。敏感的需求而设计的。MIPS32体系是基于体系是基于M

94、IPSII的的,并从并从MIPSIII、MIPSIV和和MIPSV中选择一些指令以增强数据中选择一些指令以增强数据和代码的有效操作。和代码的有效操作。MIPS64体系是基于体系是基于MIPSV并与并与MIPS32体系兼体系兼容的。容的。第三节第三节嵌入式系统总线嵌入式系统总线概述概述AMBA总线总线PCI总线总线CPCI总线总线串行总线串行总线概述概述总线是总线是CPUCPU与与存储器存储器和和设备设备通信的机制,是计通信的机制,是计算机各部件之间传送数据、地址和控制信息的算机各部件之间传送数据、地址和控制信息的公共通道公共通道。片内总线或内部总线:连接片内总线或内部总线:连接CPUCPU内部

95、各主要功能部件内部各主要功能部件片外总线:片外总线:CPUCPU与存储器(与存储器(RAMRAM和和ROMROM)和和I/OI/O接口之间进行信息交换的通道接口之间进行信息交换的通道数据总线数据总线DbusDbus地址总线地址总线AbusAbus控制总线控制总线CbusCbus总总线线分分类类概述概述总线宽度总线宽度总线频率总线频率总线带宽总线带宽总线带宽总线带宽( (单位单位:MB/s) :MB/s) = =(总线宽度(总线宽度/8/8) 总线频率总线频率如:总线宽度如:总线宽度3232位,频率位,频率66MHZ66MHZ,则,则总线带宽总线带宽= =(32/832/8)* * 66MHz=

96、264MB/s66MHz=264MB/s总总线线的的主主要要参参数数又称总线位宽,指的是总线能同时又称总线位宽,指的是总线能同时传送数据的位数。如传送数据的位数。如1616位总线就是位总线就是具有具有1616位数据传送能力。位数据传送能力。总线工作速度的一个重要参数,总线工作速度的一个重要参数,工作频率越高,速度越快。工作频率越高,速度越快。通常用通常用MHzMHz表示。表示。又称总线的数据传送率,是指在一又称总线的数据传送率,是指在一定时间内总线上可传送的数据总量,定时间内总线上可传送的数据总量,用每秒最大传送数据量来衡量。用每秒最大传送数据量来衡量。总线带宽越宽,传输率越高。总线带宽越宽,

97、传输率越高。概述概述原因:原因:数据宽度:高速总线通常提供较宽的数据连接。数据宽度:高速总线通常提供较宽的数据连接。成本:高速总线通常采用更昂贵的电路和连接器。成本:高速总线通常采用更昂贵的电路和连接器。桥桥允允许许总总线线独独立立操操作作,这这样样在在I/OI/O操操作作中中可可提提供供某某些些并并行性。行性。一个微处理器系统可能含有多条总线一个微处理器系统可能含有多条总线高速总线高速总线低速总线低速总线高速设备高速设备低速设备低速设备桥桥总线互联的电路总线互联的电路概述概述存储器存储器高速设备高速设备CPU CPU 低速设备低速设备低速设备低速设备桥桥高速总线高速总线低速总线低速总线多总线

98、系统多总线系统概述概述概述概述Processor-localbusMicro-processorCacheMemorycontrollerDMAcontrollerBridgePeripheralPeripheralPeripheralPeripheralbus嵌入式系统总线嵌入式系统总线AMBA总线总线AMBAAMBA(A Advanced dvanced M Microcontroller icrocontroller B Bus us A Architecturerchitecture)是)是ARM ARM 公司研发的一种总线规公司研发的一种总线规范,目前为范,目前为3.0 3.0 版本

99、。版本。在在AMBAAMBA总线规范中,定义了总线规范中,定义了3 3种总线种总线: :AHB(Advanced High-performance Bus):用于高性能系统模块的连接,支持突发模式数据传输和事务分割;可以有效地连接处理器、片上和片外存储器,支持流水线操作。ASB(Advanced System Bus):也用于高性能系统模块的连接,由AHB总线替代; APB(Advanced Peripheral Bus):用于较低性能外设的简单连接,一般是接在AHB或ASB系统总线上的第二级总线。 AMBA总线总线测试测试接口接口ARMARMCPUCPUSDRAMSDRAMControlCo

100、ntrolSRAMSRAMLCDLCDControlControl桥桥并行并行接口接口串行串行接口接口TimerTimerUARTUART基于基于AMBA总线的典型系统总线的典型系统AMBA总线总线S3C44b0XAMBA总线总线-AHB只有主单元可在任何时只有主单元可在任何时刻使用总线。刻使用总线。AHBAHB可以有一个或多个主可以有一个或多个主单元。单元。主单元可以是主单元可以是RISCRISC处理处理器、协处理器以及器、协处理器以及DMADMA控控制器,以制器,以启动启动和和控制控制总总线操作。线操作。AHB总线总线主单元主单元从单元从单元仲裁器仲裁器译码器译码器可以响应(并非启动)读或

101、可以响应(并非启动)读或写总线操作。写总线操作。总线的从单元可以在给定的总线的从单元可以在给定的地址范围内对读写操作进行地址范围内对读写操作进行相应的反应。相应的反应。从单元向主单元发出成功、从单元向主单元发出成功、失败信号或等待各种反馈信失败信号或等待各种反馈信号。号。从单元通常是其复杂程度不从单元通常是其复杂程度不足以成为主单元的固定功能足以成为主单元的固定功能块,例如外存接口、总线桥块,例如外存接口、总线桥接口以及任何内存都可以是接口以及任何内存都可以是从单元,系统的其他外设也从单元,系统的其他外设也包含在包含在AHBAHB的从单元中。的从单元中。 用来确定控制总线是哪个主用来确定控制总

102、线是哪个主单元,以保证在任何时候只单元,以保证在任何时候只有一个主单元可以启动数据有一个主单元可以启动数据传输。传输。一般来说仲裁协议都是固定一般来说仲裁协议都是固定好的,例如最高优先级方法好的,例如最高优先级方法或平等方法,可根据实际的或平等方法,可根据实际的情况选择适当的仲裁协议。情况选择适当的仲裁协议。总线译码器用于传输译码工总线译码器用于传输译码工作,提供传输过程中从单元作,提供传输过程中从单元的片选信号。的片选信号。AMBA总线总线-AHB一个典型的一个典型的AHBAHB总线工作过程,它包括以下两个阶总线工作过程,它包括以下两个阶段:段: 地址传送阶段地址传送阶段(address p

103、hase)(address phase):它将只持续一个时钟周期。在HCLK的上升沿数据有效。所有的从单元都在这个上升沿来采样地址信息。数据传送阶段(数据传送阶段(data phasedata phase):):它需要一个或几个时钟周期。可以通过HREADY信号来延长数据传输时间,当HREADY信号为低电平时,就在数据传输中加入等待周期,直到HREADY信号为高电平才表示这次传输阶段结束。 AMBA总线总线-AHBData(A)HADDR31:0HWDATA31:0AddressphaseDataphaseControlAControlData(A)HCLKHREADYAHB总线工作过程总线工

104、作过程HRDATA31:0AMBA总线总线-APBAPBAPB主要由下面主要由下面2 2部分组成:部分组成:APB桥APB从单元(Slave)APBAPB桥是桥是APBAPB中中唯一的唯一的主单元主单元,是是AHB/ASBAHB/ASB的的从从单元单元APB桥的接口信号桥的接口信号AMBA总线总线-APBAPBAPB桥将系统总线桥将系统总线AHB/ASBAHB/ASB和和APBAPB连接起来,并连接起来,并执行下列功能:执行下列功能:锁存地址并保持其有效,直到数据传送完成。译码地址并产生一个外部片选信号,在每次传送时只有一个片选信号(PSELx)有效。写传送(write transfer)时驱

105、动数据到APB。读传送(read transfer)时驱动数据到系统总线AHB/ASB。传送时产生定时触发信号PENABLE。 AMBA总线总线-APBAPBAPB从单元具有简单灵活的接口,从单元具有简单灵活的接口,接口的具体实现是依赖于特定设计接口的具体实现是依赖于特定设计的,有许多不同的可能。的,有许多不同的可能。当写传送时数据锁定在下列点:当写传送时数据锁定在下列点:当PSELx为高电平时,在每个PCLK的上升沿,在PENABLE的上升沿。片选信号PSELx和地址信号PADDR可合并起来决定需要操作的寄存器。PCI总线总线:发展历程发展历程最早的最早的PC总线是总线是IBM公司公司198

106、1年在年在PC/XT电脑采电脑采用的系统总线,它基于用的系统总线,它基于8bit的的8088处理器,被称处理器,被称为为PC总线或者总线或者PC/XT总线总线。在在1984年的时候,年的时候,IBM推出基于推出基于16-bitIntel80286处理器的处理器的PC/AT电脑,系统总线也相应地电脑,系统总线也相应地扩展为扩展为16bit,并被称呼为,并被称呼为PC/AT总线总线。而为了开发与而为了开发与IBMPC兼容的外围设备,行业内兼容的外围设备,行业内便逐渐确立了以便逐渐确立了以IBMPC总线规范为基础的总线规范为基础的ISA(工业标准架构:(工业标准架构:IndustryStandard

107、Architecture)总线)总线。PCI总线总线:发展历程发展历程ISA是是8/16bit的系统总线,最大传输速率仅为的系统总线,最大传输速率仅为8MB/s,但,但允许多个允许多个CPU共享系统资源。由于兼容性好,它在共享系统资源。由于兼容性好,它在上个上个世纪世纪80年代是最广泛采用的系统总线年代是最广泛采用的系统总线,不过它的弱点也是,不过它的弱点也是显而易见的,比如显而易见的,比如传输速率过低传输速率过低、CPU占用率高占用率高、占用硬占用硬件中断资源件中断资源等。等。在在1988年,康柏、惠普等年,康柏、惠普等9个厂商协同把个厂商协同把ISA扩展到扩展到32-bit,这就是著名的,

108、这就是著名的EISA(ExtendedISA,扩展,扩展ISA)总线。)总线。EISA总线的工作频率仍旧仅有总线的工作频率仍旧仅有8MHz,并且与,并且与8/16bit的的ISA总线完全兼容,由于是总线完全兼容,由于是32-bit总线的缘故,带宽提高总线的缘故,带宽提高了一倍,达到了了一倍,达到了32MB/s.可惜的是,可惜的是,EISA仍旧由于速度有仍旧由于速度有限,并且成本过高,在还没成为标准总线之前,在限,并且成本过高,在还没成为标准总线之前,在20世纪世纪90年代初的时候,就给年代初的时候,就给PCI总线给取代了。总线给取代了。PCI总线总线:发展历程发展历程嵌入式系统已开始逐步采用微

109、机系统普遍采用的嵌入式系统已开始逐步采用微机系统普遍采用的PCI总线,以便于系统的扩展。总线,以便于系统的扩展。1991年年Intel公司联合公司联合IBM、Compaq、AST、HP、DEC等等100多家公司成立了多家公司成立了PCISIG(PeripheralComponentInterconnectSpecialInterestGroup)协会,它致力于促进协会,它致力于促进PCI(PeripheralComponentInterconnect)总线工业标准的发展。)总线工业标准的发展。1992年年Intel在发布在发布486处理器的时候,也同时提处理器的时候,也同时提出了出了32-bi

110、t的的PCI总线。总线。PCI总线规范先后经历了总线规范先后经历了1.0版、版、2.0版和版和1995年的年的2.1版。版。PCI总线:特点总线:特点PCI总线是地址、数据多路复用的高性能总线是地址、数据多路复用的高性能32位和位和64位总线。位总线。2.1版本定义了版本定义了64位总线扩展和位总线扩展和66MHz总线总线时钟的技术规范。时钟的技术规范。从从数据宽度数据宽度上看,上看,PCI总线有总线有32bit、64bit之分之分从从总线速度总线速度上分,有上分,有33MHz、66MHz两种两种PCI总线:特点总线:特点与与ISA总线不同,总线不同,PCI总线的地址总线与数总线的地址总线与数

111、据总线是分时复用的,支持即插即用据总线是分时复用的,支持即插即用(PlugandPlay)、中断共享等功能。中断共享等功能。分时复用的好处是一方面可以节省接插件分时复用的好处是一方面可以节省接插件的管脚数,另一方面便于实现突发数据传的管脚数,另一方面便于实现突发数据传输。输。PCI总线:特点总线:特点数据传输时,由一个数据传输时,由一个PCI设备做发起者设备做发起者(主控、主控、Initiator或或Master),而另一个而另一个PCI设备做目标设备做目标(从从设备、设备、Target或或Slave)。总线上所有时序的产生与控制都由总线上所有时序的产生与控制都由Master来发起。来发起。P

112、CI总线在同一时刻只能供一对设备完成传输,总线在同一时刻只能供一对设备完成传输,这就要求有一个仲裁机构,来决定谁有权拿到总这就要求有一个仲裁机构,来决定谁有权拿到总线的主控权。线的主控权。PCI总线:信号定义总线:信号定义32位位PCI系统的管脚按功能来分有以下几类:系统的管脚按功能来分有以下几类:系统控制系统控制 CLK:PCI时钟,上升沿有效时钟,上升沿有效RST:Reset信号信号 传输控制传输控制 FRAME#:标志传输开始与结束标志传输开始与结束IRDY#:Master可以传输数据的标志可以传输数据的标志DEVSEL#:当:当Slave发现自己被寻址时设置低发现自己被寻址时设置低电平

113、应答电平应答TRDY#:Slave可以传输数据的标志可以传输数据的标志STOP#:Slave主动结束传输数据主动结束传输数据IDSEL:在即插即用系统启动时用于选中板卡的在即插即用系统启动时用于选中板卡的信号信号PCI总线:信号定义总线:信号定义地址与数据总线地址与数据总线 AD31:0:地址地址/数据分时复用总线数据分时复用总线C/BE#3:0:命令命令/字节使能信号字节使能信号PAR:奇偶校验信号奇偶校验信号仲裁信号仲裁信号 REQ#:Master用来请求总线使用权用来请求总线使用权GNT#:仲裁机构允许仲裁机构允许Master得到总线使用权得到总线使用权错误报告错误报告 PERR#:数据

114、奇偶校验错数据奇偶校验错SERR#:系统奇偶校验错系统奇偶校验错PCI总线:操作总线:操作PCI总线进行操作时总线进行操作时发起者先置发起者先置REQ#,当得到仲裁器的许可时当得到仲裁器的许可时(GNT#),将将FRAME#置低电平,并在置低电平,并在AD总线上放置总线上放置Slave地址,地址,同时同时C/BE#放置命令信号,说明接下来的传输类型。放置命令信号,说明接下来的传输类型。PCI总线上的所有设备都需对此地址译码,被选中的总线上的所有设备都需对此地址译码,被选中的设备置设备置DEVSEL#以声明自己被选中。然后当以声明自己被选中。然后当IRDY#与与TRDY#都置低时,传输数据。都置

115、低时,传输数据。Master在数据传输结束前,将在数据传输结束前,将FRAME#置高以标明只置高以标明只剩最后一组数据要传输,并在传完数据后放开剩最后一组数据要传输,并在传完数据后放开IRDY#以释放总线控制权。以释放总线控制权。PCI总线总线-读操作读操作Data传传送送WaitData传传送送WaitData传传送送WaitBE#sAddressphaseIRDY#981765432地址地址Data-1Data-2Data-3命令命令DataphaseDataphaseDataphaseCPCI总线总线为了将为了将PCI总线规范用在工业控制计算机系统上,总线规范用在工业控制计算机系统上,1

116、995年年11月月PCI工业计算机制造者联合会(工业计算机制造者联合会(PICMIG)颁布了颁布了CompactPCI(以后简称以后简称CPCI)规范规范1.0版。版。1997年推出了年推出了CPCI2.0规范。规范。PCI总线的电气规范总线的电气规范标准针孔连接器(标准针孔连接器(IEC-1076-4-101)欧洲卡规范(欧洲卡规范(IEC297/IEEE1011.1)CPCI总线规范总线规范CPCI总线总线目前在嵌入式目前在嵌入式PC、工控计算机及高端的嵌入式系工控计算机及高端的嵌入式系统中已经开始大量采用统中已经开始大量采用CPCI接口,接口,CPCI将逐步将逐步替代替代VME总线。总线

117、。CPCI总线工控机之所以被业界所青睐,是因为其总线工控机之所以被业界所青睐,是因为其既具有既具有PCI总线的高性能总线的高性能又具有又具有欧洲卡结构的高欧洲卡结构的高可靠性可靠性,是符合国际标准的真正工业型计算机,是符合国际标准的真正工业型计算机,适合在可靠性要求较高的工业和军事设备上应用。适合在可靠性要求较高的工业和军事设备上应用。CPCI总线工控机定义了两种板卡尺寸:总线工控机定义了两种板卡尺寸:3U(100mm 160mm)6U(233mm 160mm)CPCI总线总线3U(100mm160mm)6U(233mm160mm)串行总线串行总线UARTUARTI I2 2C CSPISPI

118、USBUSB第四节第四节嵌入式存储系统嵌入式存储系统概述概述电子盘电子盘NandFlashDOCDOMCompactFlashSmartMediaMemoryStickMMCSD概述概述嵌入式系统的存储结构嵌入式系统的存储结构嵌入式嵌入式微处理器微处理器Cache片内片内RAM和和ROM主存:主存:NorFlash、SRAM、DRAM等等外存:外存:NandFlash、DOC、CF、SD、MMC等等概述概述高速缓存高速缓存CacheCache高速缓冲存储器中存放的是当前使用得最多的程序代码和数据,即主存中部分内容的副本。在嵌入式系统中Cache全部都集成在嵌入式微处理器内。可分为数据Cache

119、、指令Cache或混合Cache。不同的处理器其Cache的大小不一样。一般32位的嵌入式微处理器都内置Cache。概述概述CacheCache命中命中:CPU每次读取主存时,Cache控制器都要检查CPU送出的地址,判断CPU要读取的数据是否在Cache中,如果在就称为命中。CacheCache未命中未命中:读取的数据不在Cache中,则对主存储器进行操作,并将有关内容置入Cache。写入方法:通通写写(Write Write ThroughThrough):写Cache时,Cache与对应内存内容同步更新。回回写写(Write Write BackBack):写Cache时,只有写入Cac

120、he内容移出时才更新对应内存内容。CPU地址地址索引索引机构机构置换控制器置换控制器高速缓冲高速缓冲存储器存储器主主存存段(页)段(页)地址地址高位地址高位地址低位地址低位地址地址总线地址总线数据总线数据总线Cache结构框图结构框图概述概述主存主存 主存是处理器能直接访问的存储器,用来存放系统和用户的程序和数据。嵌入式系统的主存可位于SoC内和SoC外,片内存储器存储容量小、速度快,片外存储器容量大。可以做主存的存储器有:ROM类:Nor Flash、EPROM、E2PROM、PROM等RAM类:SRAM、DRAM、SDRAM等概述概述静态随机存取存储器(SRAM)存储信息:六管基本存储电路

121、典型芯片规格:2114(1KX4) 6116(2KX8) 6264(8KX8)62128(16KX8)62256(32KX8)A5A0A2A1CS-1921141810VCCA9I/O1A6A4A3A7A8I/O2I/O3WE- 符符 号号引脚名引脚名 A A0 0AA9 9地址输入地址输入 I/0 I/01 1I/0I/04 4数据输入数据输入/ /输出输出 CS- CS-片选片选 WE- WE-写写允许允许V VCCCC、GNDGND电源、地电源、地概述概述动态随机存取存储器(DRAM)存储信息的基本单元(1位)电路可采用4管、3管和单管电路需要不断刷新(为维持动态存储单元所存储的信息,必

122、须设法使信息再生,这即所谓的刷新)与SRAM不同的是:为节省外部引脚,同样容量的DRAM外部地址线引脚是SRAM一半DRAM采用行/列地址选通,将地址通过内部分成两路DRAM控制器:解决刷新和多路CPU刷刷新新定定时时器器仲裁仲裁电路电路定定时时发生器发生器刷新地址刷新地址计数器计数器地址地址多路开关多路开关DRAM读读/写写地址总线地址总线地址地址RASCASWRDRAMController的逻辑框图的逻辑框图概述概述SDRAM(Synchronous RAM)CPU和RAM共享相同的时钟周期,以相同的速度同步工作基于双存储器结构,内含两个交错的存储阵列,读取效率得到成倍提高是DRAM中速度

123、最快的一种概述概述外存外存 外存是处理器不能直接访问处理器不能直接访问的存储器,用来存放用户的各种信息,容量大。在嵌入式系统中常用的外存有:NandFlashDOC(Disk On Chip)CF(Compact Flash)SD(Secure Digital)MMC(Multi MediaCard)等 电子盘电子盘电子盘采用电子盘采用半导体芯片半导体芯片来存贮数据,具有来存贮数据,具有体积小体积小、功耗低功耗低和和极强的抗震性极强的抗震性等特点。等特点。在嵌入式系统中普遍采用各种电子盘作为在嵌入式系统中普遍采用各种电子盘作为外存。外存。常用的电子盘有:常用的电子盘有:NandFlash、MM

124、C、SD、MemeoryStick、CF、SM、DOC等。等。电子盘电子盘电子盘电子盘FlashcardmarketforMobilephonehas70%CAGR,and50%marketsharein08.NandFlashNandFlash是是FlashMemory的一种。的一种。FlashMemory的中文称为快闪存储器或快速擦的中文称为快闪存储器或快速擦写存储器。写存储器。FlashMemory由由Toshiba于于1980年申请专利,年申请专利,并在并在1984年的国际半导体学术会议上首先发表。年的国际半导体学术会议上首先发表。目前在目前在FlashMemory技术上主要发展了两种

125、非技术上主要发展了两种非易失性内存易失性内存一种叫NOR(逻辑或)逻辑或),是Intel 于1988年发明的另一种叫NAND(逻辑与)逻辑与)是Toshiba于1999年创造的。NandFlashNandFlash可独立成为外存,也可组成其他各可独立成为外存,也可组成其他各种类型的电子盘如种类型的电子盘如USB盘、盘、CF、SD和和MMC存存储卡等。储卡等。NandFlash强调降低每比特的成本,更高的性强调降低每比特的成本,更高的性能,并且像磁盘一样可以通过接口轻松升级。能,并且像磁盘一样可以通过接口轻松升级。NandFlash具具有有容容量量大大、回回写写速速度度快快、芯芯片片面面积小等特

126、点,主要用于外存。积小等特点,主要用于外存。NORFlash具有随机存储速度快、电压低、功具有随机存储速度快、电压低、功耗低、稳定性高等特点,主要用于主存。耗低、稳定性高等特点,主要用于主存。SamsungNandflashNORNAND写写入入/擦擦除除一一个个块块的的操操作时间作时间15s24ms读性能读性能12001500KB600800KB写性能写性能80KB200400KB接口接口/总线总线SRAM接接口口/独独立立的的地地址数据总线址数据总线8位位地地址址/数数据据/控控制制总总线线,I/O接口复杂接口复杂读取模式读取模式随机读取随机读取串行地存取数据串行地存取数据成本成本较高较高

127、较较低低,单单元元尺尺寸寸约约为为NOR的的一一半半,生生产产过过程程简简单单,同同样样大大小小的的芯芯片片可以做更大的容量可以做更大的容量容量及应用场合容量及应用场合164MB,主主要要用用于于存储代码存储代码8MB4GB,主主要要用用于于存存储数据储数据擦写次数擦写次数(耐用性耐用性)约约10万次万次约约100万次万次位交换位交换(bit位反转位反转)少少较较多多,关关键键性性数数据据需需要要错错误误探探测测/错误更正错误更正(EDC/ECC)算法算法坏块处理坏块处理无,因为坏块故障率少无,因为坏块故障率少随机分布,无法修正随机分布,无法修正NandFlash:128MX8bitNandF

128、lash:128MX8bitNandFlash:128MX8bitMMCMultiMediaCardAssociation210+membersrepresentingtheleadingManufacturersofhostsystems,cards,components,connectors,etc.Membership:Executive(votingrights)&GeneralCommittees:Technical,Marketing,ComplianceOpenstandard,collectsnoroyaltiesCompliance&certificationprogramF

129、ocusonmobilephonesanddigitalimagingmarketsworldwideMMC:RoadmapofstandardMMC:RoadmapofcapacityMMC的特点的特点Highclockfrequency:26MHzand52MHzFlexiblebuswidth:13pinstosupport1to8datalines(host-selectablex1,x4andx8-bitbus)Datatransferrate:upto52MBytes/secThisisthehighestbustransferrateofallflashmemorycardsta

130、ndardsavailableTodayBackwardcompatibletolegacyhostsMMC的特点的特点FullycompatiblewithMMCplusThefirstsmallformfactormemorycardstandardstoofferdual-voltageoperationatboth3Vand1.8VCompatiblewithnextgenerationmobilephonesystemspecificationsandmeetsthetoughestspaceSavingandlowpowerconsumptionrequirementsofmobi

131、lephonesandsmallconsumerelectronicsdevicesSDSD(SecureDigital)卡由松下电器、东芝和卡由松下电器、东芝和SanDisk联合推出,联合推出,1999年年8月首次发布。月首次发布。2000年年2月月1日成立了日成立了SD协会(协会(SDA),),成员公司超过成员公司超过90个,其中包括个,其中包括Hewlett-Packard,IBM,Microsoft,Motorola,NEC、SamsungElectronics,ToyotaMotor等巨头。等巨头。SDA是开放式的,缴纳是开放式的,缴纳1500美元就可以成为一般会员,美元就可以成为一

132、般会员,缴纳缴纳4000美元可以成为执行会员。美元可以成为执行会员。SD存贮卡的详细规存贮卡的详细规范并没有公开,只有范并没有公开,只有SDA会员或签定了保密协议才能会员或签定了保密协议才能获得。获得。SD卡需付版税卡需付版税3224mm1511mmMemoryStick19971997年年7 7月月SonySony宣布开发宣布开发Memory StickMemory StickMemory StickMemory Stick被很多人形象地被很多人形象地称为口香糖存贮卡,其尺寸为称为口香糖存贮卡,其尺寸为50mm21.5mm2.8mm50mm21.5mm2.8mm,重重4 4克克Memory

133、StickMemory Stick也包括了控制器也包括了控制器在内,采用在内,采用1010针接口,数据总针接口,数据总线为串行,最高频率可达线为串行,最高频率可达20MHz20MHz,电压为电压为2.72.7伏到伏到3.63.6伏,伏,电流平均为电流平均为45mA45mACompactFlashCompactFlash的诞生比较早,由最大的的诞生比较早,由最大的FlashMemory卡厂商之一美国卡厂商之一美国SanDisk于于1994年首次推出。年首次推出。大小仅为大小仅为43mmx36mmx3.3mm,体积只有体积只有PCMCIA卡的卡的1/4,看起来就像是,看起来就像是PCMCIA卡的缩

134、小版。卡的缩小版。CompactFlash提供了完整的提供了完整的PCMCIA-ATA功能而且通功能而且通过过ATA/ATAPI-4兼容兼容TrueIDE。和和68针接口的针接口的PCMCIA卡不同,同样遵从卡不同,同样遵从ATA协议的协议的CompactFlash的接口只有的接口只有50针针。SmartMediaSmartMedia是由东芝公司是由东芝公司ToshibaAmericaElectronicComponents(TAEC)在在1995年年11月发月发布的布的FlashMemory存贮卡,三星公司在存贮卡,三星公司在1996年购年购买了生产和销售许可,这两家公司成为主要的买了生产和

135、销售许可,这两家公司成为主要的SmartMedia厂商。厂商。SmartMedia最开始时最开始时SmartMedia被称为被称为SSFDC,即即SolidStateFloppyDiskCard,1996年年6月改名为月改名为SmartMedia,并成为东芝并成为东芝的注册商标。的注册商标。SmartMedia采用了采用了NAND型型FlashMemory,因此体积做因此体积做得很小:得很小:45mmx37mmx0.76mm,非常的薄,仅重非常的薄,仅重1.8克。克。接口方面,接口方面,SmartMedia采用了采用了22针的接口,我们在卡上针的接口,我们在卡上看到的是遍平的金手指。看到的是遍

136、平的金手指。SmartMedia为了节省成本,存贮卡上只有为了节省成本,存贮卡上只有FlashMemory模块和接口,并没有包括控制芯片,所以使用模块和接口,并没有包括控制芯片,所以使用SmartMedia的设备必须自己装置控制机构的设备必须自己装置控制机构。DOCDiskOnChip,简称简称DOC,是采用是采用NandFlash芯芯片作为基本存贮单元,外加一些控制芯片及软件,片作为基本存贮单元,外加一些控制芯片及软件,通过特殊的软硬件来操作的一种模块化、系列化通过特殊的软硬件来操作的一种模块化、系列化的电子存贮装置。的电子存贮装置。它采用了它采用了TureFFS硬盘仿真技术对硬盘仿真技术对Flash进行管理,进行管理,可以把可以把Flash模拟成为硬盘。模拟成为硬盘。也正是因为采用了也正是因为采用了TureFFS技术对数据在技术对数据在Flash中中的读写操作进行管理,大大提高了的读写操作进行管理,大大提高了DOC的写操作的写操作的次数,远远超过了普通的次数,远远超过了普通Flash的写寿命,提高了的写寿命,提高了Flash的可靠性。的可靠性。ComparisonofFullSizeCardsComparisonofSmallSizeCardsComparisonofMicroSizeCards谢谢!

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号