arm9处理器的cache和write buffer

      接下来的研究就是cache了,只要我们加深了对这些概念的理解,还有前面说的MMU。我们在将来研究内存管理的时候就有谱了。在这里我们就先打打基础,所以我在这里记录一下我对cache的认识。

      cache(高速缓存) write buffer(写缓存)

      对于cache的工作原理在很多网站上都可以搜索得到,在这里我就不讲述这方面的内容了。我想先说说地址映像方式。地址映像方式是指主存的内容是以什么函数或是算法映射到cache上的。地址映像方式大概分为3种:直接映射,全相联映射,组相联映射。不管是哪个算法都好,都会涉及3个方面的问题:第一就是命中率,第二是地址对比的复杂度,第三是不命中的情况下的替换问题。我们接下来大概说说他们吧。

      直接映射:每个内存地址指定映射到cache中的一个指定地址的方式。具体来说,假设cache有2N块,规定内存块的大小为2MB,i是内存块的标号,j是cache块的标号。有了这些前提条件后,我们来实际举个例子来说明一下吧。假设我内存是256MB的,这样内存块的标号就是1号~128号。cache分为4块,加上地址映射方式是j=i mod 2N。好了,你就会发现内存块的1号,2号,3号,4号分别对应cache块的0号,1号,2号,3号。如果你继续求余,你会发现这是一个循环来的。好了,这样你就大概知道是哪些内存块被指定到cache的0号区,哪些内存块被指定到1号区......工作原理明白后,我们会发现地址对比的复杂度小,我们可以很有规律找到我们所需内存的块对应于cache中的什么位置。其实,直接映射有个弊端就是如果同一cache块的其它内存块,也想进入cache中&#x

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值