嵌入式接口与应用技术_第1页
嵌入式接口与应用技术_第2页
嵌入式接口与应用技术_第3页
嵌入式接口与应用技术_第4页
嵌入式接口与应用技术_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

嵌入式接口与应用技术第一页,共六十三页,编辑于2023年,星期日嵌入式系统的软/硬件框架第二页,共六十三页,编辑于2023年,星期日冯·诺依曼体系结构和哈佛体系结构CISC与RISCIP核流水线存储器系统嵌入式系统硬件基础第三页,共六十三页,编辑于2023年,星期日冯·诺依曼体系结构模型指令寄存器控制器数据通道输入输出中央处理器存储器程序指令0指令1指令2指令3指令4数据数据0数据1数据2第四页,共六十三页,编辑于2023年,星期日哈佛体系结构指令寄存器控制器数据通道输入输出中央处理器程序存储器指令0指令1指令2数据存储器数据0数据1数据2地址指令地址数据第五页,共六十三页,编辑于2023年,星期日ARM简介

ARM(AdvancedRISCMachines)系列微处理器,采用的ARM技术知识产权(IP)核都是由ARM公司提供的。

ARM公司本身不生产芯片,转让设计许可,由合作公司生产各具特色的芯片。

ARM32位体系结构目前被公认为是嵌入式应用领域领先的32位嵌入式RISC微处理器结构。从版本1到版本6,ARM体系的指令集功能不断扩大。

第六页,共六十三页,编辑于2023年,星期日ARMLtd成立于1990年11月前身为Acorn计算机公司AdvanceRISCMachine(ARM)主要设计ARM系列RISC处理器内核授权ARM内核给生产和销售半导体的合作伙伴ARM公司不生产芯片IP(IntelligenceProperty)另外也提供基于ARM架构的开发设计技术软件工具,评估板,调试工具,应用软件,总线架构,外围设备单元,等等第七页,共六十三页,编辑于2023年,星期日ARM处理器系列ARM7系列ARM9系列ARM9E系列ARM10E系列SecurCore系列Inter的XscaleInter的StrongARM第八页,共六十三页,编辑于2023年,星期日1.4命名的含义标志含义说明T支持Thumb指令集Thumb指令集版本1:ARMv4TThumb指令集版本2:ARMv5TThumb-2:ARMv6TD片上调试M支持长乘法32位乘32位得到64位,32位的乘加得到64位IEmbeddedICEEDSP指令增加了DSP算法处理器指令:16位乘加指令,饱和的带符号数的加减法,双字数据操作,cache预取指令JJava加速器Jazelle提高java代码的运行速度S可综合提供VHDL或Verilog语言设计文件第九页,共六十三页,编辑于2023年,星期日ARM授权费IPARM创造和设计IPPartner产品,例如:芯片Partner把ARMIP和其他IP集成进产品OEMCustomer版权费单价OEM用来自ARMPartner的芯片设计制造最终用户产品业务拓展/市场格局ARM的业务模型第十页,共六十三页,编辑于2023年,星期日ARM处理器结构从一下四个方面介绍:ARM和Thumb状态RISC技术流水线技术超标量执行第十一页,共六十三页,编辑于2023年,星期日ARM和Thumb状态

V4版以后有:32位ARM指令集16位Thumb指令集,功能是ARM指令集的功能子集。ARM7TDMI核以后,T变种的ARM微处理器有两种工作状态:ARM状态Thumb状态。第十二页,共六十三页,编辑于2023年,星期日ARM与Thumb状态转换

在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且该转变不影响处理器的工作模式和相应寄存器中的内容。进入Thumb状态:当操作数寄存器的状态位(位[0])为1时,执行BX指令。

进入ARM状态:当操作数寄存器的状态位(位[0])为0时,执行BX指令。第十三页,共六十三页,编辑于2023年,星期日CISC和RISCCISC:复杂指令集(ComplexInstructionSetComputer)具有大量的指令和寻址方式8/2原则:80%的程序只使用20%的指令大多数程序只使用少量的指令就能够运行。RISC:精简指令集(ReducedInstructionSetComputer)在通道中只包含最有用的指令确保数据通道快速执行每一条指令使CPU硬件结构设计变得更为简单

第十四页,共六十三页,编辑于2023年,星期日知识产权核(IP核,intellectualproperty)识产权知识产权(IP)电路或核是设计好并经过验证的集成电路功能单元IP复用意味着设计代价降低(时间,价格)IP核的类别:微处理器微处理器:ARM,PowerPC;存储器存储器:RAM,memorycontroller;外设:PCI,DMAcontroller;多媒体处理:MPEG/JPEG;encoder/decoder;数字信号处理器(DSP)通信:Ethernetcontroller,router,第十五页,共六十三页,编辑于2023年,星期日IP核的种类SoftCores(“code”)(软核)HDL语言描述灵活度高,可修改与工艺独立,可根据具体的加工工艺重新综合;IP很难保护Firmcores(“code+structure”)(固核)逻辑综合后的描述与工艺相关Hardcores(“physical”)(硬核)物理综合后的描述准备流片包含工艺相关的布局和时序信息IP很容易保护多数的处理器和存储器第十六页,共六十三页,编辑于2023年,星期日IP核的商业模型三种模式一、计者提供设计和工具的许可证DSPGroup(PineandOakCores),3Soft,ARM提供包括HDL在内的模拟模型,工具或仿真器使用者负责设计制造二、核厂商设计并制造集成电路芯片TI,Motorola,LucentVLSI,SSI,Cirrus,Adaptec三、核厂商卖核,负责为客户设计并制造芯片LSIlogic,TI,Lucent第十七页,共六十三页,编辑于2023年,星期日IP核的市场构成74%为硬件设计厂商.26%将购买IP核:40%hard,68%soft,32%firm第十八页,共六十三页,编辑于2023年,星期日ARM的IP核固化宏单元(硬核)ARM920TARM7TDMIARM720TARM1022E可综合内核(软核)ARM926EJ-SARM7TDMI-SARM1026EJ-S测试芯片ARM10200E第十九页,共六十三页,编辑于2023年,星期日流水线技术流水线技术:几个指令可以并行执行提高了CPU的运行效率内部信息流要求通畅流动译码取指执行add译码取指执行sub译码取指执行cmp时间AddSubCmp第二十页,共六十三页,编辑于2023年,星期日指令流水线—以ARM为例为增加处理器指令流的速度,ARM7系列使用3级流水线.允许多个操作同时处理,比逐条指令执行要快。

PC指向正被取指的指令,而非正在执行的指令FetchDecodeExecute从存储器中读取指令解码指令寄存器读(从寄存器Bank)移位及ALU操作寄存器写(到寄存器Bank)PC PCPC-4 PC-2PC-8 PC-4ARM Thumb第二十一页,共六十三页,编辑于2023年,星期日最佳流水线该例中用6个时钟周期执行了6条指令所有的操作都在寄存器中(单周期执行)指令周期数(CPI)=1

操作周期

1 2 3 4 56

ADD

SUB

MOV

AND

ORR

EOR

CMP

RSBFetchDecodeExecuteFetchDecodeExecuteFetchDecodeExecuteFetchDecodeExecuteFetchDecodeExecuteDecodeExecuteFetchDecodeFetchFetch第二十二页,共六十三页,编辑于2023年,星期日

LDR流水线举例该例中,用6周期执行了4条指令指令周期数(CPI)=1.5周期

操作

1 2 3 4 5 6

ADD

SUB

LDR

MOV

AND

ORRFetchDecodeExecuteFetchDecodeExecuteFetchDecodeExecuteDataWritebackFetchDecodeExecuteFetchDecodeFetch第二十三页,共六十三页,编辑于2023年,星期日分支流水线举例流水线被阻断注意:内核运行在ARM状态周期

12345

0x8000BL0x8004X0x8008XX0x8FECADD0x8FF0SUB0x8FF4MOV地址

操作FetchDecodeExecuteFetchDecodeExecuteFetchDecodeFetchFetchDecodeExecuteLinkretAdjustFetchDecodeFetch第二十四页,共六十三页,编辑于2023年,星期日流水线技术Ⅲ2.ARM的流水线设计问题

(1)缩短程序执行时间:提高时钟频率fclk减少每条指令的平均时钟周期数CPI(2)解决流水线相关:结构相关

数据相关

控制相关

第二十五页,共六十三页,编辑于2023年,星期日2.4存储系统机制第二十六页,共六十三页,编辑于2023年,星期日存储器的分类ROM(ReadonlyMemory)只读存储器RAM(RandomaccessMemory)随机存取存储器PROM(programmableROM)可编程只读存储器EPROM(ErasableProgrammable)可改写只读存储器SRAM(StaticRAM)DRAM(Dynamic

RAM)SDRAM(SynchronizationDynamic

RAM)第二十七页,共六十三页,编辑于2023年,星期日存储器系统RAM:随机存取存储器,SRAM:静态随机存储器,DRAM:动态随机存储器

1)SRAM比DRAM快

2)SRAM比DRAM耗电多

3)DRAM存储密度比SRAM高得多

4)DRM需要周期性刷新ROM:只读存储器FLASH:闪存第二十八页,共六十三页,编辑于2023年,星期日SDRAM输入CE是芯片的输入信号。CE=0,使能。R/WAddressData读操作(1)片选(2)读/写(3)地址(4)数据.第二十九页,共六十三页,编辑于2023年,星期日DRAMCE:片选R/W读写控制信号RAS行地址选通,地址高位,CAS列地址选通,地址低位;Address地址DATA数据。第三十页,共六十三页,编辑于2023年,星期日存储器的性能大容量、高速度、低价格是评价存储器性能的三个主要指标,也是存储体系设计的主要目标。

容量:Sw=Wlm。其中W为存储体的字长(单位为位或字节),l为单个存储体的字数,m为并行工作的存储体个数。

速度:m个存储体并行工作时,可达到的最大频率宽度为Bm=Wm/TM

。其中TM是连续起动一个存储器所必要的时间间隔,TM>TA。Bm是连续提供数据的速率。价格:具有SM位的存储器,每位价格表示为c=C/Sm。其中C是总价格。第三十一页,共六十三页,编辑于2023年,星期日

存储体系的组成单体单字存储器单体多字存储器

多体单字交叉存取存储器多体多字交叉存取存储器一般把这些能并行读出多个CPU字的单体多字和多体单字及多体多字的交叉存取系统,统称为并行主存系统。

第三十二页,共六十三页,编辑于2023年,星期日存储体系的形式

(a)两级存储器层次结构

(b)三级存储器层次结构第三十三页,共六十三页,编辑于2023年,星期日

总线结构Ⅰ1.总线协议

:四周期握手协议

第三十四页,共六十三页,编辑于2023年,星期日

总线结构Ⅱ2.总线读写

第三十五页,共六十三页,编辑于2023年,星期日

总线结构Ⅲ3.总线的时序图第三十六页,共六十三页,编辑于2023年,星期日

总线结构Ⅳ4.直接内存访问(DMA)

第三十七页,共六十三页,编辑于2023年,星期日总线结构Ⅴ5.系统总线配置

多总线系统第三十八页,共六十三页,编辑于2023年,星期日

ARM存储数据类型ARM处理器支持以下六种数据类型:

8位有符号和无符号字节。16位有符号和无符号半字,以2字节的边界对齐。32位有符号和无符号字,以4字节的边界对齐。第三十九页,共六十三页,编辑于2023年,星期日

ARM存储格式大端存储模式

小端存储模式(缺省)第四十页,共六十三页,编辑于2023年,星期日

存储器接口Ⅰ1.存储周期的基本类型:空闲周期非顺序周期顺序周期协处理器寄存器传送周期

第四十一页,共六十三页,编辑于2023年,星期日

存储器接口Ⅱ2.ARM的总线接口信号分成4类(以ARM7TDMI为例说明):时钟和时钟控制信号:MCLK、ECLK、nRESET、nWAIT。地址类信号:A[31..0]、nRW、MAS[1..0]、nOPC、nTRANS、LOCK、TBIT。存储器请求信号:nMREQ、SEQ。数据时序信号:D[31..0]、DIN[31..0]、DOUT[31..0]、ABORT、BL[3..0]。第四十二页,共六十三页,编辑于2023年,星期日

存储器接口Ⅲ3.ARM的总线接口可以实现4种不同类型的总线周期。第四十三页,共六十三页,编辑于2023年,星期日

高速缓冲存储器Ⅰ1.分类:统一CacheVS

独立的数据/程序Cache写通cacheVS

写回cache读操作分配cacheVS

写操作分配cache第四十四页,共六十三页,编辑于2023年,星期日高速缓冲存储器Ⅱ2.工作原理:第四十五页,共六十三页,编辑于2023年,星期日高速缓冲存储器Ⅲ3.地址映像和变换方式:全相联地址映像和变换组相联地址映像和变换直接映像和变换

第四十六页,共六十三页,编辑于2023年,星期日

高速缓冲存储器Ⅳ4.Cache的替换算法:轮转法随机替换算法

第四十七页,共六十三页,编辑于2023年,星期日

存储管理单元MMUⅠ1.在ARM系统中,存储管理单元MMU主要完成工作:虚拟存储空间到物理存储空间的映射。在ARM中采用了页式虚拟存储管理。存储器访问权限的控制。

设置虚拟存储空间的缓冲的特性。第四十八页,共六十三页,编辑于2023年,星期日

存储管理单元MMUⅡ(1)2.存储访问过程使能MMU时存储访问过程:第四十九页,共六十三页,编辑于2023年,星期日存储管理单元MMUⅡ(2)禁止MMU时存储访问过程:

先要确定芯片是否支持cache和writebuffer。如果芯片规定当禁止MMU时禁止cache和writebuffer,则存储访问将不考虑C和B控制位。如果芯片规定当禁止MMU时可以使能cache和writebuffer,则数据访问时,C=0,B=0;指令读取时,如果使用分开的TLB,那么C=1,如果使用统一的TLB,那么C=0。②

存储访问不进行权限控制,MMU也不会产生存储访问中止信号。③

所有的物理地址和虚拟地址相等,即使用平板存储模式。第五十页,共六十三页,编辑于2023年,星期日存储管理单元MMUⅢ(1)3.MMU中的地址变换过程:通过两级页表实现。a)一级页表中包含有以段为单位的地址变换条目以及指向二级页表的指针。一级页表是实现的地址映射粒度较大。以段为单位的地址变换过程只需要一级页表。b)二级页表中包含有以大页和小页为单位的地址变换条目。有一种类型的二级页表还包含有以极小页为单位的地址变换条目。以页为单位的地址变换过程需要二级页表。

第五十一页,共六十三页,编辑于2023年,星期日存储管理单元MMUⅢ(2)一级页表的地址变换过程

:第五十二页,共六十三页,编辑于2023年,星期日存储管理单元MMUⅣ(1)4.一级描述符:

从页表中得到的相应地址变换条目称为一级描述符。它定义了与之相应的1M存储空间是如何映射的。一级描述符的位[1:0]定义了该一级描述符的类型,共有4种格式的一级描述符:

第五十三页,共六十三页,编辑于2023年,星期日存储管理单元MMUⅣ(2)1)粗粒度页表描述符:当一级描述符的位[1..0]为0b01(0b代表二进制)时,该一级描述符中包含了粗粒度的二级页表的物理地址,这种一级描述符称为粗粒度页表描述符。它的格式和各个字段的含义如下:

第五十四页,共六十三页,编辑于2023年,星期日存储管理单元MMUⅣ(3)由粗粒度页表描述符获取二级描述符的过程:第五十五页,共六十三页,编辑于2023年,星期日存储管理单元MMUⅣ(4)2)段描述符:当一级描述符的位[1:0]为0b10时,该一级描述符为段描述符,它的格式和各个字段

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论