嵌入式学习笔记(13)汇编写启动代码之开关iCache

什么是cache,有什么用

cache是一种内存,叫高速缓存。

从容量来说:CPU < 寄存器 < cache < DDR

从速度来说:CPU > 寄存器 > cache > DDR

cache的存在,是因为寄存器和DDR之间速度差异太大了,DDR的速度远不能满足寄存器的需要(不能满足CPU的需要,所以没有cache会拉低整个系统的整体速度)

整个系统CPU的供应链由:寄存器+cache+DDR+固态硬盘/硬盘/Flash四阶组成,这是综合考虑了性能、成本后得到的妥协的结果。

210内部有32KB icache和 32KB dcache。icache是用来缓存指令的;dcache是用来缓存数据的。

cache的意义:指令平时放在硬盘/Flash中,运行时读到DDR中,再从DDR中读给寄存器,再由寄存器送给CPU。但是DDR的速度和寄存器(代表的CPU)相差太大,如果CPU运行完一句再去DDR读取下一句,那CPU的速度就完全被DDR拖累了。解决方案就是icache。

icache工作时,会把我们CPU正在运行的指令的旁边几句指令实现给读取到icache中(CPU设计有一个基本原理:代码执行时,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值