通用串行總線(USB)原理及接口設計
發布時間:2008/5/26 0:00:00 訪問次數:1021
通用串行總線(usb)原理及接口設計 摘要:以usb1.1為基礎討論了usb的基本原理、工作流程、通信協議和相應的關鍵技術,并介紹了一種usb接口的10m以太網卡的設計方案。已經發布的usb2.0支持480mbps的高速數據傳輸,這將使pc可以通過usb接口傳輸更高速更大量的數據。還論述了usb2.0的改進和優點。 關鍵詞:通用串行總線(usb) 設備驅動程序 wdm
通用串行總線usb (universal serial bus)是intel、microsoft等大廠商為解決計算機外設種類的日益增加與有限的主板插槽和端口之間的矛盾而于1995年提出制定的。它是一種用于將適用usb的外圍設備連接到主機的外部總線結構,主要用在中速和低速的外設。usb同時又是一種通信協議,支持主機和usb的外圍設備之間的數據傳輸。目前較多設備支持的是usb1.11,最新的usb2.03已于2000年4月正式發布。
usb設備具有較高的數據傳輸率、使用靈活、易擴展等優點。
usb1.1有全速和低速兩種方式,低速方式的速率為1.5mbps,支持一些不需要很大數據吞吐量和很高實時性的設備,如鼠標等;全速模式為12mbps,可以外接速率更高的外設。在剛剛發布的usb2.0中,增加了一種高速方式,數據傳輸率達到480mbps,可以滿足更加高速的外設的需要。
安裝usb設備不必打開主機箱,它支持即插即用(plug and play) 和熱插拔(hot plug)。當插入usb設備的時候,主機檢測該外設并且通過自動加載相關的驅動程序來對該設備進行配置,并使其正常工作。
1 usb的結構與工作原理
1.1物理結構
usb的物理拓撲結構如圖1所示。在usb2.0中,高速方式下hub使全速和低速方式的信令環境獨立出來,圖2中顯示了高速方式下hub的作用。
通過使用集線器(hub)擴展可外接多達127個外設。usb的電纜有四根線,兩根傳送的是5v的電源,另外的兩根是數據線。功率不大的外圍設備可以直接通過usb總線供電,而不必外接電源。usb總線最大可以提供5v 500ma電流,并支持節約能源的掛機和喚醒模式。
1.2 usb設備邏輯結構
usb的設備可以分成多個不同類型,同類型的設備可以擁有一些共同的行為特征和工作協議,這樣可以使設備驅動程序的編寫變得簡單一些。usb forum在usb類規范2中定義了usb的設備類型,比如音頻、通信、hid、hub等設備類。
每一個usb設備會有一個或者多個的邏輯連接點在里面每個連接點叫端點。在usb的規范中用4位地址標識端點地址,每個設備最多有16個端點。端點0都被用來傳送配置和控制信息。在ns公司的usb接口芯片usbn96024中有7個端點。
管道實現了在主機的一個內存緩沖區和設備的端點之間的數據傳輸,連接端點0的叫做缺省管道。管道是具有多個特征的信道,如帶寬分配,包大小,管道類別以及數據流向。管道有兩種類型分別是流管道(stream pipe)和消息管道(message pipe)。流管道傳輸的數據包的內容不具有usb要求的結構,它是單向傳輸的;流管道支持批量、等時和中斷傳輸方式。而消息管道與流管道具有不同的行為。首先,由主機發請求給usb設備,然后在適當的方向上傳輸數據,最后是到達一個狀態階段。為了保證三個階段的數據傳輸,消息管道定義了一個數據結構使命令可靠地被識別和傳輸。消息管道是雙向的,它只支持控制傳輸方式。
通用串行總線(usb)原理及接口設計 摘要:以usb1.1為基礎討論了usb的基本原理、工作流程、通信協議和相應的關鍵技術,并介紹了一種usb接口的10m以太網卡的設計方案。已經發布的usb2.0支持480mbps的高速數據傳輸,這將使pc可以通過usb接口傳輸更高速更大量的數據。還論述了usb2.0的改進和優點。 關鍵詞:通用串行總線(usb) 設備驅動程序 wdm
通用串行總線usb (universal serial bus)是intel、microsoft等大廠商為解決計算機外設種類的日益增加與有限的主板插槽和端口之間的矛盾而于1995年提出制定的。它是一種用于將適用usb的外圍設備連接到主機的外部總線結構,主要用在中速和低速的外設。usb同時又是一種通信協議,支持主機和usb的外圍設備之間的數據傳輸。目前較多設備支持的是usb1.11,最新的usb2.03已于2000年4月正式發布。
usb設備具有較高的數據傳輸率、使用靈活、易擴展等優點。
usb1.1有全速和低速兩種方式,低速方式的速率為1.5mbps,支持一些不需要很大數據吞吐量和很高實時性的設備,如鼠標等;全速模式為12mbps,可以外接速率更高的外設。在剛剛發布的usb2.0中,增加了一種高速方式,數據傳輸率達到480mbps,可以滿足更加高速的外設的需要。
安裝usb設備不必打開主機箱,它支持即插即用(plug and play) 和熱插拔(hot plug)。當插入usb設備的時候,主機檢測該外設并且通過自動加載相關的驅動程序來對該設備進行配置,并使其正常工作。
1 usb的結構與工作原理
1.1物理結構
usb的物理拓撲結構如圖1所示。在usb2.0中,高速方式下hub使全速和低速方式的信令環境獨立出來,圖2中顯示了高速方式下hub的作用。
通過使用集線器(hub)擴展可外接多達127個外設。usb的電纜有四根線,兩根傳送的是5v的電源,另外的兩根是數據線。功率不大的外圍設備可以直接通過usb總線供電,而不必外接電源。usb總線最大可以提供5v 500ma電流,并支持節約能源的掛機和喚醒模式。
1.2 usb設備邏輯結構
usb的設備可以分成多個不同類型,同類型的設備可以擁有一些共同的行為特征和工作協議,這樣可以使設備驅動程序的編寫變得簡單一些。usb forum在usb類規范2中定義了usb的設備類型,比如音頻、通信、hid、hub等設備類。
每一個usb設備會有一個或者多個的邏輯連接點在里面每個連接點叫端點。在usb的規范中用4位地址標識端點地址,每個設備最多有16個端點。端點0都被用來傳送配置和控制信息。在ns公司的usb接口芯片usbn96024中有7個端點。
管道實現了在主機的一個內存緩沖區和設備的端點之間的數據傳輸,連接端點0的叫做缺省管道。管道是具有多個特征的信道,如帶寬分配,包大小,管道類別以及數據流向。管道有兩種類型分別是流管道(stream pipe)和消息管道(message pipe)。流管道傳輸的數據包的內容不具有usb要求的結構,它是單向傳輸的;流管道支持批量、等時和中斷傳輸方式。而消息管道與流管道具有不同的行為。首先,由主機發請求給usb設備,然后在適當的方向上傳輸數據,最后是到達一個狀態階段。為了保證三個階段的數據傳輸,消息管道定義了一個數據結構使命令可靠地被識別和傳輸。消息管道是雙向的,它只支持控制傳輸方式。