GND:线缆接地
TX RX:数据流data传输,支持2.0 3.0 speed兼容
VBUS:线缆cable电源,bus power
CC:电缆cable的连接、方向、角色检测和当前模式的配置通道; 有emark时, 一个成为VCONN,为电缆或者适配器供电,
D+,D-:dp dm,可以短接, usb2.0上做设备连接type检测,根据bc1.2,识别sdp,cdp,dcp
SBU:耳机、视屏,debug接口,dp(display port),
- host和device:一般host侧会将CC脚上拉,device侧会将CC脚下拉
确认VCONN的供电使用:有emark的线缆cable会通过下拉的电阻Ra,source检测到之后会提供VCONN
协商机制: 角色判断
CC(configuration channel)脚上上拉和下拉进行设置, PD快充出现后,CC脚用来做半双工通信,做power的供给协商
-
data role:(DRP)
usb2.0 有device、host、otg
usb3.0中是:
DFP:down facing port,也就是下行端口,对应usb2.0上的host,提供vbus、vconn、
UFP:up facing port, 上行端口,对应usb2.0的device,从vbus中取电,提供数据
DRP:DRD或者DRP,usb2.0的otg;刚连接时的角色由 power role决定,后续也可以通过switch动态切换 -
power role (source、sink):
根据usb port的供电和受电,将typec port分成source和sink角色 -
CC引脚作用:
1、检测usb typec端口的插入
2、判断插入方向,做数据链路翻转
3、两个连接的port之间,建立data role,如adb
4、配置VBUS,通过sink端的下拉电阻判断规格; 在PD中做协商,半双工通信
5、配置VCONN,通过下拉电阻判断有emark使用
6、检测配置的其他模式,如DP,耳机 -
typec的data role和power role的识别协商:
连接方向,data role , power role 角色检测
1、source端:
source端CC引脚上有上拉电阻Rp,这个电阻值表示了source能提供的功率大小, Sink端CC引脚上有下拉电阻Rd,
source端使用一个MOSFET控制电源,初始状态下FET是关闭的
source端会去检测是否有下拉电阻,有的话说明检测到了SINK
source端根据cable中哪一个CC引脚有下拉Rd,去做数据链路翻转,同时另一个会去做VCONN
source端检测到SINK之后,提供VBUS,同时VCONN供电
source端可以动态的调整Rp的大小,告知可提供的SINK使用的电流大小
source端会持续检测Rd的存在,检测不到表示连接断开,电源断开
source端还支持高级功能,DP或者alt mode,也是通过CC脚通信
2、SINK端:
SINK端的两个CC引脚上都有下拉电阻Rd到GND
SINK端通过检测VBUS,确定source是否连接
SINK端通过CC脚上拉特性,来检测usb的通信链路(翻转)
SINK端可选的去检测Rp的值,判断source可提供的电流
支持DP的话,通过CC脚半双工通信
3、DRP:
当作为source时,通过MOSFET控制VBUS供电与否
DRP通过switch切换自己的角色
typec其他模式:
1、显示、视屏 DP alt mode (Display Port Alternate Mode)
系统通过usb PD协议中的VDMs的通信(CC引脚),告知支持DP模式,此模式下,usb superspeed(TX RX)允许部分传输usb,部分传输DP
2、 音频 Audio Adapter Accessory Mode
模拟耳机接口转typec,usb2.0链路被用来传输模拟音频信号,带MIC的话,MIC信号接到SBU上,电源可以提供到500ma电流
host端如何识别到音频模式:音频接口检测脚和CC引脚连接通信,CC引脚和VCONN连接,并且下拉电阻小于Ra/2(400ohm),或者分别对地GND,下拉电阻小于Ra(800ohm),
host就会识别为音频模式
PD协议:
PD协议是Power Delivery,简单来说是一种快速充电标准。
source内部包含一个电压转换器,受到PD控制器的控制,cable接通后,PD协议的SOP(start of package)通信就开始在CC线上进行,由SINK申请电压规格:
SINK控制器申请一个9V电压:
SINK端发起SOP,申请获取source可以提供的规格
SOURCE端回复能够提供的规格
SINK端回复所需要的电压规格,并携带上电流参数,发出对应的请求
SOURCE端接受请求,并将电压从5V提升至9V
SOURCE端电压变化过程中,SINK端电流保持尽可能的小,等待SOURCE端VBUS电压变为9V并稳定之后,会发出READY信号
SINK端电流逐步抬升至配置电流
抬压和降压过程中,电流都要保持小,防止电流过大,等电压突然变大时,负载过大
PD协议的通信编码BMC:
通过CC引脚通信
BMC码是一种单线通信编码,数据1的传输,需要有一次高低电平之间的切换,0的传输是固定的高电平或者低电平,
每一个数据包都包含有0/1交替的前置码,起始码(SOP),报文头,数据位,CRC以及结束码(EOP)
BMC编码的通信,也可以使用分析仪进行分析,用来抓取每个数据包,并且获得数据包的作用,如电压电流等
对于5V/9V/15V来说,最大的电流为3A,在20V的配置当中,如果是普通的电流,则最大能够支持20V/3A,即60W,如果使用的是带了E-Marker的线缆,则供电能达到20V5A,即100W
支持超高速传输(USB3.1),或者供电电流超过3A,cable必须使用Emark进行表示;cable中有IC,需要从VCONN中或得电源
线缆cable中有1K的下拉电阻Ra,cable插入的时候,会检测到CC引脚的电压下降,具体的电压会告诉主机哪个端子被sink的5.1k电阻下拉,
那个端子被cable的1k电阻下拉,因此线缆的插入防线也可以被识别到,
线缆cable接通后,SOURCE的一根CC线被来自VCONN的1K拉低
SOURCE检测到此电压之后,判断线缆中有Emark,因此切换到VCONN到对应的CC脚
之后,PD通信会包含Emark和SOURCE之间的通信(SOP’和SOP’'),SOURCE和sink之间是SOP
PD握手解析:
以下过程为Macbook2017+PD FL7102的通信过程,不同的PC和不同的PD由于自身配置的不同,过程会有所差异
(1)由于线材使用的为有源线材,带有E-Marker,因此通过SOP’对线材的Capability进行确认,此动作由PC发出,方向为OUT
(2)随后由于PD默认为RD,因此PC先发出Source Capability,声明能力为5V/3A,此时PC为Source,整机为SINK,整机请求5V/3A
(3)PC告知整机Power准备好了,并同时获取整机的SINK以及Source的能力
(4)PC通过Discover,获取PD的身份,并且从ACK中知道PD为AMA
(5)通过获取SVID得知其为Displayport
(6)此时PD会ACK PC,告知其支持的模式2lane,4lane或者是其他的定义接口
(7)PC在此沟通过程会在整机提供的多种模式中选择其中一种,一般选择2lane模式
(8)根据不同Source的不同角色需求,PD此时请求PRS(Power-Role-Swap),请求由SINK转为Source,PC Accept
(9)整机通过Source Capabality,发送PDO给PC(5V/3A 9V/3A 12V/3A 15V/3A 20V/3A)
(10)PC选出一个电压,并且返回一个电流给整机
(11)整机PsRdy,且发出中断,请求AUX通信,进入DP握手过程
快充协议(QC、PD、PE):
按照充电快慢,可以分为:BC1.2、usb/lightnig标准、QC和PD
按照充电协议,可以分为:高通QC、华为FCP/SCP、MTK的PE、oppo的vooc、苹果