七、USB PD协议层之扩展消息

扩展消息应包含一个扩展消息头(由正在设置的消息头中的扩展字段指示),后面跟着零个或多个数据字节。在本规范的未来版本中,可能添加到现有消息中的其他字节应被忽略。
扩展消息的格式由消息头的消息类型字段定义,并在表6.54“扩展消息类型”中进行了总结。“发送者”列表示可以发送给定消息的实体(源、接收器或电缆插头);未列出的实体不得发布相应的消息。“数据包的有效开始”列表示只能在SOP数据包中发布的消息和可以在SOP*数据包中发出的消息。
image.png

1、Source_Capabilities_Extended Message

应发送Source_Capabilities_Extended消息以响应Get_Source_Cap_Extended消息。
Source_Capabilities_Extended使Source或DRP能够通知Sink其作为Source的能力。
Source_Capabilities_Extended应返回25字节的Source Capabilities Extended Data Block(SCEDB)
其格式应如图6-36Source_Capabilities_Extended和表6.55“Source Capabilities Extended Data Block(SCEDB)”。
image.png
image.png
image.png
image.png
image.png

1.1、Vendor ID(VID)Field

供应商ID字段应包含由USB-IF分配给源供应商的16位供应商ID(VID)。如果供应商没有VID,则供应商ID字段应设置为0xFFFF。具有USB数据接口的设备应报告与标准设备描述符中的idVendor相同的VID(请参见[USB 2.0]和[USB 3.2])。

1.2、Product ID field

产品ID字段应包含来源供应商指定的16位产品ID(PID)。具有USB数据接口的设备应报告与标准设备描述符中的idProduct相同的PID(参见[USB 2.0]和[USB 3.2])。

1.3、 XID field

XID字段应包含USB-IF提供给供应商的32位XID,供应商依次将其分配给产品。如果供应商没有XID,则该字段应返回零(参见[USB 2.0]和[USB 3.2])。

1.4、 Firmware Version field

固件版本字段应包含供应商分配给设备的8位固件版本号。

1.5、Hardware Version field

硬件版本字段应包含供应商分配给设备的8位硬件版本号。

1.6、 Voltage Regulation field

电压调节字段包含涵盖负载阶跃回转率和幅值的位。

1.7、Load Step Slew Rate

电源应在电压调节位字段的第0…1位报告其负载阶跃响应能力。

1.8、Load Step Magnitude

电源应在电压调节字段的第2位以IoC的百分比报告其负载阶跃幅度

1.9、Holdup Time Field

滞留时间字段应包含震源的滞留时间(见第7.1.12.2节“滞留时间字段”)。

1.10、Compliance Field

合规性字段是静态的,应包含来源在SPR中符合的标准(见第节7.1.12.3“合规性字段”)。

1.11、Touch Current Field

触摸电流字段报告电源是否满足特定的泄漏电流水平以及是否有接地引脚。
当电源的最大容量小于或等于30W时,当其漏电流小于65µA rms时,或当其功率容量在30W和100W之间时,当漏电流小于100µA rms,电源应设置触摸电流位(位0)。当在250VAC rms和50Hz下进行测试时,应根据[IEC 60950-1]测量总组合泄漏电流。
带有接地引脚的电源应设置接地引脚位(位1)。
接地引脚拟连接至保护接地的电源应设置位1和位2。

1.12、Peak Current Field

峰值电流字段应包含电源支持的峰值电流的组合(见第7.1.12.4节“峰值电流”)。
峰值电流为Source报告其在短时间内提供超过协商金额的电流的能力提供了一种手段。峰值电流描述符最多定义三种组合,即%过载、持续时间和占空比,定义为源支持的峰值电流1、峰值电流2和峰值电流3。电源可能不提供峰值电流功能。源应使用零填充未使用的峰值电流位字段。
峰值电流1、峰值电流2和峰值电流3内的位字段包含以下子字段:

  • 过载百分比
    • 应为报告的最大峰值电流,增量为电源提供的协商工作电流(IoC)的10%。高于25(11001b)的值被剪裁为250%。
  • 过载期
    • 应为最小滚动平均时间窗口,增量为20ms,建议值为20ms。USB电源传输规范3.2版,版本1.02023-10第237页
  • 工作循环
    • 应为过载周期的最大百分比,增量为5%。峰值电流1、峰值电流2和峰值电流3的值应分别为5%、10%和50%。
  • VBUS Droop
    • 应设置为1,以表明当出现vSrcPeak定义的过载条件时,VBUS上有额外5%的电压下降。但是,当出现过载情况时,建议Source应提供vSrcNew范围内的VBUS,并将此位设置为零。

1.13、Touch Temp Field

触摸温度字段应报告用于确定电源外壳表面温度的IEC标准。在适用的产品安全标准(例如,[IEC 60950-1]或[IEC 62368-1])中设置了电源触摸温度的安全限值。当其触摸温度性能符合[IEC 62368-1]中描述的TS1或TS2限值时,Source可能会报告。

1.14、Source Inputs Field

Source输入字段应识别为Source供电的可能输入。请注意,有些电源仅由电池(例如汽车)供电,而不是由更常见的电源供电。

  • 当位0被设置时,源可以由外部电源供电。
  • 当设置位0和1时,电源可以由外部电源供电,该电源被认为是有效的“无限”电源,即不会随着时间的推移而耗尽。
  • 当设置第2位时,电源可由内部电池供电。可以独立于比特0和1来设置比特2。

1.15、Number of Batteries/Battery Slots Field

电池数量/电池插槽字段应报告源支持的固定电池和热插拔电池插槽的数量。该字段应独立报告电池插槽的数量和固定电池的数量。
一个电源应不超过4个固定电池和不多于4个电池插槽。
固定电池应从0到3连续编号。指定给固定电池的编号在“连接”和“分离”之间不得更改。
电池插槽应按从4到7的顺序编号。分配给给定电池插槽的编号应在连接和分离之间切换。

1.16、SPR Source PDP Rating Field

SPR Source PDP Rating(SPR源PDP额定值)字段应报告在SPR模式下运行时,如表10.2“SPR标准电压和最小电流”所定义的源PDP额定的整数部分,表10.12“基于Port Maximim PDP并使用EPR电缆的EPR源能力”和表10.13“当Port Present PDP小于Port Maximum PDP并使用具有EPR电缆时的EPR源性能”。
所报告的源PDP额定值字段应保持不变,并应遵循单端口、多端口保证容量充电器或多端口共享容量充电器的[USB Type-C 2.3]要求。

1.17、EPR Source PDP Rating Field

EPR Source PDP Rating(EPR源PDP额定值)字段应报告表10.12“基于Port Maximim PDP并使用EPR电缆的EPR Source Capabilities”中定义的EPR Source PDP额定值的整数部分。如果震源不是具有EPR功能的震源,则该字段应设置为零。
报告的EPR源PDP额定值字段应保持不变,并应遵循单端口、多端口保证容量充电器或多端口共享容量充电器的[USB Type-C 2.3]要求。

2、Status Message

应发送状态消息以响应Get_Status消息。状态消息的内容取决于Get_Status消息的目标。发送到SOP时,状态消息返回港口的港口合作伙伴的状态。当发送到SOP或SOP时,状态消息返回一个活动电缆的电缆插头的状态。

2.1、SOP Status Message

响应发送到SOP的Get_Status消息而发送的状态消息使端口能够通知其端口伙伴source或Sink的当前状态。通常,在收到Alert消息后,端口将发送Get_Status消息。报告的一些事件是关键事件,如OCP、OVP和OTP,而其他事件是信息性事件,如电池状态从充电变为既不充电也不放电。
状态消息返回一个7字节的状态数据块(SDB),其格式如图6-37“SOP状态消息”和表6.56“SOP状态数据块”所示。
企业微信截图_17000201092586.png
image.png
image.png
image.png

2.1.1、Internal Temp Field

内部温度字段报告Source或Sink的一部分的瞬时温度。

2.1.2、Present Input Field

当前输入字段指示当前为Source或Sink供电的电源。
定义了以下位:

  • 位1表示存在外部源。
  • 位2表示外部无约束电源是交流电源还是直流电源。
  • 第3位表示由电池供电。
  • 位4表示非电池的备用内部电源

2.1.3、Present Battery Input Field

Present Battery Input(当前电池输入)字段指示当前为Source(电源)或Sink(接收器)供电的一个或多个电池。当前蓄电池输入字段仅在当前输入字段指示存在来自蓄电池的内部电源时有效。
该字段的上半字节指示哪个热插拔电池供电,上半字节中的位4对应于电池4,上半比特中的位7对应于电池7(参见第6.5.3节“Get_Batter_Cap消息”和第6.5.4节“Get_batter_Status消息”)。
该字段的下半字节指示哪个固定电池供电,其中下半字节中的位0对应于电池0,下半字节的位3对应于电池3(参见第6.5.3节“Get_Batter_Cap消息”和第6.5.4节“Get_batter_Status消息”)。

2.1.4、Event Flags Field

事件标志字段返回事件标志。OTP、OVP和OCP事件标志应在发生事件时设置,且仅在读取Get_Status消息时清除。
设置OTP事件标志时,温度状态字段也应设置为超温。
CL/CV模式位仅在作为可编程电源运行时有效,否则应忽略。当电源作为可编程电源运行时,CL/CV模式位应在限流模式(CL模式)下运行时设置,在恒压模式(CV模式)下操作时清除。

2.1.5、Temperature Status Field

温度状态字段返回设备的当前温度状态:正常、警告或温度过高。当温度状态字段设置为超温时,还应设置OTP事件标志。

2.1.6、Power Status Field

电源状态字段指示电源的当前状态。该字段的非零返回表示播发源功率正在降低,原因有:电缆不支持完整的源电流,源正在向其他端口供电,无法提供其完整功率,源的外部电源不足以支持完整功率,或者发生了导致源降低播发功率的事件。
Sink应将此字段设置为零。

2.2、SOP’/SOP’’ Status Message

响应发送到SOP或SOP的Get_Status消息而发送的状态消息使源或接收器能够获得电缆电缆插头的当前状态。通常,USB主机和/或USB设备将使用Get_Status消息来管理电缆的电缆插头温度。状态消息返回一个2字节的状态数据块(SDB),其格式如图6-38“SOP’/SOP’‘状态消息”和表6.57“SOP’/SAOP’'”状态数据块“所示。
无源电缆插头不应指示热关闭。
image.png
image.png

2.2.1、Internal Temp Field

内部温度字段报告插头的瞬时温度,单位为°C。内部温度应是单调的。电缆插头应在每次tACTempUpdate时报告其内部温度。

2.2.2、Thermal Shutdown Field

当插头的内部温度超过有源电缆VDO中报告的内部最高温度时,也应设置热关闭标志。一旦设置了该位,它应保持设置状态,插头应保持热关机状态,直到出现硬复位或有源电缆电源断开。电缆复位不应清除热关机标志。

3、Sink_Capabilities_Extended Message

应发送Sink_Capabilities_Extended消息以响应Get_Sink_Cap_Extended消息。Sink_Capabilities_Extended消息使Sink或DRP能够向Source通知其作为Sink的功能。
Sink_Capabilities_Extended Message应返回一个24字节的Sink Capabilities Extended Data Block(SKEDB),其格式应如图6-51“Sink_Cabilities _Extended Message”和表6.66“Sink Capability Extended Data Block(SKEDB)”所示。
image.png
image.png
image.png
image.png
image.png

3.1 Vendor ID (VID) Field

供应商ID字段应包含由USB-IF分配给Sink供应商的16位供应商ID(VID)。如果供应商没有VID,则供应商ID字段应设置为0xFFFF。具有USB数据接口的设备应报告与标准设备描述符中的idVendor相同的VID(请参见[USB 2.0]和[USB 3.2])。

3.2 Product ID (PID) Field

产品ID字段应包含Sink供应商分配的16位产品ID(PID)。具有USB数据接口的设备应报告与标准设备描述符中的idProduct相同的PID(参见[USB 2.0]和[USB 3.2])。

3.3 XID Field

XID字段应包含USB-IF提供给供应商的32位XID,供应商依次将其分配给产品。如果供应商没有XID,则该字段应返回零(参见[USB 2.0]和[USB 3.2])。

3.4 Firmware Version Field

固件版本字段应包含供应商分配给设备的8位固件版本号。

3.5 Hardware Version Field

硬件版本字段应包含供应商分配给设备的8位硬件版本号。

3.6 SKEDB Version Field

SKEDB版本字段包含SKEDB的版本级别。目前只定义了版本1

3.7 Load Step Field

“加载步长”字段包含指示此Sink更喜欢的“加载步长回转速率”和“幅值”的位。详见第7.1.12.1节“电压调节场”。

3.8 Sink Load Characteristics Field

Sink应报告其首选负载特性。无论该值如何,在运行中,其负载不得超过Source_capabilities_Extended消息中报告的能力。

3.9 Compliance Field

合规性字段应包含Sink已测试和认证的来源类型(见第7.1.12.3节“合规性”)。

3.10 Touch Temp

触摸温度字段应报告用于确定Sink外壳表面温度的IEC标准。适用的产品安全标准(例如,[IEC 60950-1]或[IEC 62368-1])中设置了Sink触摸温度的安全限制。当其触摸温度性能符合[IEC 62368-1]中描述的TS1或TS2限制时,接收器可能会报告

3.11 Battery Info

电池信息字段应报告Sink支持的固定电池和热插拔电池插槽的数量。此字段将独立报告电池插槽的数量和固定电池的数量。USB电源传输规范3.2版,版本1.02023-10第263页电池信息字段中报告的信息应与Source_Capabilities _Extended Message的电池信息字段报告的信息相匹配。
Sink的固定电池数量不得超过4个,电池插槽数量不得超过四个。
固定电池应从0到3连续编号。指定给固定电池的编号在“连接”和“分离”之间不得更改。
电池插槽应按从4到7的顺序编号。分配给给定电池插槽的编号应在连接和分离之间切换。

3.12 Sink Modes

Sink模式位字段应识别接收器可使用的充电能力和电源。当比特0被设置时,接收器能够使用PPS源进行快速充电。
Sinnk可以使用的电源:

  • 当比特1被设置时,信宿具有由VBUS来源的能力。
  • 当设置第2位时,接收器能够通过外部主电源供电。
  • 当设置第3位时,接收器能够由电池供电。
  • 当设置第4位时,接收器能够由具有基本上无限能量的电池供电(例如汽车电池)。
  • 当设置了第5位时,接收器具有支持AVS的能力。

位1-5可以彼此独立地设置。该组合指示Sink可以使用什么电源。例如,一些Sink仅由电池(例如,汽车电池)供电,而不是由更常见的电源供电,并且一些Sink只由VBUS或VCONN供电。

3.13 Sink Minimum PDP

Sink Minimum PDP字段应包含Sink所需的最小功率,四舍五入到下一个整数,以操作其所有功能模式,除非为其电池充电(如果存在)。sink最小PDP字段应小于或等于接收器操作PDP。Source使用该值来确定它是否有足够的功率来最低限度地支持连接的Sink。如果Sink具有EPR功能,并且无法在小于100W的PDP下运行,则应将该字段设置为零。

3.14 Sink Operational PDP

Sink操作PDP字段应包含制造商推荐的接收器PDP,四舍五入到下一个整数。这对应于Sink设计用于操作的源的PDP评级(见第10.3.2节“规范性接收器规则”)。汇点操作PDP应足以正常操作汇点的所有功能模式,并为汇点电池充电(如果存在)。对于带电池的接收器,其应与接收器附带的充电器的PDP额定值或推荐充电器的PDP评级相对应。如果Sink具有EPR功能,并且无法在小于100W的PDP下运行,则应将该字段设置为零。

3.15 Sink Maximum PDP

接收器最大PDP应为接收器在任何操作条件下消耗的最高电量,四舍五入至下一个整数,包括对电池充电(如果存在)。信宿最大PDP字段不应小于信宿操作PDP,但可以相同。源使用该值来确定其为连接的接收器预算的最大功率。如果接收器具有EPR功能,并且无法在小于100W的PDP下运行,则应将该字段设置为零。

3.16 EPR Sink Minimum PDP

EPR Sink Minimum PDP字段应包含EPR Sink所需的最小功率,四舍五入到下一个整数,以操作其所有功能模式(如果存在,则为其电池充电)。EPR接收器最小PDP字段应小于或等于EPR接收器操作PDP。Source使用该值来确定它是否有足够的功率来最低限度地支持连接的Sink。如果接收器不具备EPR功能,则该字段应设置为零。

3.17 EPR Sink Operational PDP

EPR接收器操作PDP字段应包含制造商推荐的接收器PDP,四舍五入至下一个整数。这对应于接收器设计用于操作的EPR源的PDP评级(见第10.3.2节“规范性接收器规则”)。EPR接收器操作PDP应足以正常操作接收器的所有功能模式,并为接收器的电池充电(如果存在)。对于带电池的接收器,其应与EPR接收器附带的充电器的PDP额定值或推荐充电器的PDP评级相对应。如果接收器不具备EPR功能,则该字段应设置为零。

3.18 EPR Sink Maximum PDP

EPR接收器最大PDP应为EPR接收器在任何操作条件下消耗的最高功率,四舍五入至下一个整数,包括对电池充电(如果存在)。EPR接收器最大PDP字段不应小于EPR接收器操作PDP,但可以相同。源使用该值来确定其为连接的接收器预算的最大功率。如果接收器不具备EPR功能,则该字段应设置为零。

4、Vendor_Defined_Extended Message

提供Vendor_Defined_Extended Message(VDEM)是为了允许供应商使用扩展消息格式交换本规范定义之外的信息。
Vendor_Defined_Extended消息应至少包含一个供应商数据对象VDM标头,并且最多可包含256个额外数据字节
为确保vendor_Defined_Extended消息的供应商唯一性,所有vendor_Dfined_Extended消息都应包含由VDM标头中的USB-IF分配的有效USB标准供应商ID(SVID)
VDEM不定义任何结构,可以按照供应商选择的任何方式创建消息。
Vendor_Defined_Extended消息不得用于直接电力协商。然而,它们可能被用来更改本地策略,影响通过正常的PD消息提供或消费的内容。例如,Vendor_Defined_Extended消息可用于使Source能够通过Source_Capabilities消息提供额外功率。
如果PD规范中包含等效功能,例如身份验证或固件更新,则不应使用Vendor_Defined_Extended Messages。
消息格式如下图:
image.png
VDM报头应为供应商定义的扩展消息中的前4个字节。VDM标头提供命令空间,允许供应商为自己的目的自定义消息。
VDEM中的VDM标题应遵循第6.4.4.1节“非结构化VDM”中定义的非结构化VDM-标题格式。
VDEM只能在明确合同成立后发送和接收。
VDEM消息序列不得中断任何其他PD消息序列。
VDEM不定义VDM报头中的位B14…0的内容。SVID所示的供应商全权负责其定义和使用。当PD上出现硬复位时,端口合作伙伴和电缆插头应退出使用VDEM输入的任何状态。
以下规则适用于VDEM消息的使用:

  • VDEM只能在明确合同到位时使用。
  • 在建立明确合同之前,不得发送VDEM,如果收到,则应忽略VDEM。
  • 电缆插头不得启动VDEM。
  • 在任何其他情况下,不得启动或响应VDEM。
  • VDEM只能在激活模式下的模式操作期间使用,即只有在UFP确认进入模式命令后,才能发送或接收VDEM。活动模式和相关VDEM应使用相同的SVID。第270页USB电源传输规范第3.2版,版本1.02023-10
  • VDEM可与SOP*数据包一起使用。
  • 当DFP或UFP不支持VDEM或不识别VID时,应返回not_Supported消息。

注意:不建议使用带块的VDEM,因为这比使用非结构化VDEM效率低。

其他扩展消息请查看英文原版

USB PDUSB Power Delivery)协议是一种新兴的USB充电协议,它可以实现高效的充电和电源管理。USB PD协议包含多个数据包类型,这些数据包类型有特定的作用。下面,我们来看一下USB PD协议包解析的相关内容。 USB PD协议包分为以下几种: 1.令牌数据包(Token Packet):用于传输令牌,包含控制信息。令牌数据包被用于在接收器和发送器之间进行流控制。 2.数据数据包(Data Packet):用于传输数据,包括可变数据和固定数据;能够传输的数据速率与USB 2.0协议相同,最高速率为480 Mbps。 3.扩展数据包(Extended Data Packet):用于传输大量数据,其数据传输速率可高达10 Gbps。 4.源能量数据包(Source Power Packet):用于传输有关源能量能力的信息,包括最大输出电流和最大输出电压。 5.信令数据包(Message Packet):用于传输控制信息和通知信息,比如设备的连接和断开等;该类数据包还包括对安全性的支持。 6.硬件数据包(Hardware Packet):用于传输外设信息,比如设备的类型和识别信息等。 通过对上述USB PD协议包的解析,我们可以了解到USB PD协议的具体传输方式和数据类型,这对于开发和应用USB PD协议的设备非常重要。同时,我们也可以看到,USB PD协议的高速传输和可靠性能大大提升了设备的充电和电源管理效率,为设备的使用提供了更好的体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦成大佬的第N天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值