第十讲 提高访存速度(二)(从结构技术方面)_第1页
第十讲 提高访存速度(二)(从结构技术方面)_第2页
第十讲 提高访存速度(二)(从结构技术方面)_第3页
第十讲 提高访存速度(二)(从结构技术方面)_第4页
第十讲 提高访存速度(二)(从结构技术方面)_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、提高访存速度的措施 采用并行操作方式采用并行操作方式-双端口存储器双端口存储器(1)芯片技术芯片技术 研究开发高性能芯片技术,如:研究开发高性能芯片技术,如: DRAMFPMDEDO EDRAMCDRAMSDRAMRambusDRAM。 采用并行主存储器采用并行主存储器, ,提高提高读出并行性读出并行性 -多模块交叉存储器多模块交叉存储器 主存储器采用更高速的技术来缩短存储器的读出时间主存储器采用更高速的技术来缩短存储器的读出时间-相联存储器相联存储器(2) 结构技术结构技术 由于由于CPU和主存储器在速度上不匹配,限制了高速计算。和主存储器在速度上不匹配,限制了高速计算。 为了使为了使CPU

2、不至因为等待存储器读写操作的完成而无事可不至因为等待存储器读写操作的完成而无事可做,可以采取一些加速做,可以采取一些加速CPU和存储器之间有效传输的特殊措施。和存储器之间有效传输的特殊措施。引言引言 (3)(3)采用层次结构采用层次结构 Cache 主存主存 l高性能的存储器芯片:FPM-DRAM, CDRAM, SDRAMl高速主存储器(从结构技术方面实现)双端口存储器双端口存储器多模块交叉存储器多模块交叉存储器l高速缓冲存储器高速缓冲存储器 Cache(1).双端口存储器的逻辑结构双端口存储器的逻辑结构 双端口存储器由于同一个存储器具有两组相互独立的读写控制电路而得名。由于进行并行的独立操

3、作,因而是一种高速工作的存储器,在科研和工程中非常有用。(2).无冲突读写控制无冲突读写控制当两个端口的地址不相同时,在两个端口上进行读写操作,一定不会发生冲突。当任一端口被选中驱动时,就可对整个存储器进行存取,每一个端口都有自己的片选控制(CE)和输出驱动控制(OE)。读操作时,端口的OE(低电平有效)打开输出驱动器,由存储矩阵读出的数据就出现在I/O线上。 二、高速主存储器(从结构技术上实现)二、高速主存储器(从结构技术上实现)(3).有冲突读写控制有冲突读写控制 当两个端口同时存取存储器同一存储单元时,便发生读写冲突。为解决此问题,特设置了BUSY标志。在这种情况下,片上的判断逻辑可以决

4、定对哪个端口优先进行读写操作,而对另一个被延迟的端口置BUSY标志(BUSY变为低电平),即暂时关闭此端口。(4).有冲突读写控制判断方法l如果地址匹配且在CE之前有效,片上的控制逻辑在CEL和CER之间进行判断来选择端口(CE判断)。l如果CE在地址匹配之前变低,片上的控制逻辑在左、右地址间进行判断来选择端口(地址有效判断)。 无论采用哪种判断方式,延迟端口的BUSY标志都将置位而关闭此端口,而当允许存取的端口完成操作时,延迟端口BUSY标志才进行复位而打开此端口。(1). 单体多字系统单体多字系统 W位位W位位W位位W位位W位位 地址寄存器地址寄存器 主存控制器主存控制器. . . . .

5、 . 单字长寄存器单字长寄存器 数据寄存器数据寄存器 存储体存储体 增加存储器的带宽增加存储器的带宽 2.2.多模块交叉存储器多模块交叉存储器大存储器在一个存储周期中读出的不是一个存储单元的大存储器在一个存储周期中读出的不是一个存储单元的w位信息,而是位信息,而是n个字,这样在单位时间里存储器提供的信个字,这样在单位时间里存储器提供的信息量可提高息量可提高n倍,这样组织的主存系统称为并行主存系统。倍,这样组织的主存系统称为并行主存系统。(2). 多体并行系统多体并行系统(1) 高位交叉高位交叉 M0M1M2M3体内地址体内地址体号体号体号体号地址地址00 000000 000100 11110

6、1 000001 000101 111110 000010 000110 111111 000011 000111 1111顺序编址顺序编址 高位交叉结构特点总结高位交叉结构特点总结l特点:某个模块进行存取时,其他模块不工作。l优点:某一模块出现故障时,其他模块可以照常工作,通过增添模块来扩充存储器容量比较方便。l缺点:各模块串行工作,存储器的带宽受到了限制。 M0M1M2M3体号体号体内地址体内地址地址地址0000 000000 010000 100000 110001 000001 010001 100001 111111 001111 011111 101111 11(2) 低位交叉低位

7、交叉各个体轮流编址各个体轮流编址M0地址地址044n4M1154n3M2264n2M3374n1地址译码地址译码 体号体号体内地址体内地址 体号体号(2) 低位交叉低位交叉 各个体轮流编址各个体轮流编址l特点:连续地址分布在相邻的不同模块内,同一个模块内的地址都是不连续的。l优点是对连续字的成块传送可实现多模块流水式并行存取,大大提高存储器的带宽。使用场合为成批数据读取。 低位交叉结构的特点低位交叉结构的特点在不改变存取周期的前提下,增加存储器的带宽在不改变存取周期的前提下,增加存储器的带宽时间时间 单体单体访存周期访存周期 单体单体访存周期访存周期启动存储体启动存储体 0启动存储体启动存储体

8、 1启动存储体启动存储体 2启动存储体启动存储体 3 设四体低位交叉存储器,存取周期为设四体低位交叉存储器,存取周期为T,总线传输周期,总线传输周期为为,为实现流水线方式存取,应满足,为实现流水线方式存取,应满足 T 4。连续读取连续读取 4 个字所需的时间为个字所需的时间为 T(4 1)4. 存储器控制部件(简称存控)存储器控制部件(简称存控)易发生代码易发生代码丢失的请求丢失的请求源,优先级源,优先级最高最高严重影响严重影响 CPU工作的请求源,工作的请求源,给予给予 次高次高 优先级优先级控制线路控制线路排队器排队器 节拍节拍发生器发生器QQCM来自各个请求源来自各个请求源 主脉冲主脉冲

9、存控标记存控标记 触发器触发器(一)、概述(一)、概述1. 问题的提出问题的提出避免避免 CPU “空等空等” 现象现象CPU 和主存(和主存(DRAM)的速度差异的速度差异缓存缓存CPU主存主存容量小容量小速度高速度高容量大容量大速度低速度低程序访问的局部性原理程序访问的局部性原理2. Cache 的工作原理的工作原理(1) 主存和缓存的编址主存和缓存的编址主存和缓存按块存储主存和缓存按块存储 块的大小相同块的大小相同B 为块长为块长 主存块号主存块号主存储器主存储器012m1字块字块 0字块字块 1字块字块 M1主存块号主存块号块内地址块内地址m位位b位位n位位M块块B个字个字缓存块号缓存

10、块号块内地址块内地址c位位b位位C块块B个字个字 字块字块 0字块字块 1字块字块 C1012c1标记标记Cache缓存块号缓存块号(2) 命中与未命中命中与未命中缓存共有缓存共有 C 块块主存共有主存共有 M 块块M C主存块主存块 调入调入 缓存缓存主存块与缓存块主存块与缓存块 建立建立 了对应关系了对应关系用用 标记记录标记记录 与某缓存块建立了对应关系的与某缓存块建立了对应关系的 主存块号主存块号命中命中未命中未命中主存块与缓存块主存块与缓存块 未建立未建立 对应关系对应关系主存块主存块 未调入未调入 缓存缓存(3) Cache 的命中率的命中率CPU 欲访问的信息在欲访问的信息在 C

11、ache 中的中的 比率比率命中率命中率 与与 Cache 的的 容量容量 与与 块长块长 有关有关 一般每块可取一般每块可取 4 8 个字个字块长取一个存取周期内从主存调出的信息长度块长取一个存取周期内从主存调出的信息长度 CRAY_1 16体交叉体交叉 块长取块长取 16 个存储字个存储字 IBM 370/168 4体交叉体交叉 块长取块长取 4 个存储字个存储字(64位位4 = 256位)位)(4) Cache 主存系统的效率主存系统的效率效率效率 e 与与 命中率命中率 有关有关 设设 Cache 命中率命中率 为为 h,访问访问 Cache 的时间为的时间为 tc , 访问访问 主存

12、主存 的时间为的时间为 tm 则则 e = 100% tc h tc+ (1h) tm 访问访问 Cache 的时间的时间 平均访问时间平均访问时间 e = 100%3. Cache 的基本结构的基本结构Cache替换机构替换机构Cache存储体存储体主存主存Cache地址映射地址映射变换机构变换机构由由CPU完成完成4. Cache 的的 读写读写 操作操作 访问访问Cache取出信息送取出信息送CPU 访问主存访问主存取出信息送取出信息送CPU将新的主存块将新的主存块调入调入Cache中中执行替换算法执行替换算法 腾出空位腾出空位 结束结束命中?命中?Cache满?满?CPU发出访问地址发

13、出访问地址 开始开始是是否否是是否否读读Cache 和主存的一致性和主存的一致性 4. Cache 的的 读写读写 操作操作写写 写直达法写直达法(Write through) 写回法写回法(Write back) 写操作时数据既写入写操作时数据既写入Cache又写入主存又写入主存 写操作时只把数据写入写操作时只把数据写入 Cache 而不写入主存而不写入主存当当 Cache 数据被替换出去时才写回主存数据被替换出去时才写回主存 写操作时间就是访问主存的时间写操作时间就是访问主存的时间,读操作时不,读操作时不涉及对主存的写操作,更新策略比较容易实现涉及对主存的写操作,更新策略比较容易实现写操作

14、时间就是访问写操作时间就是访问 Cache 的时间的时间,读操作读操作 Cache 失效发生数据替换时,失效发生数据替换时,被替换的块需写回主存,增加了被替换的块需写回主存,增加了 Cache 的复杂性的复杂性5. Cache 的改进的改进(1) 增加增加 Cache 的级数的级数片载(片内)片载(片内)Cache片外片外 Cache(2) 统一缓存和分立缓存统一缓存和分立缓存指令指令 Cache数据数据 Cache与主存结构有关与主存结构有关与指令执行的控制方式有关与指令执行的控制方式有关是否流水是否流水Pentium 8K 指令指令 Cache 8K 数据数据 CachePowerPC62

15、0 32K 指令指令 Cache 32K 数据数据 Cache 字块字块2m1 字块字块2c+1 字块字块2c+11 字块字块2c +1 字块字块2c 字块字块2c1 字块字块1 字块字块0主存储体主存储体 字块字块 1 标记标记 字块字块 0 标记标记字块字块 2c1标记标记Cache存储体存储体t位位012c1 字块字块字块地址字块地址 主存字主存字 块标记块标记t 位位c 位位b 位位主存地址主存地址 比较器(比较器(t位)位)= 不命中不命中有效位有效位=1?*m位位 Cache内地址内地址否否是是命中命中(二)、(二)、Cache 主存的地址映射主存的地址映射1. 直接映射直接映射每

16、个缓存块每个缓存块 i 可以和可以和 若干若干 个个 主存块主存块 对应对应每个主存块每个主存块 j 只能和只能和 一一 个个 缓存块缓存块 对应对应i = j mod C 字块字块2c+1 字块字块2c 字块字块0 字块字块 02. 全相联映射全相联映射主存主存 中的中的 任一块任一块 可以映射到可以映射到 缓存缓存 中的中的 任一块任一块字块字块2m1字块字块2c1字块字块1 字块字块0字块字块2c1字块字块1字块字块0标记标记标记标记标记标记主存字块标记主存字块标记 字块内地址字块内地址主存地址主存地址m = t + c 位位b位位m = t+cCache 存储器存储器主存储器主存储器

17、字块字块0字块字块2m1字块字块2c-r+1 字块字块2c-r + 1 字块字块2c-r字块字块2c-r 字块字块1 字块字块0 字块字块 3标记标记 字块字块 1标记标记字块字块 2c1标记标记 字块字块 2标记标记 字块字块 0标记标记字块字块 2c2标记标记 字块内地址字块内地址组地址组地址主存字块标记主存字块标记s = t + r 位位q = cr 位位b 位位组组012c-r1主存地址主存地址Cache主存储器主存储器m 位位共共 Q 组组,每组内两块(,每组内两块(r = 1)1某一主存块某一主存块 j 按模按模 Q 映射到映射到 缓存缓存 的第的第 i 组组中的中的 任一块任一块i = j mod Q直接映射直接映射全相联映射全相联映射3.

温馨提示

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

评论

0/150

提交评论