前言
文档中有关于芯片的介绍,其中一部分是最高运行频率2GHz,32KB L1 I-cache和32KB L1 D-cache ,L2 cache 512K。
L1 Cache 表示一级缓存和L2 Cache 表示2级缓存是知道的,但是I-Cache和D-Cache就傻傻分不清了。
因此参考网上文章,摘抄部分内容于此。
正文
什么是CPU缓存
CPU缓存(Cache Memory)是位于CPU与内存之间的临时存储器,它的容量比内存小的,但是交换速度却比内存要快得多。
CPU缓存的作用
解决CPU运算速度与内存读写速度不匹配的问题。
I-Cache和D-Cache的区别
- ICache中存储有微处理器需要的指令,在微处理器的取指阶段,通过程序计数器PC提供给ICache的地址,微处理器可以获取需要的指令。
- DCache则是作为一个数据的存储,并提供对于Load/Store指令所要操作地址的数据,它地址则来自于ALU运算的结果。
除了命令意义不同,具体从下面两个方面来回答
cache的行为
- I-cache大多都是顺序取指,碰到分支指令也会跳转;而D-cache访问的模式变化比较大。
- 指令只有读和refill,没有写;而数据有读也有写。
- 最重要的是冯氏的结构是指令和数据分离。I和D在一起只有相互干扰。
物理设计
一个union的主cache,同时需要数据和指令的访问,端口上是很难实现的。所以一般在流水线的主干上,都是采用分离的icache和dcache。
非主干的L2 cache,从容量的角度考虑采用union的方式。
参考文章
历史上的今天
暂无评论...
随机推荐
北岛:回答
卑鄙是卑鄙者的通行证,高尚是高尚者的墓志铭,看吧,在那镀金的天空中,飘满了死者弯曲的倒影。 冰川纪过去了,为什么到处都是冰凌?好望角发现了,为什么死海里千帆相竞? 我来到这个世界上,只带着纸、绳索和身影,为了在审判之前,宣读那些被判决的声音。 ...
Android批量删除文件
前言项目需要,封装了批量删除管理类。虽然有线程池,但也得做启动的线程个数进行一定的限制。正文只做文件的删除,不支持目录删除,如果需要目录删除,做递归就行。或者使用命令删除隐藏内容!付费阅读后才能查看!¥4多个隐藏块只需支付一次付费阅读参考文章跟《Android批量拷贝文件》一样。
startActivity源码分析1
前言简单记录一下startActivity()源码的启动过程,主要是过一下流程,细节太多顾不上。下面以Launcher界面启动(startActivity())未启动过的应用为例。这部分主要涉及,启动新的Activity前,系统会让当前Activity[叫Launcher吧]进入onPaus...
乔叶:曾经这样爱过你
曾经这样爱过一个人:爱的人知道,被爱的人不知道,这是暗恋吗?爱着的时候,就整天鬼迷心窍地琢磨着你。你偶然有句话,就想着你为什么要这样说?你在说给谁听?有什么用?你偶然的一个眼神掠过,就会颤抖,欢喜,忧伤,沮丧。怕你不看自己,也怕你看到自己。更怕你似看不看的余光,轻轻地扫过来,又飘飘地带过去,...
Android消息机制之二简介(2)
我们通过上一篇《Android消息机制Handler,Looper,Message,MessageQueue关系之一》知道,Android的消息机制必须将Handler,Looper,Message,MessageQueue一起“组织”起来,而且是缺一不可。比如在子线程中使用Handler必须先L...
[摘]PCM文件转WAV文件
一、WAV和PCM的区别和联系在Android平台上要进行音频编辑操作(比如裁剪,插入,合成等),通常都是需要将音频文件解码为WAV格式的音频文件或者PCM文件。那么WAV和PCM之间有什么关系,这里有必要了解一下。PCM(Pulse Code Modulation—-脉码调制录音)。所谓PC...