计算机组成原理课件更新第三章存储系统(之三)

上传人:bin****86 文档编号:55744650 上传时间:2018-10-05 格式:PPT 页数:29 大小:274KB
返回 下载 相关 举报
计算机组成原理课件更新第三章存储系统(之三)_第1页
第1页 / 共29页
计算机组成原理课件更新第三章存储系统(之三)_第2页
第2页 / 共29页
计算机组成原理课件更新第三章存储系统(之三)_第3页
第3页 / 共29页
计算机组成原理课件更新第三章存储系统(之三)_第4页
第4页 / 共29页
计算机组成原理课件更新第三章存储系统(之三)_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《计算机组成原理课件更新第三章存储系统(之三)》由会员分享,可在线阅读,更多相关《计算机组成原理课件更新第三章存储系统(之三)(29页珍藏版)》请在金锄头文库上搜索。

1、3.4 高速存储器,题意提高存储器工作速度的技术(频带平衡)解决存储器与CPU速度不匹配容量、速度、价格的矛盾 提高存储器速度减小内存与CPU之间速度差异的主要途径在CPU内部设多个通用寄存器;研究新的DRAM芯片技术;在结构技术上考虑更好的措施;从系统结构角度考虑采用多层存储体系。,(每项技术措施都是为了整体改善存储器性能价格比,但不同技术主要针对某个存储器技术指标的提高。) 1、芯片技术 在DRAM芯片中采用高速存取方式。 快速页面访问方式(FPM):此次访问的存储单元与上次访问的单元处于存储单元阵列的同一行(即页面)时,可以利用上次访问的行地址。比一般访问提高23倍。,增强数据输出存储器

2、(EDO DRAM):在FPM DRAM的基础上,增加一个数据锁存器,在输出一个数据的过程中就准备下一个数据的输出。性能提高15%30%。 同步型DRAM(SDRAM):将CPU和RAM通过一个相同的时钟锁在一起。实际是通过地址、数据锁存及流水方式达到同步。 RDRAM(Rambus DRAM):经专用RDRAM总线与CPU之间传送数据。 SLDRAM。 。 (?)芯片技术中还有:双端口存储器;相联存储器 ;等等。,2、结构技术 选定存储芯片后,进一步提高存储器性能的措施:从结构上提高存储器的带宽; 实际是采用并行操作的存储器; 主要采用技术多体交叉存储技术。 3、采用多层次存储体系结构 (寄

3、存器)Cache主存辅存; 其中Cache技术面向速度问题而虚存技术面向容量问题。,3.4 高速存储器,地 址 寄 存 器,地 址 寄 存 器,译 码 器,译 码 器,存储体,地址,地址,MDR,MDR,数据,数据,读写电路,读写电路,WE,WE,MAR,MAR,双端口存储器框图,3.4.1 双端口存储器,一、端口的含义指读写口,含地址寄存器、地址译码器、 数据寄存器和读写控制电路。见下图。,仲裁逻辑,二、无冲突和有冲突的读写 三、双端口存储器的应用场合 1、多层次存储器系统中的Cache采用双端口结构; 2、一般主存用来实现CPU和其他总线主设备(如DMAC和IOP)同时并行访问; 3、多机

4、系统中可用来实现多机之间信息交换 (可考虑用多端口); 双端口存储器是显示卡上的显示存储器的主要形式; 。,3.4.2 多模块交叉(多体交叉)存储器,一、多体交叉存储器的实质是并行的主存系统 1、并行主存的含义 数据总线仍然是单字宽(W),却能在一个存取周期Tm访问到多个字(nW)的信息。 2、实现并行的基础 用多个(n个)存储体(存储模块)组成主存。 回忆RAM扩展时将1KX4芯片组织成8KX16存储器的方法: (1)4个芯片位扩展为1KX16称其为一个分(存储)体或一个模块(板); (2)再用8个模块字扩展成8KX16的主存;,A12 Y7 A11 A10 Y0 A9 A0D15 D12

5、D3 D0 R/W,3/8 译 码 器,A0A9 R/W 1# CS D3.D0,A0A9 R/W 4# CS D3D0,A0A9 R/W29#CS D3D0,A0A9 R/W32#CS D3D0,该图所示结构已经具备了并行的基础; 但因为线性地址在各模块间的安排是顺序方式的, 实际上只起到了扩充容量的作用, 而没有达到增加频宽进而提高存取速度的目的。,二、多模块存储器中线性地址的两种安排方式 1、顺序方式 线性地址按模块走,第一块排完再排第二块.;编址为高位交叉。 2、交叉方式 线性地址逐模块走,所有块编一个单元,再回到第一块;编址为低位交叉,真正的并行主存系统中常用的是这种方式。 以上两种

6、方式图解如下: (类教材P.101图3.29),00000,M0,M1,M2,M3,内存地址:,4 3 2 1 0,00001,00010,00011,00100,00101,00110,00111,01000,01001,01010,01011,01100,01101,01110,01111,10000,10001,10010,10011,10100,10101,10110,10111,11000,11001,11010,11011,11100,11101,11110,11111,模块(分体)号,块内字地址,数据寄存器MDR(16位),DB(16位),多 模 块 的 顺 序 编 址 方 式,

7、整个 内存 需地 址寄 存、 数据 寄存 和读 写控 制电 路各 一套。,16位,16位,16位,16位,译码器,00000,数据总线DB(16位),内存地址:,4 3 2 1 0,00001,00010,00011,00100,00101,00110,00111,01000,01001,01010,01011,01100,01101,01110,01111,10000,10001,10010,10011,10100,10101,10110,10111,11000,11001,11010,11011,11100,11101,11110,11111,模块(分体)号,块内字地址,译码器,寻找模块,

8、多 模 块 的 交 叉 编 址 方 式,MDR0,MDR3,MDR2,MDR1,MAR0,MAR3,MAR2,MAR1,16位,16位,16位,16位,n个并行的 存储体具有 各自的地址 寄存器的地 址译码、驱 动、读放等 电路,三、多体交叉存储器的工作原理 (Interleaved memory),1、地址交叉排列的目的 获得比单体或多体顺序排列方式更高的频宽。 【例】在一个具有4个存储体的多体交叉存储器中,如果处理器的访存地址为以下十进制值;求该存储器比单体存储器的平均访问速率提高多少(忽略初启时的延迟)?(0001为第一个地址。) (1)0001,0002,0003,0100 (2)00

9、02,0004,0006,0200 (3)0003,0006,0009,0300 (1)4倍 (2)2倍 (3)4倍,2、多体交叉存储体分时工作原理无论多体存储器中有几个分体,CPU与主存之间数据通路仍是一个字长的W位。n个W位如何在一个存储周期Tm中读出? 一般采用分时启动分体的分时读出法: 设有n个分体(模块),各自的存取周期都是Tm;则第一个分体启动后,每隔1/n个Tm再启动下一个分体。 例:设有4体交叉的存储器,分时即每隔1/4Tm启动一个分体,见图示。,分时启动各个分存储体的示意图(以四体交叉 存储器为例),M3M2M1M01/4 2/4 3/4 1 2 t(Tm),可见多体交叉存储

10、器是一种采用流水方式工作的并行存储器系统。,3、交叉存取度(计算问题) (1)概念与例题说明 设多体中各分体(模块)字长等于数据总线宽度; 又设各模块存取周期为T,总线传送周期为,存储器的模块数为m,为了实现流水存取,应满足: T= m m=T/叫做交叉存取度。 T与的数值对比。 t1=T+(m-1)为交叉存储器连续取m个字所需时间; t2=mT为顺序存储器连续取m个字所需时间。,【例4】设存储器容量为32字,字长64位,模块数m=4,分别用顺序方式和交叉方式进行组织。存储周期T=200ns,数据总线宽度为64位,总线传送周期=50ns。问顺序存储器和交叉存储器的带宽各是多少? 解:二者读出4

11、个字的信息量均为64 X 4=256位;所需时间分别为: T1=T+(m-1)=350ns T2=mT =800ns 带宽分别为: W1=256/350=73 X 107位/s W2=256/800=32 X 107位/s ?带宽的物理含义。Bm=W/Tm:单位时间里存储器所存取的信息量。,T,时间,字,模块,W0 M0,W1 M1,W2 M2,W3 M3,W0 M0,初启延迟,P.102图3.31流水方式存取示意图,(3)有关多体交叉存储器的书后习题:P.125习题8、 P.126习题13 8、设存储容量为64M,字长为64位,模块数m=8,分别用顺序和交叉方式进行组织。存储周期T=100n

12、s,数据总线宽度为64位,总线传送周期=50ns。求:顺序存储器和交叉存储器的带宽各是多少? 解答: m=8,从存储器读取8个字的位数为W=8 X 64(位),顺序存储器要取的8个字在同一分体(模块)内,所用时间为t2=8 X Tm=8 X 100=800(ns) 频宽为 Bm2=W/t2=6.4 X 108(bits/s) 交叉存储器要取的8个字在8个模块内,所用时间为t1=Tm+(m-1)X(总线传送周期)=100+7 X 50=450(ns) 频宽为 Bm1=W/t11.14 X 109(bits/s) (比较大小。),13、某机器采用四体交叉存储器,今执行一小段循环程序,此程序放在存储

13、器的连续地址单元中。假设每条指令的执行时间相等,而且不需要到存储器存取数据,请问在下面两种情况中(执行的指令数相等),程序的运行时间是否相等? (1)循环程序由6条指令组成,重复执行80次。 (2)循环程序由8条指令组成,重复执行60次。 解答: 方法有两种,请比较。 【方法一】,指令1,指令5,指令2,指令6,指令3,指令4,指令7,指令8,M0,M3,M2,M1,(1)T1=(T+3 +T+ ) X 80=160T+320 ,(2)T2(T+3 +T+ 3) X 60=120T+360 ,T1-T2=40(T-),T1T2,T ,指令1,指令5,指令2,指令6,指令3,指令4,指令7,指令

14、8,M0,M3,M2,M1,(1)T1=(T+7 ) + 8 X 79=T+639 ,(2)T2=(T+7 ) + 8 X 59=T+479 ,T1-T2=160,T1T2,【方法二】,4、多体交叉存储器的几点补充说明 (1)采用低位交叉方式工作的存储器实际是一种流水方式工作的并行存储器系统。能够大幅度提高主存储器的速度,在共享主存的多机系统及许多高速的单机系统中用作主存。 (2)增加存储体个数(多模块的块数)可提高主存速度,但是,主存速度并非随存储体个数增加而线性提高。 (3)多体交叉存储器在提高频宽的同时也扩大了容量,但使用该技术的主要目的是为了速度而不是容量。,5、多体交叉存储器的组成框

15、图,I/O处理器,CPU,M0,M1,M2,M3,总 线 控 制,IOP,地址,地址,地址,地址,存 储 器 控 制 器,存控的作用组织多体并行工作, 实现分时流水读出,管理信息流动次序和方向。,6、一个多体交叉存储器的例子,某机地址总线宽度为24位,字节寻址,数据总线宽度为32位。用现有的256KX4位的DRAM芯片组成该机主存并在其中使用模2(二个模块)交叉存储器的一种构成方案如下: (1)用8片256KX4位的DRAM芯片并联成256KX32位的一个模块;(容量1MB) (2)用2个上述模块构成一个512KX32位的模2(二体交叉)存储器; (容量2MB) (3)将8个上述模2存储器串联成4MX32位的主存。(容量16MB) 由以下方框图了解其主要构成及寻址过程: (教材P.103图3.32),

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

当前位置:首页 > 医学/心理学 > 基础医学

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