USB type C PD快充协议,VBUS检测,CC通讯简介
详情
Type C PD协议简介
USB Power Delivery电力传输是Type-C接口的特征之一,当需要USB PD电力传输时,使用Bi-phase Mark Coded(BMC)编码协议,通过CC管脚进行通信,简单来说是一种快速充电标准, 超过3A以后都需要用PD协议来支持,使用USB Type-C的源(主机或下游集线器端口)可以在vbus上实现更高的源电流,以便能够更快地充电需要比USB3.2规范中指定的更多电流的移动设备或供电设备,所有USB主机和集线器端口都通过CC引脚来设置当前可用的电流水平,包含PD协议的Type-C 系统从Source到SINK的系统框图大致如下:
在Source的内部包含了一个电压转换器,且受到PD控制器控制,他会根据输入电压的条件以及最高可输出规格需求,此电压转换器可以是BUCK、Boost、Buck-Boost或者反激转换器。整个通信过程都在PD控制器的管控之下,USB PD还有一个开关,用于切换VCONN电源(电缆包含电子标签时用到)。当电缆接通之后,PD协议的SOP通信就开始在CC线上进行,以此来选择电源传输的规格,此部分由Sink端向Source端询问能够提供的电源配置参数(5V/9V/12V/15V/20V)。
Type-C中的定义
DFP(Downstream Facing Port):下行端口,可以理解为Host或者是HUB,DFP提供VBUS、VCONN,可以接收数据。在协议规范中DFP特指数据的下行传输,笼统意义上指的是数据下行和对外提供电源的设备。
UFP(Upstream Facing Port):上行端口,可以理解为Device,UFP从VBUS中取电,并可提供数据。典型设备是U盘,移动硬盘。
DRP(Dual Role Port):双角色端口,类似于以前的OTG,DRP既可以做DFP(Host),也可以做UFP(Device),也可以在DFP与UFP间动态切换。典型的DRP设备是笔记本电脑。设备刚连接时作为哪一种角色,由端口的Power Role(参考后面的介绍)决定;后续也可以通过switch过程更改(如果支持USB PD协议的话)。
USB PORT的供电(或者受电)情况,USB Type-C将port划分为Source、Sink.
如下波形为SINK 控制器申请一个9V电压输出的例子.
(1)SINK端发起SOP,申请获取Source能提供的规格资料
(2)Source回复能提供的规格列表
(3)SINK回复选择的电压规格,并带上所需要的电流参数,并发出相应的请求
(4)Source接受请求,并且把VBUS由5V抬升到9V
(5)在电压变化期间,SINK的电流会保持尽可能小,Source端VBUS到达9V并稳定之后,会发出Ready信号
(6)SINK端电流逐步抬升,若SINK需要降低电压,会重复以上过程
需要注意的是,在电压下降期间,Source为了让电压快速降低,Source会打开放电电路,达到额定值之后,Source会等待一段时间,电压稳定之后再发出Ready信号给SINK。
这种沟通方式的好处就是能确保任何电源的变化都能在SINK和SOURCE的规格范围内,避免出现不可控情况。
PD协议的通信编码为Bi-phase Mark Coded (BMC),通过CC脚进行通信,如下图。
BMC码是一种单线通信编码,数据1的传输,需要有一次高/低电平之间的切换过程,而0的传输则是固定的高电平或者低电平。每一个数据包都包含有0/1交替的前置码,起始码(SOP),报文头,数据位,CRC以及结束码(EOP)
如下图所示,展开后的CC脚PD通信波形
BMC编码的通信,也可以使用分析仪进行分析,用来抓取每个数据包,并且获得数据包的作用,如电压电流等.
PD3.0规范中,定义了以下电源配置清单:
对于5V/9V/15V来说,最大的电流为3A,在20V的配置当中,如果是普通的电流,则最大能够支持20V/3A,即60W,如果使用的是带了E-Marker的线缆,则供电能达到20V5A,即100W.
USB Type-C VBUS电流检测与使用
USB Type-C中新增了电流检测与使用功能,新增三种电流模式:默认的USB电源模式(500mA/900mA),1.5A,3.0A;三种电流模式由CC 管脚来传输和检测,对于需要广播电流输出能力的DFP而言,需要通过不同值的CC上拉电阻Rp来实现;对于UFP而言,需要检测CC管脚上的电压值来获取对方DFP的电流输出能力.
DFP-to-UFP和VBUS管理与检测
DFP 是一种在host 或hub上的 USB Type-C 端口,与device相连接,UFP 是一种在device或hub上的 USB Type-C 端口,与host或hub的DFP相连接, DRP 是一种既可作为DFP或UFP进行工作的 USB Type-C 端口, DRP在待机模式下每50ms在DFP和UFP间切换一次。当切换至DFP时,CC管脚上必须有一个上拉至VBUS的电阻Rp或者输出一个电流源,当切换至UFP时,CC管脚上必须有一个下拉至GND的电阻Rd。此切换动作必须由CC Logic芯片来完成。
当DFP检测到UFP插入之后才可以输出VBUS,当UFP拔出以后必须关闭VBUS,此动作必须由CC Logic芯片来完成。
注:上述的DRP不同于USB-PD DRP,USB-PD DRP指的是作为Power Source(提供者)和Sink(消费者)的电源端口,例如,笔记本电脑上的USB Type-C端口支持USB-PD DRP,既可以作为Power Source(连接U盘或手机时),也可以作为Sink(连接显示器或电源适配器时)