硬汉嵌入式论坛

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

32位SDRAM写速度狂飙300MB/S,读速度90MB/S,需要专业的SDRAM测试方案来进一步测试

[复制链接]

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106588
QQ
发表于 2016-1-2 12:56:22 | 显示全部楼层 |阅读模式
测试平台STM32-V6开发板。测试主频为168MHz。
感觉写速度有些虚高,但是写进去的,读出来又没有错,每次测试都是重新开关机测试。
时钟周期测试不太准确,因为没有做跨行测试,不能反映实际情况。
====================================================
MDK 3级优化效果:
1.png
===================================================
MDK 0级优化效果:
2.png

===================================================
读写测试都是展开进行测试,比如写测试,为了防止MDK优化,每次都写入不同数据

        iTime1 = bsp_GetRunTime();    /* 记下开始时间 */
    pBuf = (uint32_t *)EXT_SDRAM_ADDR;
    for (i = 1024*1024/8; i >0 ; i--)
    {
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;   

        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;   

        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;   

        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;
        *pBuf++ = j++;   
    }
    iTime2 = bsp_GetRunTime();    /* 记下结束时间 */
========================================================
大家会觉得怎么读速度比写速度慢呢,实际测试的确是这样的,估计CL参数对读速度影响较大。
现在需要一些专业的SDRAM测试方案,好的测试方案才能正确反映测试结果。



回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106588
QQ
 楼主| 发表于 2016-1-2 12:59:14 | 显示全部楼层
300MB/S的写速度是什么概念,因为SDRAM的时钟使84MHz,这个就相当于一个时钟周期就写入一个32位数据,太快了。有点不可思议。
200MB/S还准确些。
回复

使用道具 举报

4

主题

64

回帖

76

积分

初级会员

积分
76
发表于 2016-1-4 14:15:20 | 显示全部楼层
关机至少要等上一分钟,不然,写进去的数据还是在那儿。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106588
QQ
 楼主| 发表于 2016-1-5 10:59:39 | 显示全部楼层

回 heitu103 的帖子

heitu103:关机至少要等上一分钟,不然,写进去的数据还是在那儿。 (2016-01-04 14:15) 
谢谢回复,应该不需要这么长时间,SDRAM每行都要在64ms内刷新一次,对电容充电。从这个来看,很快就没电了。
回复

使用道具 举报

3

主题

14

回帖

23

积分

新手上路

积分
23
发表于 2016-1-19 01:09:57 | 显示全部楼层
这时候耗电量是多少?能测一个吗?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106588
QQ
 楼主| 发表于 2016-1-20 09:00:33 | 显示全部楼层

回 碧云天书 的帖子

碧云天书:这时候耗电量是多少?能测一个吗? (2016-01-19 01:09) 
好的,回头我专门的测试下。
回复

使用道具 举报

4

主题

64

回帖

76

积分

初级会员

积分
76
发表于 2016-11-15 11:51:17 | 显示全部楼层

回 eric2013 的帖子

eric2013:谢谢回复,应该不需要这么长时间,SDRAM每行都要在64ms内刷新一次,对电容充电。从这个来看,很快就没电了。

(2016-01-05 10:59)
回复

使用道具 举报

34

主题

83

回帖

185

积分

初级会员

积分
185
发表于 2016-11-27 18:21:03 | 显示全部楼层
为什么我测试外部16位SRAM写才35MB/s,读就更慢了,才22MB/s左右,这个速度正常吗?看你的SDRAM都比SRAM快多了。
回复

使用道具 举报

0

主题

17

回帖

0

积分

新手上路

积分
0
发表于 2016-12-19 17:54:49 | 显示全部楼层
使用16位和8位写写看:)
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106588
QQ
 楼主| 发表于 2016-12-20 08:09:00 | 显示全部楼层

回 sblpp51 的帖子

sblpp51:使用16位和8位写写看:) (2016-12-19 17:54) 
后面有时间了,测试下。
回复

使用道具 举报

7

主题

61

回帖

82

积分

初级会员

积分
82
发表于 2017-1-8 23:55:22 | 显示全部楼层
有没有源代码,我也想来看看~
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106588
QQ
 楼主| 发表于 2017-1-9 08:35:58 | 显示全部楼层

回 toutou205 的帖子

toutou205:有没有源代码,我也想来看看~ (2017-01-08 23:55)
这个程序不知道搞到哪里去了,也有可能测试完毕后,被我给删掉了,你使用我楼主位的测试代码就行,这个就是主要部分代码。
回复

使用道具 举报

7

主题

61

回帖

82

积分

初级会员

积分
82
发表于 2017-1-9 20:20:39 | 显示全部楼层

Re:回 toutou205 的帖子

eric2013:

这个程序不知道搞到哪里去了,也有可能测试完毕后,被我给删掉了,你使用我楼主位的测试代码就行,这个就是主要部分代码。
使用哪个地方的代码???? 楼主位???什么意思?
回复

使用道具 举报

3

主题

2

回帖

11

积分

新手上路

积分
11
发表于 2017-6-6 16:05:14 | 显示全部楼层
请问有SDRAM相关的例程吗?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106588
QQ
 楼主| 发表于 2017-6-6 16:09:25 | 显示全部楼层

回 guoke 的帖子

guoke:请问有SDRAM相关的例程吗? (2017-06-06 16:05) 
如果购买了V6板子,里面有SDRAM的例程。

如果没有购买,任意从这里下载一个emWin例子,里面有个SDRAM的驱动代码,里面也有测试函数,使用即可:http://www.armbbs.cn/forum.php?mod=viewthread&tid=19834
回复

使用道具 举报

0

主题

29

回帖

29

积分

新手上路

积分
29
发表于 2017-6-14 08:40:45 | 显示全部楼层
大神啊
回复

使用道具 举报

32

主题

295

回帖

391

积分

高级会员

积分
391
发表于 2020-2-26 16:54:36 | 显示全部楼层
本帖最后由 weiyuliang 于 2020-2-26 19:27 编辑

QQ图片20200226192410.png 感谢硬汉的辛苦的指导,终于出来正确结果;

QQ图片20200226192548.png
编译器优化设置;

运行正常的工程文件
V6-104_SDRAM.zip (5.06 MB, 下载次数: 120)



回复

使用道具 举报

13

主题

57

回帖

96

积分

初级会员

积分
96
发表于 2023-5-24 13:49:39 | 显示全部楼层
我把写入改成这样  速度就100多了  这个是因为写入方式不一样吗
Dingtalk_20230524134756.jpg
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106588
QQ
 楼主| 发表于 2023-5-24 16:05:07 | 显示全部楼层
years 发表于 2023-5-24 13:49
我把写入改成这样  速度就100多了  这个是因为写入方式不一样吗

for循环非常占用时间开销。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 19:16 , Processed in 0.336367 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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