USB速度的基本概念
通常一個(gè)USB單片機可能支持低速、全速或全速與高速,所有的集線(xiàn)器支持低速與全速設備。但如果這個(gè)集線(xiàn)器嵌人了一個(gè)多元式(compound)設各,就僅能支持低速的功能而已(如具各集線(xiàn)器的USB鍵盤(pán))。這樣,這個(gè)集線(xiàn)器將會(huì )以全速的方式與PC通信,但卻以低速的方式與其嵌人的設備來(lái)通信。對于低速或全速的外圍設各來(lái)說(shuō),能夠連接至任何的USB集線(xiàn)器。
對于高速的外圍設備則有點(diǎn)像是雙速度設各,因此也可以連接至任何集線(xiàn)器上。但是USB 1.x規范的主機或集線(xiàn)器幾乎都不支持高速的規范,這是由于USB 1.x規范在制定時(shí),高速的設各還未設計出,也就是并不兼容。為了使得高速設各并不與USB1.x規范的主機與集線(xiàn)器混淆,所以所有的高速設各必須要能夠在全速下負責對標準設備列舉的要求來(lái)加以響應。這樣,即可使得任何主機能夠去辨識出任何設備。
對于高速設備而言,除了負責標準的要求外,并無(wú)須具備在全速下的功能。但是因為USB 1.x規范的主機與集線(xiàn)器目前還不會(huì )被淘汰掉;再者,支持全速的功能并不難去制作,因此大多數高速設備也能與全速設備兼容。有了這些低速、全速與高速的概念后,緊接著(zhù),將針對USB的速度來(lái)做進(jìn)一步的探討。
對于主機與外圍設各之間的實(shí)際數據,其傳輸率小于總線(xiàn)的速度。這也是由于這兩邊所傳輸的位中,除了一般真正的數據傳輸外,大都是用在辨識、同步以及錯誤檢查上。再者,數據的傳輸率有時(shí)還需根據傳輸的類(lèi)型以及此刻總線(xiàn)上的忙碌情況而定。而對于時(shí)間敏銳的數據來(lái)說(shuō),USB支持了具各保證傳輸率與保證最大的時(shí)間上限的傳輸類(lèi)型——等時(shí)傳輸。等時(shí)傳輸可保證帶寬,主機可以根據所設置的時(shí)間間隔,來(lái)要求特定的字節數目傳輸至外圍設各或從外圍設備來(lái)讀取數據。在全速的傳輸下,能夠在一個(gè)1 ms幀中移動(dòng)高達1 023字節的數據。但對高速的設各而言,可以在125μS的微幀中,移動(dòng)高達2 072字節的數據。相對的,等時(shí)傳輸并不具備錯誤檢查的功能。此外,中斷傳輸具有錯誤檢查以及最大保證帶寬的功能,但也意味著(zhù),并不具各保證精準的傳輸率。也即是相互之間傳輸的時(shí)間間隔將不會(huì )比設置的時(shí)間量還要快。
在低速的中斷傳輸中,所能要求的最大時(shí)間間隔是從10~255 ms,在全速時(shí)則為 1~255 ms。另外,在高速時(shí),則時(shí)間間隔范圍為125 μS~4 096 s。
此外,因為整個(gè)總線(xiàn)被許多設各分享掉,因此也就無(wú)法對外圍設各給予最大的遲滯上限或保證特定的傳輸率。如果,此時(shí)總線(xiàn)太忙以致無(wú)法允許所要求的傳輸率或最大的遲滯上限,主機就會(huì )拒絕去實(shí)現或完成配置用來(lái)讓主機的軟件企圖去傳輸的過(guò)程。
在全速下,另一個(gè)用來(lái)做快速傳輸的傳輸類(lèi)型是批量傳輸。理論上,在全速時(shí),可以高達1.216 MB/s,而在高速時(shí),可以高達53.248 MB/s。然而相對的,主機的驅動(dòng)程序也會(huì )限制單一的批量傳輸變成較慢的傳輸率。綜合來(lái)說(shuō),具有最佳的保證帶寬的傳輸類(lèi)型是高速的中斷和等時(shí)傳輸(24.576 MB/s)。
但是,一般在設計USB外圍設各時(shí),有時(shí)不需那么快的傳輸率,或說(shuō)相對的,這種技術(shù)的層次也相當的困難。因此,可以退而求其次,使用較低的傳輸類(lèi)型或傳輸率。雖然,低速的總線(xiàn)速度是1.5 Mbps,僅能在10 ms中傳輸8字節,或換算成每秒800個(gè)字節(等于6 400 bps)。但是這種低速的傳輸率無(wú)論在電路制作還是在程序的編寫(xiě)上都特別的容易,也具有若干優(yōu)點(diǎn)。
評論