看了一下《usb系統體系
》,寫個筆記。
早期的裝置規範中,需要用到irq(中斷)/dma(直接儲存器訪問)/輸入輸出位址的有限資源,不支援熱插/拔,和因介面設計的原因要開機箱才能裝載裝置和跳線配置(sisc外設解決了部分問題)
usb 1.0, usb 1.1, usb 2.0
低速 (1.5mb/s)、全速(12mb/s),高速(480mb/s )
usb 1.x 系統通過傳輸描述符生成usb事務。每個描述符定義乙個usb事務,規定如何訪問usb裝置的步驟。
描述符包括:
usb1.1中,主機在1ms的時間段內(叫
幀)執行一組描述符。
每乙個1ms幀在12mb/s速率下有12000人位,事務以這個速率執行。
usb 2.0中,高速事務在125微秒下執行,叫微幀。
聯結器a系列--連線usb埠和外設電纜
b系列--連線可分離外設電纜和usb外設(小波型系列 mini-b)
每種聯結器有四個觸點:外面一組加電,內面一組傳送差動資料。
電源觸點比資料觸點長,保證在資料交換前usb裝置獲得電流(電源引腳7.41公釐,資料引腳6.41公釐)。
聯結器引腳設計
引腳號訊號名稱
電纜導線顏色1電源
紅2反相資料白3
正向資料綠4
接地黑
usb埠開始時只提供100ma電流,配置後最大500ma。
usb傳輸資料報使用差動訊號來減少不同訊號源的干擾。
遇到0轉換,遇到1保持。連續6個1時進行位填充,插入0;接收器收到6個1時識別乙個自動跳轉,拋棄這個0位。
事務一般包括3個包:令牌包、資料報、握手應答包。
令牌包定義目標裝置、終端點數目、資料傳輸方向。
4種:資料報
攜帶和傳輸型別有關的有效載荷大小的資料報。同步傳輸時最大1023位元組,其他型別時最大64位元組有效載荷。
data0, data1兩種,交替使用。
握手應答包
證實資料成功傳輸。
包錯誤匯流排超時
錯誤的包結束符
資料切換錯誤
裝置串擾
活動損耗(loa)
串擾和loa的檢測和恢復
傳輸(不保證交付)
中斷傳輸的錯誤恢復
批量傳輸的錯誤恢復
控制傳輸的錯誤恢復
3毫秒空閒掛起;消耗不超過500微安;
可以全域性掛起、選擇性掛起。
新的控制器。
理論480m bit/s 傳輸速度。
高速裝置可連線到1.x的集線器埠,並以全速訪問。
週期性事務在125微秒完成。
新增ping事務。
高速環境中的錯誤檢測和恢復:
高速裝置使用全速機制進行掛起和恢復。為了使用全速恢復訊號,高速裝置必須在進入掛起狀態時轉換成全速操作,並且在回到高速操作時自動恢復高速訊號。
在高速模式下,集線器必須支援低速、全速、高速裝置。
高速集線器連線到全速埠時,必須像1.x工作。
主機軟體傳送分解事務到連線在高速集線器埠的低速、全速裝置。分解事務只用來在主機控制器和高速集線器之間通訊。分解事務的實際接收者是事務翻譯器,由它來將高速分解事務為裝置的低速或全速事務。
分解事務執行有:開始分解和完成分解。
高速集線器連線到高速埠,並且有1個或以上高速裝置連線時,它直接在兩個方向上執行**功能。和1.x有以下差別:
usb描述符
USB第1 4章學習 USB結構體系概述
一些術語與縮寫,沒有太多用處 無太多用處 介紹了usb的一些硬體指標 使用場所等 可泛讀了解 usb互連 分層星形拓撲結構 最大限制七層 復合裝置算兩層 usb裝置 和usb主機 乙個系統只能有乙個 usb的物理特性 做電路可能會用到 但是對程式用處不大 可以進行功耗管理 輪詢的匯流排方式,大多處理...
USB 梳理USB子系統
看了很久的usb子系統了,還是霧濛濛的,現在梳理一下。首先從bus入手,在core下面定義了struct bus type usb bus type,這就是usb的bus上的裝置與驅動通用的乙個結構體。首先看driver,api主要在core driver.c裡,註冊usb bus type的,主要...
usb安裝系統
剛買了乙個二手x40,x系列都是無光碟機的。所以研究了一下怎麼通過usb安裝系統。還真挺容易。現在的機子主機板都支援usb啟動。只要製作乙個usb啟動盤就可以了。安裝過程非常簡單,可以安裝到u盤上也可以安裝到行動硬碟上。映象中有詳細的安裝說明,只要簡單的選幾個選項啟動盤就算製作完成了。分割槽 通過u...