發展介紹
USB,即通用串列匯流排,也稱通用串聯接口,它是一個使計算機周邊設備連線標準化、單一化的接口,其規格最早是由 Intel、NEC、COMPAQ、DEC、IBM、Microsoft、Northern Telecom 聯合制定的。
USB 接口的出現完全是因為計算機外設的日益增多,諸如鍵盤、滑鼠、數據機、印表機、掃瞄器、數位相機、MP3 等接踵而至,為了給這些外設一個通用的接口,USB最終誕生。最先普及的 USB1.1 標準接口傳輸速率為 12Mbps,不過一個 USB 設備最多只可以得到 6Mbps 的傳輸頻寬。因此若要外接光碟機,至多能接 6 倍速光碟機,無法再高。而若要即時播放 MPEG1 的 VCD 影片,至少要 1.5Mbps 傳輸頻寬,這點 USB 辦得到,但是要完成數據量大四倍的 MPEG2 的 DVD 影片播放,USB 可能就吃力了,若再加上AC-3 音頻數據,USB 設備很難實現即時播放了。這一點到了2013年,在相當部分的機箱前面板接口上體現得非常清楚。幾乎所有需要雙 USB 接口供電的移動硬碟在前置接口上都會出現供電不足的情況,所以前置的便捷接口也在不斷改進。
隨著 USB 設備被廣泛套用,僅為 12Mbps 的傳輸速率已經成為了制約自身發展的78POPHARD瓶頸,所以用戶對廠商提出了更高的要求。於是 COMPAQ、HP(惠普,當時並沒有收購康柏 )、Intel、Lucent、Microsoft、NEC和PHILIPS這7家廠商聯合制定了USB2.0 接口標準。它由 USB1.1 規範演變而來,最初的目標僅僅是將 USB1.1的變而來,最初的目標僅僅是將USB1.1 的傳輸數率提高10~20倍,而實際上卻提高了40倍,達到了480Mbps,折算為MB 為 60MB/s。這也是我們目前正在使用的廣泛標準,更令人滿意的是USB2.0 與的廣泛標準,更令人滿意的是USB2.0與1.1可互相兼容,也就是說,USB2.0設備可工作在USB1.1接口上,USB1.1的設備也可以工作在USB2.0接口上(對於部分設備來說,存在無法識別的故障,此時需更新 USB 管理程式或者更新主機板驅動)。速度的提高對於用戶的最大好處,就是意味著用戶可使用更高效的外部設備,具有多種速度的周邊設備都可以被連線到USB2.0 的線路上,而且無需擔心數據傳輸時發生瓶頸效應。但另一方面 USB2.0放寬了標準,對廠商進行了妥協,分為了幾個級別,並分別用不同的表示標註。並不是所有的 USB2.0 都可以達到最高的傳輸標準,這在購買時要注意分辨。由於受制於 USB2.0 級別限制的主要設備是存儲產品,包括 U 盤和移動硬碟,甚至也包括個別品牌的外置光碟機。
拓撲結構
系統是最多只能有7層的樹狀結構
最多只能支持127個設備和Hub
Host+RootHub永遠是在第一層
複合(Compound)設備一般占兩層
功能設備不能作為非葉節點, 只有Hub才可以
USB3.0 Hub其實包含了一個USB2的Hub和一個SuperSpeed Hub
重要特性
1. 增加了一個重要的數據傳輸速率
2. 點對點方式傳輸包, 使活動鏈路數目達到最少
3. 異步方式的通知功能, 去除了輪詢方式的必要
4. 基於鏈路級的電源管理, 這是匯流排結構的基礎設計
5. 向後兼容USB2.0, 驅動級和物理層級別上都達到了兼容的目的
與2區別
1. 數據傳輸速率, 3.0是SuperSpeed 5.0Gbps,2.0是 1.5Mbps, 12Mbps或480Mbps
2. 數據接口, 3.0是全雙工,獨立於USB 2.0信號的四路差分信號,支持同時雙向數據傳輸
2.0是半雙工,雙路差分信號, 單向數據傳輸, 需要事先協商好總路線的傳輸方向
3. 信號線數目, 3.0是4路SuperSpeed數據線, 2路HighSpeed數據線和2路電源及地線
2.0是2路LS/FS/HS數據線, 2路電源及地線
4. 匯流排事務協定, 3.0是主機主導的異步方式的傳輸流量控制, 包傳輸是能顯式地進行路由
2.0是主機主導的輪詢方式的傳輸流量控制, 包傳輸是通過廣播方式到所有設備
5. 電源管理, 3.0是多級別的鏈路電源管理, 支持Idle, sleep和suspend狀態
2.0是在連線埠級進行管理, 可以在entry/exit上有兩種級別的掛機狀態
6. 匯流排電源, 3.0是和USB 2.0差不多, 只是未配置的電源有50%的增幅, 已配置的電源有80%的增幅
7. 主機控制器,3.0用的是xHCI,2.0則是EHCI。xHCI中提供了虛擬化技術支持。
數據類型
1. Link Management Packets, 鏈路管理包, 僅發生在兩個相連的連線埠之間,主要是用來進行鏈路管理
2. Transaction Packets, 事務包, 發生在設備和主機之間, 用來控制數據包的流量, 配置設備和Hubs. 它沒有數據
3. Data Packets, 數據包, 發生在設備和主機之間. 它包括兩部分:包頭和實際數據. 其中數據部分還包括一個32位的CRC校驗碼來保證數據的完整性.
4. Isochronous Timestamp Packets, 同步時間戳包, 它是唯一的多播方式傳送的. 傳送方向是從主機到所有U0狀態的設備.