打印

关于Cortex-M3 D-code总线的一个疑问

[复制链接]
7384|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
weicz|  楼主 | 2013-5-2 16:09 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
看文档上说I-code总线是地址范围0x00000000-0x1FFFFFFF的取指总线
D-code总线是地址范围0x00000000-0x1FFFFFFF的数据访问操作的总线


而前面看到cortex-m3的地址映射图上标明0x00000000-0x1FFFFFFF是code区,0x20000000-0x3FFFFFFF是SRAM区

从后面的典型应用图上看,是不是D-code应该是0x20000000-0x3FFFFFFF范围的数据访问操作总线啊?


如果是像手册上说的那样,D-code总线是地址范围0x00000000-0x1FFFFFFF的数据访问操作的总线,那这个图怎么理解,内部sram的数据也要走系统总线吗?

相关帖子

沙发
阿南| | 2013-5-3 15:06 | 只看该作者
我的理解是:CODE包括指令I和数据D

使用特权

评论回复
板凳
weicz|  楼主 | 2013-5-3 16:06 | 只看该作者
阿南 发表于 2013-5-3 15:06
我的理解是:CODE包括指令I和数据D

那这样的话,下面那个典型连接图里面那个Sram是怎么挂载总线上的啊?

使用特权

评论回复
地板
阿南| | 2013-5-3 17:40 | 只看该作者
从图上看,SRAM通过总线复用器直接由D和I-CODE总线访问。和系统总线无关

使用特权

评论回复
5
jixuxianchou| | 2013-5-3 20:45 | 只看该作者
首先D-bus可以访问主SRAM(112K)和FLASH的D-code区
I-bus可以访问主SRAM区的和FLASH的I-code区
然后主SRAM可以被D-bus I-bus 和S-bus访问。

使用特权

评论回复
6
weicz|  楼主 | 2013-5-3 23:12 | 只看该作者
阿南 发表于 2013-5-3 17:40
从图上看,SRAM通过总线复用器直接由D和I-CODE总线访问。和系统总线无关

哦,谢谢啦

使用特权

评论回复
7
weicz|  楼主 | 2013-5-3 23:14 | 只看该作者
jixuxianchou 发表于 2013-5-3 20:45
首先D-bus可以访问主SRAM(112K)和FLASH的D-code区
I-bus可以访问主SRAM区的和FLASH的I-code区
然后主SRAM可 ...

哦,原来这样,谢谢

使用特权

评论回复
8
罗菜鸟| | 2016-2-18 11:49 | 只看该作者
I-code和D-Code都是访问区域0x00000000-0x1FFFFFFF,前者是PC寄存器访问,后者是其它寄存器访问。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

69

帖子

0

粉丝