黑猫带你学:UFS协议详解
文章平均质量分 92
根据UFS JEDEC 3.1协议以及个人工作经验总结与整理,对UFS协议有一个全面而详细易懂的讲解,让你不再繁琐地查阅各种资料,不再头大地翻译英文spec,订阅我,物有所值,持续更新中......
余额抵扣
助学金抵扣
还需支付
¥99.90
¥299.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
黑猫学长呀
芯片行业嵌入式攻城狮一枚~
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
黑猫带你学UFS协议第1篇:全网最全UFS协议中文详讲,这份学习框架图,你值得拥有!!!(持续更新中...)
本文由黑猫学长撰写,深入解析UFS协议,覆盖从基础概念到高级特性的全方位教程。适合存储芯片行业从业者和嵌入式开发者,旨在帮助读者快速掌握UFS协议,适用于高端智能手机、平板等智能设备。预计15万字,涵盖UFS 3.1协议,讲解UFS协议栈、物理层、链路层、传输层等内容。原创 2025-03-21 20:11:05 · 1763 阅读 · 0 评论 -
黑猫带你学UFS协议第2篇:UFS相关名词释义
本文依据UFSJEDEC3.1、个人工作经验整理而成,如有错误请留言。文章为个人辛苦整理,付费内容,已加入原创保护,禁止私自转载。文章所在专栏《黑猫带你学UFS协议详解》原创 2022-07-27 20:49:12 · 4708 阅读 · 1 评论 -
黑猫带你学UFS协议第3篇:UFS简介
速率模式:UFS强制支持HS-G1 ~ HS-G4使用ufs的产品:手机、汽车、UMPC, DSC, PMP, MP3、相机供电情况:VCCQ power supply: 1.2 V (nominal)VCCQ2 power supply: 1.8 V (nominal)VCC power supply: 2.5 V/3.3 V (nominal)UFS层级:(1)UFS Command Set Layer (UCS)基于SBC和SPC的简单SCSI命令集。(2)UFS Tran原创 2023-01-22 22:52:38 · 4548 阅读 · 4 评论 -
黑猫带你学UFS协议第4篇:UFS协议栈详解
本文深入解析UFS协议栈,涵盖应用层的UAP、设备管理器,传输协议层的UTP,互联层的UIC,以及物理层的MIPI M-PHY和UniPro。详细阐述了服务访问端口UDM_SAP和UIO_SAP的功能,介绍了UFS如何使用MIPI标准实现数据链路和物理层通信。同时,探讨了任务管理器在命令队列管理中的作用。原创 2022-05-29 17:05:35 · 3822 阅读 · 2 评论 -
黑猫带你学UFS协议第5篇:UFS物理层简介(MIPI M-PHY)
M-RX应包括可切换的差分终端。默认情况下,M-RX终止必须在PWM-Burst状态下关闭,并可以打开适当的MIPI属性。由于不支持未终止的HS-BURST,因此在HS‐BURST状态下,默认情况下应打开终止。SLEEP和STALL状态不进行终止。在DISABLE and HIBERNATE states,M‐TX驱动High‐Z(高阻态),而M‐RX通过“Dif‐Z保持器”终止通道。原创 2023-01-22 17:51:42 · 4364 阅读 · 0 评论 -
黑猫带你学UFS协议第6篇:UFS链路层简介(MIPI UNIPRO)
T_CO_SAPs:Cports和T_CO_SAPs的关系:CPorts可以被看做UniPro T_CO_SAP的实例。DME:Device Management Entity,设备管理实体EOM:SOM:MTU:Maximum Transmission Unit,最大传输单元。MTU其实就是在每一个节点的管控值,只要是大于这个值的数据帧,要么选择分片,要么直接丢弃。从数据层面来说,UFS的UTP层和UniPro的通信是通过UniPro的传输层的CPorts端口的原语来实现。原创 2023-01-22 18:24:49 · 2852 阅读 · 0 评论 -
黑猫带你学UFS协议第7篇:UFS传输层(UTP)简介
SCSI体系结构模型[SAM]用作UTP的通用体系结构模型,SAM任务管理功能用于任务管理。SAM模型就是客户端-服务器模型,或者说是请求-响应模型。这种客户端-服务器模型就是客户端发送请求,服务端响应的一个过程。原创 2023-01-23 11:32:26 · 2918 阅读 · 0 评论 -
黑猫带你学UFS协议第8篇:UFS电气特性详解(Power、CLK、Reset等)
UFS强制支持secure mode。UFS设备可能会存储个人或者公司的信息,UFS提供把数据永久从设备上移除的功能,并且保证对存储介质进行逆向恢复数据也恢复不回来原有数据。安全模式是以逻辑单元为单位进行应用的,不同的逻辑单元可以有不同的安全模式。由于UFS设备的存储介质不同,所以把数据安全从存储介质上移除方式会有不同,spec提供了三种通用的移除方法,UFS设备至少支持其中一种。● 对存储的位置进行一次擦除操作。● 对存储的位置使用单一字符(比如0xAA)覆盖写,然后进行擦除。.........原创 2022-08-14 15:24:20 · 3649 阅读 · 1 评论 -
黑猫带你学UFS协议第9篇:两万字详解UFS SCSI命令
本文依据UFS3.1 JEDEC协议及个人工作经验整理而成,如有错误请留言。本文结合UFS3.1 JEDEC协议手册查看效果更佳。文章为个人辛苦整理,付费内容,禁止私自转载。文章所在专栏:《黑猫带你学:UFS协议详解》1 SCSI CDB是什么UFS发展到3.1为止,都只是使用简化的SCSI命令,其中包括一些SPC(SCSI Primary Commands)和一些SBC(SCSI Block Commands)命令,还没有自己的原生命令。原生命令可能是留着将来的版本使用。无论是SPC还是SBC原创 2022-04-27 20:37:26 · 4831 阅读 · 1 评论 -
黑猫带你学UFS协议第10篇:两万字详解UFS协议信息单元(UPIU)
本文详细介绍了UFS协议中的UPIU传输机制。UPIU(UFS Protocol Information Unit)是UFS协议栈的核心数据包结构,用于在Unipro层总线上传输命令、数据和状态信息。文章首先阐述了UFS采用"客户端-服务器"架构,通过三个阶段完成命令执行:命令阶段(主机发起)、数据阶段(可选)和状态阶段(设备必须返回)。随后详细分类介绍了12种UPIU类型,包括命令/请求UPIU(COMMAND、TASK MANAGEMENT、QUERY)、数据传输UPIU(DATA原创 2022-03-17 22:18:10 · 4840 阅读 · 3 评论 -
黑猫带你学UFS协议第11篇:UFS描述符详解(descriptor)
1 前言1.1 声明本文依据UFS3.1 JEDEC协议及个人工作经验整理而成,如有错误请留言。文章为个人辛苦整理,付费内容,禁止私自转载。文章所在专栏:《黑猫带你学:UFS协议详解》1.2 参考链接本文少量内容参考如下链接:蛋蛋读UFS之七:描述符、标识和属性:http://www.ssdfans.com/?p=927442 概述UFS中也有吉祥三宝,那就是描述符(Deors)、标识(Flags)和属性(Attributes),主机通过这三宝,来控制与管理UFS设备。这三宝其实就是emm原创 2022-05-10 21:17:10 · 2669 阅读 · 2 评论 -
黑猫带你学UFS协议第12篇:UFS标志(Flags)和属性(Atrributes)详解
UFS中的标志其实就是一些开关,布尔型,非0即1,打开或者关闭。这些标志可以用来使能或者禁止UFS设备的一些功能、模式或者状态。简单来说,flag和attribute、discriptor一样,都是ufs的寄存器罢了。只不过spec将这些寄存器分类了,分成这三种大的类型了而已。标志可以被清除、复位、设置、触发、读。主机也是通过设备管理器的Query Request UPIU来读取或者写标志。原创 2022-10-15 17:17:04 · 1850 阅读 · 3 评论 -
黑猫带你学UFS协议第13篇:UFS初始化详解(Boot Operation)
本文详细解析了UFS设备的初始化过程,包括部分初始化、加载启动代码(可选)和初始化完成三个阶段。重点介绍了如何通过设备描述符和逻辑单元描述符配置引导特性,以及如何从UFS设备加载启动代码。内容适用于嵌入式硬件和存储领域的开发者。原创 2022-05-29 16:54:46 · 3213 阅读 · 3 评论 -
黑猫带你学UFS协议第14篇:什么是逻辑单元(LU)与逻辑块(Sector)
我们对与UFS、emmc一类存储芯片,最重要的功能是什么?无非就是存数据和取出数据,也就是读写功能。既然要存取数据,那么就需要考虑数据往哪里存放,就像我们住房,买了床会放在卧室,买了厨具会放在厨房。同样的道理,emmc/ufs内部也划分了有很多“房间”,这些“房间”在emmc里面叫做分区,在ufs里面叫做逻辑单元。在emmc里面有user/rpmb/boot/gpp分区的概念,把emmc的空间划分为多个区域。原创 2022-10-23 21:18:36 · 2776 阅读 · 0 评论 -
黑猫带你学UFS协议第15篇:UFS如何配置逻辑单元(LU Management)
1 特性不同的LU可以配置不同的属性,例如其大小、安全特性等。普通的LU通过LUN寻址,四大名LU通过W-LUN寻址。每个LU内部都是从地址0开始的。对于ufs来说,必须支持如下特性:(1)LU的个数由bMaxNumberLU决定,每个UFS最多支持2个Boot LU。(2)存在一个RPMB LU,RPMB LU内部还可以分成4个小的RPMB区域(RPMB region 0 - RPMB region 3)。对于每个LU有如下共同特性:(1)地址空间相互独立,地址都是从0开始(2)LU大小可原创 2022-05-29 16:33:43 · 2733 阅读 · 0 评论 -
黑猫带你学UFS协议第16篇:UFS模式页是什么(Mode Page)
本文介绍了UFS协议中的Mode Page,包括其在模式选择和感知命令中的作用,详细解析了Mode Page的帧格式,如Page Code、Control Mode Page、Read-Write Error Recovery Mode Page和Caching Mode Page的内容及其在UFS设备中的应用。原创 2022-05-10 21:00:14 · 2092 阅读 · 0 评论 -
黑猫带你学UFS协议第17篇:UFS安全模式详解(Secure Mode)
本文详细介绍了UFS协议中的安全模式,包括Erase, Discard, Purge和Wipe Device操作。Erase用于永久删除数据并确保无法恢复;Discard不保证数据清除;Purge类似于Sanitize,清除内部未映射的物理块数据;Wipe Device则是格式化设备。这些操作涉及逻辑单元、擦除单位、相关寄存器配置等,确保数据安全。" 126036669,12409270,MySQL 8.0 开窗函数详解,"['数据库理论', 'SQL']原创 2022-03-06 11:56:32 · 2332 阅读 · 4 评论 -
黑猫带你学UFS协议第18篇:UFS数据保护机制(Device Data Protection)
UFS地数据保护其实就是emmc中的写保护。(PS:这里真的很想吐槽Jedec组织,明明都是讲的同一件事,非要用不同的名词,emmc中叫write protection,ufs也叫write protection不行吗?非要来个data protection,不知道的还以为不是一个东西呢......)原创 2022-03-08 19:29:09 · 2168 阅读 · 0 评论 -
黑猫带你学UFS协议第19篇:UFS语境管理详解(context management)
为了更好地区别大的顺序操作和小的随机操作,并提高多任务支持,可将语境与读或写关联。将一组命令与一个语境关联,使得设备能够优化数据的处理。多个读或写命令与此语境关联,就在它们之间创建出某种逻辑关系,以便设备优化性能。通俗来说,通过context管理,进行多块读写的时候,ufs的性能有一定的优化。至于为什么会优化,该怎么优化,这就是fw的事情了。原创 2022-11-20 11:25:34 · 1322 阅读 · 0 评论 -
黑猫带你学UFS协议第20篇:UFS cache详解
UFS cache是一个临时的存储空间,用来提高host读写的访问时间。例如host如果写数据到flash中需要很长时间,而host下发的数据写到ufs的cache中就很快了。这样ufs内部自己可以再从cache中将数据搬移到flash中。此时host就可以去干自己的事情了,不需要等待UFS把数据再写入flash中。对于读同理,提前把数据放到cache中,当要读数据的时候,host直接从cache中拿即可,访问时间大大加快。host不能直接访问UFS的cache。原创 2022-08-21 14:31:57 · 2081 阅读 · 1 评论 -
黑猫带你学UFS协议第21篇:UFS命令队列详解(CMDQ)
UFS设备可以实现以下两种队列架构中的一种:(1)独立于任务集,用于对任务进行排队的资源可以静态分配给每个LU,以便LU能够对新任务进行一定深度的排队(2)也可以由所有LU共享,以便根据接收到的任务将排队资源动态分配给LU。...原创 2022-08-30 00:30:00 · 2806 阅读 · 0 评论 -
黑猫带你学UFS协议第22篇:全网最全UFS RPMB LU详解(重放保护逻辑单元)
本文详细介绍了UFS协议中的RPMB(Replay Protected Memory Block)LU,旨在防止重放攻击。内容涵盖RPMB的工作原理、数据传输帧格式、读写操作以及与eMMC RPMB的异同。通过随机数和写计数器确保数据安全性,涉及密钥编程、读写计数器和认证数据读写的步骤。原创 2022-12-25 21:17:47 · 2430 阅读 · 2 评论 -
黑猫带你学UFS协议第23篇:UFS固件升级操作详解(FFU)
摘要:本文介绍了UFS固件更新(FFU)的实现方法与注意事项。根据UFS3.1 JEDEC协议,FFU通过write buffer命令(MODE=0Eh)下载FW固件,随后必须进行power cycle或硬件复位生效。文章详细阐述了FFU操作的10条规则,包括数据分片传输要求、寄存器访问限制等,同时指出协议未明确的厂商实现差异。关键寄存器包括bFFUTimeout、bDeviceFFUStatus和fPermanentlyDisableFwUpdate。原创 2022-07-12 00:15:53 · 17471 阅读 · 29 评论 -
黑猫带你学UFS协议第24篇:UFS写加速器详解(WriteBooster)
本文介绍了UFS存储设备的WriteBooster功能。该功能在UFS2.2版本引入,通过将部分TLC存储空间配置为SLC缓存,显著提升写入性能,适用于5G设备、OTA更新等场景。文章详细分析了两种实现模式:LU专属buffer模式和共享buffer模式,并阐述了通过配置参数分配缓存大小的方法。同时指出数据从缓存刷新到主存储的策略,以及该功能可能带来的寿命损耗问题,包括TLC/SLC转换损耗和写放大效应。最后建议根据实际性能需求合理启用此功能,以平衡性能与寿命的关系。原创 2025-06-07 14:19:41 · 532 阅读 · 1 评论 -
黑猫带你学UFS协议第25篇:UFS复位详解(Reset)
以一台电脑来说明这几种UFS reset的区别:Power-on Reset,就像拔掉电脑电源;H/W reset就像使用电脑的关机键进行关机;EndPointReset,就像远程控制电脑关机;Logical Unit Reset,就像关掉电脑windows系统的一些应用软件,电脑本身并没有关机;Host UniPro Warm Reset,就不能用电脑来举例子了 :)原创 2025-07-13 10:10:04 · 404 阅读 · 1 评论 -
黑猫带你学UFS协议第26篇:一文搞懂UFS的深度休眠是是什么?(Pre-DeepSleep & DeepSleep)
本文介绍了UFS存储设备DeepSleep低功耗模式的实现机制与操作流程。该模式下UFS关闭大部分模块,仅保留主控工作,VCC可断电而VCCQ需保持供电。进入需先过渡到Pre-DeepSleep状态,通过特定指令和H8状态切换实现;退出需重启并重新初始化。相比直接断电,DeepSleep模式能保留硬件状态,实现快速唤醒(10-100毫秒级),适用于需要频繁启停的移动设备场景。其优势在于通过SRAM保持代码来加速初始化过程,在功耗与性能间取得平衡。文章还强调了相关操作规范,包括指令参数要求和模式切换时的命令响原创 2025-07-13 10:42:26 · 303 阅读 · 0 评论 -
黑猫带你学UFS协议第27篇:UFS的后台操作详解(BKOPS)
本文介绍了UFS协议中的后台操作(BKOPS)机制及其实现原理。BKOPS允许UFS设备在空闲时执行NAND相关操作(如GC、磨损均衡等),分为服务于host的前台操作和设备自主执行的后台操作。关键机制包括:通过wExceptionEventStatus的URGENT_BKOPS位和bBackgroundOpStatus属性标识操作紧急程度;fBackgroundOpsEn标志控制BKOPS开关;bBackgroundOpsTermLat寄存器规定操作终止延迟。与eMMC不同,UFS仅支持自动后台操作。该机原创 2025-09-07 22:18:03 · 221 阅读 · 0 评论
分享