USB Type-C,接口上的大统一?

这款 24-pin 连接器的机械设计反应了设计人员从 Micro-B 连接器上获得的历史教训,它无需确定插入的正反方向并可实现 10000 次的插拔。使用者再也不需要担心“哪头上,哪头下”,因为 USB Type-C 连接器没有正反方向之分,所以从任一方向插拔皆可。此外,不像其他大多数 USB 电缆,USB Type-C 电缆两端使用相同的插头。
数据信道增加
USB Type-C 电缆包含两组支持 10Gbps USB 3.1 超速标准的 Tx/Rx 信号信道,提供了 20Gbps 总带宽,理论上可实现 2 倍的数据传输和下载时间改善。并保留单独一组引脚给使用 USB 2.0 连接的传统应用。
供电性能增强
该电缆还包含配置信道(Configuration Channel, CC),可用于发现、配置和管理 USB Type-C 的先进供电(Power Delivery)功能,为外设或移动设备实现高达100W 的供电能力。
更灵活的 USB 架构
除了最新的 USB 标准中定义的“上行数据流埠(Upstream-Facing Port, UFP)”和“下行数据流埠(Downstream-Facing Port, DFP)”,USB Type-C 规范还定义了“双向用途埠(Dual Role Port, DRP)”。这种新型的 USB 数据端口能够作为 DFP 或 UFP 两者中任一个进行工作。DRP 可被永久地配置为 DFP 或 UFP,也使用 FPGA 技术实现灵活的 USB Type-C 接口控制能在这两种端口间动态切换。
供货商自定义消息(VDM)
该标准还可以扩展用于非 USB 应用的连接。结构化的 VDM 允许主机发现和配置连接设备的可选模式,重新分配信号对用于非 USB 端口,如 PCIe 或显示端口(DisplayPort)。非结构化的 VDM 允许供货商传输供货商专用信息和配置控制数据。

USB Type-C 连接器的 24 个引脚在插头中呈对称分布,可实现“正常”或“反向”的插拔。对于用户使用来说很方便,但是仅有一部分的连接是“对称”的,即USB 连接是无需考虑方向的。
USB Type-C 接口的对称连接包含:
D+/D-:当 USB3 接口不可用时,这些引脚为 USB2 信号提供信号信道。
Vbus/GND:这些引脚能够为上行数据接口提供高达 100W 的供电能力,或者在一些情况下支持点对点供电。
剩余的连接是“非对称”的,也就是说在连接器插入方向错误时这些连接无法正常工作,除非这些端口在电气或逻辑方面做了修正。
USB Type-C 的非对称连接包含:
Tx1/2 Rx1/2:提供最多 2 通道的超速数据链路,实现双向高达 20Gbps 的带宽。
CC1/CC2:配置信道信号用于连接的发现、配置和管理。请注意它们中仅一个信号用作配置信道,另一个在上行数据流端口中用于为 USB 逻辑供电。
SBU1 & 2:边带使用(Side Band Use)信号适用于传输非 USB 信号,它们用于模拟音频(Analog Audio)模式,也可用于可选(Alternate)模式。

PD 通信使用一条 CC 通道,由 USB 供电规范定义。它采用半双工通信机制,使用双相标记编码(Bi-phase Mark Coding, BMC)传输 4b5b 编码的数据,可简化接收器设计。BMC 可被认为是一种曼彻斯特(Manchester)编码。此外,数据使用循环冗余校验(Cyclic Redundancy Checking, CRC)算法来防止数据错误。

不要看着USB Type-C好像能支持最高20V/5A,实际上这需要USB PD,而支持USB PD需要额外的PD芯片,所以不要以为是USB Type-C接口就可以支持到20V/5A。

上图DFP (Downstream Facing Port)也就是主, UFP (Upstream Facing Port)为从。除了DFP、UFP,还有个DRP (Dual Role port),DRP可以做DFP也可以做UFP。当DPR接到UFP,DRP转化为DFP。当DRP接到DFP,DRP转化为UFP。两个DRP接在一起,这时就是任意一方为DFP,另一方为UFP。
在DFP的CC pin有上拉电阻Rp,在UFP有下拉电阻Rd。未连接时,DFP的VBUS是无输出的。
连接后,CC pin相连,DFP的CC pin会检测到UFP的下拉电阻Rd,说明连接上了,DFP就打开Vbus电源开关,输出电源给UFP。 而哪个CC pin(CC1,CC2)检测到下拉电阻就确定接口插入的方向,顺便切换RX/TX。
电阻Rd=5.1k,电阻Rp为不确定的值,根据前面的图看到USB Type-C有几种供电模式,靠什么来甄别?就靠Rp的值,Rp的值不一样,CC pin检测到的电压就不一样,然后来控制DFP端执行哪种供电模式。
需要注意的是,上图里画了两个CC,实际上在不含芯片的线缆里只有一根cc线。含芯片的线缆也不是两根cc线,而是一根cc,一根Vconn,用来给线缆里的芯片供电(3.3V或5V),这时就CC端没有下拉电阻Rd,而是下拉电阻Ra,800-1200欧。

例如CC1對應的是SSTX1與SSRX1。下圖的右邊整合了MUX(多工器(Multiplexer)),由於USB 3.1的data rate高達10 Gbps,為了避免PCB的走線出現分支,所以正反插進來的訊號會由MUX來切換,正插時,切換到SSRX1&SSTX1,反插時,切換到SSRX2&SSTX2。

Type-C 以CC pin决定执行那个模式。DFP会有上拉电阻Rp,UFP会有下拉电阻Rd,当DFP与UFP相接,CC pin上就会有分压,Rd是固定5.1k,而Rp就会依照DFP的类别,而有不一样的阻值。UFP会monitor CC pin上的分压来知道DFP的VBUS种类。另外DFP也用不同大小的定电流源来供给CC pin,当电流流到uRd,同样可以产生电压,让UFP知道DFP的VBUS模式。
在UFP是由CC pin上的电压,来得知DFP的VBUS输出能力。例如DFP为5V/3A,它可以在CC pin上供330uA的电流,在UFP端的CC pin上就会得到330uA * 5.1k=1.683V,UFP就可以判断DFP为vRd-3.0。或是DFP用一个上拉电阻10K到VBUS,UFP端的CC pin上的电压为5v * 5.1k /(5.1k+10k)=1.688V,UFP一样可以判断DFP为vRd-3.0。
USB Type C也支援USB PD,而USB PD的Protocol会转为BMC的信号,在CC pin上传输。

USB Type-C和DisplayPort,PCIE
USB PD是BMC编码的信号,而之前的USB则是FSK,所以存在不兼容,不知道目前市面上有没有能转换的产品。
USB PD是在CC pin上传输,PD有个VDM (Vendor defined message)功能,定义了装置端ID,读到支持DP或PCIe的装置,DFP就进入替代(alternate)模式。
如果DFP认到device为DP,便切换MUX/Configuration Switch,让Type-C USB3.1信号脚改为传输DP信号。AUX辅助由Type-C的SBU1,SUB2来传。HPD是检测脚,和CC差不多,所以共用。
而DP有lane0-3四组差分信号,Type-C有RX/TX1-2也是四组差分信号,所以完全替代没问题。
而且在DP协议里的替代模式,可以USB信号和DP信号同时传输,RX/TX1传输USB数据,RX/TX2替换为lane0,1两组数据传输,此时可支持到4k。
如果DFP认到device为DP,便切换MUX/Configuration Switch,让Type-C USB3.1信号脚改为传输PCIe信号。同样的,PCIe使用RX/TX2和SBU1,SUB2来传输数据,RX/TX1传输USB数据。
这样的好处就是一个接口同时使用两种设备,当然了,转换线就可以做到,不用任何芯片。

Type C利用CC pin来传输USB power delivery protocol信号,与Type A/B不同。Type A/B是由VBUS来传输USB PD protocol信号,所以需要加Isolation电感来滤掉高频的protocol信号,使得电源只剩低频的直流信号。

使用LLCR测试之原因 : 任何金属表面可能有 a.灰尘 b.氧化物 c.油污 等 杂质 , 当两金属表面接触后该介质会影响电流之流 通 , 一般称之为接触电阻 . 为确保 Connector 在任何环境及使用条件皆可导通故以低电压 ( 20mV 以下 ) 低电流 (0.1A以下 )测试接触电阻 , 称之 LLCR ( 因以太大之电压、电流测试时 , 火花会将该层介质打穿 )






USB Type-C,接口上的大统一?的更多相关文章
- USB接口定义 | USB Type C接口定义 | 制作Type A转Type C充电-数据线
1. USB接口定义 2. USB Type C接口定义 Type C接口母头(插座) Type C接口公头(插头) 引脚定义 参考:https://www.cnblogs.com/zhouhaoch ...
- webapi接口上传大文件
通过WebApi或者MVC模式的接口上传文件时,总数报错 413 Request Entity Too Large IIS 404 服务未找到 解决方法: 1. 在web.config文件下找到sys ...
- C# HttpWebRequest 后台调用接口上传大文件以及其他参数
直接上代码,包各位看客能用!!! 1.首先请求参数的封装 /// <summary> /// 上传文件 - 请求参数类 /// </summary> public class ...
- 适配器模式-如何把usb插到插座上
前言 下面所写的内容不是实际的业务场景, 也可能不符合正常的生活习惯, 或者不满足一些人的口味 所写的内容包括之前的帖子,只是为了方便大家更好的记住这个设计模式,实际生活中要灵活应用 设计模式重思想, ...
- 将手机micro USB口转换为USB type C连接器的低成本方案
我们知道USB IF提出的type C连接器的终极目标是统一各种USB 接口. 尽管USB 3.0在PC市场上发展的风生水起,但是由于USB 3.0对手机4G LTE的EMI和RFI干扰,导致市场上除 ...
- 基于ZedBoard的Webcam设计(一):USB摄像头(V4L2接口)的图片采集【转】
转自:http://www.cnblogs.com/surpassal/archive/2012/12/19/zed_webcam_lab1.html 一直想把USB摄像头接到Zedboard上,搭建 ...
- 第一章 USB Type C的基本原理
图 1: USB Type C接头外形 USB Type C(简称USB-C)的基本特性: 1. 接口插座的尺寸与原来的Micro USB规格一样小,约为8.3mm X 2.5mm 2. 可承受1万次 ...
- tp5+layui 实现上传大文件
前言: 之前所写的文件上传类通常进行考虑的是文件的类型.大小是否符合要求条件.当上传大文件时就要考虑到php的配置和服务器的配置问题.之前简单的觉得只要将php.ini中的表单上传的 大小,单脚本执行 ...
- asp.net core流式上传大文件
asp.net core流式上传大文件 首先需要明确一点就是使用流式上传和使用IFormFile在效率上没有太大的差异,IFormFile的缺点主要是客户端上传过来的文件首先会缓存在服务器内存中,任何 ...
随机推荐
- Beyond Compare 相同文件对比结果仍显示红色 解决方案
转载:http://blog.sina.com.cn/s/blog_4d4bc1110100zj7x.html 1. 问题详细描述如下. 下图显示对比结果中,两侧的aaa.xml是一模一样,会话中 ...
- Linux下如何查看哪些端口处于监听状态
查看某一端口的占用情况: lsof -i:端口号 前提:首先你必须知道,端口不是独立存在的,它是依附于进程的.某个进程开启,那么它对应的端口就开启了,进程关闭,则该端口也就关闭了.下次若某个进程再次开 ...
- Objective-C 学习笔记(Day 3,下)
------------------------------------------- 封装概念及其原理 一个Gun类的例子来详细说明这一环节: #import <Foundation/Foun ...
- 创建Unity新项目并编译成游戏程序
注:本人所使用的Unity版本为:Unity5.3.5f1,所使用的VS版本为:Visual.Studio.2013.Ultimate 折腾了快一个月了,终于有时间做自己的啦,哈哈: ) 步骤一:启动 ...
- 第8条:覆盖equals时遵守通用约定
如果不需要覆盖equals方法,那么就无需担心覆盖equals方法导致的错误. 什么时候不需要覆盖equals方法? 1.类的每个实例本质上是唯一的. 例如对于Thread,Object提供的equa ...
- Chrome 建立SOCKS5代理
前提是putty已经在7090端口和远程服务器建立隧道. 假设你的chrome浏览器位于"C:\Program Files (x86)\Google\Chrome\Application\c ...
- eclipse Ctrl +左键查看源代码Source not found
Windows->Preferences->Java->Installed JREs->...(default)->Edit->Program Files\Java ...
- 原创:Javascript Websocket客户端封装
调试中,马马虎虎能用var LeesWebSocket = function (options) { this.defaults = { host: "127.0.0.1", po ...
- testlink的下载地址
http://sourceforge.jp/projects/sfnet_testlink/downloads/TestLink%201.9/TestLink%201.9.12/testlink-1. ...
- 从Windows远程Ubuntu
关键字:Windows,Ubuntu,Putty,WinSCP OS:Windows 7,Ubuntu. 1.下载Putty:http://www.putty.org/. 2.双击运行putty.ex ...