当前位置: 首页 新闻资讯 技术问答

SPI与SDIO两种操作方式读写SD卡速度测试

SD NAND-贴片式TF卡-贴片式SD卡-免费测试2024-01-11937

SPI与SDIO两种操作方式读写SD卡速度测试

 

目前嵌入式应用中,若要用到SD卡,一般有两种操作方式可选:

一种是SPI操作SD卡的方式;

一种是SDIO操作SD卡的方式。

一般是SPI操作SD卡方式使用较多,因为一般正常的MCU都带有SPI接口,但SDIO接口一般存在于大容量MCU中,中小容量的MCU一般不带有SDIO接口。

 

测试平台:

CH32V307VCT6+SD卡(16G)


测试程序配置:

SPI+DMA+FatFs

SDIO+DMA+FatFs


SPI读写SD卡速度测试:

(1)时钟配置:

程序当中,系统主频设置为120MHz,APB2总线时钟为系统主频1分频,为120MHz,SPI时钟经APB2总线时钟4分频,为30MHz。

(2)测试方法:

采用定时器中断计数方式进行测速,定时器1ms进入一次中断,计数值(全局变量)cnt+1,每进一次中断加一次,在读写之前获取一次计数值,读写之后获取一次计数值,根据前后差值计算读写的时间。关于读写,以for循环的方式读出或写入一组数据(1024字节),循环10000次,这样就写入或读出都是10M字节,根据以上数据就可计算出读写时间:


具体程序参考如下:

定时器中断配置:

写入程序:

读出程序:

根据上述方法,打印值如下:

                                 

由上述信息可以得出:

SPI写入10M字节用时12927ms,即12.927s,写入速度为:773.6字节/s;

SPI读出10M字节用时6038ms,即6.038s,读出速度为:1656.2字节/s;


SDIO读写SD卡速度测试:

(1)时钟配置:

程序当中,系统主频设置为144MHz,AHB总线时钟为系统主频,SDIO时钟为48MHz。

(2)测试方法:

与SPI测试方法一致,程序基本也是一样的。

打印结果如下:

                                   

由上述信息可以得出:

SDIO写入10M字节用时10889ms,即10.889s,写入速度为:918.4字节/s;

SDIO读出10M字节用时3725ms,即3.725s,读出速度为:2684.6字节/s;

 

结果汇总如下:

操作方式

写入

读出

SPI+DMA+FatFs

773.6字节/s

1656.2字节/s

SDIO+DMA+FatFs

918.4字节/s

2684.6字节/s

以上数据只是一个简单的测试数据,可以看出SDIO的操作方式相较于SPI读写速度还是快上不少的,若要将代码继续优化一下,各自的速度应该还能提升不少。

热门标签:SDNAND贴片式TF卡贴片式SD卡SD FLASHSLC NANDNAND FLASH


上一篇:SDIO-TF CARD

下一篇:SDIO 接口介绍

SD NAND-贴片式TF卡-贴片式SD卡-免费测试

深圳市芯存者科技有限公司

售前咨询
售前咨询
售后服务
售后服务
联系我们

电话:176-6539-0767

Q Q:135-0379-986

邮箱:1350379986@qq.com

地址:深圳市南山区蛇口街道后海大道1021号B C座C422W8

在线客服 在线客服 QQ客服 微信客服 淘宝店铺 联系我们 返回顶部