USB小知識
1、即插即用(Plug-and-Play)
USB比較于其他傳統(tǒng)接口的一個優(yōu)勢是即插即用的實現(xiàn),即插即用(Plug-and-Play)也可以叫做熱插拔(Hot Plugging)。對于用戶來講,第一次插入USB外設,自動或手動安裝驅動程序,他就應該可以使用這個外設了,這是很友好的用戶體驗。如果操作系統(tǒng)提示你重新啟動電腦,說明這個外設沒有實現(xiàn)即插即用,從嚴格意義上來講,這并不是一個USB的外設。如果告訴用戶這是應該的,就是在欺騙用戶。對于微軟來說,如果外設沒有實現(xiàn)即插即用,就無法獲得WHQL認證。而對于USB IF(USB 實現(xiàn)者論壇)來說,如果外設沒有實現(xiàn)即插即用,就無法獲得USB的認證,不能使用USB的標識。這個標識可以在USB的官方網站www.usb.org看到(本文的下面也有),由于在USB2.0規(guī)范發(fā)布之后,USB IF改變了原先的標識,有些制造商仍使用原先的標識,這其實也是在欺騙用戶?/P>
USB的外設有很多,其中有很多外設有相似的特性,這些外設被歸為某一類,例如鍵盤、鼠標等為HID類,音響產品為Audio類,硬盤、CD-ROM、Flash 為 Mass Storage類。微軟為一些常用類提供了類驅動程序,如果一個外設設計滿足該類的規(guī)范,在第一次插入PC時,操作系統(tǒng)可以自動識別到,并且自動調用該類驅動程序,這就是所謂的自動安裝。目前Windows能支持的類驅動程序只有HID、Audio和MassStorage,除此之外制造商必須提供自己的驅動程序。很不幸,USB轉串口的應用就屬于這種情況,這就需要所謂的手動安裝。手動安裝有兩種可能,一種是在第一次插入USB時,系統(tǒng)會提示用戶安裝驅動程序,用戶可以根據(jù)彈出窗口的提示進行安裝,這時可能需要用戶做一些搜索,有些用戶可能會覺得這樣不太方便;所以另一種方法是提供一個安裝程序,將所有有關的應用/驅動程序打包在一起,一次性安裝完成。如果驅動程序沒有獲得WHQL認證,在安裝過程中需要用戶用鼠標點擊一到二次“繼續(xù)”和“完成”;而如果驅動程序獲得WHQL認證,就無需這么麻煩,這也可稱為安靜安裝(Silent Install)。
2、USB多串口協(xié)議(UMP)
在安裝USB轉串口設備時,用戶發(fā)現(xiàn)會出現(xiàn)二個步驟,一個是在接口(并串口)下有一個USB設備,另一個就是USB多串口協(xié)議(UMP)。其實這是正確的,首先USB轉串口的設備是用來模擬一個串口
(COM),所以是一個虛擬的COM口;其次這是一個USB轉串口的橋,它必須遵循USB多串口協(xié)議。在外設的“設備描述器”(Device Description)中,這個設備是一個USB轉串口的橋,每次外設接入時,操作系統(tǒng)會去讀這個“設備描述器”來了解接入的是什么設備,并把它加入到“設備管理器”中(Device Manager)。這是第一步,之后操作系統(tǒng)知道這個外設是要實現(xiàn)一個虛擬的串口,所以在COM下會加上USB設備。有一些應用中,只出現(xiàn)一個虛擬串口,而沒有USB多串口協(xié)議。其實這是在驅動程序上作了手腳,屏蔽了很關鍵的第一步,沒有向操作系統(tǒng)報告設備的屬性。這樣做看似簡單了,但根本沒有可能獲得WHQL認證,也無法得到USB的認證。
3、500mA的總線供電模式
USB的規(guī)范中規(guī)定一個USB的根集線器(root hub)最多只能提供500mA的電流,這一方面是為了減輕PC機的負擔,另一方面是保護USB的主控制器(Host Controller),目前USB主控制器往往集成在南橋中。理論上來講,任何一個USB Hub應該使用一個電源開關來防止過電流,但目前至少有10%以上的主板沒有使用電源開關或使用一些低性能的元器件以節(jié)省成本。
當外設需要多于500mA的電流時,就需要采用自供電模式了。這對于USB硬盤的應用是一個瓶頸,也是一個挑戰(zhàn)。2.5英寸以上的硬盤本身就需要超過500mA,所以必須自供電,自供電可以使用電池,也可以使用穩(wěn)壓源,這對于移動設備來說都不是理想的方法。有一種折衷的方法是連接兩個USB口,可以獲得兩倍的電流-1A。這是沒有辦法的辦法,同樣無法WHQL和USB認證。操作起來也很麻煩,必須先接上供電口,再接上設備口等等。好消息是硬盤的尺寸越來越小型化,耗電越來越省。1.8、1.5、1英寸的硬盤已被廣泛應用,性能越來越穩(wěn)定,這些硬盤的耗電在300mA之內,如果USB控制芯片的耗電能控制在200mA之內,就可以真正實現(xiàn)由總線來供電。TI的TUSB6250就是業(yè)界第一片實現(xiàn)總線供電的USB2.0高速(480Mbps)轉ATA/ATAP的解決方案。
4、USB與ATA/ATAPI的沖突
USB轉ATA/ATAPI橋的控制器存在一些內在的沖突,原因在于橋的兩邊都試圖要控制橋本身,例如USB和ATA/ATAPI都向往橋發(fā)送數(shù)據(jù)或接收數(shù)據(jù),可以把這稱為競爭,這時候橋無法解決優(yōu)先權的話,數(shù)據(jù)的傳送就停了下來。更嚴重的是橋還無法把這種狀況通知PC機和硬盤,PC機和硬盤仍然不斷地嘗試,卻沒有出錯信息提示給用戶,用戶就會很困惑,不知道發(fā)生了什么情況。這時候除了關機重新啟動電腦,別無他法。
USB的Mass Storage類規(guī)范共總結出13種不同的沖突,這些沖突從標準本身已無法解決,只能用硬件或軟件的方法來解決。TI的TUSB6250就很好地處理和解決了這個難題,其實就是增加了對競爭的仲裁,解決了優(yōu)先權的判斷,在同一時間只允許一個控制邏輯來控制總線,不會發(fā)生總線的堵塞。
評論
查看更多