![](https://img-blog.csdnimg.cn/996a6e43b101462fb13630070fc1622b.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
黑猫带你学:UFS协议详解
文章平均质量分 92
根据UFS JEDEC 3.1协议以及个人工作经验总结与整理,对UFS协议有一个全面而详细易懂的讲解,让你不再繁琐地查阅各种资料,不再头大地翻译英文spec,订阅我,物有所值,持续更新中......
优惠券已抵扣
余额抵扣
还需支付
¥99.90
¥299.90
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
黑猫学长呀
芯片行业嵌入式攻城狮一枚~
展开
-
黑猫带你学UFS协议第1篇:全网最全UFS协议中文详讲,这份学习框架图,你值得拥有!!!(持续更新中...)
文/黑猫学长笔者本人从事于存储芯片行业多年,对eMMC/UFS/SD等芯片有深入研究,协议尤甚。而今看来,UFS协议在整个存储产品中(包括U盘、SPI、SD卡,NM卡、emmc、SSD、flash颗粒等),属于最难梯队。对于嵌入式存储芯片来说,从最初大家熟悉的SD/TF卡,发展到emmc,再到如今的UFS,速率越来越快,性能越来越稳定。即使是最新的UFS产品,从问世到笔者写这篇文章(2022.07),都已经发展10余年了。奈何国内芯片产业起步比较晚,对于UFS,国内各大相关厂商大部分都是近两年才逐渐投入人力原创 2022-07-12 00:15:53 · 12450 阅读 · 28 评论 -
黑猫带你学UFS协议第2篇:UFS相关名词释义
本文依据UFSJEDEC3.1、个人工作经验整理而成,如有错误请留言。文章为个人辛苦整理,付费内容,已加入原创保护,禁止私自转载。文章所在专栏《黑猫带你学UFS协议详解》原创 2022-07-27 20:49:12 · 3226 阅读 · 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 · 3461 阅读 · 4 评论 -
黑猫带你学UFS协议第4篇:UFS协议栈详解
本文依据UFS3.1 JEDEC协议及个人工作经验整理而成,如有错误请留言。文章为个人辛苦整理,付费内容,禁止私自转载。文章所在专栏:《黑猫带你学:UFS协议详解》1 UFS协议栈框架UFS定义了一个完整的协议栈。从上到下,依次为应用层、传输层、数据链路层和物理层。UFS使用MIPI(Mobile Industry Processor Interface ,移动产业处理器接口)联盟的UniPro作为数据链路层和MIPI的M-PHY作为物理层,两者合起来称之为互连层(UFS InterConnec.原创 2022-05-29 17:05:35 · 2847 阅读 · 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 · 3315 阅读 · 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 · 2052 阅读 · 0 评论 -
黑猫带你学UFS协议第7篇:UFS传输层(UTP)简介
SCSI体系结构模型[SAM]用作UTP的通用体系结构模型,SAM任务管理功能用于任务管理。SAM模型就是客户端-服务器模型,或者说是请求-响应模型。这种客户端-服务器模型就是客户端发送请求,服务端响应的一个过程。原创 2023-01-23 11:32:26 · 2146 阅读 · 0 评论 -
黑猫带你学UFS协议第8篇:UFS电气特性详解(Power、CLK、Reset等)
UFS强制支持secure mode。UFS设备可能会存储个人或者公司的信息,UFS提供把数据永久从设备上移除的功能,并且保证对存储介质进行逆向恢复数据也恢复不回来原有数据。安全模式是以逻辑单元为单位进行应用的,不同的逻辑单元可以有不同的安全模式。由于UFS设备的存储介质不同,所以把数据安全从存储介质上移除方式会有不同,spec提供了三种通用的移除方法,UFS设备至少支持其中一种。● 对存储的位置进行一次擦除操作。● 对存储的位置使用单一字符(比如0xAA)覆盖写,然后进行擦除。.........原创 2022-08-14 15:24:20 · 2376 阅读 · 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 · 3520 阅读 · 1 评论 -
黑猫带你学UFS协议第10篇:两万字详解UFS协议信息单元(UPIU)
命令UPIU包含基本UPIU头以及指定命令所需的附加信息。host将生成此UPIU并将其发送到ufs设备,以请求ufs设备执行SCSI命令服务。原创 2022-03-17 22:18:10 · 3759 阅读 · 2 评论 -
黑猫带你学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 · 1932 阅读 · 2 评论 -
黑猫带你学UFS协议第12篇:UFS标志(Flags)和属性(Atrributes)详解
UFS中的标志其实就是一些开关,布尔型,非0即1,打开或者关闭。这些标志可以用来使能或者禁止UFS设备的一些功能、模式或者状态。简单来说,flag和attribute、discriptor一样,都是ufs的寄存器罢了。只不过spec将这些寄存器分类了,分成这三种大的类型了而已。标志可以被清除、复位、设置、触发、读。主机也是通过设备管理器的Query Request UPIU来读取或者写标志。原创 2022-10-15 17:17:04 · 1318 阅读 · 3 评论 -
黑猫带你学UFS协议第13篇:UFS初始化详解(Boot Operation)
1 前言1.1 声明本文依据UFS3.1 JEDEC协议及个人工作经验整理而成,如有错误请留言。文章为个人辛苦整理,付费内容,禁止私自转载。文章所在专栏:《黑猫带你学:UFS协议详解》1.2 参考链接由于《蛋蛋读UFS之六:UFS设备初始化和启动》一文对UFS初始化过程讲解清晰明了,因此本文部分内容来自该文,侵删。原文链接:http://www.ssdfans.com/?p=927382 引导配置很多平台会将系统引导代码放置在UFS设备中,当UFS上电初始化过程中,就要将系统启动代码读出来原创 2022-05-29 16:54:46 · 2301 阅读 · 3 评论 -
黑猫带你学UFS协议第14篇:什么是逻辑单元(LU)与逻辑块(Sector)
我们对与UFS、emmc一类存储芯片,最重要的功能是什么?无非就是存数据和取出数据,也就是读写功能。既然要存取数据,那么就需要考虑数据往哪里存放,就像我们住房,买了床会放在卧室,买了厨具会放在厨房。同样的道理,emmc/ufs内部也划分了有很多“房间”,这些“房间”在emmc里面叫做分区,在ufs里面叫做逻辑单元。在emmc里面有user/rpmb/boot/gpp分区的概念,把emmc的空间划分为多个区域。原创 2022-10-23 21:18:36 · 1892 阅读 · 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 · 1850 阅读 · 0 评论 -
黑猫带你学UFS协议第16篇:UFS模式页是什么(Mode Page)
本文依据UFS3.1 JEDEC协议及个人工作经验整理而成,如有错误请留言。文章为个人辛苦整理,付费内容,禁止私自转载。文章所在专栏:《黑猫带你学:UFS协议详解》1 概述Mode Page被MODE SELECT command和MODE SENSE command使用,表示或者设置UFS设备的一些信息。就类似于寄存器,可以设置一些UFS信息,也可以告诉host其自身的一些信息。如果UFS设备有多个LU,host应该读取Mode Page Policy VPD,以了解该LU是否维护其自己的m.原创 2022-05-10 21:00:14 · 1404 阅读 · 0 评论 -
黑猫带你学UFS协议第17篇:UFS安全模式详解(Secure Mode)
1 概述UFS强制支持secure mode。UFS设备可能会存储个人或者公司的信息,UFS提供把数据永久从设备上移除的功能,并且保证对存储介质进行逆向恢复数据也恢复不回来原有数据。安全模式是以逻辑单元为单位进行应用的,不同的逻辑单元可以有不同的安全模式。由于UFS设备的存储介质不同,所以把数据安全从存储介质上移除方式会有不同,spec提供了三种通用的移除方法,UFS设备至少支持其中一种。● 对存储的位置进行一次擦除操作。● 对存储的位置使用单一字符(比如0xAA)覆盖写,然后进行擦除● 对存原创 2022-03-06 11:56:32 · 1752 阅读 · 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 · 1423 阅读 · 0 评论 -
黑猫带你学UFS协议第19篇:UFS语境管理详解(context management)
为了更好地区别大的顺序操作和小的随机操作,并提高多任务支持,可将语境与读或写关联。将一组命令与一个语境关联,使得设备能够优化数据的处理。多个读或写命令与此语境关联,就在它们之间创建出某种逻辑关系,以便设备优化性能。通俗来说,通过context管理,进行多块读写的时候,ufs的性能有一定的优化。至于为什么会优化,该怎么优化,这就是fw的事情了。原创 2022-11-20 11:25:34 · 951 阅读 · 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 · 1397 阅读 · 0 评论 -
黑猫带你学UFS协议第21篇:UFS命令队列详解(CMDQ)
UFS设备可以实现以下两种队列架构中的一种:(1)独立于任务集,用于对任务进行排队的资源可以静态分配给每个LU,以便LU能够对新任务进行一定深度的排队(2)也可以由所有LU共享,以便根据接收到的任务将排队资源动态分配给LU。...原创 2022-08-30 00:30:00 · 1933 阅读 · 0 评论 -
黑猫带你学UFS协议第22篇:全网最全UFS RPMB LU详解(重放保护逻辑单元)
全文约14500字,主要内容有:1、什么是UFS 的RPMB LU?2、为什么叫做RPMB?什么又是重放攻击?3、如何对RPMB LU进行读写、密钥编程等操作?4、对RPMB区域操作又有哪些限制、规则?4、ufs的RPMB LU和emmc的RPMB partition有什么异同?原创 2022-12-25 21:17:47 · 1656 阅读 · 2 评论