版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、TahtP 叫门EiibnJ' IFiiorfl:h Tll-'fTYPE-C PD升压协议全解析PD是Power Delivery 的简称,代表着TYPE-C电力传输的一个通讯协议。 一个简单的TYPE-CPD使用环境,需要下面几个设备构成:HOST DEVICECABLE (即:主机,机,EMARKERPD的协议书主要的内容集中在:PD协议的BM(编码规则;PD协议的4B5B解码;PD协议的通信流程;PD协议的通信指令结构;PD协议的通信内容解析;PD 协议独立与USB>议之外,但由于TYPE-C口的兼容特性,可以让 PD协 议、QC协议、MTK协议、FCP协议等快冲
2、协议熔于一炉。PD的物理层由发射模块和接收模块组成,由于 CC是单线协议,所以所有通 信都是半双工的。0和1。BMC编码规则是曼切斯特编码的一个版本,按照脉宽来设定的010'1 iQi 1 Q 1000Oaia lln-j-Ln_rL_n日 g LrLPLrLrLFLrLrmrLnLrLrLrL 可以从上图看出,01的编码并不以电平的变化为依据,而是按照脉宽来决 定。BMC的最大频率达330KHZ单指令长度在1ms内。通过逻辑分析仪对波形的读取,我们可以看到未经1/251 昭总1 Sag1 5£话1R 三 I 匸三.上 <21 上 J r I 2 i| W1 sagBM
3、C解码的原码LSBmf图二通过BMC从左到右按照脉宽解码后,我们可以得到一系列 01的无序组合。通过对01组合的观察,可以看到从左开始有 64对01的前导码,来作为数 据的等待和除干扰。64对前导码后,才是需要关注的数据内容。通过BMC解码后,并去除前导码的数据,也并不是最终可以解析的数据。PD 通信协议在这里增加了一个软编码,称为 4B5B编码。即接收到的数据每5个二 进制数据,需要经过一个4B5B编码表还原成正确的PD通信数据。看到这里,都可以想到无线电的加密工作了,但是PD官方资料给出的解释是4B5B是为了降低接收器的设计复杂度并且允许更加多样化的接收器设计。4B5B 的解码表如下:Ka
4、me4 bl5b SymbolDescription00000UllOtit* ddU QIODO:OWOlhex山120010101 aohK data 23OOll10101iiex 44 u 340100DIOIOhex data 45OlOt01011hex daw 呂6ClioOHIOhex da Cd 67Olli01111hex曲耳F9lOOOlaoioh塚 data 9q100110011hex daci 9A1010lonohex dau AB1011Ulllhe* dju 5C1100IIOIOhe» dauCDllOiUOllhex dacji DE1110IH
5、OOhex dau iFFILlliiiaihex data IFK<odeiimSTarrayndi p IK.codeIQOOlSUrtjyfnch B2fiSTJK-code00111Hard Reset »1K-codeLtOOlHlard Resei »2FUPK*"ode01 laiEOF End or Parke*ErroF000005111 nae Ibt uic«dError00001Sitall nocibc usedErrorOQOIOShall rctbf uud血i#rv毎dError00011£11311 nc
6、tbe us«dfiewrv 时ErrorooiaoSMI not be used血 MTverfError00101Slull ncc be uud5lb'«f JEncodeoonoStartsynch *3Arffrv创Error 1000Shall roc he u社dErroroiiaoShall Ectlbe usedficjnecfErrorlooaoShall 口Qtbe usedErro*HillSluH net beuud根据图二我们可以做一个4B5B的解码例子:取出图二中引导码后,我们可以得到的数据:00011 00011 00011 1000
7、110010,通过上述4B5B表格 进行解码 后我们得 到最 终的数据 为:SYNC1- SYNC1-SYNC1-SYNC2-1看到这里可能你有疑问,00011在表格中不是Reserved吗是的,没错,4B5B 还有个编码规则,就是从左到右记录数据时,需要将读取的数据倒过来编译,即 00011 要倒成 11000。由于PD通信的流程复杂,且BMC解码后的数据往往长达上百位,人工编解 码耗时耗力且容易出错,所以需要使用一些自制的电脑软件来进行辅助解码,于是才有了下面的自制解码软件。0 PDsass解析10010 ooion 01111 10111 0111.1 1,10011 10010 011
8、11 01001 01111 01001 01011 01111 01101 01010 01111 01111 01111数量24解析结果:synlsynlsyriStool0110OCOl0010OOMnil0000lOOlOOOlOOM1000000010001100KSGH君廿D a t aTx anSOP2400mASourceCapSOOOmVDFP2000jnAPD2.014800mVSOURCEOwA13gid:000 BataOlOOnYZ斫|十-壬图四该软件就包括了 4B5B的解码,和数据内容的解析,能够快速的将 BMC解码 的数据内容转换成功能定义。'二'
9、7PD协议内容繁多,主要包括以下流程: Power Negotiation电压协商流程(电压升降压) Goto min Op erati on Soft Reset软件复位流程 Hard Reset 硬件复位流程 Cable Reset Po wer Role Swa p Fast Role Swa p Data Role Swa p VCONN Swa p Additi on Cap ability and Status Security密钥流程 Firmware Up date固件升级流程 Structured VDM 厂商自定义结构流程 BIST PD协议时序测试流程今天我们就根据Pow
10、er Negotiation 讲解PD电压升降的流程结构。Power Negotiation流程发生在Source与Sink之间,在这里 Source可以是适配器,可以是车充,也可以是移动电源。Sink可以是任何支持Type-c PD 的受电端。Power Negotiation的协议流程包括以下PD旨令: Source send CAP ABILITY供电能力指令(包含内容:具有哪几种电压值和电 流值) Sink send REQUEST需电请求指令(包含内容:选取哪种电压和电流值) Source send ACCE PT同意需电请求指令(包含内容:经过对比需电在自己的 供电范围内) Sou
11、rce send PS_RDY完成需求指令 (包含内容:已经成功进行能电压改变) GOODCR指令接收通过指令在实际应用中这些指令是怎么操作的呢, 接下来我来详细述说:首选Source 端工作在TYPE-C的 CC模式5V3A检测模式下,一旦检测到有 SINK受电端接入, 便开始输出5V给SINK端。而这时在CC线上,Source开始不间断发送 Source send CAP ABILITY指令, SINK端接收到Source send CAPABILITY指令后,判断PD通信数据符合协议规 定,便回复GOODCRC示已经成功接收到数据,接着SINK会根据Source端能够 提供的电压进行选择
12、,SINK选择好合适的电压电流便对 SOURC进行供电请求, 于是SINK发出Sink send REQUEST进行需电请求指令。Source 接收至U Sink send REQUES后,会给 SINK回复 GOODCR然后对 Sink send REQUES指令请求的电压进行校对,如果符合 Source的供电能力,Source 便对SINK发Source send ACCEPT指令,表明同意 SINK的端电压请求。SINK接 收到Source发送的ACCEP指令后,回复 GOODCRCSource接收到SINK发出的 GOODCRC,便开始进行电压调节,电压调节成功后,便发出Source
13、send PS_RDY 表示已经调整电压成功,SINK收到后,便回复GOODCRC示接收指令成功。以上就是一个完整的升压指令流程。PD 的通信指令(就升压来说)有两种方式一种方式是控制包,而另一种是 带数据包。指令包格式如下:P j如E fgT I 咒囂 S" II 盼MelfO(>(endOfPatioeiF图五一个完整包结构包括引导码,SOP使用场景码,Message Header功能码, ByteO-n数据码和CRC校验码,EOP结束码。如果Byte数据码没有,说明指令仅仅作为控制指令使用,没有数据内容, 所以叫做控制包。有数据内容的叫做数据包,通常数据包里携带了要变化的
14、电压 值和电流值等信息。引导码:BM(解码后可以看到由64对01组成,主要为了进行接收缓冲。SOP码:BMC解码后由20位的二进制数组成,通过4B5B解码后我们可以看到 SOP由 Sync1和Sync2的解码值构成。表明该指令是应用在 Source与SINK之间。 此处还有SOP、SOP的场景码,表明是Source与E-marker之间的场景指令。Message Header功能码:BMC解码后由20位的二进制数组成,经过 4B5B 解码后为16位二进制数据构成。Message Header通常包括:数据包还是控制包说明,是由 SINK还是SOURCE 发出的指令,PD的协议版本,如果是数据包
15、还包含了有多少个数据包的信息。详细表格说明如下:0 data control1 extended msg'0; COTirol i data ngg单僅;心1- "rrrirUI1 J; - iiii i L:rMm.1 '11FjClt'h!-"1 ' r T r ' ' 11 1 r ? 1'«ir HE/,一- *一 m 4'' -111 i- nlrill0: jifikt ; smyx 亡只用干SOP.且»收方 不对其I确性蛍榜査0: UFP1 : DFPQ: messag
16、e 来自DFP_TPI:歸驴来自CABLEPLUG9 fcfTvFrt申hr-2M0: PD3 0I结倉number £>f da口悶悒利Br足揑 爲包書足藪据®酬后根牖滂夬走星何种包吳IIM>其中,低四位二进制码比较重要,代表的是该PD指令的名字,比如说升压中用到的Source send CAP ABILITY就是又这四位来定义的。 其它指令的定义表如下:nits 4.0TypeWent hyValid Stan ofPiickelU 0U00Reserved11001坨他Miihilit ivsSciirrp nr Ihuil-Rnlp PowerSOK o
17、iulytiotuoSink onlysup only(I'OOllwvfTester, Source orSOF*0 0 ICOiiinkj aptibilitiesSuurte or fHijl-Rcjk'JowerSOP d'hlyOOWlSourte or SinkSOI'anlyQOLIOq血£Source ar Sink卩的ilyOOlll-O lllCl(HillSnurre, Snikor fjdble PliigSOP*10000-1 1111Reserved图七在指令包的结构中,过了 Message Header向右就是数据区域,通
18、过 4B5B 的转换后,SOP是 16个二进制位,MessageHeader也是16个二进制位,而数据 区域,每个独立的数据块包括了 32个二进制位。所以ByteO (32位)Bytel (32 位)那么新的问题又来了,一条完整的指令包到底怎么判断包含了多少的 数据块呢,这个时候就需要由 Message Header来进行判断了。Message Header 的12到14位表示1到7个数字,代表的就是指令包的数据数量,所以我们可以 认为指令包的最大数据数为7。数据模块一般应用在Source send CAP ABILITY, Sink send REQUEST等这样需要带电压电流的 PD指令中
19、。数据模块右边就是一个32位的数据校验区域,也称作CRC校验。CRC校验 是PD通信协议中独特的一套校验方式,为了保持数据的完整与纠错,整个PD指令任何一个位变动,都会造成 CRC改变。经过了引导码、SOF码、MessageHeader data码、CRC码后,接下来就是 EOP码即结束码,在4B5B中我们可以看到接收到 01101的BMC编码,即代表PD 指令包全部接收完毕。下面我们就实际做一次PD协议分析:首先准备好待测试的PD适配器、PD数据线(两头都是TYPE-C勺那种)、PD 测试架、逻辑分析仪。然后将插拔过程中PD的数据流程通过逻辑分析仪读取出来如下:4m JBmi f I | I
20、首先我们要做的就是PD指令的 然后通过协议分析软件进行代码解析, 令。m/kBMC解码,将脉冲长短变化成二进制数据, 为了更好的讲解,我们先人工分析一条指聖I" .鬥仲 ”. ”閹九引导码由64位二进制的01组成,这一段可以直接略过。.1 二.匚-十"I «尸E F严"(FMI -M-M,-rt r-"SOP码M2斗前 S1.56rrisEi II 11 匚 Q f * I . I t lii ini ri u Jii ! g s1,吕Sm国III ji I E a砌 2口21#世盹时1? n 0讯FWF1.6 ms1图十SOP*码从左到右BM
21、C解码后等于:00011 00011 00011 10001 根据图三进行4B5B解码我们可以得到:SYNC1-SYNC1-SYNC1-SYNC2 于是我们可以知道,该指令属于 SOURC与 SINK之间的指令。我们接着往下分析:M2L.64rn51.66m50 10 1 0才了冋 0 邮0 IjpITq?神Message Header 码从左到右 BMC解码后等于:10010 01110 10010 00101 。 通过 4B5B解码后为:0001 0110 0001 0010。15到0位为:0010 0001 0110 0001根据图六可以得到以下信息:从15, 14,13, 12位可以得
22、到此PD指令包括2个数据块。从11,10,9位可以知道此PD指令正在进行第一个回合。(PD指令 +GOODCRC令为一个回合)从8位可以得知此PD指令由SOURC发出。从7, 6位得知指令遵循的是规则。从5得知发指令的设备角色为DFP从4,3,2,1,0得到00001并查阅图七得到该指令名: MessageHeader 指令,为电压协商协议的发起指令。数据指令过长过程不再详叙,用协议软件可以分析得到:X11001 10010 01111 01001 01111 01001 01011 01111 01101 01010 01111 Olin 01111 llllD 01010 11010 10
23、101 lino解析结果:synlsyrtlsynlsyn20001pi 10poolmio0000nil0000100100010000100000001000iiouSGHeadeXDataTzanSOP2400*SouxceCap5000mVDFP2000mAPD2-014BOO>¥SOURCEOnAlseld:000DataOlOOnVBO清粽接下来我们用协议软件分析, 异常:图十一速度会快很多,能够迅速掌握这个流程功能和000110001100011100011001001010 01111 01111数量8lynl synl synl syn2 OOOil 0100
24、 0000 OOOC解析结果:ISGfleadeJDataTraaSOPGoodCRCOFFPD2-0SHTEIsgIdzOOOCtiol Ise图十二此指令为上条Message Header的回复指令。 接着下条指令为:10001 00101 oiaio bulllOQLO 01111 10111 01111 01011 10101 01111 Ollll 10010 pillO pllll pom鮮折结果;synl syrJ synl syn2 001,0 0100 0000 0001 0000 nil 0000 1100 0011 0000 0000 0001 0110 0000ISCH
25、eadexDataTr anSOP24OOI1ARequestobjectlOFFPD2-0SINKBseld:000DataOOl图十W此为SINK端发出的Sink send REQUEST指令,我们可以得到相关信息,已 经SINK请求的电压等级。SOURCE端的回复指令:000110001100011 10001 10010 OHIO 1001001111I- X ,2二I-JsynlEynl synl ayn2 0001 OLIO 0001 onoo解析结果:SGHeader SOP GoodCRCDataTranDFPPB2,0SOURCElsgld:000Ctroi UseS十五从该指令信息中,我们可以知道该信息由SOURC发出,用来回复SINK端发出的电压请求。接着SOURC端收到指令后,又发出的指令:00011s/nl00011syivl0001sgl10001 ,syn2lOlOl數量OOLlOHIO14QUO10101OOLlOllll000010010000100101OOLO1110lOLl11110 -OlLloiiij K 折
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 书法策划活动方案汇报
- 法国教育体系概述
- 脑血栓栓塞性脑梗死的卒中护理流程
- 爬山虎的脚结构特点 四年级语文上册课件
- 开展防范非法集资集中宣传月活动方案
- 《GBT 23909.1-2009无损检测 射线透视检测 第1部分:成像性能的定量测量》专题研究报告
- 《GBT 23562.2-2009冲模钢板下模座 第2部分:对角导柱下模座》专题研究报告
- 销售代理协议书属于
- 世界技能大赛协议书
- 有债务约定分手协议书模板
- 2025天津大学管理岗位集中招聘15人参考笔试试题及答案解析
- HXD3D机车总体介绍
- 教科版广州小学英语四年级上册 Module 7 单元测试卷含答案
- 2023年印江县人民医院紧缺医学专业人才招聘考试历年高频考点试题含答案解析
- 基于逻辑经验主义对命题的分析
- 安全通道防护棚计算书
- 中文介绍迈克尔杰克逊
- 安徽绿沃循环能源科技有限公司12000t-a锂离子电池高值资源化回收利用项目(重新报批)环境影响报告书
- 厦深铁路福建段某标段工程投标施工组织设计
- 《汽车电器故障问题研究4600字(论文)》
- EN462全套中文版本欧标像质计
评论
0/150
提交评论