硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1951|回复: 9
收起左侧

STM32读FLASH的速度和读RAM的速度有区别吗?

[复制链接]

98

主题

340

回帖

634

积分

金牌会员

积分
634
发表于 2018-6-23 18:41:23 | 显示全部楼层 |阅读模式
系统全部参数存储在内部FLASH中,不想再在内存中再拷贝一份了,直接读内部FLASH即可,但是读取的速度会不会有较大差异?
只知道它俩用的不同的总线,不知道速度是否有差距,速度差距有多大?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107626
QQ
发表于 2018-6-23 18:45:09 | 显示全部楼层
对于F4和F1系列,可以认为没区别。
RAM访问是0等待周期。

而Flash不是,不同主频的等待周期不同。对于这种情况,ST搞了一个Flash的ART加速。可以近乎实现0等待周期。
回复

使用道具 举报

98

主题

340

回帖

634

积分

金牌会员

积分
634
 楼主| 发表于 2018-6-23 18:45:48 | 显示全部楼层
访问FLASH是不是有CPU等待时间?访问RAM没有?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107626
QQ
发表于 2018-6-23 18:46:35 | 显示全部楼层
云琴箫龙 发表于 2018-6-23 18:45
访问FLASH是不是有CPU等待时间?访问RAM没有?

看楼上回复。
回复

使用道具 举报

98

主题

340

回帖

634

积分

金牌会员

积分
634
 楼主| 发表于 2018-6-23 18:59:27 | 显示全部楼层
本帖最后由 云琴箫龙 于 2018-6-23 19:01 编辑

做了个简单的测试,访问FLASH中的一个浮点数1万次和访问内存中的一个浮点数1万次,分别记录两者的时间。代码如下        t1 = (uint32_t)CPU_TS_TmrRd();
        for(i=0;i<10000;i++)
        {
                tval = SysParValf(rat_ptp);
        }
        t1 = (uint32_t)CPU_TS_TmrRd()-t1;
        t2 = (uint32_t)CPU_TS_TmrRd();
        for(i=0;i<10000;i++)
        {
                tval = ttcal;
        }       
        t2 = (uint32_t)CPU_TS_TmrRd()-t2;
第一个为113244个时钟周期,平均一次约11个时钟周期
第二个为123226个时钟周期,平均一次约12个时钟周期
这么看来的话,访问FALSH和RAM时间相差无几啊,不知能不能这么理解
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107626
QQ
发表于 2018-6-23 19:01:41 | 显示全部楼层
云琴箫龙 发表于 2018-6-23 18:59
做了个简单的测试,访问FLASH中的一个浮点数1万次和访问内存中的一个浮点数1万次,分别记录两者的时间。
...

可以。
回复

使用道具 举报

5

主题

18

回帖

33

积分

新手上路

积分
33
发表于 2018-6-23 19:01:42 | 显示全部楼层
云琴箫龙 发表于 2018-6-23 18:59
做了个简单的测试,访问FLASH中的一个浮点数1万次和访问内存中的一个浮点数1万次,分别记录两者的时间。
...

运行周期是如何测量的?
回复

使用道具 举报

98

主题

340

回帖

634

积分

金牌会员

积分
634
 楼主| 发表于 2018-6-23 19:02:35 | 显示全部楼层
版主回复迅速,佩服,刚才还在编辑测试呢
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107626
QQ
发表于 2018-6-23 19:02:59 | 显示全部楼层
armsun 发表于 2018-6-23 19:01
运行周期是如何测量的?

学习这个就行,终极调试工具Event Recorder。

http://www.armbbs.cn/forum.php?m ... &extra=page%3D1
回复

使用道具 举报

5

主题

18

回帖

33

积分

新手上路

积分
33
发表于 2018-6-27 12:28:33 | 显示全部楼层
eric2013 发表于 2018-6-23 19:02
学习这个就行,终极调试工具Event Recorder。

http://www.armbbs.cn/forum.php?mod=viewthread&tid ...

威武
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-6-8 08:33 , Processed in 0.207240 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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