I-Cache和D-cache
来源:互联网 发布:网络穿越剧 编辑:程序博客网 时间:2024/04/30 05:07
两者的区别:
- 一方面是cache的行为。Icache大多都是顺序取指,碰到分支指令也会跳转,而Dcache访问的模式变化比较大.也就是前者所说的pattern的问题.指令只有读和refill没有写,而数据有读也有写.最重要的是冯氏的结构是指令和数据分离.I和D在一起只有相互干扰.
- 另一个方面就是,物理设计上考虑:
一个union的cache,同时需要数据和指令的访问,端口上是很难实现的。
所以一般在流水线的主干上,都是采用分离的icache和dcache.
非主干的L2 cache,从容量的角度考虑采用union的方式.
出于对简化设计的考虑,也为了提高系统的性能,采用了指令Cache(以下简称为ICache)和数据Cache (以下简称为DCache)分开的方式。在ICache中存储有微处理器需要的指令,在微处理器的取指阶段,通过程序计数器PC提供给ICache的地址,微处理器可以获取需要的指令。而DCache则是作为一个数据的存储,并提供对于Load/Store指令所要操作地址的数据,它地址则来自于ALU运算的结果。
ICache和微处理器的接口以及ICache和L2 ICache的接口都是单向的。DCache和微处理器的接口以及DCache和L2 Cache的接口是双向的。这样处理的原因在于ICache存储的是指令,不需要更改所存储的数据的值。而DCache中存储的是数据,其值会根据指令操作的不同而改变。比如:在运行Store指令的时候会对DCache中相应地址进行写入数据的操作。
0 0
- I-Cache和D-cache
- cache为什么分为i-cache和d-cache以及Cache的层次设计
- cache为什么分为i-cache和d-cache以及Cache的层次设计
- u-boot分析(五)----I/D cache失效|关闭MMU和cache|关闭看门狗
- [中级教程]如何关闭MMU以及I-Cache和D-Cache?
- HttpContext.Cache和HttpRuntime.Cache中的Cache
- cache
- cache
- Cache
- cache
- Cache
- Cache
- Cache
- Cache
- cache
- cache
- cache
- Cache
- 最常用的jenkins插件总结(不包括默认安装的)
- 使用正则表达式找出不包含特定字符串的条目
- VMD642开发板CCS3.1中如何在cbd文件里修改cmd的内存设置
- Python学习
- 单链表面试题汇总(1)
- I-Cache和D-cache
- 关注android Activity的theme(或者该翻译为主题),是由两个网上的android面试题引发的. 1.activity的生命周期 2.怎样把一个Activity设置
- PAT 1048. 数字加密(20)
- 算法笔记005:堆排序【变治法】
- Window.open()方法参数详解
- NYOJ 12 喷水装置(二)(贪心)
- 【深入分析Java多线程】(5)synchronized和volatile分析
- Visual Studio 2015
- SWT-排序