電子產(chǎn)業(yè)一站式賦能平臺(tái)

PCB聯(lián)盟網(wǎng)

搜索
查看: 1926|回復(fù): 0
收起左側(cè)

嵌入式系統(tǒng)開發(fā)學(xué)什么_巧妙測(cè)試嵌入式USB2.0主機(jī)接口信號(hào)質(zhì)量

[復(fù)制鏈接]

2607

主題

2607

帖子

7472

積分

高級(jí)會(huì)員

Rank: 5Rank: 5

積分
7472
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2020-8-3 11:11:28 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
嵌入式系統(tǒng)開發(fā)學(xué)什么_巧妙測(cè)試嵌入式USB2.0主機(jī)接口信號(hào)質(zhì)量,   

  

摘要: 本文主要討論了某款嵌入式產(chǎn)品中USB2.0主機(jī)接口的眼圖測(cè)試。通過一個(gè)測(cè)試案例展開了對(duì)USB2.0測(cè)試機(jī)理的探討,對(duì)后續(xù)的嵌入式產(chǎn)品USB2.0主機(jī)測(cè)試有一定的參考意義。

在高速串行技術(shù)如此廣泛應(yīng)用的今天,簡(jiǎn)單易用的USB堪稱是PC平臺(tái)上最成功的I/O技術(shù),普及率幾乎100%。而且隨著終端用戶對(duì)于高速USB設(shè)備應(yīng)用需求的不斷增加,越來越多的嵌入式通信類終端產(chǎn)品開始增加了USB2.0主機(jī)接口的設(shè)計(jì)以滿足客戶的應(yīng)用需求。成熟的應(yīng)用技術(shù)由PC平臺(tái)轉(zhuǎn)向嵌入式平臺(tái)的已經(jīng)成為一種趨勢(shì)。

為了滿足USB2.0一致性應(yīng)用的需求,所有的USB2.0設(shè)計(jì)都必須滿足USB IF發(fā)布的USB2.0物理層一致性測(cè)試要求。相對(duì)于比較成熟的PC平臺(tái)USB2.0 主機(jī)測(cè)試技術(shù)而言,基于通信類終端的嵌入式USB2.0 主機(jī)的測(cè)試面臨更多的挑戰(zhàn)。特別是進(jìn)行二次開發(fā)的應(yīng)用廠商而言,如何滿足USB2.0物理層一致性測(cè)試要求,很大程度上需要原廠在測(cè)試模式以及測(cè)試封包方面提供更多的支持。但應(yīng)用需求的多樣化導(dǎo)致了許多設(shè)計(jì)架構(gòu)脫離了原廠的測(cè)試狀態(tài)機(jī)控制范疇,問題接踵而來。

嵌入式USB2.0主機(jī)測(cè)試具體過程

本文中的USB控制主機(jī)采用某大型通訊類方案提供商的IAD解決方案,片內(nèi)集成一個(gè)USB2.0控制器,然后通過一個(gè)USB HUB中繼對(duì)外提供2個(gè)高速主機(jī)接口。所選用的測(cè)試設(shè)備如表1所示。

表1:嵌入式USB 2.0主機(jī)測(cè)試所采用的測(cè)試設(shè)備


  




測(cè)試中出現(xiàn)的問題本次測(cè)試將主要驗(yàn)證產(chǎn)品上兩個(gè)USB高速主機(jī)接口的眼圖。對(duì)于USB2.0物理層的眼圖測(cè)試,USB IF在USB2.0 SPEC中有著明確的眼圖,模板定義如圖2所示。


  




F1: DUT_USB2.0功能框圖


  



F2: 傳輸信號(hào)波形模版

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


  




F3: 測(cè)試連接圖

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

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

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

問題分析解決在和客戶方面的資深工程師分析和討論之后,我們有了一個(gè)非常巧妙的解決方案,當(dāng)然還需要實(shí)際的測(cè)試來驗(yàn)證。

USB專業(yè)測(cè)試人員都知道,USB IF針對(duì)USB一致性測(cè)試提供了一個(gè)專用測(cè)試工具(USB-IF HS Electrical Test Tool)以方便開發(fā)者進(jìn)行相關(guān)的USB測(cè)試。但這個(gè)工具只能運(yùn)行在PC主機(jī)上,而我們的嵌入式系統(tǒng)其實(shí)也是通過相應(yīng)的底層命令來實(shí)現(xiàn)這個(gè)工具相關(guān)的測(cè)試功能。

從測(cè)試拓?fù)鋪砜,我們目前的問題主要在于嵌入式控制主機(jī)無法實(shí)現(xiàn)對(duì)USB Hub的控制和測(cè)試模式設(shè)定。從控制系統(tǒng)的角度來說,不管是嵌入式控制主機(jī)還是PC主機(jī)實(shí)現(xiàn)的都是USB主機(jī)控制器的作用,也就是說,我們可以使用PC主機(jī)替代嵌入式控制主機(jī),在一臺(tái)裝有USB-IF HS Electrical Test Tool的PC上對(duì)產(chǎn)品板級(jí)USB Hub進(jìn)行Down Stream Facing Port的Test Packet測(cè)試。當(dāng)然,我們首先要斷開嵌入式控制主機(jī)與USB Hub之間的Up Stream Facing Port,并飛線與PC主機(jī)的USB接口連接。因?yàn)闇y(cè)試單扳本身提供5V供電,所以我們只需要飛出D+/D-/GND三線即可。完成后的電路板如圖4所示。


  




F4: USB Hub Up Stream Port飛線圖

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


  




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

在圖5中的Port Control欄中選擇Test Packet命令,在相應(yīng)的Port欄中選擇我們需要測(cè)試的端口如1,示波器上出現(xiàn)了我們期待已久的信號(hào)波形(圖6)。按照Lecroy示波器USB2.0測(cè)試軟件中的Step by Step,示波器很快就完成了測(cè)試并輸出了分析報(bào)告。根據(jù)測(cè)試報(bào)告中的關(guān)鍵測(cè)試數(shù)據(jù),我們優(yōu)化了電路設(shè)計(jì),使得主機(jī)接口的信號(hào)更加理想。


  




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

測(cè)試總結(jié)

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

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

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

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

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



大力士

發(fā)表回復(fù)

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表