第7课 ARM的cache和write buffer

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

••第第77课课ARMARM的的cachecache和和writebufferwritebuffer••ARMARM技术交流网技术交流网••arm79@sina.comarm79@sina.com主要内容1、基本概念2、cache工作原理3、cache地址映射4、一致性问题引入cache和writebuffer的原因„cpu与主存储器的工作频率存在差距„ARM处理器主频高,意味着对内存读写速度快。SDRAM接收和响应速度跟不上CPU的步伐。„简单理解:„假设cpu在1ms内能发送100个地址信号,SDRAM芯片1ms内只能识别2个信号。其他信号被丢弃。基本概念(1)„1、Cache:高速缓冲存储器„2、Writebuffer:写缓冲区„3、时间局部性„4、空间局部性„5、地址映像„6、地址变换基本概念(2)„1、cacheline„2、cache数据交换(与主存)„3、n路组相联(n-waySetAssociativeCache)Cache的工作原理cache变换规则„1、全相联映像方法„2、直接映像方法„3、组相联映像方法ARM920T的cache设计(1)„16KB数据cache„16KB指令cache„存储单位:cacheline(32字节大小)„数据cache与指令cache差别不大。ARM920T的cache设计(2)--全相联CacheARM920T的cache设计(3)—直接映射ARM920T的cache设计(3)—64路组相联Cache的分类(不同处理器不同)„1、统一/独立的Icache和Dcache„2、写通型和写回型„3、读操作/写操作分配cacha„注意:„写通型:WriteThrough„写回型:WriteBack写通型和写回型„1、写回型„CacheLine中的数据被CPU修改时并不立刻写回内存,而是适当时候再写回内存。„2、写通型„每当CPU修改CacheLine中的数据时就立刻写回内存。实际工作中的cache上节课遗留问题:描述符中的C与B位„C=1:允许cache„C=0:不允许cache„B=1:允许writebuffer„B=0:不允许writebufferCache的一致性问题„概念:„cache、writebuffer及内存中的数据可能会不同。造成数据不一致。„1、地址映射关系变化„2、指令操作序列变化„3、DMA传输造成不一致数据不一致的避免„1、清除cache„2、使块无效„3、设置非缓冲MMU和Cache使用的几点考虑„MMU和Cache的使用是操作系统设计者根据系统软硬件配置而考虑的事情。在没有操作系统的情况下,需要我们自己来掌控它们。„1、避免MMU和Cache的副作用„2、只对频繁访问的地址空间进行Cache优化Cache的总结„1、ARM920T的Cache的大小是16K,是指Cache能缓存16K的内存数据,其实Cache还需要保存相应的Tag和其它标志位,它的存储容量应该是大于16K的。„2、Cache的构造和内存不同,它不需要以字节为单位来存储。„谢谢大家!!

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功