最新微处理器系统结构与嵌入式系统-第七章ARM微处理器编程模型PPT课件.ppt
《最新微处理器系统结构与嵌入式系统-第七章ARM微处理器编程模型PPT课件.ppt》由会员分享,可在线阅读,更多相关《最新微处理器系统结构与嵌入式系统-第七章ARM微处理器编程模型PPT课件.ppt(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、微处理器系统结构与嵌入式系微处理器系统结构与嵌入式系统统-第七章第七章ARMARM微处理器编程微处理器编程模型模型7.1 ARM内核体系结构内核体系结构7.2 ARM编程模型编程模型7.2.1 处理器工作状态处理器工作状态7.2.2 处理器运行模式处理器运行模式7.2.3 寄存器组织寄存器组织7.2.4 数据类型和存储格式数据类型和存储格式7.2.5 异常异常V4版架构版架构 目前应用最广的目前应用最广的ARM体系结构,体系结构,ARM7、ARM8、ARM9和和StrongARM都采用该版架构都采用该版架构增加了有增加了有/无符号的半字和有符号字节的无符号的半字和有符号字节的Load/Stor
2、e指令指令增加了增加了16位位Thumb指令集指令集完善了软件中断完善了软件中断SWI指令的功能指令的功能增加了处理器的特权模式增加了处理器的特权模式V5版架构版架构 ARM10和和XScale都采用都采用该版架构该版架构改进了改进了ARM/Thumb状态之间的切换效率;状态之间的切换效率;E-增强增强DSP指令集指令集,包括全部算法操作和包括全部算法操作和16位乘法操作;位乘法操作;J-支持新的支持新的JAVA,提供字节代码执行的加速功能提供字节代码执行的加速功能增加了带有链接和交换指令增加了带有链接和交换指令BLX增加了计数前导零指令增加了计数前导零指令CLZ增加了软件断点指令增加了软件断
3、点指令为协处理器增加更多可选择的指令为协处理器增加更多可选择的指令9/95V6版架构版架构 ARM11处理器采用该版架构处理器采用该版架构增加了多媒体功能扩展增加了多媒体功能扩展SIMD,提高了嵌入式应用系统的音、视频,提高了嵌入式应用系统的音、视频处理能力处理能力改进了内存管理改进了内存管理改进了混合端与不对齐数据支持,使得小端系统支持大端数据改进了混合端与不对齐数据支持,使得小端系统支持大端数据V7版架构版架构 Cortex-A/M/R系列处理器采用该版架构系列处理器采用该版架构2005年发布,采用年发布,采用Thumb-2技术。技术。M系列系列传统单片机市场传统单片机市场A系列系列高端应
4、用处理器市场高端应用处理器市场R系列系列实时性控制实时性控制*10/95ARM处理器核与体系结构的对应关系处理器核与体系结构的对应关系核核体体系系结结构构ARM1ARMv1ARM2ARMv2ARM2aS,ARM3ARMv2aARM6,ARM600,ARM610,ARM7,ARM700,ARM710ARMv3StrongARM,ARM8,ARM810ARMv4ARM7TDMI,ARM710T,ARM720T,ARM740T,ARM9TDMI,ARM920T,ARM940TARMv4TARM9E-S,ARM10TDMI,ARM1020EARMv5TEARM1136J(F)-S,ARM1176JZ(
5、F)-S,ARM11MPCorARMv6ARM1156T2(F)-SARMv6T2ARMCortex-M,ARMCortex-R,ARMCortex-AARMv7ARM处理器(核)命名规则处理器(核)命名规则ARMxyzTDMIEJF-Sx系列号系列号 y存储管理存储管理/保护单元保护单元zCacheTThumb指令集指令集DJTAG调试器调试器M快速乘法器快速乘法器I嵌入式跟踪宏单元嵌入式跟踪宏单元E增强增强DSP指令指令JJazelle技术技术F向量浮点单元向量浮点单元S可综合的内核可综合的内核ARM7TDMI-SARM926EJ-SARM966ESARM1022E2:带带MMU4:带带M
6、PU6:无无MMU和和MPU0:标准标准cache2:小小cache6:可变可变cache12/95ARM芯片、内核和芯片、内核和CPU的关系的关系ARM CPU数据通路数据通路ARM CPU控制逻辑控制逻辑ARM 内核内核ARM CPUARM 芯片芯片ARM 内核内核项目项目ARM7ARM9ARM10ARM11流水线流水线3568典型频率典型频率MHz80150260335功耗功耗mW/MHz0.060.19(+cache)0.5(+cache)0.4(+cache)性能性能MIPS/MHz0.971.11.31.2架构架构冯冯 诺伊曼诺伊曼哈佛哈佛哈佛哈佛哈佛哈佛ARM处理器(核)比较处理
7、器(核)比较ARM系列系列微处理器核微处理器核特点特点ARM7ARM7TDMI:整数处理核:整数处理核ARM7TDMI处理器的可处理器的可综合版本;综合版本;ARM720T:带:带MMU的处理的处理器核心,支持操作系统;器核心,支持操作系统;ARM7EJ-S:带有:带有DSP和和JazelleTM技术,能够实现技术,能够实现Java加速功能加速功能冯冯 诺伊曼体系结构;诺伊曼体系结构;ARM7TDMI是目前应用最广的微处理是目前应用最广的微处理器核器核ARM720T带有带有MMU和和8KB的指令数的指令数据混合据混合cache;ARM7EJ-执行执行ARMv5TEJ指令,指令,5级级流水线,提
8、供流水线,提供Java加速指令,没有存加速指令,没有存储器保护。储器保护。ARM9ARM920T:带有独立的:带有独立的16KB数据和指令数据和指令Cache;ARM922T:带有独立的:带有独立的8位位KB数据和指令数据和指令Cache;ARM940T包括更小数据和包括更小数据和指令指令Cache和一个和一个MPU基于基于ARM9TDMI,带,带16位的位的Thumb指令集,增强代码密度最多到指令集,增强代码密度最多到35%;在在0.13m工艺下最高性能可达到工艺下最高性能可达到300MIPS(Dhrystone2.1测试标准);测试标准);集成了数据和指令集成了数据和指令Chche;32位
9、位AMBA总线接口的总线接口的MMU支持;支持;可在可在0.18m、0.15m和和0.13m工艺的工艺的硅芯片上实现。硅芯片上实现。ARM处理器(核)简介处理器(核)简介*16/95ARM9EARM926EJ-S:Jazelle 技术,有技术,有MMU,可配置的数据和指令,可配置的数据和指令Cache,TCM接口;接口;ARM946E-S:可配置的数据和指令:可配置的数据和指令Cache及及TCM;ARM966E-S:针对要求高性能和低功:针对要求高性能和低功耗的可预测的指令执行时间的硬实时应耗的可预测的指令执行时间的硬实时应用设计用设计 ARM968E-S:最小、功耗最小的:最小、功耗最小的
10、ARM9E系列处理器,针对嵌入式实时系列处理器,针对嵌入式实时应用设计;应用设计;ARM9E是针对微控制器、是针对微控制器、DSP和和Java的单处理器的单处理器解决方案;解决方案;ARMJazelle技术提供技术提供 8倍的倍的 Java 加速性能加速性能(ARM926EJ-S);5-级整数流水线;级整数流水线;在在0.13m工艺下最高性能可达到工艺下最高性能可达到300MIPS(Dhrystone 2.1测试标准);测试标准);可选择的可选择的向量浮点单元向量浮点单元VFP9 协处理器指令优秀协处理器指令优秀海浮点性能,对于海浮点性能,对于3D图形加速和实时控制可达到图形加速和实时控制可达
11、到215MFLOPS。高性能的高性能的AHB总线,带总线,带MMU可在可在0.18m,0.15m,0.13m工艺的硅芯片上实工艺的硅芯片上实现。现。ARM10EARM1020E:带:带DSP指令集,在片调指令集,在片调试功能,独立的试功能,独立的32KB数据和指令数据和指令Cache,MMU支持;支持;ARM1022E:与:与ARM1020E相同,只相同,只是独立的数据和指令是独立的数据和指令Cache变为变为16KB;ARM1026EJ-S:同时具有:同时具有MPU和和MMU,可综合版本;,可综合版本;带分支预测的带分支预测的6级整数流水线;级整数流水线;在在0.13m工艺下最高性能可达到工
12、艺下最高性能可达到430MIPS(Dhrystone 2.1测试标准);测试标准);对于对于3D图形运算和实时控制采用图形运算和实时控制采用VFP协处理器,协处理器,浮点运算性能最高可达浮点运算性能最高可达650MFLOPS;双双64位位AMBA总线接口和总线接口和64位内部总路线接口;位内部总路线接口;优化的缓存结构提高了处理器访问低速存储器的优化的缓存结构提高了处理器访问低速存储器的性能;性能;可在可在0.18m,0.15m,0.13m工艺的硅芯片上实工艺的硅芯片上实现现ARM11ARM11 MPCore:可综合的多:可综合的多处理器核,处理器核,1至至4个处理器可配个处理器可配置;置;A
13、RM1136J(F)-S:可配置的数:可配置的数据和指令据和指令Cache,可提供,可提供1.9位位的的MPEG4编码加速功能;编码加速功能;ARM1156T2(F)-S:带集成浮:带集成浮点协处理器,带内存保护单元点协处理器,带内存保护单元MPU;ARM1176JZ(F)-S:带针对:带针对CPU和系统安全架构扩展的和系统安全架构扩展的TrustZone技术。技术。增强的增强的Thumb、Jazelle、DSP扩展支持;扩展支持;带片上和系统安全带片上和系统安全TrustZone 技术支持技术支持;在在0.13m工艺下最高可达到工艺下最高可达到550MHz;MPCore在在0.13m工艺下最
14、高性能可达到工艺下最高性能可达到740MIPS(Dhrystone 2.1测试标准);测试标准);支持多媒体指令支持多媒体指令SIMD;采用三种电源模式:全速采用三种电源模式:全速/待命待命/休眠休眠集成集成DMA的的TCM低功耗、高性能。低功耗、高性能。SecurCoreSC100:第一个:第一个32位安全处理位安全处理器;、器;、SC110:在:在SC100上增上增加密钥协处理器;加密钥协处理器;SC200:带:带Jazelle技术的高级技术的高级安全处理器;安全处理器;SC210:在:在SC200上增加密钥上增加密钥协处理器协处理器SecurCore是专门为智能卡、安全是专门为智能卡、安
15、全IC提供提供的的32位安全处理器,位安全处理器,为电子商务、银行、为电子商务、银行、网络、移动多媒体、公共交通提供安全解决网络、移动多媒体、公共交通提供安全解决方案;方案;体积小、功耗低,代码压缩密度高;体积小、功耗低,代码压缩密度高;为快速增长的为快速增长的Java卡平台提供卡平台提供Java加速加速功能;功能;CortexCortex-A:面向应用的微:面向应用的微处理器,针对复杂操作系统处理器,针对复杂操作系统和应用程序设计;和应用程序设计;Cortex-R:针对实时系统:针对实时系统的嵌入式处理器;的嵌入式处理器;Cortex-M:针对成本敏感:针对成本敏感应用优化的深度嵌入式处理应
16、用优化的深度嵌入式处理器;器;2004年发布,提供增强的媒体和数字年发布,提供增强的媒体和数字处理能力,增加了系统性能;处理能力,增加了系统性能;支持支持ARM、Thumb、Thumb-2指令指令集;集;Thumb-2指令集提供了更高的代码存指令集提供了更高的代码存储密度,进一步降低成本;储密度,进一步降低成本;Intel系系列列(Marvell)StrongARM:ARMv4体系体系XScale:ARMv5TE体系,体系,增加增加MMX指令指令StrongARM主要应用于手持设备和主要应用于手持设备和PDA,5级流水线,具有独立的数据和指令级流水线,具有独立的数据和指令Cache,不支持,不
17、支持Thumb指令集,目前已停指令集,目前已停产;产;XScale是目前是目前Intel公司主推的高性能嵌公司主推的高性能嵌入式处理器,分通用处理器、网络处理器入式处理器,分通用处理器、网络处理器和和I/O处理器三类。其中通用处理器有处理器三类。其中通用处理器有PXA25x、PXA26x、PXA27x三个系列,三个系列,被广泛应用于智能手机、被广泛应用于智能手机、PDA领域。领域。7.2 ARM编程模型编程模型ARM处理器的工作状态处理器的工作状态ARM状态状态 执行执行32位字方式的位字方式的ARM指令指令Thumb状态状态 执行执行16位半字方式的位半字方式的Thumb指令指令(P220)
18、Jazelle状态状态 执行可变长的、以字节为单位的执行可变长的、以字节为单位的 Jazelle(Java)指令)指令(P220)注意:注意:1.1.处理器处理器复位复位后处于后处于ARMARM状态状态;2.2.处理器处理器异常处理异常处理时进入时进入ARMARM状态;状态;3.3.若处理器在若处理器在ThumbThumb状态进入异常,则状态进入异常,则异常返回异常返回仍然自动转换到仍然自动转换到ThumbThumb状态状态;4.4.状态切换状态切换不影响工作模式及寄存器不影响工作模式及寄存器内容。内容。*20/95ARM处理器工作状态的切换处理器工作状态的切换 使用跳转指令使用跳转指令BX可
19、将处理器内核在可将处理器内核在ARM状状态态和和Thumb状态状态之间进行切换。之间进行切换。;从从Arm状态切换到状态切换到Thumb状态状态 LDR R0,=Lable+1 BX R0;从从Thumb状态切换到状态切换到ARM状态状态 LDR R0,=Lable BX R0 地址最低位为地址最低位为1 1,表示,表示切换到切换到ThumbThumb状态状态 地址最低位为地址最低位为0 0,表示,表示切换到切换到ARMARM状态状态跳转地址标号跳转地址标号,最低最低2bit2bit为为0 0*21/95处理器模式处理器模式说明说明备注备注 用户用户(usr)正常程序执行模式正常程序执行模式
20、不能直接切换到其它模式不能直接切换到其它模式 系统系统(sys)运行操作系统的特运行操作系统的特权任务权任务与用户模式类似,但具有可以与用户模式类似,但具有可以直接切换到其它模式等特权直接切换到其它模式等特权 快中断快中断(fiq)支持高速数据传输支持高速数据传输及通道处理及通道处理FIQ异常响应时进入此模式异常响应时进入此模式 中断中断(irq)用于通用中断处理用于通用中断处理 IRQ异常响应时进入此模式异常响应时进入此模式 管理管理(svc)操作系统保护模式操作系统保护模式系统复位和软件中断响应时进系统复位和软件中断响应时进入此模式入此模式 中止中止(abt)用于支持虚拟内存用于支持虚拟内
21、存和和/或存储器保护或存储器保护在在ARM7TDMI没有大用处没有大用处 未定义未定义(und)支持硬件协处理器支持硬件协处理器的软件仿真的软件仿真未定义指令异常响应时进入此未定义指令异常响应时进入此模式模式ARM处理器的运行模式处理器的运行模式 除用户模式外,其它模式均为除用户模式外,其它模式均为特权模式特权模式。ARMARM内部寄存器和一些内部寄存器和一些片内外设在硬件设计上只允许(或片内外设在硬件设计上只允许(或者可选为只允许)特权模式下访问。者可选为只允许)特权模式下访问。此外,特权模式可以自由的切换处此外,特权模式可以自由的切换处理器模式,而用户模式不能直接切理器模式,而用户模式不能
22、直接切换到别的模式。换到别的模式。未定义未定义(und)中止中止(abt)管理管理(svc)中断中断(irq)快中断快中断(fiq)系统系统(sys)这五种模式称为这五种模式称为异常模式异常模式。它们。它们除了可以通过程序切换进入外,也可除了可以通过程序切换进入外,也可以由特定的异常进入。每种异常模式以由特定的异常进入。每种异常模式都有一些独立的寄存器,以避免异常都有一些独立的寄存器,以避免异常退出时用户模式的状态不可靠。退出时用户模式的状态不可靠。这两种模式都不能由异常进入,而且它们这两种模式都不能由异常进入,而且它们使用完全相同的寄存器组。使用完全相同的寄存器组。系统模式是特权模式,操作系
23、统在该模式系统模式是特权模式,操作系统在该模式下访问用户模式的寄存器就比较方便,而且操下访问用户模式的寄存器就比较方便,而且操作系统的一些特权任务可以使用这个模式访问作系统的一些特权任务可以使用这个模式访问一些受控的资源。一些受控的资源。系统系统(sys)用户用户(usr)寄存器寄存器类别类别寄存器在汇编寄存器在汇编中的名称中的名称各模式下实际访问的寄存器各模式下实际访问的寄存器用户用户系统系统管理管理中止中止未定义未定义中断中断快中断快中断通用寄通用寄存器和存器和程序计程序计数器数器R0(a1)R0R1(a2)R1R2(a3)R2R3(a4)R3R4(v1)R4R5(v2)R5R6(v3)R
24、6R7(v4)R7R8(v5)R8R8_fiqR9(SB,v6)R9R9_fiqR10(SL,v7)R10R10_fiqR11(FP,v8)R11R11_fiqR12(IP)R12R12_fiqR13(SP)R13R13_svcR13_abtR13_undR13_irqR13_fiqR14(LR)R14R14_svcR14_abtR14_undR14_irqR14_fiqR15(PC)R15状态寄状态寄存器存器CPSRCPSRSPSR无无SPSR_svc SPSR_abtSPSR_und SPSR_irq SPSR_fiq无无CPSRR15R14R13R12R11R10R9R8R7R6R5R4
25、R3R2R1R0用户用户无无CPSRR15R14R13R12R11R10R9R8R7R6R5R4R3R2R1R0系统系统SPSR_svcCPSRR15R14_svcR13_svcR12R11R10R9R8R7R6R5R4R3R2R1R0管理管理SPSR_abtCPSRR15R14_abtR13_abtR12R11R10R9R8R7R6R5R4R3R2R1R0中止中止SPSR_undCPSRR15R14_undR13_undR12R11R10R9R8R7R6R5R4R3R2R1R0未定义未定义SPSR_irqCPSRR15R14_irqR13_irqR12R11R10R9R8R7R6R5R4R3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 微处理器 系统 结构 嵌入式 第七 ARM 编程 模型 PPT 课件
限制150内