存储相关知识④—UFS协议

一、UFS 协议概述

UFS(Universal Flash Storage,通用闪存存储)是高速串行存储接口标准,专为移动设备、嵌入式系统和车载应用设计,旨在替代传统的 eMMC 技术。

核心优势
全双工通信:支持同时读写操作,相比 eMMC 的半双工模式性能提升显著
串行差分传输:抗干扰能力强,支持更高的传输速率
分层架构设计:解耦物理层、链路层和应用层,便于技术演进
先进电源管理:多种低功耗模式,延长电池续航
命令队列机制:支持多命令并行处理,提升随机性能

版本对比
在这里插入图片描述

UFS 核心分层架构

UFS 采用清晰的四层分层架构。
从上到下依次为:应用层 (SCSI)、传输层 (UTP) 、链路层 (UniPro)和
物理层 (M-PHY)在这里插入图片描述

应用层:SCSI 命令集

功能:定义了主机与存储设备之间的命令接口,基于 SCSI 架构模型 (SAM)

关键特性
①兼容 SCSI 命令集:如 READ (10)、WRITE (10)、INQUIRY 等
②逻辑单元 (LU):将存储设备划分为多个独立的逻辑单元
③Well Known LU:包括 RPMB (重放保护内存块)、Boot LU 等特殊逻辑单元
④描述符、标识和属性:用于设备识别和配置

传输层:UTP (UFS Transport Protocol)

功能:负责将应用层的 SCSI 命令封装成 UPIU (UFS Protocol Information Unit) 数据包,并通过 UniPro 链路传输

核心组件
①UPIU:UFS 协议的基本数据单元,包含命令、数据和状态信息
②DME(Device Management Entity):负责设备管理和配置
③命令队列:支持最多 32 个命令同时排队处理

UPIU 类型
①命令 UPIU:主机向设备发送的 SCSI 命令
②数据输入 UPIU:设备向主机传输数据
③数据输出 UPIU:主机向设备传输数据
④响应 UPIU:设备向主机返回命令执行状态
⑤任务管理 UPIU:用于管理命令队列

链路层:UniPro

功能:提供可靠的点对点数据链路服务,相当于 “存储界的交通指挥官”

关键特性
①链路管理:初始化、速率协商、链路状态切换
②错误检测与恢复:CRC 校验 + 自动重传机制
③流量控制:动态调整传输速率避免拥塞
④CPort 通道管理:支持多个独立的逻辑通道
⑤优先级调度:TC0 (高优先级) 和 TC1 (低优先级)

物理层:M-PHY

功能:负责电气信号的传输和接收,定义了物理层的电气特性、时钟同步机制和低功耗模式

关键特性
①支持多种 Gear 模式:PWM-G1~G7 (低速) 和 HS-G1~G6 (高速)
②差分信号传输:抗干扰能力强,适合高速数据传输
③多种电源状态:Sleep、Stall、Burst 等,实现动态功耗管理
④信号完整性技术:预加重、均衡器、时钟数据恢复 (CDR)

UFS关键技术特性

一、全双工通信

UFS 采用独立的发送和接收通道,支持同时进行读写操作,这是相比 eMMC 半双工模式的最大优势之一,在多任务场景下性能提升尤为明显。

二、 命令队列 (Command Queue)

UFS 支持最多 32 个命令同时排队处理,设备可以根据命令的优先级和数据位置进行优化调度,大幅提升随机读写性能。

三、电源管理

UFS 提供了多种精细的电源管理模式,
包括:
①Active 模式:正常工作状态
②Idle 模式:低功耗待机状态
③Sleep 模式:深度休眠状态,功耗极低
④Deep Sleep 模式(UFS 3.1 新增):进一步降低待机功耗
⑤Hibernate 模式:关闭大部分电路,仅保留必要的唤醒电路

四、RPMB(Replay Protection Memory Block)

①提供安全的存储区域,用于存储敏感数据如密码、指纹、加密密钥等
②支持重放保护和身份验证,防止恶意攻击
③广泛应用于移动支付、设备加密等安全场景

五、 WriteBooster 写入加速

①UFS 3.1 引入的关键特性,通过 SLC 缓存技术提升写入性能
②将部分 TLC/QLC 闪存模拟成 SLC 模式,提供更快的写入速度
③UFS 4.1 进一步增强,支持主机调整缓冲区大小和部分刷新操作

六、Zoned UFS(ZUFS)

①UFS 4.0 及以上版本支持的分区存储模型
②将存储设备划分为多个区域,要求每个区域内的写入必须是顺序的
③大幅减小 FTL (Flash Translation Layer) 的 L2P 映射表大小,降低对 SRAM 的需求
④与 F2FS 文件系统完美兼容,特别适合移动设备和 AI 应用场景

UFS 和 eMMC 对比

在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐