问一个关于cpu体系结构方面的问题(ARM)

发布于 2022-09-29 16:22:43 字数 830 浏览 16 评论 0

问题
图一是arm内部框图
1。图中指令CACHE和数据CACHE分开了,那么其分别存储的什么,分别是指令和数据?难道在CPU译码前就把指令给分解了分别进入指令CACHE和数据CACHE,不大可能。很多CPU都是这样,不太明白cache分开的实现机制?
2。另问指令MMU是介于外部MEM和cache之间还是介于CACHE和cpu核之间。我认为可能是后者,
另贴一图,从图中看出,cache分为指令CACHE和数据CACHE几乎是标准实现,

另外能否结合一条指令执行把ARM内核框图中的各单元动作解释一下,谢谢。
上图中准确的说只是图示了armCPU 内核和外围单元的框图,而armCPU(即图中的arm9tdmi core) 内部单元类似alu,freeze,except,timer,pc等这些单元并没有画出来,

对应体系结构的标准单元来说---理下思路
上图中图示了
asb:biu即总线接口单元,
cache:一级分成指令CACHE和数据CACHE
MMU:分成指令MMU和数据MMU
WB:有时称sb,即回写缓冲,
DU:调试单元即图中TRACE INTERFACE PORT,这里不明白怎么又还有一个JTAG

图中的r13,cp15不知是什么。还有WRITE BACK PA TAG RAM好像是一个转换表,不太明白。

cpu执行时,asb从外部读取指令进入CACHE,ASB由mmu转换地址给出。。。。。。不太明白了,这里mmu也分成了指令指令MMU和数据MMU,那么地址转换如何实现呢???

[ 本帖最后由 fineamy 于 2007-6-28 08:38 编辑 ]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

ㄟ。诗瑗 2022-10-06 16:22:43

先弄明白程序中的指令段和数据段

债姬 2022-10-06 16:22:43

这种cache将指令和数据分开应该是在模仿哈佛架构,
目的应该是提高速度。
个人观点

半世晨晓 2022-10-06 16:22:43

arm的内存是nueman结构,cache是icache和dcache分离的哈佛结构

mmu在arm体系中是作为协处理器cp15实现的

秉烛思 2022-10-06 16:22:43

哈佛架构下,为两者提供不同的cache机制成为可能。
这一点其实很容易理解。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文