《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 基于通信類終端的嵌入式USB2.0 主機(jī)的測試
基于通信類終端的嵌入式USB2.0 主機(jī)的測試
摘要: 一前言在高速串行技術(shù)如此廣泛應(yīng)用的今天,,簡單易用的USB堪稱是PC平臺上最成功的I/O技術(shù),,普及率幾乎100%,。
Abstract:
Key words :

  一 前言

  在高速串行技術(shù)如此廣泛應(yīng)用的今天,,簡單易用的USB堪稱是PC平臺上最成功的I/O技術(shù),,普及率幾乎100%,。而且隨著終端用戶對于高速USB設(shè)備應(yīng)用需求的不斷增加,,越來越多的嵌入式通信類終端產(chǎn)品開始增加了USB2.0主機(jī)接口的設(shè)計以滿足客戶的應(yīng)用需求,。成熟的應(yīng)用技術(shù)由PC平臺轉(zhuǎn)向嵌入式平臺的已經(jīng)成為一種趨勢,。為了滿足USB2.0一致性應(yīng)用的需求,所有的USB2.0設(shè)計都必須滿足USB IF發(fā)布的USB2.0物理層一致性測試要求,。相對于比較成熟的PC平臺USB2.0 主機(jī)測試技術(shù)而言,,基于通信類終端的嵌入式USB2.0 主機(jī)的測試面臨更多的挑戰(zhàn)。特別是進(jìn)行二次開發(fā)的應(yīng)用廠商而言,,如何滿足USB2.0物理層一致性測試要求很大程度上需要原廠在測試模式" title="測試模式">測試模式以及測試封包方面提供更多的支持,。但應(yīng)用需求的多樣化導(dǎo)致了許多設(shè)計架構(gòu)脫離了原廠的測試狀態(tài)機(jī)控制范疇,問題接踵而來,。

  二 嵌入式USB2.0主機(jī)測試

  1 產(chǎn)品USB部分原理及測試環(huán)境

  產(chǎn)品USB控制原理

  USB控制主機(jī)采用某大型通訊類方案提供商的IAD解決方案,,片內(nèi)集成一個USB2.0控制器,然后通過一個USB HUB中繼對外提供2個高速主機(jī)接口,。

  測試設(shè)備:

  


 

  

 

  DUT_USB2.0功能框圖

  2 測試中出現(xiàn)的問題

  本次測試將主要驗證產(chǎn)品上兩個USB高速主機(jī)接口的眼圖,。對于USB2.0物理層的眼圖測試,,USB IF在USB2.0 SPEC中有著明確的眼圖模板定義如下:

  

眼圖模板定義

 

  Transmit Waveform. Template

  關(guān)于USB高速主機(jī)眼圖測試的測試方法,USB IF在USB2.0 SPEC中也有清晰的定義,,USB2.0主機(jī)控制器" title="主機(jī)控制器">主機(jī)控制器必須支持規(guī)定的測試模式,。對于眼圖的測試則必須支持TEST Packet測試模式,連續(xù)發(fā)送規(guī)范的測試碼流以測定眼圖模板,,上升下降時間,,傳輸抖動以及其他的一些AC指標(biāo)。也就是說測試是基于原廠對于測試模式的支持并提供相應(yīng)的Firmware,。準(zhǔn)備測試前工程師和原廠溝通后順利拿到了測試Firmware和測試命令,。原廠提供的測試方法是在上電啟動之后進(jìn)入 CFE模式然后下載和運行測試專用Image,這樣就可以使用TEST_Packet命令進(jìn)行眼圖的測試了。測試連接圖示如下:

  

測試連接圖

 

  測試連接圖

  一切看起來都是那么的順利,,但是當(dāng)我們通過串口進(jìn)行TEST Packet命令下發(fā)之后在兩個主機(jī)接口卻看不到信號波形出現(xiàn),。因為是第一次進(jìn)行嵌入式USB的測試,所以對于出現(xiàn)的問題是沒有任何經(jīng)驗可以參考和借鑒的,。從串口信息來看是顯示命令下發(fā)成功的,,那問題到底出在哪里呢?只有從信號流向一步一步地查找了。工程師首先測試了USB HUB與CPU之間的UpSTream接口,,發(fā)現(xiàn)有相應(yīng)的信號波形出現(xiàn),。也就是說USB主機(jī)控制器已經(jīng)執(zhí)行了TEST Packet命令并發(fā)送了測試碼流,問題出現(xiàn)在了USB Hub這里,它并沒有向兩個Down Stream Facing Port轉(zhuǎn)發(fā)碼流,。而且原廠提供的命令也很奇怪,,根據(jù)有PC主板測試經(jīng)驗的工程師的意見,對于HUB的測試應(yīng)該需要指定測試端口才對,。而在測試命令中我們并沒有看到相應(yīng)的指令而只有簡單的TEST Packet命令,。在詢問了原廠技術(shù)人員后問題有了答案:

  (1)原來我們采用的方案只支持一個USB 主機(jī)接口,所以在片上只集成一個USB 主機(jī) CONtroller,,測試命令也是基于主機(jī)控制器類型的,。而我們的板級應(yīng)用是采用了一個USB Hub與主機(jī) Controller中繼來實現(xiàn)多端口應(yīng)用的擴(kuò)展,根本無法進(jìn)行Hub Down Stream Facing Port的測試,。

  (2)并且原廠的測試是在CFE模式下通過下載運行特定的測試程式來進(jìn)行測試,,在這個階段,并沒有實現(xiàn)USB Hub的初始化以及配置字的操作,,也就是說USB Hub是不可控的無法進(jìn)入測試模式的設(shè)定,。我們的多USB主機(jī)端口的應(yīng)用設(shè)計使得系統(tǒng)架構(gòu)中加入了USB Hub進(jìn)行中繼,已經(jīng)超出了原廠設(shè)計的USB測試狀態(tài)機(jī)控制范疇,,導(dǎo)致了無法通過原廠提供的測試命令進(jìn)行測試,。再次和原廠技術(shù)支持討論新的測試程式的開發(fā)從時間說來看已經(jīng)不實際了,客戶非常關(guān)注并要求我們必須盡快給到USB 主機(jī)的測試報告,。第一次進(jìn)行嵌入式USB 主機(jī)測試就遇到如此棘手的問題,,工程師們一時間束手無策,。有沒有另外的方法呢?

  3 問題分析解決

  在和客戶方面的資深工程師分析和討論之后,我們有了一個非常巧妙的解決方案,,當(dāng)然還需要實際的測試來驗證,。USB專業(yè)測試人員都知道,USB IF針對USB一致性測試提供了一個專用測試工具 (USB-IF HS Electrical TEST Tool)以方便開發(fā)者進(jìn)行相關(guān)的USB測試,。但這個工具只能運行在PC主機(jī)上,,而我們的嵌入式系統(tǒng)其實也是通過相應(yīng)的底層命令來實現(xiàn)這個工具相關(guān)的測試功能。從測試拓?fù)鋪砜?,我們目前的問題主要在于嵌入式控制" title="嵌入式控制">嵌入式控制主機(jī)無法實現(xiàn)對USB Hub的控制和測試模式設(shè)定,。從控制系統(tǒng)" title="控制系統(tǒng)">控制系統(tǒng)的角度來說,不管是嵌入式控制主機(jī)還是PC主機(jī)都實現(xiàn)的是USB主機(jī)控制器的作用,,也就是說我們可以使用PC主機(jī)替代嵌入式控制主機(jī),在一臺裝有USB-IF HS Electrical TEST Tool的PC上對產(chǎn)品板級USB Hub進(jìn)行Down Stream Facing Port的TEST Packet測試了,。當(dāng)然,,我們首先要斷開嵌入式控制主機(jī)與USB Hub之間的Up Stream Facing Port并飛線與PC主機(jī)的USB接口連接。因為測試單扳本身提供5V供電,,所以我們只需要飛出D+/D-/GND三線即可,。完成后的圖示如下:

  

控制工具設(shè)置界面

 

  USB Hub Up Stream Port飛線圖

  我們使用了一臺裝有USB-IF HS Electrical TEST Tool的ThinkPad R51作為控制平臺,在按照上面的圖示進(jìn)行測試連接并將產(chǎn)品上電之后我們在測試工具中選擇了Hub類測試并發(fā)現(xiàn)了板級的USB Hub,。我們已經(jīng)初步實現(xiàn)了之前關(guān)于控制系統(tǒng)的設(shè)想,,圖示如下:

  

控制工具設(shè)置界面

 

  控制工具設(shè)置界面

  在圖示中的Port Control欄中選擇TEST Packet命令,在相應(yīng)的Port欄中選擇我們需要測試的端口如1,,示波器上出現(xiàn)了我們期待已久的信號波形(如下),。按照Lecroy示波器USB2.0測試軟件中的Step by Step,示波器很快就完成了測試并輸出了分析報告,。有專業(yè)的分析工具就是不一樣,,我們根據(jù)測試報告中的關(guān)鍵測試數(shù)據(jù),優(yōu)化了我們的電路設(shè)計使得主機(jī)接口的信號更加理想(圖示如下,,本文中不對分析內(nèi)容進(jìn)行展開),。

  

優(yōu)化調(diào)整后的USB-主機(jī)眼圖 www.elecfans.com

 

  優(yōu)化調(diào)整后的USB-主機(jī)眼圖

  三 測試總結(jié)

  此次嵌入式USB2.0主機(jī)接口眼圖的測試到此算是順利完成了,重新回顧一下我們的測試過程,,感觸頗深,。可以說因為是第一次進(jìn)行USB高速主機(jī)接口的測試,,前期的準(zhǔn)備工作并不是很充分,。但正是有這些突如其來的問題,讓我們可以更加深入的理解和分析USB技術(shù)的原理和測試方法,,有很多的收獲和經(jīng)驗和大家一起分享:

  仔細(xì)和深入的解讀產(chǎn)品的規(guī)范是我們順利進(jìn)行測試的基礎(chǔ)和依據(jù),,例如此次的USB2.0 SPEC,。所有的設(shè)計和測試都是依據(jù)規(guī)范展開的,只有解讀了規(guī)范,,才能保證理解USB2.0的內(nèi)部架構(gòu)和狀態(tài)控制機(jī),,才能保證測試的順利進(jìn)行。

  真正理解控制系統(tǒng),,此次測試的關(guān)鍵在于工程師首先理解的USB2.0 SPEC的同時大膽進(jìn)行了控制主機(jī)的假定替代,。用歸一化的方法來審視我們的控制系統(tǒng)以及層次化系統(tǒng)功能層面是我們進(jìn)行測試設(shè)計創(chuàng)新的保證。

  一套真正專業(yè)實用的分析設(shè)備和工具非常關(guān)鍵,,此次使用的美國力科(Lecory)的數(shù)字示波器和USB2.0分析軟件對于我們高效的分析信號和準(zhǔn)確的定位問題非常關(guān)鍵,。有了專業(yè)儀器廠商的支持才能確保產(chǎn)品的開發(fā)進(jìn)度和質(zhì)量。

  當(dāng)然,,USB主機(jī)信號質(zhì)量的測試不僅僅是眼圖部分,,USB IF關(guān)于USB2.0一致性測試規(guī)范還有很多的測試項目需要完成。而且對于嵌入式USB測試而言,,會面臨更多的挑戰(zhàn),,希望本文可以給到從事嵌入式USB開發(fā)測試的工程師一些思路和借鑒。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。