<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > USB端口找到新居,落戶(hù)嵌入式系統

USB端口找到新居,落戶(hù)嵌入式系統

作者:ECN資深技術(shù)編輯 Jon Titus 時(shí)間:2004-09-24 來(lái)源:電子產(chǎn)品世界 收藏

2004年5月B版

  安裝過(guò)PC的人員都知道,通用串行接口(USB)具有與即插即用相似的性能。因而,將移植到系統是一種方便的控制外部設備的辦法。畢竟USB只有兩條信號線(xiàn)和兩條電源連接線(xiàn),設計一個(gè)不會(huì )有什么困難吧。這一任務(wù)說(shuō)起來(lái)簡(jiǎn)單,對設計者卻有不少困難。不過(guò),供應商可以提供從板卡到軟件的一切幫助。

  在一個(gè)系統上添加的最簡(jiǎn)單的辦法是采用基于Windows的計算機。很多單板機(圖1)提供了內置的USB端口,并且運行Windows 軟件。許多USB外設都裝有現成可用的Windows驅動(dòng)器。當你需要采用實(shí)時(shí)操作系統(RTOS)時(shí),任務(wù)就會(huì )變得困難起來(lái)。若干家公司提供了能夠簡(jiǎn)化USB端口設計的芯片和軟件,還可以獲得在片上系統添加端口的知識產(chǎn)權(IP)許可證。

  USB設備可以扮演主控或外設的雙重角色。外設無(wú)需太高的智能度,但主USB端口卻要求具備處理能力和控制軟件。USB(OTG)規范考慮到讓某些外設可以具備有限的主控功能,這樣USB設備能在沒(méi)有PC基主控器的情況下實(shí)現通信。

  最新標準(USB 2.0)提供的總線(xiàn)速率是1.5Mbit/s(低速)、12Mbit/s(全速)和480Mbit/s(高速)??上?,很多用戶(hù)認為標有“USB 2.0”字樣的設備一直在480Mbit/s的速率工作。但很多遵循USB 2.0的設備是在較慢的傳輸速率下工作。

  在規劃一個(gè)應用時(shí),你要確切知道使用什么USB設備——打印機、海量存儲單元還是I/O控制器。然后,決定你需要多少端口,是否需要主控、外設還是兩種端口都要。大多數嵌入式應用并不需要外設端口。

  你在評估端口配置時(shí),應該決定你的數據率需求。例如,雖然一個(gè)應用可以平均10Mbit/s的速率進(jìn)行數據傳輸,但也可能需要以更高的速率傳輸突發(fā)性數據。請記住,要實(shí)現更高的數據傳輸,就需要在USB連接的兩端采用更大的緩沖區。你可能需要將性能要求稍微降低一些以減少設計所需的昂貴緩沖。

  如果你對數據率沒(méi)有把握,可以從USB主控芯片廠(chǎng)商那里購買(mǎi)開(kāi)發(fā)板,然后在PC上對你的應用進(jìn)行模擬。主控芯片供應廠(chǎng)商包括TransDimensions,Cypress半導體,NEC和Philips半導體公司。以TransDimension為例,它提供2端口和3端口的主控芯片和軟件。另外,很多公司也出售作為USB外設控制器的芯片。

  主控制器芯片的支持軟件有多種,從支持Philips ISP1561的基于Windows的驅動(dòng)器,到支持TransDimension器件的多種RTOS軟件。Cypress提供用于EZ主控IC的Linux和VxWorks驅動(dòng)器。所有的USB主控端口都需要一個(gè)“堆?!?,它的簡(jiǎn)單含義是軟件的分層布置,如圖2所示。各層形成從底部物理層(連線(xiàn)和芯片)一直到頂部應用軟件層的結構。

  在物理層,芯片和IP廠(chǎng)商已經(jīng)采用了標準的軟件-接口連接,它們可以簡(jiǎn)化嵌入式設計中主控器的運用。這樣,堆棧往往遵循如下標準:開(kāi)放式主控制器接口(OHCI)、通用主控制器接口(UHCI),或者更新的為USB2.0規范開(kāi)發(fā)的增強型主控制器接口EHCI。這些規范描述了主控制器所用的寄存器級操作。通過(guò)這些標準的采用,芯片制造商提供了驅動(dòng)器軟件的通用接口。OHCI、UHCI和EHCI規范明確了主控制器寄存器和驅動(dòng)器軟件之間的互操作。

  通常,硬件抽象層,或者包裝層將堆棧和驅動(dòng)器與特定微處理器的具體實(shí)現細節屏蔽開(kāi)來(lái)。設計者可以獲得包裝層的源代碼,因此能對它進(jìn)行修改,以便適應所選定的具體微處理器和RTOS。如果你不想深入了解這一層的軟件細節,可以由供應商對包裝層進(jìn)行定制開(kāi)發(fā)。你可能會(huì )發(fā)現,啟動(dòng)項目時(shí)即采用兼容的微處理器、堆棧、RTOS和USB主控制器將使開(kāi)發(fā)變得更為容易。

  除了堆棧,開(kāi)發(fā)者還將需要控制外設的驅動(dòng)器。雖然Windows、Windows CE和Linux可以調用用于多種外設的、種類(lèi)極為豐富的驅動(dòng)程序,但你還是會(huì )發(fā)現其他操作系統沒(méi)有提供同樣的多種選擇。IC廠(chǎng)商們提供了USB級驅動(dòng)器,它們可以提供控制同類(lèi)器件所需的一組最小的函數集。各類(lèi)器件包括打印機、照相機、人機接口、海量存儲設備、通信器件等等。例如,打印機類(lèi)的驅動(dòng)可以獲知打印機的狀態(tài)、打印機初始化、發(fā)出并接收打印機數據、以及打印機復位。

  這樣一來(lái),你就很可能找出一種與特定RTOS和處理器一起工作的打印機類(lèi)驅動(dòng)器。不過(guò),打印機制造商可以在該類(lèi)驅動(dòng)器的基礎上獲得功能更強的驅動(dòng)器,這些驅動(dòng)器通常稱(chēng)為同類(lèi)軟件庫。但是,如果你計劃控制一個(gè)定制的I/O設備,還要準備編寫(xiě)自己的驅動(dòng)器。

  雖然,一臺PC無(wú)論用戶(hù)需要與否都可以存儲成百上千的USB設備驅動(dòng)器,但嵌入式系統卻不具備此般靈活性。所以,你可能只采用那些能確保與你的系統一起工作的外設。由于很多嵌入式應用的磁盤(pán)空間有限,而只配備幾種常用器件的驅動(dòng)器。記住,如果你不能確定與嵌入式系統相連的器件的話(huà),得到的就不是一個(gè)好設計。在你考慮軟件和驅動(dòng)器時(shí),請詳細規定與USB端口通信的設備的具體情況。

  在某些情況下,對小尺寸、高可靠性或者大批量生產(chǎn)的器件的需求會(huì )將一個(gè)嵌入式系統從電路板 “擠壓”成為一塊芯片。因此,工程師們必須獲得知識產(chǎn)權的許可證,將其集成到ASIC或者FPGA中。若干公司以IP形式提供USB主控控制器。Mentor Graphics公司提供一種全速USB控制器Inventra,它可以用作一個(gè)主控或者外設。Synopsys公司提供DesignWare核,它有多種類(lèi)型的USB端口。最后,ARC公司提供若干種USB設計的許可證。各家公司以VHDL或Verilog代碼的形式提供其USB核。

  幸運的是,USB核帶有標準的硬件接口,如ARC公司為其微處理器開(kāi)發(fā)先進(jìn)高速總線(xiàn)(AHB),它可以用于多種其它的處理器核。IP廠(chǎng)商還可以支持由虛擬插座接口聯(lián)盟(Virtual Socket Interface Alliance)制定的外圍虛擬部件接口(PVCI)標準。如果你決定去獲取USB IP的許可證,務(wù)必確保它適合所選定的RTOS。IP許可證廠(chǎng)商可提供一系列兼容的軟件產(chǎn)品和開(kāi)發(fā)工具。另外,IP廠(chǎng)商自己可在軟件方面提供幫助。

  可惜,USB設計考慮的范圍遠非本文所能完全覆蓋。建議讀者閱讀其它相關(guān)書(shū)刊和資料?!?BR>



關(guān)鍵詞: USB端口 嵌入式

評論


相關(guān)推薦

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

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>