畢業(yè)設(shè)計(jì)論文_基于USB的Hub設(shè)計(jì)_第1頁
畢業(yè)設(shè)計(jì)論文_基于USB的Hub設(shè)計(jì)_第2頁
畢業(yè)設(shè)計(jì)論文_基于USB的Hub設(shè)計(jì)_第3頁
畢業(yè)設(shè)計(jì)論文_基于USB的Hub設(shè)計(jì)_第4頁
畢業(yè)設(shè)計(jì)論文_基于USB的Hub設(shè)計(jì)_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、摘 要I摘 要USB集線器作為USB總線拓?fù)浣Y(jié)構(gòu)中的連接部分已經(jīng)起到了非常重要的作用,它為USB系統(tǒng)提供額外的連接點(diǎn),而USB集線器芯片負(fù)責(zé)將一個(gè)USB上行端口轉(zhuǎn)化為多個(gè)下行端口,它是構(gòu)成USB集線器的必需部件。本論文首先介紹 USB 的基礎(chǔ)知識(shí)、產(chǎn)生與發(fā)展、總線結(jié)構(gòu)、傳輸方式及電氣特性等等這部分內(nèi)容對(duì) USB 做出了總體的概述,接下來主要介紹了關(guān)于 USB 集線器的主要結(jié)構(gòu)及其功能特性,最后介紹了 USB 集線器的設(shè)計(jì)流程,并給出了以 Genesys Logic公司的 GL650USB 芯片為控制器的 USB 集線器的設(shè)計(jì)實(shí)例。關(guān)鍵詞:USB 集線器;總線拓?fù)浣Y(jié)構(gòu);集線器設(shè)計(jì);GL650US

2、B 芯片ABSTRACTIIABSTRACTUSB hubs as USB bus configuration of the link has played a very important role, which provide additional USB system connecting point, and USB hubs will be a chip for USB uplink port into multiple downlink ports, which constitute the essential components of USB hubs. This paper

3、first introduced USB based knowledge, generate and development, bus structure, the means of transmission and electrical properties, etc. This part of a general overview of a USB, introduced the next major USB hubs on the main structure and its functional features, and finally introduced USB hubs des

4、ign flow and give a company Genesys Logic GL650USB chip for the USB hub controller design examples.KEYWORDS: USB hubs;USB bus configuration;USB hubs design;GL650USB chip咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 1 基于 USB 的 Hub 設(shè)計(jì)1 緒論1.1課題背景1.1.1 USB 基礎(chǔ)知識(shí)USB,全稱是 Universal Serial Bus(通用串行總線),它是在 1994 年由IBM、Intel、Microsoft、NE

5、C、Compaq、DEC、Northern Telecom 七家公司共同開發(fā)的一種新的外設(shè)連接技術(shù)。這一技術(shù)將最終解決對(duì)串行設(shè)備和并行設(shè)備如何與計(jì)算機(jī)相連的爭論,大大簡化了計(jì)算機(jī)與外設(shè)的連接過程。1995 年,通用串行總線,由通用中行總線應(yīng)用論壇(USDIF)進(jìn)行了標(biāo)準(zhǔn)化。目前已經(jīng)有許多中行端口和串行總線技術(shù)應(yīng)用于主機(jī)和外設(shè)之間的通信,但它們都有其特定的目的和缺點(diǎn)。而該組織的目標(biāo)就是發(fā)展一種兼容低速和高速的技術(shù),從而可以為廣大用戶提供一種可共享的、可擴(kuò)充的、使用方便的串行總線,將串行通信技術(shù)推向 21 世紀(jì)。該總線應(yīng)獨(dú)立于主計(jì)算機(jī)系統(tǒng),并在整個(gè)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中保持一致。為了實(shí)現(xiàn)上述的目標(biāo),US

6、BIF 發(fā)布了一種稱為通用串行總線的中行技術(shù)規(guī)范 Universal Serial Bus,簡稱為 USB。但是直到1999 年,USB 才真正被廣泛應(yīng)用。自 1994 年 11 月發(fā)表了 USB V0.7 以后,USB 接口經(jīng)歷了十年的發(fā)展,現(xiàn)在 USB 已經(jīng)發(fā)展到了 2.0 版本。我們知道,電腦上的每個(gè)設(shè)備都有一個(gè)接口,用來與其它部件連接。但是由于主板上所能提供的外部接口比較少,一般含有 1 個(gè)并行接口和 2 個(gè)串行接口,所能連接的設(shè)備十分有限,而且在進(jìn)行拔插設(shè)備的時(shí)候需要關(guān)機(jī)(帶電拔插會(huì)造成燒毀設(shè)備的嚴(yán)重后果),傳輸速度也很慢,在要求高傳輸率的場合根本無法滿足要求。而 USB 接口卻很好

7、地解決了以上所有問題,采用 USB 接口的設(shè)備都支持熱拔插(帶電拔插),使微軟的“即插即用(Plug and Play,PnP)”得以真正實(shí)現(xiàn),用戶在開機(jī)狀態(tài)時(shí)即可將設(shè)備連接到電腦主機(jī)上,免除了漫長的重新啟動(dòng)過程。USB 接口所能連接的設(shè)備多達(dá) 127 個(gè),而且可以同時(shí)使用。這幾年,隨著大量支持 USB 的個(gè)人電腦的普及,USB 逐步成為 PC 機(jī)的標(biāo)準(zhǔn)接口已經(jīng)是大勢(shì)所趨。在主機(jī)(host)端,最新推出的 PC 機(jī)幾乎 100%支持 USB;而在外設(shè)(device)端,使用 USB 接口的設(shè)備也與日俱增,例如數(shù)碼相機(jī)、掃描儀、游戲桿、磁帶和軟驅(qū)、圖像設(shè)備、打印機(jī)、鍵盤、鼠標(biāo)等。1.1.2 US

8、B 的產(chǎn)生及發(fā)展表 1.1 給出了 USB 發(fā)展歷程中的幾種主要的版本。咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 2 標(biāo)準(zhǔn)說明傳輸速度發(fā)布日期USB1.0早期 USB 版本,主要應(yīng)用在鼠標(biāo),鍵盤等 HID 設(shè)備1.5Mbps 低速1996-1-15USB1.1現(xiàn)在市場上大多數(shù) USB 設(shè)備都采用 1.1 標(biāo)準(zhǔn),應(yīng)用領(lǐng)域非常廣泛12Mbps 全速1998-9-23USB2.0現(xiàn)在主要應(yīng)用高速數(shù)據(jù)采集場合,圖像傳輸。正在進(jìn)一步普及480Mbps 高速2000-4-27USB2.0 OTG作為 USB2.0 協(xié)議的補(bǔ)充,主要應(yīng)用在點(diǎn)對(duì)點(diǎn)通信480Mbps2001-12-18表 1.1 USB 主要協(xié)議版

9、本說明:USB OTG 作為 USB2.0 協(xié)議的補(bǔ)充,但并不意味著 OTG 芯片都支持高速傳輸,并且 USB OTG 的主要應(yīng)用是在全速方式和低速方式下。1.1.3 USB 總線拓?fù)浣Y(jié)構(gòu)USB 的拓?fù)涫菢湫谓Y(jié)構(gòu),有 1 個(gè) USB 根集線器(root hub) ,下面還可有若干集線器。1 個(gè)集線器下面可接若干個(gè) USB 接口。 在任何 USB 系統(tǒng)中,只有一個(gè)主機(jī)。USB 和主機(jī)系統(tǒng)的接口稱作主機(jī)控制器,主機(jī)控制器可由硬件、固件和軟件綜合實(shí)現(xiàn)。根集線器是由主機(jī)系統(tǒng)整合的,用以提供更多的連接點(diǎn)。USB 線纜包括 4 條線:Vbus(USB 電源)、D+(數(shù)據(jù)) 、D-(數(shù)據(jù))和 Gnd(USB

10、 地)。線纜最大長度不超過 5m。USB1.1 的傳輸速率最高為 12Mb/s(低速外設(shè)的標(biāo)準(zhǔn)速率為1.5Mb/s,高速外設(shè)的標(biāo)準(zhǔn)速率為 12Mb/s) 。下圖 1.2 是典型的 USB 功能器件結(jié)構(gòu)框圖: 圖 1.2 USB 功能器件結(jié)構(gòu)框圖USB 設(shè)備之所以會(huì)被大量應(yīng)用,主要具有以下優(yōu)點(diǎn):1)可以熱插拔 2)系統(tǒng)總線供電,低功率設(shè)備無需外接電源,采用低功耗設(shè)備,并可提供 5V/500mA 電USB接口D+D-SIE (串行接口引擎)PLL傳感器EPROMDSP(數(shù)字信號(hào)處理器)晶體咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 3 源。3)支持設(shè)備眾多,支持多種設(shè)備類,例如鼠標(biāo),鍵盤,打印機(jī)等。4)

11、擴(kuò)展容易,最多可連接 127 個(gè)外設(shè)。5)高速數(shù)據(jù)傳輸,USB1.1 是 12Mb/s,USB2.0 高達(dá) 480Mb/S。6)方便的設(shè)備互連,USB OTG 支持點(diǎn)對(duì)點(diǎn)通信,例如數(shù)碼相機(jī)和打印機(jī)直接互連,無需PC。1.1.4 USB 傳輸方式及電氣特性1、傳輸方式:針對(duì)設(shè)備對(duì)系統(tǒng)資源需求的不同,在 USB 規(guī)范中規(guī)定了四種不同的數(shù)據(jù)傳輸方式:1)批(Bulk)傳輸方式:主要應(yīng)用在數(shù)據(jù)大量傳送和接受,同時(shí)又沒有帶寬和間隔時(shí)間要求的情況下,要求保證傳輸正確無誤的數(shù)據(jù)。通常打印機(jī)、掃描儀 和數(shù)字相機(jī)以這種方式與主機(jī)聯(lián)接。這種類型的設(shè)備適合于傳輸非常慢和大量被延遲的傳輸,可以等到所有其它類型的數(shù)據(jù)的

12、傳送完成之后再傳送和接收數(shù)據(jù)。2)同步傳輸方式(Isochroous):該方式用來連接需要連續(xù)傳輸?shù)臄?shù)據(jù),如麥克風(fēng)、喇叭和電話等。同步傳輸方式以固定的傳輸速率,連續(xù)不斷地在主機(jī)與 USB 設(shè)備之間傳輸數(shù)據(jù),在傳送數(shù)據(jù)發(fā)生錯(cuò)誤時(shí),USB 并不處理這些錯(cuò)誤,而是繼續(xù)傳送新的數(shù)據(jù)。同步傳輸提供了確定的帶寬和間隔時(shí)間(latency)。它被用于時(shí)間嚴(yán)格并具有較強(qiáng)容錯(cuò)性的數(shù)據(jù)傳輸,或者用于要求恒定的數(shù)據(jù)傳送率的即時(shí)應(yīng)用中。例如執(zhí)行即時(shí)通話的網(wǎng)絡(luò)電話應(yīng)用時(shí),使用同步傳輸模式是很好的選擇。同步數(shù)據(jù)要求確定的帶寬值和確定的最大傳送次數(shù)。對(duì)于同步傳送來說,對(duì)數(shù)據(jù)的正確性要求不高而對(duì)時(shí)間則極為敏感的外部設(shè)備來說很

13、重要,因?yàn)榧磿r(shí)的數(shù)據(jù)傳遞比完美的精度和數(shù)據(jù)的完整性更重要一些。3)中斷傳輸方式(Interrupt):該方式傳送的數(shù)據(jù)量很小,但這些數(shù)據(jù)需要及時(shí)處理,以達(dá)到實(shí)時(shí)效果。主要用于定時(shí)查詢?cè)O(shè)備是否有中斷數(shù)據(jù)要傳送。設(shè)備的端點(diǎn)模式器的結(jié)構(gòu)決定了它的查詢頻率,從 1 到 255ms 之間。這種傳輸方式典型的應(yīng)用在少量的分散的、不可預(yù)測(cè)數(shù)據(jù)的傳輸。鍵盤、操縱桿和鼠標(biāo)等設(shè)備就屬于這一類型。中斷方式傳送是單向的并且對(duì)于 host 來說只有輸入的方式。4)控制傳輸方式(Control):該方式用來處理主機(jī)到 USB 設(shè)備的數(shù)據(jù)傳輸。包括設(shè)備控制指令、設(shè)備狀態(tài)查詢及確認(rèn)命令。當(dāng) USB 設(shè)備收到這些數(shù)據(jù)和命令后,

14、將依據(jù)先進(jìn)先出的原則處理到達(dá)的數(shù)據(jù)??刂苽魉褪请p向傳送,通常數(shù)據(jù)量比較小。USB 系統(tǒng)軟件用來主要進(jìn)行查詢、配置和給 USB 設(shè)備發(fā)送通用的命令??刂苽魉头绞娇梢园?8、16、32 和 64 字節(jié)的數(shù)據(jù),這依賴于設(shè)備和傳輸速度。控制傳輸?shù)湫偷赜迷谥饔?jì)算機(jī)和 USB 外設(shè)之間的端點(diǎn)(Endpoint)0 之間的傳輸,但是指定供應(yīng)商的控制傳輸可能用到其它的端點(diǎn)。2、電氣特性咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 4 USB 的電纜有四根線,兩根傳送的是 5V 的電源,定義如表 1.3,有一些直接和電源HUB 相連的設(shè)備可以直接利用它來供電。另外的兩根是差分信號(hào)的數(shù)據(jù)線 D 、D 。數(shù)據(jù)線是單工的,

15、在整個(gè)的一個(gè)系統(tǒng)中的數(shù)據(jù)速率是一定的,要么是高速,要么是低速,沒有一個(gè)可以中間變速的設(shè)備來實(shí)現(xiàn)數(shù)據(jù)流的變速。 USB 的總線可以在不使用的時(shí)候被掛起,這樣一來就可以節(jié)約能源。 在有些時(shí)候的總線還有可能延遲(stall),比如說在數(shù)據(jù)傳送的時(shí)候突然被打斷,這個(gè)時(shí)候通過 host 的重新配置可以實(shí)現(xiàn)總線的重新工作。引腳定義描述1VCC+5 VDC2D-Data -3D+Data +4GNDGround表 1.3USB 接口定義1.1.5 USB2.0 由于 USB 1.1 所規(guī)定的最大傳輸速率只有 12Mbps,所以康柏、惠普、Intel、微軟、NEC 以及飛利浦等幾個(gè)公司又聯(lián)合制訂了 USB 2

16、.0 規(guī)范。USB 2.0 將傳輸速率提升至480Mbps,足以滿足大多數(shù)外設(shè)的速率要求。而且 USB 2.0 可以向下兼容,所有支持USB 1.1 的設(shè)備都可以直接在 USB 2.0 的接口上使用而不必?fù)?dān)心兼容性問題,而且如USB 線、插頭等附件也都可以直接使用。但是反之,USB 2.0 的設(shè)備則不可能在 USB 1.1 上正常工作,除非廠商在設(shè)計(jì)之初就將其設(shè)計(jì)為 USB 1.1 和 2.0 通用。1.2USB 集線器的基本知識(shí)及發(fā)展1.2.1 USB 簡述在即插即用的 USB 的結(jié)構(gòu)體系中,集線器是一種重要設(shè)備。如圖 1.4 所示的 圖 1.4 典型集線器示意圖一種典型的集線器。從用戶的觀

17、點(diǎn)出發(fā),集線器極大簡化了 USB 的互連復(fù)雜性,而且以很低的價(jià)格和高易用性提供了設(shè)備的健壯性。 咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 5 集線器是串接在 USB 總線系統(tǒng)上的,可讓不同性質(zhì)的設(shè)備連接在 USB 上,連接點(diǎn)稱作端口。每個(gè)集線器將一個(gè)連接點(diǎn)轉(zhuǎn)化成許多的連接點(diǎn)。并且該體系結(jié)構(gòu)支持多個(gè)集線器的連接。 每個(gè)集線器的上游端口向主機(jī)方向進(jìn)行連接。每個(gè)集線器的下游端口允許連接另外的集線器或功能部件,集線器可檢測(cè)每個(gè)下游端口的設(shè)備的安裝或拆卸,并可對(duì)下游端口的設(shè)備分配能源,每個(gè)下游端口都具有獨(dú)立的能力,不論高速或低速設(shè)備均可連接。集線器可將低速和高速端口的信號(hào)分開。一個(gè)集線器包括兩部分:集線控制

18、器(Controller)和集線放大器(Repeater)。集線放大器是一種在上游端口和下游端口之間的協(xié)議控制開關(guān)。而且硬件上支持復(fù)位、掛起、喚醒的信號(hào)。集線控制器提供了接口寄存器用于與主機(jī)之間的通信、集線器允許主機(jī)對(duì)其特定狀態(tài)和控制命令進(jìn)行設(shè)置,并監(jiān)視和控制其端口。1.2.2 USB 集線器的發(fā)展?fàn)顩rUSB 集線器作為 USB 總線拓?fù)浣Y(jié)構(gòu)中的連接部分已經(jīng)起到了不可或缺的作用,它為USB 系統(tǒng)提供額外的連接點(diǎn),總線拓?fù)浣Y(jié)構(gòu)中的每一層都是集線器和功能設(shè)備之間點(diǎn)到點(diǎn)的連接。而 USB 集線器芯片負(fù)責(zé)將一個(gè) USB 上行端口轉(zhuǎn)化為多個(gè)下行端口,它是構(gòu)成 USB 集線器的必需部件。有一些集線器芯片提

19、供了驅(qū)動(dòng)外圍電路的 I/O 口,可構(gòu)成USB 復(fù)合設(shè)備,如 Intel 公司在 1996 年 11 月推出的世界上第一塊 USB 集線器芯片8x930Hx,就是一塊提供 32 個(gè)外部 I/O 口的 USB1.0 集線器芯片。世界上第一塊 USB2.0集線器芯片是 NEC 公司于 2001 年 8 月發(fā)布的 uPD720110,它支持 4 個(gè)下行端口。下表1.5 列出了世界上主要 USB 芯片供應(yīng)商的一些 USB 集線器芯片。表 1.5 集線器芯片公司USB 芯片推出時(shí)間/(年、月)下行端口/個(gè)USB 規(guī)范應(yīng)用Intel8x930Hx8x931Hx1996.111997.11451.01.0復(fù)合

20、設(shè)備復(fù)合設(shè)備CypressCy7C65013Cy7C65100Cy7C651132000.12000.12000.17441.11.11.1集線器集線器集線器咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 6 Cy7C66013Cy7C66113Cy7C656402000.12000.12002.84441.11.12.0復(fù)合設(shè)備復(fù)合設(shè)備集線器NECuPD72012uPD7201101999.42001.8541.12.0集線器集線器PhilipsISP1122AISP11231999.51999.1025251.11.1集線器復(fù)合設(shè)備TITUSB2077ATUSB2036TUSB2136TUSB204

21、6BTUSB5052TUSB51522000.32000.32001.22000.12001.22001.272524551.11.11.11.11.11.1集線器集線器復(fù)合設(shè)備集線器復(fù)合設(shè)備復(fù)合設(shè)備2USB 集線器集線器是 USB 總線拓?fù)浣Y(jié)構(gòu)的核心,它為 USB 系統(tǒng)提供額外的連接點(diǎn),并完成 USB數(shù)據(jù)流的上下行傳輸。在 USB 總線上,所有的設(shè)備都是連接在 USB 集線器的下游端口上,同時(shí)也為設(shè)備提供所需電源,為設(shè)備的即插即用做好準(zhǔn)備。2.1集線器的結(jié)構(gòu)USB2.0 集線器包含中繼器、控制器和事務(wù)翻譯器(TT)三部分,其結(jié)構(gòu)如圖 2.1所示。其中,集線器中繼器負(fù)責(zé)完成其上行端口和下行端口

22、間的數(shù)據(jù)傳輸,它只適用于上下行端口具有相同傳輸速率的情況;集線器控制器負(fù)責(zé)提供狀態(tài)機(jī)制和控制機(jī)制,并和主機(jī)進(jìn)行通信;事務(wù)翻譯器負(fù)責(zé)把低速/全速 USB 傳輸從高速傳輸中分離出來,它只適用于當(dāng)集線器工作于高速模式下其下行端口連接低速/全速 USB 設(shè)備的情況。另外,咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 7 集線器中的路由選擇邏輯負(fù)責(zé)完成其下行端口與中繼器或事務(wù)翻譯器間的連接。 圖 2.1 集線器的結(jié)構(gòu) 圖 2.1 集線器的結(jié)構(gòu)USB2.0 集線器既可工作于高速模式又可工作于全速模式,其實(shí)際工作模式由上行端口的連接情況決定。當(dāng)上行端口以全速連接時(shí),集線器會(huì)工作于全速模式下,這時(shí)事務(wù)翻譯器將停止工作

23、,中繼器將僅限于低速/全速中繼,路由選擇邏輯會(huì)將其下行端口連接至中繼器。當(dāng)上行端口以高速連接時(shí),集線器會(huì)工作于高速模式下,這時(shí)中繼器將僅限于高速中繼;如果其下行端口上連接有高速設(shè)備,則路由選擇邏輯會(huì)將該端口連接至中繼器。如果其下行端口上連接有低速/全速設(shè)備,則路由選擇邏輯會(huì)將該端口連接至事務(wù)翻譯器。2.1.1 USB 集線器端口在 USB 協(xié)議中 USB 設(shè)備與 USB 集線器的連接點(diǎn)被稱為端口(Port) ,每個(gè) USB集線器將一個(gè)連接點(diǎn)轉(zhuǎn)化成多個(gè)連接點(diǎn)。每個(gè) USB 集線器都包含上游端口(Upstream Port)和下游端口(Downstream Port) 。上游端口是面向 USB 主

24、機(jī)(HOST)方向進(jìn)行連接的,而下游端口是面向 USB 設(shè)備進(jìn)行連接的。下游端口允許連接另外的集線器或USB 設(shè)備。除了根集線器外,每個(gè) USB 集線器都包括一個(gè)惟一的上游端口和一個(gè)以上的下游端口。USB 集線器可以檢測(cè)每個(gè)下游端口的設(shè)備的連接和斷開,并為下游端口的 USB 設(shè)備提供電源,每個(gè)下游端口都具有獨(dú)立的能力,不論全速和低速 USB 設(shè)備均可連接,USB 集線器可以將全速和低速端口的信號(hào)分開,并做相應(yīng)的處理。下行端口PortNPort2Port1下行端口狀態(tài)機(jī)制Port0上行端口狀態(tài)機(jī)制事務(wù)翻譯器中繼器 集線器 狀態(tài)機(jī)制控制器路由選擇邏輯上行端口咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 8

25、 在 USB 集線器上電后,USB 集線器的上游端口需要一直處于啟用狀態(tài),以便與USB 主機(jī)進(jìn)行數(shù)據(jù)傳輸;而下游端口在正常工作的過程中可能會(huì)處于以下 4 種狀態(tài)之一: (1)啟用狀態(tài)(Enable State):在該狀態(tài)下,USB 數(shù)據(jù)包可以在端口上傳輸。 (2)無效狀態(tài)(Disable State):在該狀態(tài)下,USB 數(shù)據(jù)包不能在該端口上傳輸,只能通過 USB 主機(jī)對(duì)集線器的控制命令來啟用該端口。 (3)掛起狀態(tài)(Suspended State):在該狀態(tài)下,USB 設(shè)備可以通過發(fā)送總線恢復(fù)信號(hào)來使能該端口。 (4)無連接狀態(tài)(Disconnected State):在該狀態(tài)下,USB 集

26、線器端口處于懸空狀態(tài),無任何設(shè)備連接。2.1.2 集線器中繼器集線器中繼器包含一個(gè)上行端口和若干個(gè)下行端口,并負(fù)責(zé)完成這些上下行端口間的數(shù)據(jù)傳輸。其上行端口用于連接 USB 主機(jī),下行端口用于連接 USB 設(shè)備。指向上行端口的數(shù)據(jù)傳輸稱為上行通信,指向下行端口的數(shù)據(jù)傳輸稱為下行通信。當(dāng)中繼器傳輸 USB 信息包時(shí),其可工作于三種狀態(tài):空閑、上行通信和下行通信,如圖所示。當(dāng)中繼器處于空閑狀態(tài)時(shí),其不處理任何 USB 數(shù)據(jù)傳輸,且其所有端口都將等待下一 USB 信息包的到來。當(dāng)中繼器工作于上行通信狀態(tài)時(shí),其數(shù)據(jù)傳輸是一對(duì)一的,即僅在啟動(dòng)此次通信的下行端口和上行端口間進(jìn)行,而其他下行端口都不會(huì)看到該

27、上行通信。當(dāng)中繼器工作于下行通信狀態(tài)時(shí),其數(shù)據(jù)傳輸是一對(duì)多的,即其上行端口接收到主機(jī)發(fā)出的信息包后會(huì)把該信息包發(fā)送給其他所有已經(jīng)使能的下行端口,被禁止的下行端口不會(huì)參與信息包的傳輸。圖 2.2 信息包的傳輸當(dāng)中繼器傳輸 USB 復(fù)位信號(hào)時(shí),其只能工作于兩種狀態(tài):上行通信和下行通信,下行端口上行端口上行通信使能的端口禁止的端口下行通信咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 9 且它們都是一對(duì)多的,如圖 2.3 所示。對(duì)于上行通信,當(dāng)中繼器接收到其某一下行端口發(fā)出的復(fù)位信號(hào)后,它將把該復(fù)位信號(hào)向上傳輸,同時(shí)也會(huì)把它發(fā)送給其所有已經(jīng)使能的下行端口。對(duì)于下行通信,中繼器會(huì)把其上行端口接收到的復(fù)位信號(hào)發(fā)送

28、給其所有已經(jīng)使能的下行端口,被禁止的下行端口不會(huì)參與復(fù)位信號(hào)的傳輸。上行端口下行端口上行通信下行通信使能的端口禁止的端口復(fù)位源端口圖 2.3 復(fù)位信號(hào)的傳輸2.1.3 集線器控制器集線器控制器負(fù)責(zé)提供狀態(tài)機(jī)制和控制機(jī)制,并和主機(jī)進(jìn)行通信,其功能通過集線器的端點(diǎn) 0 和狀態(tài)變化端點(diǎn)實(shí)現(xiàn),如圖 2.4 所示。其中,端點(diǎn) 0 對(duì)應(yīng)集線器缺省控制管道,除標(biāo)準(zhǔn) USB 設(shè)備請(qǐng)求外,它還負(fù)責(zé)處理集線器設(shè)備類定義請(qǐng)求;狀態(tài)變化端點(diǎn)是集線器設(shè)備類專門定義的,它采用中斷 IN 傳輸周期性地向主機(jī)報(bào)告集線器和其所有下行端口地狀態(tài)變化。圖 2.4 集線器控制器的組成對(duì)于端點(diǎn) 0,它實(shí)現(xiàn)了集線器的缺省控制 管道,并能

29、處理 11 種標(biāo)準(zhǔn) USB 設(shè)備請(qǐng)求咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 10 和 12 種集線器設(shè)備類定義請(qǐng)求。對(duì)于狀態(tài)變化端點(diǎn),它負(fù)責(zé)向主機(jī)報(bào)告集線器和其他所有下行端口的狀態(tài)變化。在集線器連接至 USB 后,主機(jī)馬上會(huì)采用中斷 IN 傳輸來周期性地查詢?cè)摖顟B(tài)變化端點(diǎn)。如果集線器和其下行端口地狀態(tài)都沒有發(fā)生變化,該端點(diǎn)將向主機(jī)返回 NAK 握手包;如果它們之一發(fā)生了變化,該端點(diǎn)將向主機(jī)返回相應(yīng)地狀態(tài)變化信息。主機(jī)會(huì)對(duì)該狀態(tài)變化信息進(jìn)行解碼,以確定發(fā)生狀態(tài)變化的是集線器還是其下行端口。如果是下行端口的狀態(tài)發(fā)生了變化,則主機(jī)會(huì)進(jìn)一步發(fā)出GetPortStatus 請(qǐng)求,以獲取該端口狀態(tài)變化的詳細(xì)

30、情況,如 USB 設(shè)備的連接、斷開和掛起等;如果是集線器的狀態(tài)發(fā)生了變化,則主機(jī)會(huì)進(jìn)一步發(fā)出 GetHubStatus 請(qǐng)求,以獲取該集線器狀態(tài)變化的詳細(xì)情況。2.1.4 集線器事務(wù)翻譯器(TT)當(dāng) USB2.0 集線器工作于高速模式下時(shí),如果其下行端口上連接有低速/全速 USB設(shè)備,則集線器事務(wù)翻譯器負(fù)責(zé)把低速/全速傳輸從高速傳輸中分離出來,以使其上行端口仍采用 480Mb/s 的高速傳輸速率,這樣可以減少低速和全速傳輸對(duì)對(duì)高速 USB 總線帶寬造成的影響。對(duì)于上行端口,事務(wù)翻譯器是其 USB 高速功能單元;對(duì)于下行端口,事務(wù)翻譯器是其 USB 主控制器。2.2USB 集線器功能描述從根本上

31、講,USB 集線器的設(shè)計(jì)是 USB 總線拓?fù)浣Y(jié)構(gòu)的必然產(chǎn)物??偟膩碚f,協(xié)議為集線器定義了如下幾個(gè)功能:連接功能電源管理功能總線的錯(cuò)誤檢測(cè)和恢復(fù)功能 對(duì)設(shè)備的插入和拔下的處理功能集線器的掛起和恢復(fù)功能2.2.1 設(shè)備擴(kuò)展正如 USB 系統(tǒng)結(jié)構(gòu)所表示的,所有系統(tǒng)中的 USB 設(shè)備都是連接在 USB 集線器所提供的設(shè)備連接端口上,即使與 USB 主機(jī)直接相連的設(shè)備也是通過具有普通 USB 集線器相同功能的根集線器(Root Hub)提供的端口連接的。USB 集線器使得 USB 系統(tǒng)總線擴(kuò)展成為可能,所有的 USB 主機(jī)與 USB 設(shè)備的通信數(shù)據(jù)都必須通過 USB 集線器進(jìn)行轉(zhuǎn)發(fā)。USB 集線器都包含

32、一個(gè)上游端口(連接 USB 主機(jī)方向的接口)和多個(gè)下游端口(連接USB 設(shè)備方向的接口)。根據(jù) USB 規(guī)范,USB 設(shè)備與 USB 集線器之間的長度不能超過5m,如果需要更長距離的數(shù)據(jù)通信,則可通過級(jí)聯(lián) USB 集線器的方式來增加傳輸距離,但考慮到系統(tǒng)延時(shí),USB 集線器的級(jí)聯(lián)不能超過 5 級(jí),也就是說,USB 設(shè)備與 USB 主機(jī)的傳輸距離不能超過 30m。咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 11 2.2.2 電源管理電源管理是 USB 總線區(qū)別與以往計(jì)算機(jī)外設(shè)接口總線的一大特點(diǎn),也是實(shí)現(xiàn)即插即用的一個(gè)重要條件。USB 協(xié)議將電流分成負(fù)載單元,每個(gè)單元的負(fù)載是 100mA,USB設(shè)備可以

33、根據(jù)需要,最大獲得 500mA 的電流。當(dāng)集線器剛剛接入到某個(gè)上游集線器的端口上或系統(tǒng)重啟時(shí),它會(huì)從上游端口上獲得不超過一個(gè)負(fù)載單元的電流。當(dāng)正常工作時(shí),集線器會(huì)從上游端口申請(qǐng)獲得 5 個(gè)負(fù)載單元的電流。從電源的提供方式上,集線器分成自供電和總線供電兩種??偩€供電的集線器為其下游端口提供的最大電流為100mA,而自供電的集線器為下游端口提供的最大電流為 500mA。對(duì)于總線供電的集線器下游端口來說,當(dāng)它處于斷開連接、失效或掛起時(shí),它提供的電流不超過 100mA。當(dāng)它處于工作狀態(tài)時(shí),它提供的電流是 100mA。對(duì)于自供電的集線器來說,它的控制器、中繼器和所有下游端口所需要的電流總共不會(huì)超過 50

34、0mA。一般來說,除了控制器和中繼器需要部分電流外,剩下的電流只能允許集線器支持 4個(gè)或更少的下游端口。為了獲得 500mA 的電流,總線供電的集線器只能連接到自供電的集線器的下游端口上才能正常工作。對(duì)于自供電的集線器來說,它一般支持兩種供電配置,自供電和總線供電。如果選擇自供電方式,自身需要的所有電流都由自己負(fù)擔(dān)。對(duì)于下游端口來說,當(dāng)它處于斷開連接、失效或掛起時(shí),它提供的電流不超過 100mA。當(dāng)它處于工作狀態(tài)時(shí),它提供的電流是 500mA。自供電的集線器可以有電源開關(guān),用來控制對(duì)每個(gè)下游端口的供電情況,但這并不是必須的。而總線供電的集線器要求有電源開關(guān)。有電源開關(guān)的集線器可以控制以組為單位

35、的端口的電源,或每個(gè)端口的電源。集線器通過類描述符中的字段wHubCharaCteristic 來指示是否支持電源開關(guān),字段的具體細(xì)節(jié)在后面提供。如果集線器支持對(duì)每個(gè)端口都有電源開關(guān),那么端口的電源通過集線器設(shè)備類命令SetPortFeature(PORT_POWER)打開。如果集線器支持以組為單位的電源開關(guān),在接受到 SetPortFeature()命令后,組中所有的端口都將處于有電狀態(tài)。盡管自供電的集線器可以沒有電源開關(guān),但它必須支持對(duì)所有的下游端口斷電的功能。集線器對(duì)電流過載保護(hù)處理的供電的處理類似,也可以分組,并且電流過載保護(hù)的分組和電流開關(guān)的分組是獨(dú)立的。當(dāng)發(fā)生電流過載時(shí),集線器會(huì)停

36、止對(duì)出現(xiàn)電流過載的端口組供電,同時(shí)通過 GetPortStatus()類命令獲得端口狀態(tài)中電流過載情況,集線器的客戶端驅(qū)動(dòng)程序會(huì)根據(jù)具體的端口做出處理,清除電流過載的錯(cuò)誤狀態(tài)。當(dāng)出現(xiàn)電流過載時(shí),集線器會(huì)斷開出現(xiàn)電流過載的端口組的電源,主機(jī)上的集線器的客戶端程序會(huì)向此集線器發(fā)出類命令獲得具體的電流過載情況。然后,它會(huì)重新為這些端口提供電能。因?yàn)槎丝谝呀?jīng)斷電,所有從主機(jī)端來看,連接到端口上的設(shè)備都從總線上拔下,主機(jī)的協(xié)議軟件會(huì)釋放分配給它們的資源,它們各自相應(yīng)的客戶端驅(qū)動(dòng)程序也會(huì)進(jìn)行一系列的資源釋放工作;當(dāng)端口重新獲得電源時(shí),這些設(shè)備會(huì)被看咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 12 成時(shí)新插上的設(shè)

37、備,從而得到重新配置。2.2.3 錯(cuò)誤診斷和恢復(fù)作為 USB 設(shè)備與系統(tǒng)總線的連接點(diǎn),USB 集線器必須能夠及時(shí)地檢測(cè)到總線或內(nèi)部部件的錯(cuò)誤,并能從錯(cuò)誤中恢復(fù)過來,避免出現(xiàn)死鎖等現(xiàn)象。1 控制器的錯(cuò)誤恢復(fù)一個(gè)集線器控制器可對(duì)包傳輸?shù)钠茐倪M(jìn)行響應(yīng),并能從中恢復(fù)過來。它能夠?qū)α钆瓢?shù)據(jù)包和握手包的錯(cuò)誤都做出反應(yīng)。對(duì)于所有包的包標(biāo)識(shí)錯(cuò)誤,控制器會(huì)檢測(cè)包標(biāo)識(shí)的檢驗(yàn)位,如果出錯(cuò),就忽略此包。對(duì)于令牌包的數(shù)據(jù)部分錯(cuò)誤,控制器同樣會(huì)忽略此包。當(dāng)數(shù)據(jù)包的數(shù)據(jù)信息出現(xiàn) CRC 錯(cuò)誤時(shí),控制器會(huì)丟棄此數(shù)據(jù)包。2 中繼器的錯(cuò)誤恢復(fù)集線器能夠檢測(cè)出包結(jié)尾(EOP) ,并能夠從無限期的等待中,或者一幀的結(jié)束時(shí),總線所

38、處的某個(gè)非空閑的狀態(tài)中恢復(fù)過來。有兩種集線器的故障情況:動(dòng)作丟失和串?dāng)_。動(dòng)作丟失表示在檢測(cè)到起始包(SOP)后,缺少了必備的總線活動(dòng)或在一幀的結(jié)束時(shí)沒有檢測(cè)到包結(jié)束信號(hào)(EOP) 。串?dāng)_表示包起始后出現(xiàn)了跨越一幀的終點(diǎn)而繼續(xù)進(jìn)行此包的傳輸。集線器不了解所分配的帶寬,必須依賴自己的幀定時(shí)器來檢測(cè)到動(dòng)作丟失和串?dāng)_。3 集線器的同步每個(gè)集線器都有一個(gè)幀計(jì)時(shí)器,它的時(shí)鐘來自集線器自身的時(shí)鐘并通過檢測(cè)來自于主機(jī)的幀開始(SOF)包與主機(jī)的時(shí)鐘同步。它在一定的周期內(nèi)跟蹤主機(jī)的幀開始包,每一次檢測(cè)到一個(gè)幀起始包時(shí)都會(huì)重新復(fù)位,并負(fù)責(zé)產(chǎn)生幀結(jié)束的時(shí)刻。幀計(jì)時(shí)器要求有對(duì)丟失至多兩個(gè)連續(xù)的幀起始包的情況做出錯(cuò)誤恢

39、復(fù)功能。當(dāng)集線器和主機(jī)的同步存在偏移時(shí),幀計(jì)時(shí)器必須仍能夠跟主機(jī)重新同步。當(dāng)檢測(cè)到第一個(gè)幀的起始包時(shí),幀計(jì)時(shí)器開始以 12MHz 的周期計(jì)數(shù),它連續(xù)計(jì)數(shù)直到檢測(cè)到了下個(gè)幀的起始包為止。當(dāng)幀計(jì)時(shí)器復(fù)位時(shí),先前的值會(huì)作為前一次的幀長度而保存起來,表示主機(jī)幀的時(shí)間周期。如果接收幀起始包的操作失敗,集線器會(huì)使用前一個(gè)幀長度值來作為對(duì)當(dāng)前幀長度的近似值。因此當(dāng)丟失兩個(gè)連續(xù)的幀起始包時(shí),集線器仍能和主機(jī)同步。2.2.4 對(duì)設(shè)備連接/斷開的處理當(dāng)一個(gè) USB 設(shè)備連接到 USB 總線上或斷開與 USB 總線的連接時(shí),USB 集線器必須負(fù)責(zé)檢測(cè)到這一狀態(tài)的變化,并通過 USB 主機(jī)對(duì)集線器的數(shù)據(jù)訪問請(qǐng)求,將端

40、口的狀態(tài)變化通知給 USB 主機(jī)。在集線器的設(shè)備類中,除了用于控制傳輸?shù)亩它c(diǎn) 0 外,每個(gè)集線器還有一個(gè)中斷類型端點(diǎn):“狀態(tài)變化端點(diǎn)” 。主機(jī)通過這個(gè)狀態(tài)變化端點(diǎn)來接收集線器和其它各個(gè)下游端口的狀態(tài)變化情況。集線器在功能上的邏輯如圖 2.5 所示。集線器和其端口的變化情況是以位圖的形式通過狀態(tài)變化端點(diǎn)送往主機(jī)端集線器的客戶端驅(qū)動(dòng)程序的,其咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 13 中包括設(shè)備的插上和拔下的事件,其位圖如圖 2.6 所示。圖 2.5 集線器邏輯組織示意圖圖 2.6 狀態(tài)變化位圖N210位圖的第 0 位表示集線器本身變化,包括集線器的供電情況和電流的過載情況的變化。從第一位開始,每

41、一位表示端口的狀態(tài)變化情況,包括端口的設(shè)備連接、端口的啟用、掛起和電流過載的變化。對(duì)所有的二進(jìn)制位來說,只要它所代表的對(duì)象有任一情況發(fā)生變化時(shí),它都被置為 1,若無變化則為 0。主機(jī)端集線器的客戶驅(qū)動(dòng)程序接收到位圖信息后會(huì)啟動(dòng)集線器狀態(tài)變化的處理過程完成對(duì)狀態(tài)變化的處理。圖 2.7 顯示了它的處理過程。端口 N 變化檢測(cè)端口 1 變化檢測(cè)端口 2 變化檢測(cè)集線器變化檢測(cè)咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 14 圖 2.7 狀態(tài)變化的處理2.2.5 集線器的掛起和恢復(fù)功能為了省電,集線器支持對(duì)傳輸?shù)膾炱穑纳嫌味丝跈z測(cè)總線的空閑時(shí)間超過 3ms時(shí),集線器就會(huì)進(jìn)入掛起狀態(tài)。這種情況可能由于連接

42、此集線器的集線器斷開了它的下游端口的連接或進(jìn)入斷電狀態(tài),也有可能是總線本身由于 USB 主機(jī)沒有傳輸任務(wù)停止了對(duì) SOF 的傳輸。當(dāng)進(jìn)入掛起狀態(tài)是,集線器保存其所有下游端口的當(dāng)前狀態(tài),如果在工作狀態(tài)接受到 SetPortFeature(port_suspend)命令主動(dòng)掛起某個(gè)端口,則此端口進(jìn)入掛起狀態(tài),其他端口狀態(tài)不受影響。否是是否開始系統(tǒng)軟件為狀態(tài)變化端點(diǎn)創(chuàng)建中斷傳輸管道,接收中斷變化信息有變化?Hub 發(fā)送NAK 握手包中斷傳輸管道返回集線器和端口變化的位圖中斷管道結(jié)束數(shù)據(jù)傳輸系統(tǒng)軟件或驅(qū)動(dòng)程序讀取變化對(duì)象(集線器或端口)的狀態(tài)信息確有變化?清除相應(yīng)變化狀態(tài)系統(tǒng)軟件或驅(qū)動(dòng)程序處理所有的變

43、化信息為狀態(tài)變化端點(diǎn)重新初始化中斷傳輸管道返回咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 15 當(dāng)端口接收到 ClearPortFeature(port_suspend)命令時(shí),會(huì)從掛起狀態(tài)中恢復(fù)到工作狀態(tài),如果集線器檢測(cè)到恢復(fù)信號(hào)時(shí),它就返回工作狀態(tài)。當(dāng)集線器接收到喚醒信號(hào)或硬件重啟信號(hào)時(shí),都會(huì)使集線器恢復(fù)成工作狀態(tài)。如果集線器支持設(shè)備的遠(yuǎn)程喚醒功能,當(dāng)有設(shè)備拔下或插上、電流過載等信號(hào)時(shí),都會(huì)使集線器恢復(fù)成工作狀態(tài)。如果集線器支持設(shè)備的遠(yuǎn)程喚醒功能,當(dāng)集線器處于掛起狀態(tài)時(shí),設(shè)備從某個(gè)下游端口處被拔下,此端口會(huì)自動(dòng)進(jìn)入斷開狀態(tài)。3USB 集線器的設(shè)計(jì)3.1USB 集線器的軟件結(jié)構(gòu)一個(gè) USB 設(shè)備能

44、夠正常工作需要有 PC 機(jī)和 USB 設(shè)備雙方共同的軟硬件支持。USB集線器的硬件結(jié)構(gòu)由集線器中繼器、集線器控制器和端口組成。在前面已經(jīng)詳細(xì)講述了。在硬件方面,PC 機(jī)必須提供 USB 主機(jī)和 USB 集線器端口,而 USB 設(shè)備提供 USB 接口。 在軟件方面,PC 機(jī)必須包含 USB 系統(tǒng)軟件、設(shè)備的客戶端驅(qū)動(dòng)程序和應(yīng)用軟件,而在 USB 設(shè)備端,必須包含設(shè)備功能軟件、端點(diǎn) 0 和其它非 0 端點(diǎn),非 0 端點(diǎn)被用來支持特定功能的數(shù)據(jù)傳輸。USB 系統(tǒng)軟件根據(jù)功能分成 USBD 和 HCD 上下兩部分。HCD為上層提供了主機(jī)控制器的抽象以及數(shù)據(jù)在總線上傳輸?shù)某橄?。USBD 為上層的客戶端驅(qū)

45、動(dòng)程序提供了 USB 設(shè)備的抽象,并在客戶端驅(qū)動(dòng)程序和所驅(qū)動(dòng)的設(shè)備之間提供了數(shù)據(jù)傳輸?shù)某橄?。USB 集線器客戶端驅(qū)動(dòng)程序是一個(gè)特殊的客戶端驅(qū)動(dòng)程序。當(dāng)集線器接收到設(shè)備的接入時(shí),會(huì)由集線器的客戶端驅(qū)動(dòng)程序調(diào)用 USB 系統(tǒng)軟件提供的功能完成對(duì)設(shè)備的配置,配置程序通過創(chuàng)建默認(rèn)控制管道與設(shè)備建立聯(lián)系,獲得設(shè)備的各種描述符,然后配置程序會(huì)為設(shè)備的每個(gè)接口提供匹配的客戶端驅(qū)動(dòng)程序??蛻舳蓑?qū)動(dòng)程序從用戶的角度看相當(dāng)于傳統(tǒng)意義上的設(shè)備驅(qū)動(dòng)程序。不過設(shè)備端不同的接口對(duì)應(yīng)不同的客戶驅(qū)動(dòng)程序,如果設(shè)備只有一個(gè)接口,那么從用戶來看,兩者是一樣的??蛻舳蓑?qū)動(dòng)程序通過 USB 系統(tǒng)軟件提供的接口與設(shè)備交互,而不是通過過

46、去的 I/O 地址或端口訪問設(shè)備。在 PC 機(jī)端,操作系統(tǒng)(如 Windows 和 Linux 等)一般都支持 HCD、USBD 和標(biāo)準(zhǔn)的設(shè)備類驅(qū)動(dòng)程序。如果設(shè)計(jì)一個(gè)標(biāo)準(zhǔn)類型的 USB 設(shè)備(如 HID 設(shè)備、存儲(chǔ)設(shè)備等),且 PC 機(jī)的操作系統(tǒng)支持該類 USB 設(shè)備驅(qū)動(dòng)程序,則不必再花費(fèi)力氣設(shè)計(jì) PC 機(jī)端的特定設(shè)備接口的驅(qū)動(dòng)程序。3.2USB 集線器的開發(fā)流程由于 USB 總線具有即插即用、總線供電等諸多優(yōu)勢(shì),但也有數(shù)據(jù)傳輸帶寬、數(shù)據(jù)傳輸距離等限制。因此,在 USB 設(shè)備設(shè)計(jì)之前必須對(duì)設(shè)備接口的需求進(jìn)行分析。采用并行模式的系統(tǒng)開發(fā)方式,軟硬件同時(shí)進(jìn)行,可以大大縮短設(shè)備的開發(fā)周期,提高產(chǎn)品的

47、開發(fā)效率。如圖 3.1。咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 16 USB 集線器定義性能指標(biāo)選擇集線器芯片準(zhǔn)備開發(fā)環(huán)境硬件測(cè)試和調(diào)試軟件編程和調(diào)試芯片固件設(shè)備驅(qū)動(dòng)用戶界面軟硬件集成集線器測(cè)試和調(diào)試圖 3.1 USB 集線器開發(fā)流程圖3.3USB 集線器設(shè)計(jì)實(shí)例以 GL650 控制芯片為實(shí)例常用的 USB 集線器(基于 USB1.1 協(xié)議)的控制芯片有:Alcor Micro 公司的AU9254,Atmel 公司的 AT43301,Genesys Logic 公司的GL650USB、GL651USB,Motorola 公司的 MC141555、MC141556,Philips 公司的PDIUS

48、BH11 等等。下面以 Genesys Logic 公司的 GL650USB 為例,介紹 USB 集線器的設(shè)計(jì)。GL650 芯片是一個(gè)具有 5 個(gè)端口的 USB 集線器,其主要是有一個(gè)上行端口和四個(gè)下行端口。每個(gè)下游端口都有電源開關(guān)控制和電流過載檢測(cè)。它主要運(yùn)用一個(gè)類似于八位的 RISC 對(duì)主機(jī)的命令進(jìn)行編碼和解碼。GL650 的設(shè)計(jì)主要用于獨(dú)立的集線器,也可以集成到 PC 機(jī)的主板或者任何其他器件上以支持 USB 集線器的功能。該芯片能夠在不需要重新拔出和插入而自動(dòng)在自行供電和總線供電之間進(jìn)行切換。GL650 芯片能夠被設(shè)置成單獨(dú)模式或者是組的模式以用來對(duì)下行端口的器件進(jìn)行電源管理。為了防止

49、不咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 17 正常的下游端口器件的電流消耗,GL650 芯片通過讀入電流溢出標(biāo)志位來提供電源使能標(biāo)志位。通過 LED 閃亮來支持智能通信指示,數(shù)據(jù)通信流過端口的速度越快,端口指示 LED 的閃亮的頻率越高。當(dāng)USB被掛起時(shí),GL650將自行關(guān)掉LED并且停止運(yùn)行時(shí)鐘以減少電源的損耗。單芯片集成的USB集線器控制器大大節(jié)省了開發(fā)USB集線器的成本。L650USB完全兼容USB1.1協(xié)議,內(nèi)建了3.3V電壓轉(zhuǎn)換,這樣減少了USB集線器的開發(fā)成本。GL650USB采用48管腳的LQFP封裝。GL650的管腳定義如圖3.2中所示。詳細(xì)的管腳定義、系統(tǒng)結(jié)構(gòu)框圖、電器特性等

50、參考附錄部分。 圖3.2 GL650芯片管腳示意圖以 GL650USB 為集線器控制器的原理圖如下。其中,USB_DP、USB_DM 為 USB 集線器的上游端口,USB1-4_DP、USB1-4_DM 為集線器的 4 個(gè)下游端口。XTAL1、XTAL2 需要外接 12M 的晶振。GL650USB 在 15 管腳(VCC3V)能夠輸出 3.3V 電壓為上游端口 D+的上拉電阻提供 3.3V 電壓。這樣不用外接 3.3V 電源,只需要從上游端口引入 5V 電源即可使集線器工作,從而可以減少生產(chǎn)成本。咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 18 咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 19 USB 集

51、線器是一個(gè)標(biāo)準(zhǔn)類型的 USB 設(shè)備,且大多數(shù)操作系統(tǒng)(如 Windows 和 Linux等)都支持該類 USB 設(shè)備驅(qū)動(dòng)程序,所以不必再設(shè)計(jì) PC 機(jī)端的特定設(shè)備接口的驅(qū)動(dòng)程序。將 USB 集線器直接和 PC 機(jī)相連,PC 機(jī)自動(dòng)識(shí)別。 這樣一個(gè)支持 USB1.1 協(xié)議、擁有 4 個(gè)下游端口的 USB 集線器設(shè)計(jì)完成。咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 20 總 結(jié)通過閱讀大量英文文獻(xiàn)和中文資料,了解了 USB 總線的基本知識(shí),如 USB 的體系結(jié)構(gòu)和特點(diǎn)包括總線特征協(xié)議定義傳輸方式和電源管理等等,對(duì) USB 總線的基礎(chǔ)知識(shí)、產(chǎn)生和發(fā)展,數(shù)據(jù)在 USB 總線上的傳輸機(jī)理, 高速 USB2.0

52、 的數(shù)據(jù)傳輸能力,USB 支持的控制傳輸、 同步傳輸、 塊傳輸及中斷傳輸 4 種傳輸類型,以及 USB2.0 總線的應(yīng)用場景有了更深的理解。還學(xué)習(xí)了 Genesys Logic 公司的 GL650USB 芯片的相關(guān)知識(shí),以及如何去開發(fā)一個(gè)簡單集線器的基本流程。希望在以后有時(shí)間的話,繼續(xù)學(xué)習(xí)更多關(guān)于 USB 集線器方面的知識(shí),來拓展學(xué)習(xí)的空間。 咔嚓大學(xué) 2008 屆本科生畢業(yè)論文 21 參考文獻(xiàn) 22 參考文獻(xiàn)1USB 接口開發(fā)技術(shù) 專著胡曉軍,張愛成 編著,2005.52USB2.0 原理與工程開發(fā) 專著王成儒 李英偉 編著,2004.13USB2.0 設(shè)備的設(shè)計(jì)與開發(fā) 專著邊海龍,賈少華

53、編著,2004.14USB 系統(tǒng)體系(第 2 版) 專著美國邁舍爾公司 編,2003.95USB 設(shè)計(jì)應(yīng)用實(shí)例 (美)海德(Hyde,j.) 著;孫耀國 譯,2003.66USB 技術(shù)及應(yīng)用設(shè)計(jì) 專著肖踞雄 著,2003.117USB 外圍設(shè)備設(shè)計(jì)與應(yīng)用 專著許永和 著,2002.78USB 接口設(shè)計(jì) 專著張弘 編著,2002.129USB 2.0 硬件設(shè)計(jì) 專著蕭世文 著,2002.1010 GL650USB HUB CONTROLLER 專著/ Tsao Ti Wei 著,Dec. 22, 199911 Universal Serial Bus Specification, Revisio

54、n 1.0 USB Implementers Forum, January 15, 1996附 錄 23 附 錄GL650 USB 控制器芯片介紹特性USB集線器的廉價(jià)解決方案USB遵守的規(guī)范:遵守USB1.1修訂協(xié)議訪問一個(gè)設(shè)備地址,支持兩個(gè)終點(diǎn)8位的微處理器:仿RISC(精簡指令)的架構(gòu)USB優(yōu)化指令設(shè)置單周期的指令流程運(yùn)行速度:24 MHz的時(shí)鐘頻率性能:在24 MHz的輸入下每秒處理12 MIPS(每百萬條指令)輸入輸出端口:GL650用于帶有四下游端口的集線器內(nèi)部緩存:64字節(jié)的RAM1.75K*14的可編程ROM板載3.3v輸出:無需額外的電壓調(diào)校集成的USB收發(fā)器12 MHz的外

55、部晶振內(nèi)嵌電源重置開關(guān)自動(dòng)電源檢測(cè)用于ESD恢復(fù)支持懸掛/正常工作模式的電源管理支持下行端口的電源管理自供電/總線供電模式間的自動(dòng)切換智能LED通信狀態(tài)指示:數(shù)據(jù)通信流過端口的速度越快,端口指示LED的閃亮的頻率越高實(shí)際應(yīng)用:獨(dú)立的USB集線器PC主板USB集線器48管腳的LQFP封裝附 錄 24 功能概述GL650芯片是一個(gè)具有5個(gè)端口的USB集線器,其主要是有一個(gè)上行端口和四個(gè)下行端口。它主要運(yùn)用一個(gè)類似于八位的RISC對(duì)主機(jī)的命令進(jìn)行編碼和解碼。GL650的設(shè)計(jì)主要用于獨(dú)立的集線器,也可以集成到PC機(jī)的主板或者任何其他器件上以支持USB集線器的功能。該芯片能夠在不需要重新拔出和插入而自動(dòng)在自行供電和總線供電之間進(jìn)行切換。GL650 芯片能夠被設(shè)置成單獨(dú)模式或者是組的模式以用來對(duì)下行端口的器件進(jìn)行電源管理。為了防止反常的下游端口器件的電流消耗,GL650芯片通過讀入電流溢出標(biāo)志位來提供電源使能標(biāo)志位。通過LED閃亮來支持智能通信指示,數(shù)據(jù)通信流過端口的速度越快,端口指示LED的閃亮的頻率越高。當(dāng)USB被掛起時(shí),GL65

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論