Logo
banner

新聞資訊

USB軟體結構

編輯管理员閱讀11時間2025-05-26 08:43:28

每個USB只有一個主機,它包括以下幾層:
總線介面
USB總線介面處理電氣層與協議層的互連。從互連的角度來看,相似的總線介面由設備及主機同時給出,例如串行介面機(SIE)。USB總線介面由主控制器實現。
USB系統用主控制器管理主機與USB設備間的數據傳輸。它與主控制器間的介面依賴於主控制器的硬體定義。同時,USB系統也負責管理USB資源,例如頻寬和總線能量,這使客戶訪問USB成為可能。USB系統還有三個基本組件:
主控制器驅動程式(HCD)這可把不同主控制器設備映射到USB系統中。HCD與USB之間的介面叫HCDI,特定的HCDI由支援不同主控制器的操作系統定義,通用主控制器驅動器(UHCD)處於軟結構的最底層,由它來管理和控制主控制器。UHCD實現了與USB主控制器通信和控制USB主控制器,並且它對系統軟體的其他部分是隱蔽的。系統軟體中的最高層通過UHCD的軟體介面與主控制器通信。
USB驅動程式(USBD)它在UHCD驅動器之上,它提供驅動器級的介面,滿足現有設備驅動器設計的要求。USBD以I/O請求包(IRPs)的形式提供數據傳輸架構,它由通過特定管道(Pipe)傳輸數據的需求組成。此外,USBD使客戶端出現設備的一個抽象,以便於抽象和管理。作為抽象的一部分,USBD擁有缺省的管道。通過它可以訪問所有的USB設備以進行標準的USB控制。該缺省管道描述了一條USBD和USB設備間通信的邏輯通道。
主機軟體
在某些操作系統中,沒有提供USB系統軟體。這些軟體本來是用於向設備驅動程式提供配置資訊和裝載結構的。在這些操作系統中,設備驅動程式將應用提供的介面而不是直接訪問USBDI(USB驅動程式介面)結構。
USB客戶軟體
它是位於軟體結構的最高層,負責處理特定USB設備驅動器。客戶程式層描述所有直接作用於設備的軟體入口。當設備被系統檢測到後,這些客戶程式將直接作用於外圍硬體。這個共享的特性將USB系統軟體置於客戶和它的設備之間,這就要根據USBD在客戶端形成的設備映像由客戶程式對它進行處理。
主機各層有以下功能:
檢測連接和移去的USB設備。
管理主機和USB設備間的數據流。
連接USB狀態和活動統計。
控制主控制器和USB設備間的電氣介面,包括限量能量供應。
HCD提供了主控制器的抽象和通過USB傳輸的數據的主控制器視角的一個抽象。USBD提供了USB設備的抽象和USBD客戶與USB功能間數據傳輸的一個抽象。USB系統促進客戶和功能間的數據傳輸,並作為USB設備的規範介面的一個控制點。USB系統提供緩衝區管理能力並允許數據傳輸同步於客戶和功能的需求。
硬體結構編輯
USB採用四線電纜,其中兩根是用來傳送數據的串行通道,另兩根為下游(Downstream)設備提供電源,對於任何已經成功連接且相互識別的外設,將以雙方設備均能夠支持的最高速率傳輸數據。USB總線會根據外設情況在所兼容的傳輸模式中自動地由高速向低速動態轉換且匹配鎖定在合適的速率。USB是基於令牌的總線。類似於令牌環網路或FDDI基於令牌的總線。USB主控制器廣播令牌,總線上設備檢測令牌中的地址是否與自身相符,通過接收或發送數據給主機來響應。USB通過支持懸掛/恢復操作來管理USB總線電源。USB系統採用級聯星型拓撲,該拓撲由三個基本部分組成:主機(Host),集線器(Hub)和功能設備。
主機,也稱為根,根結或根Hub,它做在主板上或作為適配卡安裝在計算機上,主機包含有主控制器和根集線器(Root Hub),控制著USB總線上的數據和控制資訊的流動,每個USB系統只能有一個根集線器,它連接到主控制器上,一臺計算機可能有多個根集線器。
集線器是USB結構中的特定成分,它提供叫做端口(Port)的點將設備連接到USB總線上,同時檢測連接到總線上的設備,並為這些設備提供電源管理,負責總線的故障檢測和恢復。集線可為總線提供能源,亦可為自身提供能源(從外部得到電源)。
功能設備通過端口與總線連接。USB同時可做Hub使用。