蛋蛋读UFS之二:UFS协议栈

10 篇文章 61 订阅
订阅专栏

转自:蛋蛋读UFS之二:UFS协议栈

任何一种接口或者协议,都是由一个完整的协议栈组成的。UFS也不例外。

UFS定义了一个完整的协议栈。从上到下,依次为应用层、传输层、数据链路层和物理层。UFS使用MIPI(Mobile Industry Processor Interface ,移动产业处理器接口)联盟的UniPro作为数据链路层和MIPI的M-PHY作为物理层,两者合起来称之为互连层(UFS InterConnect Layer)。与之相比,PCIe接口只定义了下三层(如下图),没有应用层。只有加上上层NVMe,才构成一个完整的SSD通讯协议。

目前UFS没有定义自己的命令(没有UFS Native Command Set),使用的命令是简化的SCSI命令(基于SBC和SPC),由INCITS T10组织定义的。关于SCSI相关协议,大家可以参看相应的spec。

四层中,只有传输层是JEDEC自己定义的。所以,UFS四层中有三层是别人的,命令层是T10的,数据链路层和物理层是MIPI的,传输层是JEDEC自己的。JEDEC移花接木的水平真是高。不由的想到一个广告:“我们不生产水,我们只是大自然的搬运工!”

UFS至今已经有五个版本,每层的版本也不尽相同。

我们依次来看看这几层。

UFS应用层

应用层包括UFS命令集、设备管理器(Device Manager)和任务管理器(Task Manager)。应用层处于整个协议栈的最高层,所有的命令或者请求都来源于该层。它是最高统帅,所有的战术和策略都是它制定的,然后真正去冲锋陷阵的是将军和士兵(应用层下面的传输层和内联层)。

命令集

如前所述,目前UFS没有定义自己的命令,使用简化的SCSI命令。

其中包括一些SPC(SCSI Primary Commands)命令:

和一些SBC(SCSI Block Commands)命令:

UFS除了定义基本的读写命令,也有trim命令(UNMAP),还有其它一些命令。我们不打算深入其中。

设备管理器

顾名思义,设备管理器用以管理UFS设备。

设备管理器有两个功能:一是处理设备级操作,二是管理设备级配置。

前者包括管理设备功耗、设置数据传输相关参数、使能/禁止设备后台操作(Background Operation)以及其它设备相关操作。

后者通过维护和存储一系列的描述符(Descriptor,后面有章节介绍),通过诸如Query请求修改或获取设备的配置信息。

从UFS层次架构图来看,设备管理器既可以通过下层的传输层为其服务(通过UDM_SAP):

设备管理器也可以绕过传输层(通过UIO_SAP),直接管理与控制互联层:

设备管理器可以通过互联层提供的接口(UIO_SAP),使用一系列的原语(Primitive)直接控制操作互联层(UIC)。这些原语包括重启设备、重启互联层、让物理层进入和退出休眠模式(Hibernate)等原语。

总之,设备管理器既可以走常规渠道(通过传输层,以数据包UPIU的形式),也可以走快速通道(发送UIC能理解的命令,原语的形式)管理和操作设备。

任务管理器

任务管理器用以管理命令队列中的命令。比如任务管理器可以发Abort命令,终止之前发下去的命令。它也可以清空命令队列中的所有命令。具体如下:

当某个命令超时时,系统可能发Abort命令把这个命令终止掉。

UFS传输层

传输层为它上面的应用层服务。当传输层收到应用层命令或者请求后,它会产生UPIU(UFS Protocol Information Unit),把命令块或者请求封装成固定格式的数据结构,然后交由下层传到接收端的传输层。和命令相关的数据、状态,也有相应的UPIU数据包。UPIU是主机和设备进行信息交换的基本数据单元。

UPIU,和SATA中的FIS,PCIe中的TLP,是同一层次的东西,上层命令或者数据都是通过此类数据包封装起来,然后传输到接收端。

如果说应用层是统帅的话,传输层可以认为是将军了。

下一章节为专门介绍UPIU,这里就不细讲。

UFS互联层

UFS互联层包括MIPI UniPro和M-PHY,分别充当UFS数据链路层和物理层的角色。数据链路层负责主机和设备的链接,物理层传输实实在在的物理信号。

UniPro其实不仅仅只定义了数据链路层,它本是也是一个比较完整的协议栈,如下图所示:

传输层(L4)支持多设备之间的双向连接,但UFS只支持CPort0;

网络层(L3)支持通过设备ID寻址多达128个设备,但由于UFS是点到点传输,所以无需网络层;

数据链路层(L2)支持流控、CRC生成和校验、重传机制等,UFS利用了UniPro的数据链路层为主机和设备之间通讯提供可靠的连接。

物理层(M-PHY)使用8/10编码、差分信号串行数据传输。数据传输分高低速模式,每种模式下又有几种不同的速度档。

关于MIPI UniPro和M-PHY,读者可以看相关的spec,这里不细讲。

本章对UFS协议栈做了简单介绍,下一章将会对传输层发起的UPIU进行详细的介绍。

UFS协议介绍 .pdf
04-04
UFS协议专业介绍,帮你快速了解学习基于MPHY的UFS协议,介绍UFS架构和原理。本文主要针对UFS的硬件架构及软件应用层架构做了的介绍,对于mipi层的协议的介绍,应用层协议栈的初始化,文章会针对UFS协议栈的软件初始化详细流程和UFS的分区管理作进一步介绍
蛋蛋UFS之七:描述符、标识和属性
水瓶子的博客
01-30 1338
蛋蛋UFS之七:描述符、标识和属性
UFS协议-名词解释
最新发布
Lance_mu的博客
07-18 707
移动产业处理器接口,是在移动系统中使用的串行通信协议,专为移动设备(如智能手机、平板电脑、笔记本电脑和混合设备)设计的行业规范的标准定义,被越来越多的应用在各种接口芯片中,例如PCIe总线芯片、存储芯片。一个LU包含:DEVICE SERVER:处理SCSI命令的逻辑单元中的概念对象,TASK MANAGER:控制命令顺序的逻辑单元中的概念对象,并执行任务管理功能,TASK SET:一个或多个命令(列表,队列等)的概念组。在数据传输中的一个 Segment标识,暂且理解为是门牌号,标识特定的路由。
蛋蛋UFS之一:UFS简介
水瓶子的博客
01-30 6310
蛋蛋UFS之一:UFS简介
蛋蛋UFS之十:UFS电源管理
m0_53437678的博客
12-06 1336
FS是手机存储设备,因此对功耗要求很高。我们来看看UFS的电源管理。 三个供电电压,VCC,VCCQ和VCCQ2,分别给UFS设备模块供电。UFS设备主要包括三部分:前端UFS接口(M-PHY),UFS控制器和闪存介质(图中的Memory模块)。VCC给闪存介质供电,VCCQ一般给闪存输入输出接口和UFS控制器供电,VCCQ2一般给M-PHY或其它一些低电压模块供电。 UFS2.1中,三者电压值为: 我们知道,UFS协议采用MIPI的M-PHY作为物理层和UniPro作为其数据链路层。M-PH
蛋蛋UFS之五:逻辑单元(LU)
水瓶子的博客
01-30 1547
蛋蛋UFS之五:逻辑单元(LU)
UFS系列二:协议栈
Yannick Jiang 的专栏
04-15 6098
原文链接:UFS协议栈 任何一种接口或者协议,都是由一个完整的协议栈组成的。UFS也不例外。 UFS定义了一个完整的协议栈。从上到下,依次为应用层、传输层、数据链路层和物理层。UFS使用MIPI(Mobile Industry Processor Interface ,移动产业处理器接口)联盟的UniPro作为数据链路层和MIPI的M-PHY作为物理层,两者合起来称之为互连层(UFS I...
蛋蛋UFS之九:UFS数据安全
水瓶子的博客
01-30 1201
蛋蛋UFS之九:UFS数据安全
蛋蛋UFS之三:UFS数据包UPIU
水瓶子的博客
01-30 1748
蛋蛋UFS之三:UFS数据包UPIU
蛋蛋UFS之六:UFS设备初始化和启动
水瓶子的博客
01-30 1603
蛋蛋UFS之六:UFS设备初始化和启动
UFS协议英文版
01-31
UFS协议的英文版。目前emmc与ufs是嵌入式存储的两个发展方向。UFS将取代EMMC成为今后的发展方向。
JESD220E-----UFS3.0 协议.PDF
06-30
JEDEC已经发布了UFS3.1规范(又名JESD220E),它在标准中增加了一些和性能、功率、成本削减、可靠性相关的特性。这些新功能和特性有望提高实际设备性能,最大限度地降低功耗,潜在地降低高容量存储设备成本,并改善用户体验。 符合UFS3.1标准的设备继续使用MIPI的M-PHY4.1物理层和8b/10b线路编码,MIPI基于UniPro 1.8协议的互连层(IL),每通道数据速率为HS-G4(11.6Gbps)。同时,新版本的规范支持三个新特性:写增强、深度睡眠和性能限制通知。此外,JEDEC还发布了主机性能提升技术规范。现代固态硬盘已经支持所有这些功能,因此UFS3.1规范和HP,使UFS存储设备在功能上更接近固态硬盘。 顾名思义,写增强(Write Booster)旨在通过使用伪SLC缓存来提高写入速度。SSD和各种由NVMe驱动的微型存储设备(例如Apple的iPhone/iPad中使用的存储设备)已经使用了类似的技术。同样,SD6.0标准支持缓存以达到写入性能目标。 UFS3.1技术的第二个重要的新功能是深度睡眠(Deep Sleep),这是一种新的低功耗状态,适用于廉价的UFS设备,这些设备使用相同的稳压器进行存储和其他功能。另一个新功能是性能限制通知,该功能使UFS设备可以在过热时通知主机有关性能限制的信息。最终,避免节流意味着更稳定的性能。
UFS 3.0协议
04-24
UFS标准协议,手机驱动开发,器件工程师,可以参考下,希望大家能用得上
UFS2.0标准协议
05-25
标准的UFS2.0协议文档,带一些注释和说明,很完整,很清晰。
UFS version2.1协议
03-01
UFS version2.1 协议标准文档,谢谢下载阅
黑猫详解【UFS HCI】第2篇:UFS HCI register详解
黑猫奥利奥的博客
11-20 1134
host软件设置对应bit为0,用来向host controller表示请求传输的命令槽将被释放。host软件置1,表示host端准备好去执行某个请求了,主机软件通过将此字段中的相关位设置为“0”来指示请求插槽没有更改。host软件置1,表示host端准备好去执行某个task请求了,主机软件通过将此字段中的相关位设置为“0”来指示请求插槽没有更改。host软件将UTMRLRSR的值从1变为0,那么这个字段的值将会被清零。host软件将UTRLRSR的值从1变为0,那么这个字段的值将会被清零。
【无水印】UFS3.1协议,文档编号:JESD200E
07-05
无水印的UFS3.1协议文档编号JESD200E是JEDEC固态技术协会发布的一份标准,旨在定义通用闪存存储(Universal Flash Storage, 简称UFS)版本3.1的技术规范。UFS协议是一种高速、低功耗的存储接口标准,广泛应用于移动...
黑猫带你学UFS协议第4篇:UFS协议栈详解
黑猫奥利奥的博客
05-29 2931
本文依据UFS3.1 JEDEC协议及个人工作经验整理而成,如有错误请留言。 文章为个人辛苦整理,付费内容,禁止私自转载。 文章所在专栏:《黑猫带你学:UFS协议详解》 1 UFS协议栈框架 UFS定义了一个完整的协议栈。从上到下,依次为应用层、传输层、数据链路层和物理层。UFS使用MIPI(Mobile Industry Processor Interface ,移动产业处理器接口)联盟的UniPro作为数据链路层和MIPI的M-PHY作为物理层,两者合起来称之为互连层(UFS InterConnec.
蛋蛋UFS 及AMBA总线
05-18
UFS(Universal Flash Storage)是一种通用闪存存储器,它是一种高速、高容量、高可靠性的存储器。它采用串行接口,支持多通道操作,可以实现高速数据传输。UFS主要应用于移动设备、车载娱乐系统、智能家居等领域。 AMBA(Advanced Microcontroller Bus Architecture)总线是一种用于系统级集成电路的总线标准。它是一种开放式标准,由ARM公司开发和维护。AMBA总线具有可扩展性、灵活性、可靠性、互操作性等特点,可以满足不同系统的需要。AMBA总线包括AHB(Advanced High-performance Bus)、APB(Advanced Peripheral Bus)、AXI(Advanced eXtensible Interface)等不同的版本,不同版本的AMBA总线适用于不同的应用场景。
写文章

热门文章

  • 蛋蛋读UFS之一:UFS简介 6307
  • 01.OpenWrt系统介绍 3430
  • 蛋蛋读UFS之二:UFS协议栈 2312
  • 蛋蛋读UFS之八:RPMB 1868
  • 蛋蛋读UFS之十:UFS电源管理 1849

分类专栏

  • UFS 10篇
  • OpenWrt从入门到精通 2篇
  • Simulink开发AutoSar入门
  • 智能座舱开发芯片介绍
  • AUTOSAR从入门到精通
  • 功能安全入门开发系列
  • SeL4微内核

最新评论

  • 蛋蛋读UFS之五:逻辑单元(LU)

    田园诗人之园: The RPMB is contained in a unique well known logical unit whose size is defined in the RPMB Unit 4645 Descriptor. RPMB well known logical unit size shall be a multiple of 128 Kbytes, therefore its minimum 4646 size is 128 Kbytes. The contents of the RPMB well known logical unit can only be read or written via 4647 successfully authenticated read and write accesses. The data may be overwritten by the host but can never 4648 be erased. 您好,咱们RPMB LU的介绍是不是存在点问题?

大家在看

  • 传输层TCP协议 394
  • 大麦抢票自动抢票教程/教你用脚本自动抢演唱会门票 302
  • VisionPro - 基础 - 模板匹配技术-Search/PMAlign/PatMax(1)- 模板匹配和模板变换的基本概念 774
  • 模型部署系列 | 如何本地部署LLM服务?以ollama为例
  • Java笔试面试题AI答之设计模式(4) 289

最新文章

  • 蛋蛋读UFS之十:UFS电源管理
  • 蛋蛋读UFS之九:UFS数据安全
  • 蛋蛋读UFS之八:RPMB
2023年10篇
2022年3篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

天下网标王东胜网站怎么优化海尔网站外部优化安徽网站关键词优化费用和田网站优化厂家铜陵网站建设seo优化马鞍山市手机网站优化灯塔网站搜索优化昆山网站搜索优化企业安庆网站搜索优化哪家不错广告网站优化成功案例网站优化有什么版本秦皇岛网站推广优化报价松江区搜狗网站优化价格费用武汉网站优化步骤承德市网站seo优化排名玻璃钢格栅无锡网站优化姜堰优化网站哪家专业服装网站优化在哪里青岛网站优化排名网站优化昆山重庆口碑好的网站优化大全巩义网站优化哪家好英文网站标签优化濮阳五金行业网站优化推广可靠吗昆明网站的优化河北家居行业网站优化推广有哪些杭州网站优化哪家强滨江网站排名优化公司武昌网站快照优化公司哪家专业徐汇区官方网站优化定制方案香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化