UFS/EMMC/USB速率 测试方法

USB,英文全称:Universal Serial Bus,即通用串行总线。
常常各种USB芯片同时具有host和device两种接口。host就是主的,可以起控制作用;device(slave)就是从,是被控制的。比如PC机的USB口,可以识别U盘或者其他USB设备,起到控制的作用,就是host;而U盘是被控制的,是device(slave)。
只有一个host和一个device(slave)才能起到数据传输或者控制的作用。
UFS/EMMC: Flash Memory,主要作用是作为存储设备(storage)/文件系统,主要都是针对移动设备发明的

环境准备

  • 测试设备
  • 软件版本:性能模式下的设备(perf kernel 或者 gki kernel)
  • 测试工具:tiotest,tiotest
  • USB3.0及以上USB设备,目前测试选择:SSD
  • Push tiotest文件到设备,路径不限
    adb push tiotest /usr/bin/
    adb shell
    chmod 777 /usr/bin/tiotest

测试方法一

  • UFS/EMMC测试:
    tiotest -t 8 -d /data -f 1024 -k 1 -k 3 -L

  • USB Type-A测试:
    连接USB设备,mount
    tiotest -t 8 -d /mnt/sdcard -f 1024 -k 1 -k 3 -L

  • 单位:MB/s

  • 测试数据取3次平均值
    在这里插入图片描述

  • 参数含义
    -t NumberOfThreads
    The number of concurrent test threads. Defaults to 4.
    -d TestDir
    The directory in which to test. Defaults to ., the current directory.
    -f SizeInMB
    The filesize per threat in MBytes. Defaults to 10 MB.
    -b BlkSizeInBytes
    The blocksize in Bytes to use. Defaults to 4096.
    -k SkipTestNoN
    Skip test number n. Could be used several times.
    -L
    Hide latency output.

测试方法二

Linux dd 命令:使用dd这个linux命令可以创建一定大小文件。
原理:
通过创建指定大小的的文件所花的时间来计算读写速度
速度=文件大小/时间
Write:
echo 3 > /proc/sys/vm/drop_caches
dd if=/dev/zero of=/data/test.img count=102 bs=20M oflag=direct
/dev/zero是一个伪设备,它只产生空字符流,对它不会产生IO.
IO都会集中在of文件 中,of文件只用于写,所以这个命令相当于测试磁盘的写能力。
Read:
echo 3 > /proc/sys/vm/drop_caches
dd if=/data/test.img of=/dev/null count=102 bs=20M
/data/test.img是一个物理分区,对它的读取会产生IO,/dev/null是伪设备,相当于黑洞.
of到该设备不会产生IO,这个命令的IO只发生在/data/test.img上,也相当于测试磁盘的读能力.
参数解释:

  1. if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >
  2. of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >
  3. dd用于复制,从if读出,写到of。if=/dev/zero不产生IO,因此可以用来测试纯写速度。同理of=/dev/null不产生IO,可以用来测试纯读速度。bs是每次读或写的大小,即一个块的大小, count是读写块的数量。
  4. iflag/oflag 提供 direct 模式,direct 模式是把写入请求直接封装成 I/O 指令发到磁盘,非 direct 模式只是把数据写入到系统缓存就认为 I/O 成功,并由操作系统决定缓存中的数据什么时候被写入磁盘。
  • 21
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SD/eMMC PHY是指SD卡和eMMC芯片的物理层接口。它负责将数据从SD卡或eMMC芯片传输到主机或从主机传输到SD卡或eMMC芯片。SD卡和eMMC芯片的数据传输流程通常包括以下步骤:初始化、选中操作的SD卡或eMMC芯片、读写操作。在初始化阶段,通过CMD7命令选中要操作的SD卡或eMMC芯片,然后可以开始对其进行读写操作。在物理层接口中,可以通过设备文件/dev/mmcblk1p1来查看SD卡或eMMC的信息。例如,通过执行命令"ls -l /dev/mmcblk1p1"可以显示SD卡或eMMC的权限、所有者、大小、时间等信息。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [MIPI C-PHY/D-PHY/ UFS/ SDIO/eMMC/DP/eDP/DDR5/LPDDR5/I3C/PCIE/Automotive Ethernet/Serdes.........](https://blog.csdn.net/reeest/article/details/119677975)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [SD/eMMC初始化流程、读写流程(dwc mshc)](https://blog.csdn.net/yangguoyu8023/article/details/122820765)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值