<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          USB的底層結(jié)構(gòu)

          作者: 時(shí)間:2013-10-17 來源:網(wǎng)絡(luò) 收藏
            的設(shè)各可以接在PC上任意的接口上。而使用還可以擴(kuò)展使更多的設(shè)備連接到系統(tǒng)中,USB的Hub有一個(gè)上行的端口(到host),有多個(gè)下行端口(連接其他的設(shè)各),從而可以使整個(gè)系統(tǒng)可以擴(kuò)展連接127個(gè)外設(shè),其中也是外設(shè)。對于USB系統(tǒng)來說,USB的host永遠(yuǎn)是PC邊,所有其他連接到host的都稱為設(shè)備,在設(shè)備與設(shè)備之間是無法實(shí)現(xiàn)直線通信的,只有通過host的管理與調(diào)節(jié)才能夠?qū)崿F(xiàn)數(shù)據(jù)的互相傳送。在系統(tǒng)中,通常會有一個(gè)根Hub,這個(gè)Hub一般有兩個(gè)下行的端口。

            一個(gè)PC可以擁有一個(gè)或多個(gè)USB host控制器。一般有兩種類型的控制器:UHCI(USBhost控制器接口),OHCI(開放的host控制器接口)。Windows的USB類驅(qū)動程序?qū)τ诿恳环N控制器類型都由一種驅(qū)動程序來支持。

            USB的物理接口包括電氣特性和機(jī)械特性,USB通過一個(gè)四線電纜來傳輸信號與電源,如圖所示。

            USB的電纜有4根線,兩根傳送的是5V的電源,有一些直接和電源相連的設(shè)備可以直接利用它來供電。另外的兩根是數(shù)據(jù)線,數(shù)據(jù)線是單工的,在整個(gè)系統(tǒng)中的數(shù)據(jù)速率是一定的,要么是高速,要么是低速,沒有一個(gè)可以中間變速的設(shè)各來實(shí)現(xiàn)數(shù)據(jù)碼流的變速,在這一點(diǎn)上,USB和1394有明顯的差別。

            其中D+和D一是一對差模的信號線,而V泌和GND貝刂提供了5V的電源。它可以給一些設(shè)備(包括Hub)供電,當(dāng)然要有一定的條件限制。USB提供了兩種數(shù)據(jù)傳輸率:一種是12Mb的高速(full speed)模式,另一種是1.5Mb的低速模式。這兩種模式可以同時(shí)存在于一個(gè)USB系統(tǒng)中,而引入低速模式主要是為了降低要求不高的設(shè)各的成本,比如鼠標(biāo)、鍵盤等等。USB信號線在高速模式下必須使用帶有屏蔽的雙絞線而且最長不能超過5m,而在低速模式時(shí)可以使用不帶屏蔽或不是雙絞線但最長不能超過3m,這主要是由于信號衰減的限制,為了提供信號電壓保證以及與終端負(fù)載相匹配。在電纜的每一端都使用了不平衡的終端負(fù)載,這種終端負(fù)載也保證了能夠檢測外設(shè)與端口的連接或分離,并且可以區(qū)分高速與低速設(shè)備。所有的設(shè)備都有上行接口,上行和下行接頭是不能互換的,這保證了不會有非法連接的插頭與插座。

            USB的總線可以在不使用的時(shí)候被掛起,這樣可以節(jié)約能源。



          關(guān)鍵詞: USB 底層結(jié)構(gòu) HUB

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();