资源预览内容
第1页 / 共65页
第2页 / 共65页
第3页 / 共65页
第4页 / 共65页
第5页 / 共65页
第6页 / 共65页
第7页 / 共65页
第8页 / 共65页
第9页 / 共65页
第10页 / 共65页
亲,该文档总共65页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
1,嵌入式系统的存储器,1,3,2,4,嵌入式存储系统概述,嵌入式存储系统的存储器选择,嵌入式存储系统的主存,嵌入式存储系统的Cache,2,嵌入式存储系统概述,存储器(Memory)是具有记忆功能的部件,用来存放程序和数据 典型的三级存储体系结构 主存 嵌入式硬件系统的重要组成部分 性能的好坏直接影响嵌入式系统的性能 高速缓存 增加Cache的目的是为了提高速度 外存(辅存) 增加辅存的目的是弥补主存容量的不足,3,比尔盖茨“640K内存对于任何人来说都足够了” - 1981年,嵌入式存储系统概述,关于计算机主存的预言,640K内存够还是不够?,C/S模式,B/S模式,Cloud模式,4,嵌入式存储系统概述,主存(又称为内存) 能由处理器直接按地址编程访问的存储器 用来存放需要执行的程序和需要处理的数据 当前要运行的程序和数据调入主存,其他的程序和数据暂时存放在外存储器中,需要时再调入 从用户的角度开,这种调度更换是以文件的方式为组织单位的 对主存的基本要求 随机访问 工作速度快 具有一定的存储容量,5,嵌入式存储系统概述,高速缓存(Cache) “存储墙”问题 8086间,处理器速度年增长35% 87后,处理器速度年增长55% 为解决CPU与主存之间的速度匹配 高速缓存存放最近要使用的程序与数据,建立主存中最活跃信息的副本,当CPU访问贮存时,同时访问高速缓存,通过分析访问地址进行判断:要访问的程序或数据是否已经复制到高速缓存中 已经在Cache中,则称Cache命中,直接访问 如不在,则称Cache失效,则需要从主存中读取数据,并考虑更新Cache中的内容,6,嵌入式存储系统概述,外存(辅存) 用来存放需要联机保存,当时暂时不需要访问的程序与数据 记录在外存中信息可以脱机保存,需要使用时,在联机使用 外存可以使多立的存储器,也可以分层构成 用户编程往往是按文件名调用,以文件作为一次调用单位 如物理存储结构小,则把文件分成数据块,CPU按数据块读取,7,存储系统层次结构,嵌入式存储系统概述,8,存储器的主要性能指标 存储容量存储器所能容纳的二进制信息总量 存取速度由主存访问时间、Cache访问时间及失效率决定 主存访问时间和Cache访问时间一定,减少Cache失效率 主存访问时间和Cache失效率一定,减少Cache访问时间 Cache访问时间和Cache失效率一定,减少主存访问时间 价格存储单元本身与外围电路的价格总合 功耗每一个存储单元的功率或每片芯片的总功率 可靠性在单位时间内,存储器无故障工作的概率,通常用平均无故障时间(MTBF)来衡量,嵌入式存储系统概述,9,ARM存储器层次结构 存储器层对用户来说是透明的,它的管理由计算机硬件和操作系统完成,它是一个多层结构 寄存器组 它是存储系统的顶层, 大约有32个32位寄存器 容量为128字节,其访问时间为:ns 片上RAM 它与片上寄存器组具有同级的读/写速度 与片上寄存器相比,具有较好的功耗效率,减少了电磁干扰 嵌入式系统由于功耗因素,多采用片上RAM而不是Cache 片上RAM特点 不能太快 消耗太多功率 容量不能太大占用太多芯片面积,嵌入式存储系统概述,10,ARM存储器层次结构 片上Cache 片上Cache的容量为832k,访问时间为:10ns 高性能的计算系统还会设有第二级的片外Cache 容量为几百k,访问时间为几十ns 主存 几兆到1GB的动态存储器 多用Flash,访问时间大概为: 50ns,嵌入式存储系统概述,11,ARM数据存储类型 ARM处理器将存储器看着是从0地址开始的字节线形组合 从0字节到3字节法制第一个数字 从4字节到7字节法制第一个数字 ARM允许32位长地址,其最大寻址范围4GB( 232 ) ARM支持处理半字节和长字节的数据,嵌入式存储系统概述,1字节寻址,半字节寻址,12,ARM数据存储类型 ARM支持6种数据类型 8位有符号和8位无符号字节 16位有符号和16位无符号字节,以2字节边界对齐 字节对齐就是以字节为单位把数据一次排列 32位有符号和32位无符号字节,以4字节边界对齐 ARM支持处理半字节和长字节的数据 ARM指令是32位,必须字对齐 Thumb指令是16位,必须以2字节为单位对齐,嵌入式存储系统概述,字节对齐,半字对齐,半字对齐,0 4 8,13,ARM数据存储方式 大端存储 数字的高位字节存放在低位地址中 小端存储 数字的高位字节存放在高位字节中 严格按照对齐方式储存数据 例如十六进制数 11223344的存储,嵌入式存储系统概述,14,存储器分类 按在系统中的地位分类 主存储器(简称内存或主存) 辅助存储器(简称辅存或外存) 高速缓存 按存储介质分类 磁存储器磁面存储器和磁芯存储器 半导体存储器 光存储器 铁电存储器,嵌入式存储系统概述,15,按存取方式分类 随机存取存储器(Random Access Memory RAM) 随机存储器按信息存储的方式,可分为 静态RAM(Static RAM,SRAM) 动态RAM(Dynamic RAM,DRAM) 准静态RAM(Pseudo static RAM,PSRAM) SRAM比DRAM快 SRAM比DRAM耗电多 DRAM存储密度比SRAM高得多 DRAM需要周期性刷新 只读存储器(Read Only Memory,ROM) 顺序存取存储器(Sequential Access Memory SAM) 直接存取存储器(Direct Access Memory, DAM),嵌入式存储系统概述,16,一个系统中可能出现的七种存储形式,嵌入式存储系统概述,17,嵌入式系统的存储器,1,3,2,4,嵌入式存储系统概述,嵌入式存储系统的存储器选择,嵌入式存储系统的主存,嵌入式存储系统的Cache,18,主存和 CPU 的联系,嵌入式系统的主存,19,主存的基本组成 存储体 寻址系统 读写系统 时序控制线路 储存体是核心,其他三部分是存储矩阵的外围电路 选址是关键部件,但电路复杂,选址的方法不同,直接影响存储举止的组织与结构,嵌入式系统的主存,20,嵌入式系统的主存,存储体 是信息的驻存地 由许多个存储单元构成,每一个存储单元存放一个数据或一条指令 对全部存储单元进行编码,称为存储单元地址码 单元与地址码一一对应 一个计算机有N个字的存储空间,需要Log 2N位的二进制编码确定每一个存储单元的地址,21,嵌入式系统的主存,寻址系统 由储存地址寄存器MAR、地址译码器和地址驱动器三部分构成 对存储单元存入或读出信息,称为访问 I/O设备或CPU访问存储器过程 先将访问地址送入MAR 经地址译码器找到被访问的存储单元 最后由地址驱动器驱动存储单元以实现读或写,22,嵌入式系统的主存,寻址系统 地址译码器结构分为 单译码只有一个译码器,输出字选线 双译码把译码器分成X方向译码和Y方向译码两个译码器 单译码 地址线为N,输出的状态为2n,对应2n个地址 N较大时,储存器变得复杂,成本上升,性能下降 双译码 每一个方向的输入为N/2,各输出的状态为2n/2 ,共译出状态2n个,译码输出地址线数为2X 2n/2根 节省驱动电路,成本低,23,嵌入式系统的主存,读写系统 包括储存缓冲寄存器MBR、读出和写入电路 读出是根据访存的读命令,借助读出线路将由寻址确定的存储单元读出送MBR,以供I/O或CPU使用 时序控制线路 包括控制触发器、各种门电路和延迟线,24,(2) 存储速度,主存的技术指标,(1) 存储容量,(3) 存储器的带宽,主存 存放二进制代码的总位数,读出时间 写入时间,存储器的 访问时间,存取时间,存取周期,读周期 写周期,连续两次独立的存储器操作,(读或写)所需的 最小间隔时间,最大数据传输速率:位/秒,嵌入式系统的主存,25,随机存取存储器(RAM) 半导体存储器的最小逻辑单位是存储元件,它存储1位二进制信息 由若单存储元件构成一个逻辑存储单元,存储一个或多个字节 半导体存储器分为双极性和MOS型两种 MOS型存储器,按存储信息机构的原理分为 静态随机存取存储器(SRAM) 动态随机存取存储器(DRAM,嵌入式系统的主存,26,MOS型存储器类型 静态随机存取存储器(SRAM) 利用双稳态触发器来保存信息 只要不断电,信息就不会丢失 速度快,集成度低,价格贵 动态随机存取存储器(DRAM) 利用MOS的电容储存电荷来保存信息 使用时需不断给电容充电才能使信息保持 集成度高,速度慢,嵌入式系统的主存,27,动态 RAM 和静态 RAM 的比较,存储原理,集成度,芯片引脚,功耗,价格,速度,刷新,嵌入式系统的主存,28,只读存储器(ROM) 结构简单,无需写入电路,造价低,集成度高 非易失性器件,断电后信息不会丢失,可靠性高 种类多 掩模式ROM(Masked ROM,MROM) 一次可编程ROM(PROM) 可擦除可编程ROM(EPROM) 电擦除电可编程ROM(EEROM) 闪存(Flash Memory),嵌入式系统的主存,29,只读存储器(ROM) 掩模 ROM ( MROM) 行列选择线交叉处有 MOS 管为“1” 行列选择线交叉处无 MOS 管为“0” PROM (一次性编程),嵌入式系统的主存,30,紫外线全部擦洗,EPROM (多次性编程 ) N型沟道浮动栅 MOS 电路掩模 ROM ( MROM),嵌入式系统的主存,31,EEPROM (多次性编程 ) 电可擦写 局部擦写 全部擦写 Flash Memory (闪速型存储器) 既有MROM和RAM两者的性能 又有MROM和RAM一样的高密度,低成本,小体积,嵌入式系统的主存,32,Flash Memory 使用一次写入所需字节的方式在系统内置或设备编 程器上编程,可编程1万次以上,一次擦除一个扇区,EPROM 使用设备对位编码,可编程100次以上,全内容擦除,价格便宜 集成度高,EEPROM 通过两次写操作逐字节编程,可编程100万次以上, 一次擦除以字节,各种ROM性能比较,嵌入式系统的主存,MROM 适用于屏蔽硅片上的电路,不可编程,不可擦除,PROM 使用设备对位编码,可编程一次,不可擦除,33,内存条 以存储芯片为基本器件,通过位扩展、字扩展或字位同时扩展构成储存体的半成品 一个存储体有一个或多个内存条组成,由存储控制芯片控制管理 内存条实际上是把若干个存储芯片按照一定逻辑关系联结起来,高密度地安装在有若单个引脚的印制电路板上或密封在对外有若干个引线陶瓷管壳中,嵌入式系统的主存,34,嵌入式系统的存储器,1,3,2,4,嵌入式存储系统概述,嵌入式存储系统的存储器选择,嵌入式存储系统的主存,嵌入式存储系统的Cache,35,避免 CPU “空等” 现象,CPU 和主存(DRAM)的速度差异,容量小 速度高,容量大 速度低,程序访问的局部性原理:2/8原理,嵌入式系统的Cache,36,在多级存储体系结构中,系统运行时,被访问的数据从下级存储器调入上级存储器 当数据被上移的新数据替换时,便向下级存储器写入 上级存储器中的数据只是下级存储器中的数据的子集 “Cache主存”结构的数据管理级制分四步执行 建立映像规则 确定查找方法 实现替换算法 制定写策略,嵌入式系统的Cache,37,建立映像规则 主存的容量大于Cache的容量,当把主存中的一个数据块调入Cache时,可以放到那些位置上 映像规则的选择决定了Cache的结构,通常的映像技术有 全相联映像技术 直接映像技术 组相联映像技术 上述技术组合应用,嵌入式系统的Cache,38,全相联映像技术 主存中的任意一块可以放到Cache中的任意位置 块的冲突较小,Cache的命中率和利用率也最高 需要对所有块进行标识字段(Tag)进行比较,需要价格昂贵的相联存储器实现
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号