OpenEdv-开源电子网

 找回密码
 立即注册

扫一扫,访问微社区

正点原子全套STM32开发资料,上千讲STM32视频教程,RT1052教程免费下载啦...
查看: 342|回复: 3

关于stm32f407的sram在AHB总线上的分布问题

[复制链接]

  离线 

16

主题

66

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
269
金钱
269
注册时间
2015-9-2
在线时间
69 小时
发表于 2018-6-13 12:45:51 | 显示全部楼层 |阅读模式
1金钱
最近在搞DMA传输的问题,我看了一篇专门说DMA的文章,上面说如果CPU和DMA并行访问SRAM1时,总线需要仲裁。
也就是说同一时刻是能一个人去访问SRAM1,那就是说他并不是真正的并行处理。但是我看到下面这张AHB总线结构图
上面显示芯片里有SRAM1和SRAM2两块内存,他们是挂在两个总线上的,那么

1。在DMA访问SRAM1时,CPU是不是可以同时访问SRAM2,从而做到真正的并行?

2。在STM32F407内部是不是真的有两块挂在不同总线上的SRAM?大小分别为112k和16k?
因为我在datasheet中看见memory map上SRAM也是同两个框分别标出来的,112k和16k,如下图所示
可我在Keil的traget中看见IRAM只有一块 IRAM1 范围是0x20000000-0x20020000 这是为什么?到底是一块还是两块?

QQ截图20180613123535.png
回复

使用道具 举报

  离线 

16

主题

66

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
269
金钱
269
注册时间
2015-9-2
在线时间
69 小时
 楼主| 发表于 2018-6-13 12:47:19 | 显示全部楼层
补datasheet上的图
QQ截图20180613124400.png
回复

使用道具 举报

  离线 

3

主题

221

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1117
金钱
1117
注册时间
2016-5-26
在线时间
1571 小时
发表于 2018-6-14 20:22:02 | 显示全部楼层
1。在DMA访问SRAM1时,CPU是不是可以同时访问SRAM2,从而做到真正的并行?

我看其他网站上的相关讨论,应该是这样的,不同Master对SRAM1和SRAM2的访问可以同时,有人利用这一点提高效率。

2。在STM32F407内部是不是真的有两块挂在不同总线上的SRAM?大小分别为112k和16k?

接着上面的问题,是有两个不同的SRAM模块,它们的访问机制也略有区别。

可我在Keil的traget中看见IRAM只有一块 IRAM1 范围是0x20000000-0x20020000 这是为什么?到底是一块还是两块?

大概是因为对CPU/链接器来说这两块SRAM没什么大区别。需要用到它们之间的区别的时候再专门处理吧。
淘汰人的从来是工具而不是年龄
嵌入式的冷知识屋 blog.csdn.net/k_o_carnivist
回复

使用道具 举报

  离线 

16

主题

66

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
269
金钱
269
注册时间
2015-9-2
在线时间
69 小时
 楼主| 发表于 2018-6-18 17:56:40 | 显示全部楼层
K.O.Carnivist 发表于 2018-6-14 20:22
1。在DMA访问SRAM1时,CPU是不是可以同时访问SRAM2,从而做到真正的并行?

我看其他网站上的相关讨论, ...

感谢回答,后面我会试一下。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则




关闭

必看,必学:"原子哥”力荐上一条 /1 下一条

正点原子公众号

QQ|联系我们|手机版|官方淘宝店|微信公众平台|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2018-9-19 23:09

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表
/* */