使用STM32对SD卡进行性能测试

背景

最近有将大量日志存到SD卡中的需求,市面上的存数板基本只支持最大1M或者1.5Mbps的输入

我的需求起码是5-10M,甚至40Mbps,市面上的明显不满足需求,所以准备自己开发

设备

  • STM32F407开发板 CPU@168MHz
  • STM32H750开发板 CPU@480MHz
  • 64G 朗科SD卡(标称支持写入30MB,读取100MB)

标准时钟下的速率

STM32F407的SDIO时钟最大24MHz ,STM32H750的SDIO时钟最大60MHz

采用DMA读写,测试方法为连续读写32MB,单次32KB

型号 写速率 读速率
STM32H750 19.28 MB/s 22.91 MB/s
STM32F407 7.87 MB/s 8.99 MB/s

超频时钟下的速率

经实测,STM32F407的SDIO时钟可以超频到42MHz ,STM32H750的SDIO时钟可以超频到80MHz

采用DMA读写,测试方法为连续读写32MB,单次32KB

型号 写速率 读速率
STM32H750 23.91 MB/s 28.82 MB/s
STM32F407 12.69 MB/s 14.84 MB/s

带FatFs文件系统的速率

文件系统为exFat

采用超频后的时钟,并使用DMA读写,测试方法为连续读写32MB,单次32KB

型号 写速率 读速率
STM32H750 18.65 MB/s 29.39 MB/s
STM32F407 10.74 MB/s 14.87 MB/s

单次写入大小对速率的影响

使用STM32H750+80MHz SDIO + DMA,测试方法为连续读写32MB

单次写入大小 写入速率 读取速率
1KB 1.47 MB/s 6.17 MB/s
2KB 2.79 MB/s 10.55 MB/s
4KB 4.97 MB/s 15.85 MB/s
8kB 8.37 MB/s 20.46 MB/s
16KB 12.78 MB/s 24.84 MB/s
32KB 18.51 MB/s 29.41 MB/s
64KB 18.72 MB/s 29.49 MB/s
相关推荐
悠哉悠哉愿意3 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
Lester_11013 天前
STM32霍尔传感器输入口设置为复用功能输入口时,还能用GPIO函数直接读取IO的状态吗
stm32·单片机·嵌入式硬件·电机控制
LCG元3 天前
低功耗显示方案:STM32L0驱动OLED,动态波形绘制与优化
stm32·嵌入式硬件·信息可视化
三佛科技-187366133973 天前
120W小体积碳化硅电源方案(LP8841SC极简方案12V10A/24V5A输出)
单片机·嵌入式硬件
z20348315203 天前
STM32F103系列单片机定时器介绍(二)
stm32·单片机·嵌入式硬件
古译汉书3 天前
【IoT死磕系列】Day 7:只传8字节怎么控机械臂?学习工业控制 CANopen 的“对象字典”(附企业级源码)
数据结构·stm32·物联网·http
Alaso_shuang3 天前
STM32 核心输入、输出模式
stm32·单片机·嵌入式硬件
2501_918126913 天前
stm32死锁是怎么实现的
stm32·单片机·嵌入式硬件·学习·个人开发
z20348315203 天前
STM32F103系列单片机定时器介绍(一)
stm32·单片机
星马梦缘3 天前
驱动层开发——蜂鸣器驱动
stm32·单片机·嵌入式硬件·hal·驱动