《存储器PPT课件_4》由会员分享,可在线阅读,更多相关《存储器PPT课件_4(46页珍藏版)》请在金锄头文库上搜索。
1、,第四章 存储器,掌握,1、存储器结构构成 从内到外依次为: 速度最快的是: 容量最大的是: 2、半导体存储器分类有哪些,其中不同类型存储芯片分别应用于哪些方面,储存哪些内容。 3、构成一个存储器,选择芯片是需要考虑哪些因素? 4、存储器芯片的引脚信号线有几类,分别是什么? 5、存储器芯片的位扩展,子扩展,字位扩展指什么,如何实现?,4.1存储器体系结构,分级存储结构 虚拟存储器结构,存储器(memory)是计算机的主要组成部分。它既可用来存储数据,也可用以存放计算机的运算程序。存储器由寄存器组成,可以看做一个寄存器堆,每个存储单元实际上相当于一个缓冲寄存器。,根据存取方式的不同,半导体存储器
2、可以分为随机存取存储器RAM(Random Access Memory)和只读存储器ROM(Read Only Memory)两大类。如图所示。,4.2存储器的分类,存储器的性能指标,(1)存储容量 (2)存储速度 (3)可靠性,(1)存储容量,存储容量 是指一块存储芯片上所能存储的二进制位数。 假设存储芯片的存储单元数是M, 一个存储单元所存储的信息的位数是N,则其存储容量为MN。,例题,1、已知单片6116芯片的地址线是11位, 每个存储单元是8位,求其存储容量? 解: 因为可编址范围211 ,即M 211 , 每个存储单元可存8位,即N 8, 所以, 6116的存储容量 = 2118 =
3、 210248 = 2K8 2KB,例题,2、若要组成64K字节的存储器,以下芯片各需几片? 6116(2K8) 4416(16K4),解: (64K8) ( 2K8)=32(片) (64K8) ( 16K4)= 8 (片) P185,区别:芯片的存储容量和微机的存储容量,微机的存储容量 由多片存储芯片组成的总存储容量。 微机的最大内存容量 由CPU的地址总线决定。 如:PC486,地址总线是32位, 则,内存容许最大容量是232=4G; 实际的装机容量 由实际使用的若干片存储芯片组成的总存储容量。,(2)存储速度,存储器的存取速度是影响计算机运算速度的主要因素,用两个参数来衡量: 存取时间T
4、A (Access Time) 定义为启动一次存储器操作(读或写),到完成该操作所经历的时间。 存储周期TMC(Memory Cycle) 定义启动两次读(或写)存储器操作之间所需的最小时间间隔。,(3)可靠性,存储器的可靠性用MTBF来衡量。 MTBF即Mean Time Between Failures 平均故障间隔时间,MBTF越长,表示可靠性越高。,存储器的逻辑结构示意图,4.3存储器芯片接口特性,随机存储器举例,RAM(Random Access Memory)意指随机存取存储器,其工作特点是:在微机系统的工作过程中,可以随机地对其中的各个存储单元进行读写操作。读写存储器分为静态RA
5、M与动态RAM两种。 静态RAM的基本存储单元是由六个MOS管构成,所以, 静态存储电路又称为六管静态存储电路。这种存储电路的读 出过程是非破坏性的,即信息在读出之后,原存储电路的状 态不变。,1静态RAM存储器芯片 (1) Intel 6264 Intel 6264是一种8K8的静态RAM存储器 芯片,其最基本的存储单元就是如上所述 的六管存储电路,其它的典型芯片有 Intel 6116/62256等。 引脚介绍 A0-A12:13根地址信号输入引脚,决定该芯片有8K个存储单元 D0D7 :8根双向数据输入输出信号引脚 /CS1,CS2:片选信号,当/CS1=0且CS2=1时,该片子被选中
6、/OE:输出允许信号,当/OE=0时,CPU才能够从芯片中读数据,WE: 读写控制信号输入引脚,当WE为低电平时,使 输入三态门导通,信息由数据总线通过输入数据控制电 路写入被选中的存储单元;反之从所选中的存储单元读 出信息送到数据总线 。 下表总结4个控制信号的功能:,DRAM的接口特性,1、刷新问题 DRAM利用场效应晶体管栅极电容充放电状态表示0和1,所以需要定时刷新。 2、地址信号输入问题 DRAM芯片集成度高,存数容量大,导致能够引出的引脚数目不够,所以采用两路复用锁存方式寻址。,DRAM芯片内部结构,1、没有专门的片选线,使用行列信号选通。 2、数据线非双向,分设Din Dout
7、3、读/写控制信号一根线完成 2、全部存储单元分散配置为4个行列矩阵。,读写数据同时进行刷新 只给出行信号线,无列信号线时只刷新,不读写,数据输出为高阻态。 读写必刷新 刷新时间2ms,需要专门的刷新电路,实现刷新的三种方式,CPU通过控制逻辑实现 DMA控制器实现 专门的DRAM控制器实现 例:CPU控制刷新的逻辑接口 P191,存储器系统的构成,芯片的选配 CPU与存储芯片的连接方式 地址单元个数的扩展(字扩展) 单元位数的扩展(位扩展) 字位扩展,芯片选择,SRAM与CPU连接,不需要外围电路,连接简单,用于小型控制系统。 DRAM常用于大型系统,因为需要刷新电路,比如PC机的内存条。
8、ROM通常用于存放固定的系统程序。,存储器接口设计,与三大总线正确连接 时序匹配 地址线的处理(高位地址线,低位地址线) 片选控制的方法:线选法、局部译码法、全译码法(最常用) 全译码可提供对全部存储空间的寻址能力 例,CPU要实现对存储单元的访问,首先要选择存储芯片,即进行片选;然后再从选中的芯片中依地址码选择出相应的存储单元,以进行数据的存取,这称为字选。片内的字选是由CPU送出的N条低位地址线完成的,地址线直接接到所有存储芯片的地址输入端,而片选信号则是通过高位地址得到的。实现片选的方法可分为三种:线选法、全译码法和部分译码法。,存储器地址选择,线选法就是用除片内寻址外的高位地址线直接分
9、别接至各个存储芯片的片选端,当某地址线信号为“0”时,就选中与之对应的存储芯片。 特点:不需要地址译码器,线路简单,适用于连接存储芯片较少的场合。,线选法,存储器地址选择,全译码法将片内寻址外的全部高位地址线作为地址译码器的输入,把经译码器译码后的输出作为各芯片的片选信号,将它们分别接到存储芯片的片选端,以实现对存储芯片的选择。 译码法的优点是每片(或组)芯片的地址范围是唯确定的,而且是连续的,也便于扩展,不会产生地址重叠的存储区,但全译码法对译码电路要求较高。,全译码法,部分译码法是对高位地址线中的一部分(而不是全部)进行译码,以产生各存储器芯片的片选控制信号。当采用线选法地址线不够用,而又
10、不需要全部存储器空间的寻址能力时,可采用这种方法。,部分译码法,存储器芯片的容量扩充,对1#来说其地址范围 00 0000 0000 0000 00 0111 1111 1111 (即0000H07FFH),用两片6116芯片( 2K 8)即可扩展成4K 8位,这种扩展方式就称为字扩展。,对2#来说其地址范围 00 1000 0000 000000 1111 1111 1111 (即0800H0FFFH),存储器芯片的容量扩充,显然,我们可以用2片2114组成1K8位的存储器,这种扩展方式称为位扩展。,对2114来说,存储容量是1K4位,而正常数据都以字节作为存储单元,显然需要进行扩展。,N=
11、 (1K8位)( 1K4位)= 2,什么是cache,Cache又叫高速缓冲存储器,位于CPU与内存之间,是一种特殊的存储器子系统。 目前比较常见的是两极cache结构,即cache系统由一级高速缓存L1 cache和二级高速缓存L2 cache组成,L1 cache通常又分为数据cache(I-Cache)和指令cache(D-Cache),它们分别用来存放数据和执行这些数据的指令。,为什么要使用Cache?,用以弥补主存速度的不足。 CPU速度与主存速度相差很大(例如,一般的DRAM的工作速度比CPU慢100倍以上。 Cache工作速度很高,可以将其集成到CPU内。高性能CPU通常用两级C
12、ache,一级在CPU内,其容量比较小,速度很快,第二级在主板上,容量比较大,速度比第一级低5倍左右。 Cache全部用硬件调度对所有程序员都是透明的。 Cache与主存储器之间以块为单位进行数据交换。块的大小通常以在主存储器的一个存储周期内可以访问到的数据长度为限。,Cache存储系统与虚拟存储系统比较,基本结构,把主存和Cache机械等分成相同大小的块(行),块比页小得多; 访问Cache的时间时访问主存时间的1/4到1/10; Cache和CPU是同类型的半导体器件; Cache-主存间的地址映像和变换,以及替换、调度算法用硬件实现,对应用程序员透明,也对系统程序员透明;,基本结构(续)
13、,Cache在物理位置上靠近CPU,不在主存,减少传输延迟; 除Cache到处理机的通路外,还设有主存到处理机的通路,因此,Cache既是Cache-主存存储层次中的一级,又是处理机和主存的一个旁视存储器; 有Cache的主存系统都采用多体交叉存储器; 应尽量提高Cache的访主存的优先级;,高速缓冲存储器基本原理,系统开机时, Cache中无任何内容 Cache命中是设计的核心 Cache的组成:存放从内存复制来的代码和数据 存放这些内容所在的地址标记 置换算法:先进先出,最近最少使用 Cache与内存容量一般为1:128 太小命中率低;太大增加成本,且Cache超过一定容量后命中率并不会随
14、容量的增大明显提高。,Cache与内存的映像方式 1、全关联方式 最灵活,寻址最复杂,索引速度最慢 2、直接映射方式 寻址最简单,索引速度最快,最不灵活 3、分组关联方式(组内直接映射,组间全关联) 前两种方式的折中,直接映象与变换,定义及规则 映象规则:主存中一块只能映象到Cache的一个特定的块中。 计算公式: bB mod Cb,其中:b为Cache的块号,B是主存的块号,Cb是Cache的块数。 整个Cache地址与主存地址的低位部分完全相同。,变换过程,如下图。 特点: 硬件简单 冲突概率高 出现大量空闲块 很少使用。,地址变换过程 用主存地址中的块号B去访问区号存储器 把读出来的区
15、号与主存地址中的区号E进行比较 比较结果相等, 且有效位为1, 则Cache命中 比较结果相等, 有效位为0, 表示Cache中的这一块已经作废 比较结果不相等, 有效位为0, 表示Cache中的这一块是空的 比较结果不相等, 有效位为1, 表示原来在Cache中的这一块是有用的,Cache读写问题,Cache读,命中问题 Cache写(保证Cache 和内存数据一致) 方法:1、通写(Write-Through) 写Cache时同时写内存,数据一致,速度慢 2、改进通写法(Improved Write-Through) 写Cache后紧接操作为读,主存写完成前,CPU开始读(命中);写Cac
16、he后紧接操作为写,或为读(未命中) 需要在写主存时插入等待周期 3、回写法(Write-Back)速度快,结构复杂 Cache中任一页,如存在期间发生过写操作,该页被覆盖前必须将其内容回写对应主存,如为改写,则淘汰,不回写,分级Cache结构与平均访问周期估算,Pentium系列微处理器中都集成了16KB128KB的一级Cache,同时芯片(卡匣)内置或外置了128KB2MB不等的二级Cache。 在这种采用分级Cache结构的微机系统中,一般有80%左右的内存访问请求可在一级Cache中命中,剩下20%的内存请求大约又有80%可在二级Cache中命中。这样,整个Cache的命中率将达到96%左右,全部内存请求真正需要到内存去访问的大约只有4%。,两级Cache的系统中,CPU对内存的平均访问周期T的估算公式: T=T1H1+T2(1-H1)H2+TM(1-H1)(1-H2) (4.1) 式中: T1、T2、和TM分别为一级Cache、二级Cache和内存的存取周期,H1和