USB

通用序列匯流排功能，能夠隔離全速、低速裝置與高速之間資料流，但是不會影響供電和串聯深度。機械和電子標準.標準USB介面.USB訊號使用分別標記為D+和D- 的雙絞線傳輸，它們各自使用半雙工的差分訊號並協同工作，以抵消長導線的電磁干擾。Mini USB介面.除了第4針外，其他介面功能皆與標準USB相同。第4針成為ID，地線在mini-A上連線到第5針，在mini-B可以懸空亦可連線到第5針。Micro USB介面.2007年1月4日，USB實裝論壇頒佈--的插頭標準。該標準將在許多新型智慧手機和PDA上替代--插頭的插拔壽命為10,000次，比--插頭高度減半，寬度相差無幾。OMTP組織最近宣佈，--將成為移動裝置資料和電源的標準介面。2009年2月17日，全球行動通訊聯盟協會宣佈在2012年前將使用--作為全球統一的標準充電器規格。首批簽署協議的廠商包括：諾基亞、樂金、摩托羅拉、三星、索尼移動、美國電話電報公司、法國電信、西班牙電信、T-Mobile與沃達豐。編碼方式.USB使用NRZI編碼方式：當資料為0時，電平翻轉；資料為1時，電平不翻轉。為了防止出現過長時間電平不變化現象，在傳送資料時採用位填充處理。具體過程如下：當遇見連續6個高電平時，就強制插入一個0。經過位填充後的資料由序列介面引擎將資料序列化和NRZI編碼後，傳送到USB的差分資料線上。接收端完成的過程和傳送端剛好相反。軟體架構.一個USB主機透過Hub鏈可以連線多個裝置。由於理論上一個物理裝置可以承擔多種功能，例如路由器同時也可以是一個SD卡讀卡器，USB的術語中裝置Hub。端點.裝置／功能有著相同的含意，而在USB詞彙中術語端點經常和管道混用，甚至在正式文件中。端點兩個方向的端點0總是留給匯流排管理，佔用了32個端點中的2個。在管道中，資料使用不同長度的包傳遞，端點可以傳遞的包長度上限一般是formula_1位元組，所以USB包經常包含的資料量依次有8、16、32、64、128、256、512或者1024位元組。一個端點只能單向傳輸資料，自然管道也是單向的。每個USB裝置至少有兩個端點／管道：他們分別是進出方向的，編號為0，用於控制匯流排上的裝置。按照各自的傳輸型別，管道被分為4類：一旦裝置透過匯流排的Hub附加到主機控制器，主機控制器就給它分配一個主機上唯一的7位地址。主機控制器透過投票分配流量，一般是透過輪詢模式，因此沒有明確向主機控制器請求之前，裝置不能傳輸資料。為了訪問端點，必須獲得一個分層的配置。連線到主機的裝置有且僅有一個裝置描述符(Device Descriptor)，而裝置描述符有若干配置描述符(Configuration Descriptors)。這些配置一般與狀態相對應，例如活躍和節能模式。每個配置描述符有若干介面描述符(Interface Setting)，用於描述裝置的一定方面，所以可以被用於不同的用途：如一個相機可能擁有影片和音訊兩個介面。介面描述符有一個預設介面設定(Default Interface Setting)和可能多個替代介面設定(Alternate Interface Settings)，它們都擁有如上所述的端點描述符。一個端點能夠在多個介面和替代介面設定之間複用。HCD (Host Controller Driver).包含主機控制器和HUB的硬體為程式設計師提供了由硬體實現定義的介面主機控制器裝置(HCD)。而實際上它在計算機上就是埠和記憶體對映。1.0和1.1的標準有兩個競爭的HCD實現。康柏的開放主機控制器介面(OHCI)和Intel的通用主機控制器介面(UHCI)。VIA威盛採納了UHCI；其他主要的晶片組多使用OHCI。它們的主要區別是UHCI更加依賴軟體驅動，因此對CPU要求更高，但是自身的硬體會更廉價。它們的並存導致作業系統開發和硬體廠商都必須在兩個方案上開發和測試，從而導致費用上升。因此USB-IF在USB 2.0的設計階段堅持只能有一個實現規範，這就是擴充套件主機控制器介面(EHCI)。因為EHCI只支援高速傳輸，所以EHCI控制器包括四個虛擬的全速或者慢速控制器。這裡同樣是Intel和Via使用虛擬UHCI，其他一般使用OHCI控制器。某些版本的Windows上，開啟裝置管理器，如果裝置說明中是否有「增強」("Enhanced")，就能夠確認它是2.0版的。而在Linux系統中，命令lspci能夠列出所有的PCI裝置，而USB會分別命名為OHCI、UHCI或者EHCI，列出為32位地址的為EHCI，16位的為OHCI。命令lsusb能夠顯示所有USB裝置的訊息。命令dmesg能夠顯示OS啟動時關於USB裝置的訊息。USB封包格式.USB的封包格式和早期的網際網路封包格式非常相似，要了解USB連線原理就一定要先了解封包格式。裝置分類.依附在總線上的裝置可以是需要特定的驅動程式的完全定製的裝置，也可能屬於某個裝置類別。這些類別定義裝置的行為和介面描述符，這樣一個驅動程式可能用於所有此種類別的裝置。一般作業系統都為支援這些裝置類別，為其提供通用驅動程式。裝置分類由USB設計論壇裝置工作組決定，並分配ID。如果一個裝置型別屬於整個裝置，該裝置的描述符的bDeviceClass域儲存類別ID；如果它這是裝置的一個介面，其ID儲存在介面描述符的bInterfaceClass域。他們都佔用一個位元組，所以最多有253種裝置類別。。當bDeviceClass設為0x00，作業系統會檢查每個介面的bInterfaceClass以確定其類別。每種類別可選支援子類別。這樣可以用於主裝置型別的不斷修訂。常用裝置類別和ID有：USB接頭.接頭是由USB協會所指定，接頭的設計一方面為了支援眾多USB的基本需求，另一方面也避免以往許多類似序列接頭所出現的問題。電源.USB接頭預設提供一組5伏特的電壓，可作為相連線USB裝置的電源。實際上，裝置接收到的電源可能會低於5V，只略高於4V。透過USB PD3.0、QC4等快速充電協議，現有USB介面的最大的可以達到20V，最低3V。USB-IF規範1.1版定義USB埠最高供電可達到1.5A/1500mA，而最新的1.2版規範更是修正為最大5A/5000mA的供電，但是總和也不得超過5A。一個USB的HUB最多隻能提供500 mA的電流。如此的電流已足以驅動許多電子裝置，不過連線在匯流排供電HUB的所有裝置，需要共享500mA的電流額度。一個由匯流排供電的裝置可以使用到它所連線埠上允許輸出的所有電源。匯流排供電的HUB可以將電源供給連線在HUB上的所有裝置，不過USB的規範只允許匯流排供電的HUB下游串接一層匯流排供電的裝置，因此，匯流排供電的HUB下游不允許再串接另一個由匯流排供電的HUB。許多HUB有外加電源，因此可以提供電源給下游的裝置，不會消耗匯流排-{}-上的電源。若裝置需要的電壓超過5V，都需要使用外加電源。相對於之前其他溝通介面僅能傳遞訊息資料，USB插槽本身還能提供5V的電流，因此對於一些小型裝置而言，可以不必再外接電源供應裝置，就能直接利用來自USB插槽的電力順利運作。利用這特點，也有廠商開發出適當的排線，將USB拿來當作供電插座般使用，例如作為行動電話的充電器，或是提供小型桌燈及電風扇等的電力需要，反而與原本用來連線電腦用的主要用途無關。同類標準比較.USB大容量儲存.USB使用USB大容量儲存裝置標準實現Storage裝置的連線。它最初被用於傳統的磁碟和光碟驅動，但是現在已經擴充套件到支援大量不同的裝置。USB有一個非常重要的優點，那就是它能夠在不關閉電腦主機電源的情況下動態的安裝和刪除USB裝置，這使它成為一種有用的外部裝置。在市面也可以找到USB 3.0 Dongle此類小型可插拔式的行動裝置，尺寸如同隨身碟一樣迷你，有廠商推出USB介面的Wi-Fi/藍芽無線Dongle，只要將此Dongle插入液晶電視上，即可透過無線連線方式，將使用者手機、平板、筆電中的影片、照片分享到液晶電視上觀看，市面上已有廠商將Android作業系統直接寫入Dongle，成為多功能電視棒的產品。相關儲存產品包括：主機板、磁碟陣列卡、硬碟外接盒、磁碟陣列系統、NAS網路儲存裝置、硬碟外接座等等。人機介面裝置.USB沒有完全取代PS/2鍵盤滑鼠介面，但目前許多主機板都取消了PS/2介面。使用專用鍵盤滑鼠介面的蘋果電腦1999年1月也開始使用USB介面。最初iPod只有IEEE 1394介面；後來在第三代的iPod，蘋果電腦開始支援USB2.0連線，但是還不能用作充電；現在的iPod，已經全面相容USB，拋棄IEEE 1394介面，只用USB介面充電以及連線電腦主機。歷史.USB 1.0.1996年1月發布，資料傳輸速率為1.5Mbit/s。無預測及透過檢測功能，Full-Speed也難以達成，僅極少數出現在市場上。USB 1.1.1998年9月釋出，修正1.0版已發現的問題，主要是關於USB Hubs及Full-Speed，最早被採用的修訂版。USB 3.0.USB 3.0於2008年11月發布，速度由480Mbps大幅提升到5Gbps。USB 3.0插座通常是藍色的，並向下相容USB 2.0和USB 1.x。USB 3.0引入了全雙工傳輸，USB 1.x和USB 2.0則是半雙工傳輸。USB 3.1 Gen 2.USB3.0推廣小組於2013年7月31日宣佈USB 3.1規格，傳輸速度提升為10Gb/s，比USB3.0的5Gb/s快上一倍，並向下相容USB 2.0/1.0，如果要得到10Gb/s的傳輸速度仍需在主機、目標端同時具備對應的晶片才能達成，電力供應可高達100瓦。注意：在USB 3.1公佈一段時間後，USB 3.0就更名為USB 3.1 Gen 1。USB 3.2.USB 3.2的主要技術要點：速度方面，使用USB 3.2主機連線USB 3.2儲存裝置，可以實現兩條通道10Gbps的傳輸速度，理論上也就是相當接近於20Gbps。USB 3.2向下相容USB 2.0和USB 1.x。另外，從USB 3.2開始，Type-C是唯一推薦的介面方案。USB 3.2 Gen 1x2.USB 3.0的雙通道模式，速度可達10Gbps。必須使用USB Type-C接口才能達到10Gbps的速度。USB 3.2 Gen 2x2.USB 3.1 Gen 2的雙通道模式，速度可達20Gbps。必須使用USB Type-C接口才能達到20Gbps的速度。USB4.USB4於2019年9月3日釋出。USB4計畫整合Thunderbolt 3協定，現有USB 3.2及USB 2.0也向下相容。USB4支援40Gbps的傳輸速度，但達到40Gbps的速度要求USB資料線、產品支援USB4。Type-C是唯一推薦的介面方案。USB On-The-Go補充標準.USB On-The-Go是USB2.0規格的補充標準。它可使USB裝置，例如播放器或手機，從USB周邊裝置變為USB主機，與其他USB裝置連線通訊。USB Power Delivery.USB Power Delivery是USB開發者論壇在2012年7月5日釋出的USB充電標準與技術。擴充套件.PictBridge標準可以使得消費者使用的圖形裝置彼此互通。一般它使用USB做為其底層通訊協議。微軟的Xbox遊戲主機和IBM的UltraPort均使用自身獨有的專用介面，有別於標準的USB；不同的是，前者使用的是標準的USB 1.1訊號格式，後者則使用標準的USB訊號格式，而供電能力也更強。開源專案USB/IP 實現了USB資料包的網路傳送，邏輯上將USB資料線無限延長。同時配合無線路由器等手段，可以實現無線USB傳輸。正在開發中的一種無線資料傳輸標準。設計標準：在3米內達到480Mbp的傳輸速率，在10米內達到110Mbps的傳輸速率。