1. 概述
Usb = Universal Serial Bus全稱通用串行總線,是一種支持熱插拔的高速串行傳輸總線,使用差分信號來傳輸數據。
USB設備可以直接和host通信,或者通過hub和host通信。一個USB系統中僅有一個USB主機,設備包括功能設備和hub,最多支持127個設備。
由于USB是主從模式的結構,設備與設備之間、主機與主機之間不能互連,為解決這個問題,擴大USB的應用范圍,出現了USB OTG,全拼 ON The Go。USB OTG 同一個設備,在不同的場合下可行在主機和從機之間切換。
USB協議版本有USB1.0、USB1.1、USB2.0、USB3.1等。
速度模式:
USB1.0低速模式:1 .5Mb/s
USB1.1全速模式:12Mb/s
USB2.0 高速模式:480Mb/s????? 500mA
USB3.0 超高速模式: 5.0Gb/s 實際3.2Gb/s??? 900mA
USB3.1 超超高速模式:10Gb/s實際7.2Gb/s 20V/2A-僅限于Type-A/B? 12V/3A-Type-C
USB1.1 OTG? USB2.0 OTG:作為相應的補充,支持點對點通信。?
?
供電模式:
自供電:設備從外部電源獲取工作電壓。
總線供電:設備從VBUS(5V) 取電,最多500mA電流,本身容值不超過10uF;
??????????????????? 低功耗USB設備:最大功耗不超過100mA;
??????????????????? ?????????????????高功耗USB設備:枚舉時最大功耗不超過100mA,枚舉完成配置結束后功耗不超過500mA。
????????????????????????????????????????????????????????????????????? (枚舉過程中,通過設備的配置描述向主機報告它的供電模式和功耗要求)
優點:傳輸速度快,支持熱插拔,系統總線供電,支持設備種類多,擴展容易;
缺點:傳輸距離短,供電能力有限。
?
2. 硬件結構
USB使用的是差分傳輸模式,兩個數據線D+和D-;他們使用的是3.3V電壓(與CMOS的5V電壓不同)而電源線和地線可以向設備提供最大電流500mA(可以編程設置)
差分信號1:D+ > VOH(min) (2.8V) 且D- < VOL(max)(0.3V)
差分信號0:D- > VOH and D+ < VOL
?
USB2.0與USB3.0差別:
USB2.0速度沒USB3.0快;
USB2.0通常是白色或黑色,USB3.0為藍色;
USB2.0是500mA,USB3.0為900mA;USB3.1為20V/5A;
J狀態(高電平):D+ 高,D- 低
K狀態(低電平):D+低,D- 高
SEO狀態:D+ 低,D- 高
Reset信號:D+ and D- < VOL for >= 10ms
主機在要和設備通信之前會發送Reset信號來把設備設置到默認的未配置狀態。即主機拉低兩根信號線(SE0狀態)并保持10ms
Idle狀態:J狀態數據發、送前后總線的狀態
Suspend狀態:3ms以上的J狀態
?
3. 傳輸結構
集合關系:傳輸類型 -> 事務 -> 包 -> 域
傳輸類型: 控制、中斷、同步、批量
事務: IN、OUT、SETUP
包: 令牌包、數據包、握手包
域: 同步序列域、包標識域、地址域、端點域、幀號域、數據域、CRC校驗域
?
注意:
USB的基本數據結構是包;
USB總線發送是LSB在前,MSB在后。
?
4. 拓撲結構
Usb主控制器:對叢機設備的控制和數據處理
Usb根集線器:是特殊的usb集線器,集成在主機控制器中,不占用地址;
Usb集線器:可以擴展出更多的USB口。
一個主控制器對應一個根集線器,而一個根集線器通常對應一個或者幾個USB口,比如電腦主機上有7個主控制器和7個根集線器,
?
5. 速度檢測
- 全速和低速的識別
主機的hub端的D+和D-上分別接了15k的下拉電阻到地,當主機hub懸空時,主機hub端均為低電平;
usb設備端的D+或者D-上接有1.5k上拉電阻,低速設備的上拉電阻接到D-上,高速和全速設備的上拉電阻接到D+上,當設備插入主機時,根據數據線的電平高低識別速度。
?
?
- 高速設備識別
usb高速設備的D+上接有1.5k的上拉電阻,當設備插入主機時,首先被識別為全速設備。之后,hub和設備需要通過“Chirp序列”的總線握手機制來識別高速和全速設備。整個過程中,高速的hub需要檢測插入的設備是高速、全速還是低速,高速的設備需要檢測所連接上的hub是都支持高速模式,如果雙方都確認成功,就進行以系列的動作,設備從全速切換到高速模式,高速模式下,采用電流傳輸模式,設備需要將上拉電阻斷開。否則,設備以全速模式工作;
?
6. HSIC
HSIC—USB High Speed Inter-Chip
是一個兩線源同步的串行接口,使用240MHz雙倍數據速率產生480MHz的高速速率,和傳統的USB電纜連接拓撲結構的主機完全兼容。不支持中速和低速USB轉換。
?
480MHz高速數據速率;
源同步串行接口,不傳輸時不耗電;
不支持熱插拔,線路長度10cm;
信號驅動在1.2V標準LVCMOS水平;
不支持高速線性調頻協議,HSIC只能工作在高速狀態;
HSIC可以替換IIC;
常用于3G和4G模塊中。
7. Type-C
- 接口特點
支持正反插;
支持最高20V5A的電源能力,支持快充;
支持USB3.0? USB3.1協議,同時向下兼容USB2.0協議;
多功能:傳輸電源和數據外,還可以傳輸音視頻;
- 管腳定義
????????????? ????????????????????????????????????插座(front view)
???????????????????? ?????????????????????????????插頭(front view)
VBUS:電源
TXn+/TXn-/RXn+/RXn-:USB3.0/3.1高速數據線;
D+/D-:USB2.0數據線;
CC:邏輯功能識別及配置管腳,用來檢測正反插以及充電功率控制。
???????? Type-C作為DFP模式時(類似HOST或適配器)VBUS輸出默認是沒有電壓的,只通過CC線的上拉電流大小來通知外設默認支持電流大小(5V:900mA,1.5A,3A),當接上外設后(UFP)CC線會被外設的5.1K電阻接地,VBUS就會輸出5V。此后雙方可以通過CC線進行數據通信,并協商到更高的充電電壓(PD功能)。
????????
VCONN:如果使用Active Cable(譬如DP功能),VCONN用來給Cable的芯片供電(共用CC管腳);
SBU1/2:輔助信號,DP模式下的AUX協議信號;
備注:
DFP:Downstream Facing Port 下行端口可理解為Host,提供VBUS,也可提供數據。
UFP:Upstream Facing Port 上行端口可理解為Device,從VBUS中取電,并可提供數據。
DRP:Dual Role port雙角色端口既可做DFP(Host),也可做UFP(Device),也可在DFP與UFP間動態切換。
?
8. USB芯片種類
接口芯片:通用USB接口芯片 Usb interface chip
USB 主控制器:USB HOST功能芯片 Usb host chip
USB微控制器:帶USB接口MCU? usb with mcu
并口橋:USB轉并口芯片?? Usb to parallel bridge? ?8bit? 16bit? 32bit
串口橋:USB轉串口芯片 ?Usb to serial bridge?? IIC、SPI或者UART
音頻控制器: Usb Audio Controller? IIS接口
HUB控制器:USB HUB? USB HUB Controller
USB-USB橋:通過USB實現PC互連USB to USB bridge
閃盤控制器:Usb flash controller
讀卡器:智能卡設備類 ?Usb smart card
?
?
?
?
?
?
?
?
?