嵌入式第二章

上传人:jiups****uk12 文档编号:44691086 上传时间:2018-06-14 格式:PPT 页数:76 大小:1.54MB
返回 下载 相关 举报
嵌入式第二章_第1页
第1页 / 共76页
嵌入式第二章_第2页
第2页 / 共76页
嵌入式第二章_第3页
第3页 / 共76页
嵌入式第二章_第4页
第4页 / 共76页
嵌入式第二章_第5页
第5页 / 共76页
点击查看更多>>
资源描述

《嵌入式第二章》由会员分享,可在线阅读,更多相关《嵌入式第二章(76页珍藏版)》请在金锄头文库上搜索。

1、ARM7TDMI核基本知识1、组织结构(冯.诺依曼结构、RISC) 2、流水线、存储器访问 3、编程模式、工作状态、存储方式 4、异常处理嵌入式系统的硬件是以嵌入式微处理 器为核心,主要由嵌入式微处理器、总线 、存储器、输入/输出接口和设备组成。 嵌入式微处理器 总线 存储器 输入/输出接口和设备 S3C44B0X简介 概述S3C44BOX是 SAMSUNG公司推出的16/32位RISC 处理器就,为手持设备和一般应用提供了高性价比和高 性能的微控制器解决方案。S3C44BOX是使用ARM7TDMI内核,采用 0.25mCMOS工艺制造。它的低功耗和全静态设计特别 适用于对成本和功耗敏感的应用

2、。S3C44BOX的杰出特性是它的CPU核,是由ARM公 司设计的16/32位ARM7TDMI RISC处理器(66MHz)。 它包括了Thumb代码压缩器,一个片上的ICE断点调试 支持和一个32位的硬件乘法器。S3C44B0X简介 S3C44BOX的特性-体系结构 16/32位RISC体系结构和ARM7TDMI处理器内核 强大的指令体系; Thumb代码压缩机,最大化代码密度同时保持了 32位指令的性能; 基于JTAG的片上集成ICE调方式支持解决方案; 328位硬件乘法器; 实现低功耗SAMBAII的新型总线结构。S3C44B0X简介 S3C44BOX的特性2.5V 2.5V ARM7T

3、DARM7TD MIMI内核,内核, 带有带有8KB 8KB CacheCache可选的可选的 内部内部 SRAMSRAMLCDLCD控控 制器(最制器(最 大支持大支持 256256色色 DSTNDSTN, LCDLCD具有具有 专用专用DMADMA )2 2通道通道 UARTUART带带 有握手协有握手协 议(支持议(支持 IrDA1.0IrDA1.0 ,具有,具有1616 -byte -byte FIFOFIFO)1 1通道通道 SIOSIO2 2个通用个通用 DMADMA2 2个外设个外设 用用DMADMA, 具有外部具有外部 请求引脚请求引脚外部存储外部存储 控制器(控制器( 片选逻

4、辑片选逻辑 , FP/EDO/FP/EDO/ SDRAMSDRAM 控制器)控制器)5 5个个PWMPWM 定时器和定时器和 1 1通道内通道内 部定时器部定时器看门狗定看门狗定 时器时器7171个通用个通用 I/OI/O口口8 8个外部个外部 中断源中断源具有日历具有日历 功能的功能的 RTCRTC8 8通道通道1010 位位ADCADC 1 1个多主个多主 IICIIC总线控总线控 制器制器1 1个通道个通道 IISIIS总线控总线控 制器制器片上片上 PLLPLL时钟时钟 产生器产生器 S3C44BOX的引脚-外形ARM7TDMIARM7TDMI 内核MCLKnIRQnFIQnRESET

5、BUSENBIGENDISYNCnWAITVDDVSSAPEDBE协处理器接口存储器管理存储器接口ABORTnOPCCPBCPAnCPInTRANSnM4:0MAS1:0nRWnMREQLOCKSEQnENOUTA31:0DOUT31:0DIN31:0D31:0电源总线控制时钟配置中断内核信号内核信号ARM7TDMIARM7TDMI 内核TAP 控制器JTAG 接口数据总线控制信号地址总线BUS SplitterEmbedded ICE 逻辑方框图方框图乘法器指令 解码地址 自增器nRESETnMREQ SEQABORTnIRQ nFIQnRW MAS1:0LOCKnCPI CPA CPBnW

6、AITMCLKnOPCBIGENDISYNCnTRANSnM4:0D31:0桶 移位器32 位 ALUDBE写数据 寄存器读数据寄存器地址寄存器寄存器 BankA31:0ABE及控制 逻辑PC Update解码站指令 解压缩IncrementerP CABusBBusALUBusARM7TDMI内核内核体系结构 每个嵌入式系统至少包含一个嵌入式微处 理器 嵌入式微处理器体系结构可采用冯诺依曼 (Von Neumann)结构或哈佛(Harvard) 结构 地址数据主存储器MOV r8,#8CPUPC指令程序存储器CPUPC地址数据存储器MOV r8,#8地址数据冯诺依曼结构哈佛结构 传统的微处理

7、器采用的冯诺依曼结构将指令和数 据存放在同一存储空间中,统一编址,指令和数 据通过同一总线访问。 哈佛结构则是不同于冯诺依曼结构的一种并行体 系结构,其主要特点是程序和数据存储在不同的 存储空间中,即程序存储器和数据存储器是两个 相互独立的存储器,每个存储器独立编制、独立 访问。与之相对应的是系统中设置的两条总线( 程序总线和数据总线),从而使数据的吞吐率提 高了一倍。嵌入式微处理器的指令系统可采用精简指令集系统RISC( Reduced Instruction Set Computer)或复杂指令集系统 CISC(Complex Instruction Set Computer)CISCRI

8、SC价格由硬件完成部分软件功能,硬件复 杂性增加,芯片成本高由软件完成部分硬件功能,软件复 杂性增加,芯片成本低性能减少代码尺寸,增加指令的执行周 期数使用流水线降低指令的执行周期数 ,增加代码尺寸指令集大量的混杂型指令集,有简单快速 的指令,也有复杂的多周期指令, 符合HLL(high level language)简单的单周期指令,在汇编指令方 面有相应的CISC微代码指令 高级语言支 持硬件完成软件完成寻址模式复杂的寻址模式,支持内存到内存 寻址简单的寻址模式,仅允许LOAD和 STORE指令存取内存,其它所有的 操作都基于寄存器到寄存器控制单元微码直接执行寄存器数目寄存器较少寄存器较多

9、什么是流水线技术在计算机指令执行过程中,各个阶段相对 独立,因此CPU内部的指令译码执行逻辑电 路可以设计成分级的处理部件,实行流水处 理,即流水线技术。ARM7TDMI指令流水线为增加处理器指令流的速度,ARM7 系列 使用3级流水线。允许多个操作同时处理,而非顺序执行。 PC指向正被取指的指令,而非正在执行的指令。FetchDecodeExecute从存储器中读取指令解码指令中用到的寄存器寄存器读(从寄存器Bank) 移位及ALU操作 寄存器写(到寄存器Bank )PCPCPC - 4PC-2PC - 8PC - 4ARMThumbARM7TDMI指令流水线操作周期1 2 3 45 6AD

10、DSUBMOVANDORREORCMPRSBFetchDecode 。FetchExecuteDecodeFetchExecuteDecodeFetchExecuteDecodeFetchFetchExecuteDecodeExecuteDecodeFetchExecuteDecode Fetch最佳流水线最佳流水线该例中用6个时钟周期执行了6条指令 所有的操作都在寄存器中(单周期执行) 指令周期数 (CPI) = 1ARM多周期指令3级流水线操作时序图如何处理流水线中的互锁现象?LDR R0,R1 ;R1 R0 ADD R4,R3,R0 ;R3+R0R4 SUB R6,R7,R8 ;R7-R

11、8R6ADD R4,R3,R0 ;R3+R0R4v ARM体系结构的5级流水线5级流水线把存储器的取指与 数据存取分开,增加了I-Cache 和D-Cache以提高存储器存取的 效率,增加了数据写回的专门 通路和寄存器,以减少数据通 路冲突。这样,5级流水线分为:取指 、指令译码、执行、数据缓存 和写回。 ARM9TDMIInstruction FetchShift + ALUMemory AccessReg WriteReg ReadReg DecodeFETCHDECODEEXECUTEMEMORYWRITEARM9TDMIARM or Thumb Inst DecodeReg Selec

12、tReg ReadShiftALUReg WriteThumbARM decompressARM decodeInstruction FetchFETCHDECODEEXECUTEARM7TDMI流水线流水线ARM微处理器:编程模型数据类型 字节型数据(Byte):数据宽度为8bits 半字数据类型(HalfWord):数据宽度为16bits ,存取式必须以2字节对齐的方式 字数据类型(Word):数据宽度为32bits,存取 式必须以4字节对齐的方式 ARM微处理器:内存和I/OARM 的寻址空间是线性的地址空间,为232=4G Bytes 0 to 1存储第一个word, bytes 2

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

14、bcdARM微处理器:内存和I/O大端: 小端:0xb32045000xddddddd00xb32045000xddddddd0f6f67373 4b4bcdcdda da00 00 实例 变量A:word A=0x f6 73 4b cd,在内存中的起始地 址为0x b3 20 45 00 变量B:half word B=218,在内存中的起始地址为 0x dd dd dd d0问题:half word B=218与word C=218在内 存中的存放方式有何不同?请分大端和小 端两种情况说明。ARM微处理器:CPU模式(processor mode)7 7种种CPUCPU模式模式 CPU模

15、式的转变 : 软件控制 异常 外部中断ARM微处理器:CPU模式User模式程序不能访问有些受保护的资源 只能通过异常的形式来改变CPU的当前运行模式特权模式 可以存取 系统中的 任何资源System 模式与User模式的运行环境一样 但是它可以不受任何限制的访问任何资源 该模式主要用于运行系统中的一些特权任务FIQ模式IRQ模式Supervisor模式Abort模式Undefined模式异常模式:主要是在外部中 断或者程序执行非法操作时 会触发处理器模式说明备注用户 (usr)正常程序工作模式不能直接切换到其它模式系统 (sys)用于支持操作系统的特 权任务等与用户模式类似,但具有可以 直接切换到其它模式等特权快中断 (fiq)支持高速数据传输 及通 道处理FIQ异常响应时进 入此模式中断 (irq)用于通用中断处理IRQ异常响应时进 入此模式管理 (svc)操作系统保护代码系统复位和软件中断响应时 进入此模式中止 (abt)用于支持虚拟内存和/或 存储器保护在ARM7TDMI没有大用处未定义 (und)支持硬件协处 理器的软 件仿真未定义指令异常响应时进 入 此模式 处理器模式 特权模式处理器模式说明备注用户 (usr)正常程序工作模式不能直接切换到其它

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

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