计算机组成原理_课件ppt_第5版_chp3.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机组成原理_课件ppt_第5版_chp3

3.6 Cache存储器 3.6 Cache存储器 2.cache基本原理 CPU与Cache之间的数据传送是以字为单位 主存与Cache之间的数据传送是以块为单位 一个块由若干字组成,是定长的。 CPU读主存的一个字时,便把此字的内存地址同时送给Cache和主存,Cache控制逻辑依据地址判断此字是否在Cache中: 若在,此字立即传送给CPU 否不在,则用主存读周期把此字从主存读出送到CPU,与此同时,把含有这个字的整个数据块从主存读出送到cache中。 3.6 Cache存储器 3 . Cache的命中率 从CPU来看,增加一个cache的目的,就是在性能上使主存的平均读出时间尽可能接近cache的读出时间。 为了达到这个目的,在所有的存储器访问中由cache满足CPU需要的部分应占很高的比例,即cache的命中率应接近于1。 由于程序访问的局部性,实现这个目标是可能的。 3.6 Cache存储器 在一个程序执行期间,设Nc表示cache完成存取的总次数,Nm表示主存完成存取的总次数,h定义为命中率,则有 h = Nc /(Nc+Nm) 若tc表示命中时的cache访问时间,tm表示未命中时的主存访问时间,1-h表示未命中率,则cache/主存系统的平均访问时间ta为: ta=h * tc +(1-h) * tm 3.6 Cache存储器 推导过程:ta=h * tc +(1-h) * tm ta = (tc*Nc + tm*Nm) / (Nc+Nm) = (Nc / (Nc+Nm) ) * tc + (Nm / (Nc+Nm) ) * tm = h * tc +(1-h) * tm 3.6 Cache存储器 我们追求的目标是,以较小的硬件代价使cache/主存系统的平均访问时间ta越接近tc越好。 设r=tm/tc表示主存慢于cache的倍率,e表示访问效率,则有 e= tc / ta = tc /(h*tc+(1-h)*tm) =1/(h+(1-h)* r)=1/(r+(1-r)*h) 由表达式看出,为提高访问效率,命中率h越接近1越好,r值即tm/tc,以5—10为宜,不宜太大。 命中率h与程序的行为、cache的容量、组织方式、块的大小有关。 重要公式 命中率 Cache/主存系统的平均访问时间 访问效率 Cache与内存的速度比 c c c c 例6. CPU执行一段程序时,cache完成存取的次数为1900次,主存完成存取的次数为100次,已知cache存取周期为50ns,主存存取周期为250ns,求cache/主存系统的效率和平均访问时间。 例6解: 解: h=Nc/(Nc+Nm)=1900/(1900+100)=0.95 r=tm/tc=250ns/50ns=5 e=1/(r+(1-r)h)=1/(5+(1-5)×0.95=83.3% ta=tc/e=50ns/0.833=60ns 3.6.2主存与Cache的地址映射 问题引入: 看样子映射过程很复杂,为什么要搞个映射的事情出来? 思考:CPU要取一个字,肯定要给出这个字所在内存的地址,然后将该地址发往Cache,判断所要取的字是否在Cache中,在就取走,不在就去内存找。 有没有觉得哪里不对? 用内存地址去访问Cache存储器! 必须应用某种方法,把主存的地址定位到Cache中的确切地址——地址映射 当cpu访问主存时,给出的内存地址可转变为cache地址 无论选择那种映射方式,都要把主存和cache划分为同样大小的“块”。 硬件实现,透明性 选择哪种映射方式,要考虑: 硬件是否容易实现 地址变换的速度是否快 Cache空间的利用率是否高 主存装入一块时,发生冲突的概率 以下我们介绍三种映射方法 3.6.2主存与Cache的地址映射 3.5 并行存储器 一、双端口存储器 1、双端口存储器的逻辑结构 双端口存储器:同一个存储器具有两组相互独立的读写控制电路 是一种高速工作的存储器,独立并行操作 双端口存储器IDT7133的逻辑框图如图示。 3.5 并行存储器 R 3.5 并行存储器 2、无冲突读写控制 当两个端口的地址不相同时,在两个端口上进行读写操作,一定不会发生冲突。 片选控制(CE,低电平有效) 输出驱动控制(OE,低电平有效)。 3.5 并行存储器 勘误: P85 图3.24 右下角BUSY脚标L改为R 分析表3.4 3.5 并行存储器 3、有冲突读写控制 两个端口地址相同时发生读写冲突 置了BUSY标志解决冲突: 判断逻辑可以决定优先权 对获得使用权的端口放开BUSY标志(高) 对被

文档评论(0)

wnqwwy20 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档