ARM的cache和写缓冲器(write buffer)

  • Post author:
  • Post category:其他





一、cache简介




通常CPU与外部主存之间的访问速度差距很大,因为外部主存的低速率读写而降低了CPU的执行效率,所以引入了高速缓冲存储器cache,cache存储器是一种容量小,速度快的存储器。其实cache说到底就是一块速度非常快的内存。
而cache经常与写缓冲器(write buffer)一起使用,使用writer buffer的目的是,将处理器和cache从较慢的对主存的写操作中脱离出来。

下图是一个计算机系统结构中的存储器分层结构,更好的显示了cache和写缓冲器在存储层次结构中所处的位置。
从图中可以看出,凡是从cache中向主存中写入数据时都需要经过写缓冲器。

下图显示了有cache的系统和没有cache的系统之间的差别:

cache和存储管理单元:


cache可以在放在处理器内核与MMU之间,也可以放在MMU与物理存储器之间。
在处理器和MMU之间的cache称为

逻辑cache

,逻辑cache在虚拟地址空间存储数据,处理器可以直接通过cache访问数据,而无需通过MMU。逻辑cache又称为虚拟cache。
在MMU与物理存储器之间的cache称为

物理cache

,当处理器访问存储器时,MMU必须先把虚拟地址转换成物理地址,cache存储器才可以向处理器内核提供数据。

下图是两中cache:




二、cache结构




1、cache结构







图12.4

是一个4KB大小的

cache存储器

,这个cache存储器分为256行,每行由三部分组成:

目录存储段,状态信息段



版权声明:本文为y695385603原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。