TF卡作为一种微型存储卡,可以在手机、平板电脑、相机等设备中存储数据。不同的TF卡具有不同的容量和速度,可以满足不同的需求。对于开发板来说,TF卡的读写速度也直接影响数据传输的速度。如果TF卡的读写速度太慢,可能会导致数据丢失、系统崩溃、文件损坏等问题。因此,需要选择高品质、高规格、高兼容性的TF卡。
那么如何测试开发板上TF卡的读写速度呢?本文将使用万向奥科HD-G2UL-EVM评估板来测试该开发板下不同TF卡的读写性能。
HD-G2UL-EVM评估板是一款基于RZ/G2UL微处理器的工业级核心板,配备Cortex-A55(1GHz)CPU、16位DDR3L/DDR4、双通道USB2.0,支持256GB扩展TF卡槽等丰富的接口和多种视频接口,适合工业现场和嵌入式设备。
表1 测试结果
TF卡
写
读
闪迪C10128GB
15.9MB/秒
55.4MB/秒
闪迪C416GB
2.2MB/秒
17.0MB/秒
爱国者U332GB
1.0MB/秒
8.9MB/秒
金士顿C1032GB
16.6MB/秒
58.2MB/秒
金士顿C432GB
3.5MB/秒
17.6MB/秒
海康威视C1016GB
3.8MB/秒
18.4MB/秒
金士顿C1064GB
2.0MB/秒
9.5MB/秒
金士顿C48GB
807kB/秒
14.6MB/秒
一般来说,写入速度和读取速度越高,TF卡的性能越好,但价格可能会更高。从表1可以看出,SanDisk C10128GB TF卡的写入速度和读取速度最高。如果不考虑预算的话这是最好的选择。如果不需要大容量,金士顿C1032GBTF卡也是不错的选择。 ^
dd命令
Linuxdd命令用于读取、转换和输出数据。
dd 可以从标准输入或文件中读取数据,按照指定的格式转换数据,然后输出到文件、设备或标准输出。
测试说明如下:
写入速度测试:ddif=/dev/zeroof=$mount_point/largefilebs=16kcount=16384oflag=direct
清除页面缓存:syncecho3/proc/sys/vm/drop_caches
读取速度测试:ddif=$mount_point/largefileof=/dev/nullbs=16kcount=16384
dd的相关解释
if 代表输入文件。如果不指定if,则默认从stdin 读取输入。
of 代表输出文件。如果不指定of,则默认使用stdout作为默认输出。
bs 表示块大小(以字节为单位)。
count 表示复制的块数。
/dev/zero 是字符设备,将连续返回0 值字节(\0)。
HD-G2UL-EVM评估板(512MB+8GB)、网线、Type-c数据线、5V电源适配器、电脑主机。
准备5种以上不同规格、品牌的TF卡选型测试,如表2所示。
表2TF卡
以读写FAT32文件系统为例,写入和读取大小为256MB的文件。
闪迪C10128GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,16.8738s,15.9MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,4.84136s,55.4MB/s
测试时长:(0小时0分33秒。)
测试完毕!
闪迪C416GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,120.232s,2.2MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)已复制,15.7637s,17.0MB/s
测试时长:(0小时2分23秒。)
测试完毕!
爱国者U332GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)已复制,259.502s,1.0MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,30.0122s,8.9MB/s
测试持续时间:(0小时5分2秒。)
测试完毕!
金士顿C1032GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,16.1571s,16.6MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,4.61386s,58.2MB/s
测试时长:(0小时0分28秒。)
测试完毕!
金士顿C432GB
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,76.8466s,3.5MB/s
清除缓存.
进行读取性能测试.预计读取大小为256MB的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,12.5822s,17.6MB/s
测试时长:(0小时1分35秒。)
测试完毕!
海康威视C1016GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,71.558s,3.8MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,14.6249s,18.4MB/s
测试时长:(0小时1分35秒。)
测试完毕!
金士顿C1064GB
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,131.653s,2.0MB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,28.3016s,9.5MB/s
测试时长:(0小时2分51秒。)
测试完毕!
金士顿C48GB
进行写入性能测试.预计写入256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,332.638s,807kB/s
清除缓存.
进行读取性能测试.预计读取256M大小的largefile文件
16384+0 条记录
16384+0条记录输出
268435456bytes(268MB)复制,18.3718s,14.6MB/s
测试时长:(0小时5分58秒。)
测试完毕!