新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > USB1.0設(shè)備為何能夠在USB2.0端口上使用?

USB1.0設(shè)備為何能夠在USB2.0端口上使用?

作者: 時(shí)間:2016-12-12 來(lái)源:網(wǎng)絡(luò) 收藏
當(dāng)我們把USB1.0的鼠標(biāo)、鍵盤(pán)插入U(xiǎn)SB 2.0的端口時(shí),系統(tǒng)寬容地接納了它們。那么,USB控制電路是通過(guò)什么樣的措施來(lái)實(shí)現(xiàn)兩種不同版本相互兼容的呢?

USB從1994年開(kāi)始提出以來(lái),到目前為止共有三個(gè)版本:USB 1.0、USB 1.1和USB 2.0。USB 1.0只有低速(low speed,1.5Mbps)一種傳輸模式,USB 1.1增加了全速(full speed,12Mbps)模式,USB 2.0又增加了高速(high speed,480Mbps)模式。

本文引用地址:http://www.butianyuan.cn/article/201612/328913.htm

圖1 USB端口與高速USB端口的標(biāo)志

為了使USB1.0的設(shè)備(鼠標(biāo)和鍵盤(pán))在USB 2.0下面仍可以工作,首先要做的工作,就是讓2.0端口的物理形狀與1.0保持完全一致(圖2)。所以,僅從外觀上來(lái)看,我們是分別不出USB端口的版本。當(dāng)我們把U盤(pán)或移動(dòng)硬盤(pán)插入到主機(jī)的USB接口時(shí),往往并不知道移動(dòng)設(shè)備的工作模式,也不知道數(shù)據(jù)傳輸率是究竟1.5Mbps、12Mbps,還是480Mbps。

圖2 兩種USB版本具有相同的連接器

(還有一種mini-B型,比B型的尺寸更小一些)

那么,USB 2.0端口怎樣保持與USB 1.0、USB 1.1設(shè)備之間相互兼容呢?2.0控制器又是怎樣判斷出設(shè)備是1.0還是2.0的呢?這就是本文將要解決的問(wèn)題。

一、主機(jī)如何識(shí)別USB設(shè)備類(lèi)型?

當(dāng)USB設(shè)備插上主機(jī)時(shí),主機(jī)就通過(guò)一系列的動(dòng)作來(lái)對(duì)設(shè)備進(jìn)行枚舉配置,其中包括如下一些狀態(tài):

(1)接入態(tài)(Attached):設(shè)備接入主機(jī)后,主機(jī)通過(guò)檢測(cè)信號(hào)線上的電平變化來(lái)發(fā)現(xiàn)設(shè)備的接入;

(2)供電態(tài)(Powered):就是給設(shè)備供電,分為設(shè)備接入時(shí)的默認(rèn)供電值,配置階段后的供電值(按數(shù)據(jù)中要求的最大值,可通過(guò)編程設(shè)置);

(3)缺省態(tài)(Default):USB在被配置之前,通過(guò)缺省地址0與主機(jī)進(jìn)行通信;

(4)地址態(tài)(Address):經(jīng)過(guò)了配置,USB設(shè)備被復(fù)位后,就可以按主機(jī)分配給它的唯一地址來(lái)與主機(jī)通信,這種狀態(tài)就是地址態(tài);

(5)配置態(tài)(Configured):主機(jī)發(fā)出標(biāo)準(zhǔn)的USB請(qǐng)求命令來(lái)獲取設(shè)備的各種信息,并根據(jù)這些信息對(duì)控制器進(jìn)行設(shè)置。

(6)掛起態(tài)(Suspended):總線供電設(shè)備在3ms內(nèi)沒(méi)有總線操作,即USB總線處于空閑狀態(tài)的話,該設(shè)備就要自動(dòng)進(jìn)入掛起狀態(tài),在進(jìn)入掛起狀態(tài)后,總的電流功耗不超過(guò)280UA。

USB設(shè)備的EEPROM芯片中存儲(chǔ)有設(shè)備描述符、配置描述符、字符描述符、接口描述符和端點(diǎn)描述符,其中的接口描述符會(huì)告訴主機(jī)該接口的類(lèi)型。在配置態(tài),主機(jī)獲取USB設(shè)備信息,Windows的設(shè)備管理器將描述符內(nèi)的信息與PC內(nèi)部INF文檔進(jìn)行比較,從中找出最佳匹配,然后指定一個(gè)設(shè)備驅(qū)動(dòng)程序,這樣應(yīng)用程序就能夠訪問(wèn)該設(shè)備了(圖3)。

圖3 Windows的“設(shè)備管理器”中可以看到枚舉成功的設(shè)備

二、保持兼容性的措施

為了保持向下兼容,需從軟硬件兩個(gè)方面去考慮。軟件方面的問(wèn)題這里不準(zhǔn)備討論,我關(guān)心的只是硬件方面。

(1)帶寬分配與速率轉(zhuǎn)換

雖然USB 2.0定義了1.5Mbps、12Mbps和480Mbps三種傳輸速率,但任何一個(gè)設(shè)備的實(shí)際傳輸速率只能達(dá)到設(shè)備自身所允許的最高值。對(duì)于連接到2.0端口的低速設(shè)備,主控端需要降低速率,以保證通信的成功。USB2.0控制器中有一個(gè)稱為“Transaction Translator”的電路,就是負(fù)責(zé)進(jìn)行傳輸速率轉(zhuǎn)換的。

(2)電平設(shè)置與電流分配

我們知道,USB連接線中有四條導(dǎo)線,其中的兩條用于傳送數(shù)據(jù),另外兩條則分別用來(lái)傳送電力與接地。這些擁有專(zhuān)門(mén)用途的導(dǎo)線都有特別的名稱:VBUS(電源)、Ground(接地)、D+與D-(信號(hào)線)。其中D+與D-是傳送USB數(shù)據(jù)的差分信號(hào)線。

圖4 由一對(duì)雙絞線組成差模信號(hào)傳輸線路

在全速與低速傳輸時(shí),這對(duì)信號(hào)線的差分電壓為+/-3V。 而在高速傳輸時(shí),這對(duì)信號(hào)線的差分電壓為+/-400mV。高速傳輸模式采用較低的電位有助于減少信號(hào)傳送的耗電量以及降低電磁干擾(EMI)。

當(dāng)設(shè)備剛插入時(shí),僅允許它吸入100mA的電流,只有當(dāng)確定設(shè)備為USB 2.0時(shí),才允許它吸入最高500mA的電流。

三、 如何確認(rèn)USB設(shè)備工作在1.0,1.1,還是2.0模式?

雖然今天的電腦提供兩個(gè)以上的USB端口,但有些只能用于USB1.0和USB 1.1的數(shù)據(jù)傳輸,并不能支持USB 2.0的數(shù)據(jù)傳輸。另外,從設(shè)備管理器中我們還可以看到,USB控制器保留了10%的帶寬,所以USB的帶寬只能達(dá)到理論帶寬的90%。當(dāng)我們把一個(gè)移動(dòng)硬盤(pán)插入電腦時(shí),系統(tǒng)并沒(méi)有告訴我們它的實(shí)際速率,Windows的設(shè)備管理器中也沒(méi)有顯示它的工作模式。這就是說(shuō),即便插入的設(shè)備可以工作,但是它是否達(dá)到了我們所期望數(shù)據(jù)傳輸速度,尚無(wú)法確認(rèn)。從這個(gè)意義上講,弄清楚它的工作模式是有實(shí)際意義的。

如何得知設(shè)備的實(shí)際工作模式呢?看來(lái)只有借助于第三方測(cè)試軟件了。下面以Travel star 40GB移動(dòng)硬盤(pán)為例,使用兩款軟件測(cè)試其數(shù)據(jù)傳輸率。

HD Tach是一款專(zhuān)用的硬盤(pán)速度測(cè)試軟件,測(cè)出的數(shù)據(jù)為:最大值23.8MB/s,最小值:13.8MB/s;平均值:20.0MB/s(圖5)。

圖5 HD Tach 2.70的測(cè)量結(jié)果

SiSoft Sandra Pro 2005 是一款系統(tǒng)信息測(cè)試軟件,該軟件的“文件系統(tǒng)測(cè)試”項(xiàng)可以測(cè)試硬盤(pán)(包括移動(dòng)硬盤(pán))的傳輸速率,測(cè)出的數(shù)據(jù)傳輸率為24MB/s(圖6)。


圖6 SiSoft Sandra Pro 2005 的測(cè)量結(jié)果

雖然兩款軟件測(cè)試結(jié)果不盡相同,卻說(shuō)明了同一個(gè)事實(shí):移動(dòng)硬盤(pán)確實(shí)工作在USB 2.0模式下,因?yàn)檫@些數(shù)據(jù)都超過(guò)了USB 1.1規(guī)范的最大理論值12MB/s。

四、USB 2.0 為何≠ 480Mbps

由上面這些測(cè)試數(shù)據(jù),我們已經(jīng)看到,USB2.0的設(shè)備,也未必就意味著它們就是以480Mbps的數(shù)據(jù)傳輸率進(jìn)行數(shù)據(jù)交換。這是因?yàn)椋?/p>

(1)傳輸線路的影響

由于USB 2.0 High-speed接口的傳輸速率是USB 1.1的40倍,二者的數(shù)據(jù)延長(zhǎng)線有明顯不同。仔細(xì)觀察USB 2.0 High-speed延長(zhǎng)線纜,通常可看到“USB Revision 2.0”或“High-speed USB”的標(biāo)注。如果使用不符合標(biāo)準(zhǔn)的或者劣質(zhì)的延長(zhǎng)線,可能會(huì)導(dǎo)致傳輸率下降或讀寫(xiě)錯(cuò)誤。

(2)設(shè)備性能的限制

就目前來(lái)說(shuō),突發(fā)傳輸率能夠達(dá)到480Mbps的設(shè)備還不多見(jiàn)。硬盤(pán)的數(shù)據(jù)傳輸率最高,也沒(méi)有達(dá)到這個(gè)數(shù)值。與硬盤(pán)相比,閃存的讀寫(xiě)速度更慢一些,至少目前還達(dá)不到480Mps這么高的速度。



關(guān)鍵詞: USB1.0設(shè)備USB2.0端

評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉