【计组】高速缓冲存储器Cache

一、出现原因
1、在多体并行系统中,I/O设备向主存请求的级别高于CPU访存,出现了CPU等待I/O设备访存的现象,致使CPU需要“等待”I/O设备访问主存,从而降低了CPU的工作效率;
2、主存速度提高跟不上CPU的发展,需要解决主存与CPU速度的不匹配问题。
二、Cache工作原理
1、存储基本结构
字节(B) → 字 → 字块
补充:一个字节通常是八位; 一个字中通常包含16个字节;一个字块中通常有4-8个字。
512KB与512K*16位:

主存和Cache中一个字块由块号和块内地址组成,用来记录将主存或cache分成了多少块,分的块数可以求出块号的位数。
2、相关定义
命中率(与Cache容量有关)=访问Cache的总命中次数/(访问Cache的总命中次数+访问主存的总命中次数)
平均访问时间=命中率 * Cache访问时间 + 未命中率 * 主存访问时间
访问效率=访问Cache的时间 / 平均访问时间
3、基本过程
首先,CPU通过地址总线向Cache和主存同时传输地址(高位为主存块号,低位为块内地址),进入Cache较快,Cache通过主存-Cache地址映射变换机构找到Cache块号:
若找到,说明该数据在Cache中存在,Cache存储体将数据通过数据总线传回给CPU,主存查找停止,结束;
若未找到,说明该数据在Cache中不存在,没有命中,在主存继续查找,找到后,一通过数据总线传回CPU,同时用Cache替换机构判断Cache存储是否还有剩余,若有剩余,将该数据写入Cache中,否则,删除Cache中原有部分数据(近期访问最少 or 先进先出原则),再将该数据写入Cache

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值