【科普贴】浅谈UFS接口——偏硬件解析

1.0 UFS 介绍

UFS(Universal Flash Storage)通用闪存存储器,是一种简单、高性能且具有串行接口的海量存储设备,主要用移动系统中,用于连接主机处理设备和大规模内存设备之间。

UFS用到两种协议标准即JEDEC UFS 标准MIPI-M-PHY (物理层)、MIPI-UniPro(传输层)标准。

JEDEC UFS 标准 **:**主要作用是定义存储命令(读、写、擦除)、设备管理、功耗管理、启动流程等等上层的定义。

MIPI-M-PHY 标准 **:**负责底层的接口,主要定义纯粹的电信号特性,比如差分信号线摆幅、传输速率、差分信号末端匹配等等。

MIPI-UniPro 标准: 负责链路层和传输层,处理数据打包、连接管理和流量控制。

说人话就是:硬件物理连接的差分接口,按照M-PHY标准进行信号传输;至于具体传输什么信号内容,怎么解析信号内容是JEDEC UFS标准要做的事情。

本文主要从传输速率、电源、参考时钟、上电时序等方面进行介绍。因为UFS的版本很多,本文以UFS 2.1 Device为基准。JEDEC协议版本以JESD220C为基准,MIPI-M-PHY协议以M-PHY V3.0为基准,在上述基准上稍作拓展进行介绍。

2.0 UFS 的传输速率

UFS的物理接口M-PHY协议标准里使用Gear这个名称来定义接口速率,Gear值越高,数据传输速率越快。UFS的版本有很多,从UFS 1.0到UFS 5.0,不同的版本对应的协议标准和传输速率都有很大差别。如下是UFS不同版本差异。

Gear速率还具备向下兼容和协商的特性,在连接时UFS Host和UFS Device会自动协商一个双方都支持的最高Gear进行通讯。比如Gear 4的SoC连接Gear 3的UFS,双方会以Gear3速率运行。

UFS接口并非始终跑在HS模式下,在初始化和休眠的时候会进入LS模式。

HS-Mode ( 高速模式):传输大文件(如录制 4K 视频、加载大型游戏)时,切换到高 Gear(如 Gear 4/5),全速运行。

LS-Mode ( **低速模式):**初始化、休眠时,会降回低 PWM G1甚至关闭部分电路,以大幅降低功耗。

模式的选择和切换,具体可以参考M-PHY的协议标准,这里不作展开。

3.0 UFS 电源

3.1 电源介绍

UFS有三个电源,分别是VCC、VCCQ、VCCQ2。这三个电源分别给UFS不同模块供电。

VCC 给整个存储单元供电,主要为内部memory供电,电压根据UFS的版本分为两种,UFS3.0之前版本VCC使用3.3V供电,UFS3.0之后版本VCC使用2.5V供电。

VCCQ **:**给memory控制器、memory IO、PHY接口和一些其他低电压模块供电。

VCCQ2 **:**给PHY接口、memory控制器和一些其他低电压模块供电。

如下是UFS协议里关于电源的规定。

实际的UFS 颗粒的规格书,其实只需要两个供电,下图是三星UFS 2.1颗粒中电源的供电要求,只需要提供VCC和VCCQ2的电源,VCCQ的电源由其中一个电源通过内部LDO转换而来。

下图是三星UFS 3.1颗粒中电源的供电要求,只需要提供VCC和VCCQ的电源,VCCQ2的电源由其中一个电源通过内部LDO转换而来。

3.2 上电斜率要求

下图是各个电源的上电斜率要求,上电时间从电压在300mV,直至到达各个电源的Vmin的时间,详细见下。

4.0 参考时钟

UFS在HS模式下需要使用参考时钟,一般UFS的参考时钟采用19.2MHz、26MHz、38.4MHz这几个固定频率,实际具体使用那个频率以UFS颗粒的规格书为准。

JEDEC协议中还对参考时钟的信号质量做了要求,比如VIH、VIL、时钟的上升&下降时间、时钟占空比等等做了要求,在进行信号质量测试时可以参考。

5.0 复位、上下电时序

5.1 复位

UFS复位分为硬件复位和软件复位,这里只介绍硬件复位。

UFS硬件复位信号是电平有效(Active Low),即低电平时触发复位。

复位信号的是时序要求:脉冲宽度 ≥ 1 μs (设备必须识别);脉冲宽度 ≤ 100 ns (设备必须忽略,防误触发);高电平间隔 ≥ 1 μs (两次复位间的最小间隔) ,详细见下。

5.2 上电时序

在上电时,VCC和VCCQ2应按照以下要求进行上电。

Ta这是VCCQ或VCCQ2电源首次达到300mV的点。

当达到Ta时,VCCQ2应大于VCCQ-200mV。

VCC可以独立于VCCQ值或VCCQ2值进行上电。

在开启设备电源时,RST_n信号应保持处于低电平状态。REF_CLK信号应在VSS和VCCQ 之间。下图展示了三种上电时序:Case A和Case B满足要求,而Case C在从Ta到Tb的时间段内(此时VCCQ2的电压低于VCCQ-200mV)不满足条件。

注:绿色区域表示电压范围在VCCQ-200 mV至VCCQ之间。

5.3 下电时序

在下电时,VCC和VCCQ2应当遵循如下:

Tx是指VCCQ或VCCQ2最低工作电压的点。

Tz是指VCCQ和VCCQ2电压低于300mV的点。

在Tx和Tz之间,VCCQ2的值应大于VCCQ-200mV。

VCC可以独立于VCCQ或VCCQ2掉电。

在下电时,RST_n信号和REF_CLK信号应处于VSS和VCCQ之间。下图展示了三种下电时序,Case A和Case B满足要求,而案例Case C在从Tb到Tz之间不满足条件。

注:绿色区域表示电压范围在VCCQ-200 mV至VCCQ之间。

这里需要说明一下,上文介绍过,实际的UFS颗粒大多只有两个供电,具体上电时序要求,可向颗粒厂商获取。这里附上我实测三星UFS2.1颗粒的上电时序。

6.0 UFS 硬件接口

下图是UFS硬件接口,UFS采用全双工的方式传输,详细连接方式见下。

相关推荐
hai3152475431 小时前
# FiveOS V5.0 交付(终极合成器版 · 物理合规修正)
人工智能·stm32·单片机·嵌入式硬件·神经网络
搁浅小泽2 小时前
外部导线用接线端子&正常工作&非正常工作
嵌入式硬件
嵌入式ZYXC2 小时前
第6章:通信接口的硬件特性——为什么你的UART乱码、I2C死锁、SPI干扰大?
stm32·单片机·嵌入式硬件·物联网·智能硬件
天天爱吃肉82182 小时前
【汽车研发测试工程师|Python自动化实测全套脚本(CAN解析+数据处理+自动出报告)】
大数据·python·功能测试·嵌入式硬件·汽车
三佛科技-134163842122 小时前
AIP8P005B 与FT60E112A(8位I/O型单片机)对比分析,FT60E112A能否兼容替代AIP8P005B?
单片机·嵌入式硬件·物联网·智能家居·pcb工艺
fffzd2 小时前
STM32:串口--轮询模式
stm32·单片机·嵌入式硬件·串口·hal库·轮询模式
municornm2 小时前
单片机IO不够?ULN2003A救急方案
单片机·嵌入式硬件
m0_618526202 小时前
矩阵RGB三色LED驱动芯片CH466(SPI模式)
单片机·嵌入式硬件
2301_809049422 小时前
phase3_note_vivado_2020_ip_packager_revision
linux·fpga开发