9096|19

62

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

STM32烧录的瓶颈在哪? [复制链接]

找了半天也没找到以前的那个讲usb时序的帖子,
就新开一个了。

现在在做一个usb的boot,基本功能已完成,只是下载速度不快,
读取:50KB左右,下载20KB左右。  升级一个512K的芯片需要约22秒。

不知道理论可以做到多少,是因为双缓冲的问题,还是flash写的问题??

明天得继续查了,
此帖出自stm32/stm8论坛

最新回复

                                 很简单,现在flash的烧写速度是32MHZ(一般到了40mhz就了不起了)。而且ST的flash的读写速度在技术上没有多大的进步,基本上是维持在这个水平。如果你想flash读写速度快点,可以考虑NXP的ARM,因为nxp的ARM flash的读写速度现在看起来在业界是最快的。以前做过对比试验(07年),读写一样的内容,ST需要的时间基本上是NXP的三倍(STM32F103 v.s LPC2148)。  详情 回复 发表于 2009-1-8 16:56
点赞 关注
 

回复
举报

62

帖子

0

TA的资源

一粒金砂(初级)

沙发
 

明天主要更改下usb传输和flash写,再试试

                                  
此帖出自stm32/stm8论坛
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

板凳
 

STM32烧录的瓶颈主要在Flash的写入

                                 不管是哪种传输方式,UART、I2C、USB都比写入Flash要快很多。
此帖出自stm32/stm8论坛
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

4
 

香帅在啊, 今天找flash写的资料,没找到,不知道

                                 写的速度可以提高到多少,要是能提高一倍左右就快了,呵呵,
此帖出自stm32/stm8论坛
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

5
 

《STM32F10x闪存编程手册》就是讲如何写Flash的

                                 还有有关读写保护的操作说明。
此帖出自stm32/stm8论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

6
 

差不多就这个速度拉~~~~

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

7
 

STM32 Flash编程的时间

下表是STM32 Flash编程时间参数,按照最大时间计算,对一个内置512KB的STM32编程可以如下计算:
  1)编程每2个字节时间为40~70us,则编程512K需要
       512 * 1024 / 2 * (40~70us) = 10.5~18.5s
  2)擦除一页的时间为20~40ms,则擦除256页需要
       256 * (20~40ms) = 5.1~10.2s
  3)整体擦除的时间为20~40ms

结论:编程512K总共需要 15~28秒。

如果采取边下载边编程的方式,则肯定以为下载速度太慢——35K/s~18.7K/s
此帖出自stm32/stm8论坛
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

8
 

楼主可以去看看STM32的USB开发包中的DFU例程

                                 刚刚想到,楼主所要的功能不就是DFU吗?
此帖出自stm32/stm8论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

9
 

22秒很快了...我现在都要1分多.

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

10
 

回复 7楼

1)编程每2个字节时间为40~70ms,则编程512K需要

是us,ms得多慢
此帖出自stm32/stm8论坛
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

11
 

哈哈,是笔误,好在有一张表格

                                 随后的计算也是按照us来算的。
此帖出自stm32/stm8论坛
 
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

12
 

回复

3)整体擦除的时间为20~40ms
s
此帖出自stm32/stm8论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

13
 

上班时间不能上网,刚看到香帅的分析,

跟我的实测结果一样,

写flash时等待时间比较长。
功能已经做好了,DFU没仔细看,自己拿U盘的例程改了一下,
基本功能都已经实现了,  
此帖出自stm32/stm8论坛
 
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

14
 

今天还在bus hound测了下,

没采用双缓冲,传输速度还是不错的,

1K的数据只需要3ms,相当于速度在333KB/s,即接近2.7Mb/s,

下载时间未能做到20s以内,

读取与下载的过程中,传控制部分占了一些时间,我的做法是分成1K的小块再去下载。
此帖出自stm32/stm8论坛
 
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

15
 

贴两幅图吧


这里我根据手头的资源,没有做成一个特殊的CDC设备,是一个特殊设备。枚举后在PC设备列表中显示如下:

目前已经完成其核心部分: 擦除、烧录与回读。
上图,这便是青藤做的USB boot设备具有的功能,
目前读取速度50多KB/s,烧录速度只有20K多点。
(转载请注明出处:青藤门客播报站

软件的数据支持查看与修改,

 
此帖出自stm32/stm8论坛
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

16
 

编程2字节的时间52.5us

理论的极限时间是14秒左右。
一般512kB不可能满的,这里面就大有文章了。
擦除当然要用全片擦除。
此帖出自stm32/stm8论坛
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

17
 

ls提的文章我已经做好了,

今天做的,呵呵,

自动判断有无有效数据,只下载有效数据
此帖出自stm32/stm8论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

18
 

不可以用全片擦除,我的设备外置的只有一个usb口

                                 呵呵,
此帖出自stm32/stm8论坛
 
 
 

回复

95

帖子

0

TA的资源

一粒金砂(初级)

19
 

好像差不多就是这个速度吧

                                 我这里也通用用USB接口模拟CDC串口,在上面实现STM32_ISP协议,下载28854字节用了1.34秒。
此帖出自stm32/stm8论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

20
 

这个是ST 32bit MCU的通病!

                                 很简单,现在flash的烧写速度是32MHZ(一般到了40mhz就了不起了)。而且ST的flash的读写速度在技术上没有多大的进步,基本上是维持在这个水平。如果你想flash读写速度快点,可以考虑NXP的ARM,因为nxp的ARM flash的读写速度现在看起来在业界是最快的。以前做过对比试验(07年),读写一样的内容,ST需要的时间基本上是NXP的三倍(STM32F103 v.s LPC2148)。
此帖出自stm32/stm8论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表