硬汉嵌入式论坛

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

[ThreadX全家桶] File X + LevelX 文件读写速度

[复制链接]

58

主题

267

回帖

446

积分

高级会员

积分
446
发表于 2022-7-28 17:26:15 | 显示全部楼层 |阅读模式
H743 上搭了个 File X + LevelX 文件系统,访问 NorFlash,经测试已经可以正常读写文件了。
读写速度如下:
CED59094-FD88-41ce-AD52-7601D3C32177.png
这个速度正常吗? 感觉写速度有点慢。

回复

使用道具 举报

54

主题

145

回帖

307

积分

高级会员

积分
307
发表于 2022-7-29 09:58:25 | 显示全部楼层
这个上面用的threadX了吗?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107439
QQ
发表于 2022-7-29 10:00:40 | 显示全部楼层
这个是QSPI Flash吧,本身擦写速度就超级慢,几十KB正常。
回复

使用道具 举报

19

主题

243

回帖

300

积分

高级会员

积分
300
发表于 2022-7-29 10:07:06 | 显示全部楼层
本帖最后由 tovinz 于 2022-7-29 10:25 编辑

像w25qxx这种的,不管是四根数据线的QSPI还是普通一根数据线的SPI,这都只关系到数据的传输速度,读速度就跟这个有关。
但写的时候一般都要擦除,这个才是真正耗时的,传输所需的时候在擦除所需时间面前完全可以忽略。
image.png
一般都是以4k为单位进行擦除,一个page是256字节,那么一个4k的写入耗时大概就是 45 + 4096/256*0.4 ≈ 50 ms,
一秒就可以执行 20 次这种操作,写入速度大概就是 20*4k = 80k/s的样子,
回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
 楼主| 发表于 2022-7-29 16:31:46 | 显示全部楼层
mewan 发表于 2022-7-29 09:58
这个上面用的threadX了吗?

用了,threadx 全家桶,后面会继续上 netx duo  和 usb
回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
 楼主| 发表于 2022-7-29 16:35:08 | 显示全部楼层
eric2013 发表于 2022-7-29 10:00
这个是QSPI Flash吧,本身擦写速度就超级慢,几十KB正常。

不是 QSPI,是 FMC 总线的 nor flash.
用的 HAL 库,它只有一个单字节写函数,  HAL_NOR_Program, 还有一个 HAL_NOR_ProgramBuffer 函数只能用于特定器件。  
写入瓶颈应该在这里,后面考虑优化成连续写入,应该会快一些。

我也试了把 levelx 定义的 norflash  sector 大小加大到 2k,默认 512,写速度提高了 10K,效果不太好。
回复

使用道具 举报

39

主题

929

回帖

1051

积分

至尊会员

积分
1051
发表于 2022-7-30 11:16:49 来自手机 | 显示全部楼层
这个不能靠感觉,应该测试一下无中间层的原始写速度是多少,再对比一下加入了中间层的速度,没准原始写入速度就很慢呢。
回复

使用道具 举报

212

主题

1051

回帖

1697

积分

至尊会员

More we do, more we can do.

积分
1697
发表于 2022-7-30 15:53:04 | 显示全部楼层
目前用的Littlefs,需要它的写平衡和掉电安全,结果现在文件多了后,写速度跟直接读写比太慢了。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-31 18:26 , Processed in 0.175758 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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