首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

近期在学ARM 流水线这块不太明白 哪位能举例说明一下,该怎么处理

2012-02-14 
近期在学ARM 流水线这块不太明白 哪位能举例说明一下小弟初学大侠帮忙高分请教 [解决办法]以ARM9TDMI为例

近期在学ARM 流水线这块不太明白 哪位能举例说明一下
小弟初学   大侠帮忙   高分请教


[解决办法]
以ARM9TDMI为例
他有5急流水线 取址 译码 ALU 装载1 装载2
下一条指令需要前一条指令的结果,而这时结果还没出来,处理器就会等待,这就称流水线互锁
明白拉互锁 流水线也就差不多拉
例1:没有互锁
add r0,r0.r1
add r0,r0,r2
这两条指令占用拉2个周期。ALU用1个周期计算r0+r1,因此这个结果在第2个周期ALU计算r0+r2已经好拉

例2:由于装载产生一个周期互锁
ldr r1,[r2,#4]
add r0,r0,r1
两条指令用拉三个周期,ALU用1个周期计算r2+4 ,第二个周期add要用的r1还没准备好,等待一个周期,再第三个周期 ldr已经把r2+4的结果装载到r1,add可以执行拉
打字真累啊 给分吧
[解决办法]
实际上流水线的问题根本就不用考虑的,毕竟我们并没有去设计cpu

热点排行