|
USB簡介
通用串列匯流排(Universal Serial Bus, USB)是目前應用最廣泛的電腦串列界面,舉凡滑鼠、鍵盤、甚至到硬碟及其他電子裝置的連接,都可以通過USB來連接。也因其廣泛的應用,USB-IF制訂了四種速度規格如表(一)所示,從最低速1.5Mbps的USB1.0應用在滑鼠鍵盤,到最高速5Gbps的USB3.0應用在硬碟等存儲產品上。此外,USB還提供了向下相容的能力,舉例來說,我們可以在筆電上的USB3.0介面接上USB1.0的滑鼠,而不用使用額外的轉接頭。
我們可以看到USB2.0與3.0在整個信號架構上有幾個重大的改變:
· 信號傳輸率由480Mbps提升到5Gbps。
· 信號傳輸架構由原本的NRZI架構修改成8b/10b的架構,強調DC balance,藉此降低接收端信號判斷出錯。
· 由半雙工改成全雙工的傳輸模式,因此我們可以看到USB3.0的傳輸信號會將Tx及Rx信號分成SSTX+、SSTX-、SSRX+、SSRX-四組信號(SS:Super Speed),而不像原本USB2.0的信號只有Dn、Dp兩個Tx及Rx共用的信號線,因此,我們可以看到USB3.0介面為了向下相容,除了原本USB2.0使用的四組信號線以外,再額外加上USB3.0的四組信號線,如圖(一)所示。
· 此外,USB3.0也進一步提升Host輸出電流的能力,由500mA提升到900mA,能提供更廣泛產品的應用。
· USB3.0採用PCI-E架構中的展頻主頻(Spread Spectrum Clock, SSC)來降低EMI(關於SSC展頻主頻的原理概念,請參考另一篇展頻主頻應用文章)。
·由於信號速度提升到5GHz,為了保持信號完整,因此會在發射端Tx加入De-emphasis預先對信號作處理,接收端Rx需要增加CTLE等化器對接收信號再作一次補償。
表(二)為USB2.0及USB3.0的比較表。由於考量到USB3.0必須相下相容USB2.0、USB1.0,在Connector的部分會在原有USB2.0信號的架構上,再額外加入Super Speed的四組信號,如圖(一)所示。
USB2.0 物理層測試規範
在USB2.0的物理層測試規範中,分別制訂了針對Low Speed、Full Speed、High Speed的三種測試規範。此外,由於USB將系統定義成Host、Hub、Device,如圖(二)所示,因此在三種速度的測試規範中,會另外再分成Host、Hub、Device的測試。
物理層測試中,所需要的儀器為示波器;表(三)列出各種速度所需的示波器頻寬。此外,針對一般作業系統的待測物,可以利用USB-IF所提供的USB High-Speed Electrical Test Tool來控制待測物打出特定測試波形並搭配儀器廠商所提供的自動化測試軟體來進行測試。
在USB2.0 CTS中,我們可以看到USB2.0所需要測試規範有下列五大項:
一、Full / Low Speed Signal Quality
考慮USB2.0向下相容的特性,必須對Full/Low Speed進行信號品質的量測如眼圖、信號工作電壓大小等……確保信號符合一致性。
二、Droop/Drop
Drop測試是在測量當Host所有Downstream Port全部接上100mA或500mA負載的時候Vbus電壓還能保持在4.75V與5.25V之間。其測試概念是希望在全負載的狀況下,所有Downstream Port還能夠提供足夠的Vbus給所有連接裝置,並正常工作。而Droop測試則是模擬動態插拔其中一個負載的狀態,其他Downstream Port的壓降不會超過330mV,其目的是避免動態插拔的時候會造成其他Downstream Port無法正常工作。
三、Hi-Speed USB2.0 Test
包含High Speed 眼圖測試、Packet Parameter Timing測試、Handshake信號CHIRP Timing、Suspend / Resume/ Reset Command Timing測試、J/K、 SE0_NAK Voltage測試。
四、Inrush Current Test
Inrush Current Test主要是通過電流探棒針對熱插拔瞬間所產生的暫態電流進行量測,其目的在於避免暫態電流過大,造成USB Port毀損。
五、Device Receiver Sensitivity Test
利用Pattern Generator來模擬Host並對預測試的Device發出In Token封包並觀測待測物回應靈敏度。
Host的測試規範會要求測試一、二、三項,項目一、三會利用眼圖Mask測試來驗證信號品質,如圖(三)為Hi-Speed眼圖測試結果。 眼圖Mask判定Pass的條件為信號不能碰觸到紅色六角形的部分,此外,電壓上下限也有規定不能過高或過低。
此外,在Packet Parameter Timing的測試中,會要求研發人員針對、Sync、EOP及Packet Gap等信號進行時序的量測。J/K、SE0_NAK Voltage測試的部分則是會測試J、K、SE0_NAK等信號的電壓大小。
Device的測試規範會要求測試一、三、四、五項,與Host不同的是眼圖的量測會區分成Near-end(TP2)跟Far-end(TP3)的測試,其差異是在於待測物本身有沒有包含Cable,我們可以從圖(四)的部分了解其測試點位置定義跟Mask規格差異。
此外,除了上述Host測試中所介紹Droop/Drop測試不用量測以外,還要進行Inrush Current Test及Device Receiver Sensitivity。Inrush Current Test主要是通過電流探棒針對熱插拔瞬間所產生的暫態電流進行量測,其目的在於避免暫態電流過大,造成USB Port毀損。而Receiver Sensitivity則是利用Pattern Generator來模擬Host並對待測的Device發出In Token封包並觀測待測物回應的最小電壓以及不回應的最大電壓,量測待測物回應的最小電壓為了規範Device接收端的靈敏度;另外,量測不回應的最大電壓則是為了確保待測物不會對太大的Noise產生回應。如圖(五)所示。
USB3.0 物理層測試規範
相對於USB2.0繁複的測試規範以及測試方式,USB3.0大量簡化測試規範及測試方式。Host、Device、Hub不像以往USB2.0一樣有獨立的規範,而是統一所有USB3.0產品的規範。在測試方式上,USB3.0簡化控制待測物發送測試Pattern的方式,預先在IC內建立測試模式。如圖(六)所示,當USB3.0待測物通過測試治具接上示波器的時候,由於並不是接上其他USB3.0產品所以不會有Handshake的動作,IC在等待一段時間沒有回應後,就會直接進入Compliance Mode,待測物本身會開始送出測試Pattern。
在Compliance Mode模式之下,USB3.0的待測物會開始發送CP0測試Pattern,CP0主要是一個Random Pattern,用來進行傳輸端眼圖的測試。需要用CP1 Pattern來測試SSC展頻主頻的參數,CP1為一個Clock信號,可以通過Ping LFPS這個信號來控制待測物切換下一個Pattern,Ping LFPS這個信號可以利用Pattern Generator產生,如圖(七),或者是利用示波器內建的Pattern來取代。
在USB3.0物理層測試中,針對發送端Tx測試及接收端Rx測試,我們所需要的測試儀器如圖(八)所示。Tx的測試主要針對的是通過高頻寬示波器(頻寬至少12GHz)來驗證待測物傳輸信號的能力,包含傳輸信號De-emphasis的Level、Jitter的大小、眼圖Mask的測試、SSC的測試、以及Handshake 信罕鞦PS的電氣特性測試; Rx的測試則有別於上述USB2.0 只針對Device進行Receiver Sensitivity的測試,改用抖動誤碼分析儀JBERT來進行Low Frequency Periodic Signaling RX Test 及Jitter Tolerance的測試,此外,CTS要求所有USB3.0 產品包含Host、Hub、Device都需針對Rx 作Low Frequency Periodic Signaling RX Test 及Jitter Tolerance測試。下面的章節將會對協會測試項目及概念進行說明。
不同於USB2.0測試點在Connector的概念,USB3.0要求的是Far-end測試點,其測試點位置如圖(九)所示。其中Reference Cable代表的是USB 3m Cable;Reference Test Channel模擬的是PCB板Trace線,分別模擬Host 11吋Trace線或Device 5吋Trace線。換言之,Host的測試需要額外加上USB 3m Cable+ Device 5吋Trace線的Channel效應;Device的測試需要額外加上USB 3m Cable+ Host 11吋Trace線的Channel效應;此外,信號還需要經過示波器模擬CTLE等化器處理後再正式進行TX測試。
在TX測試中主要有五項測試要求如下所列。其中TD 1.1、1.3、1.4項為Tx測試,TD 1.2、1.5為Rx測試。
· TD.1.1 Low Frequency Periodic Signaling TX Test
· TD.1.2 Low Frequency Periodic Signaling RX Test
· TD.1.3 Transmitted Eye Test
· TD.1.4 Transmitted SSC Profile Test
· TD.1.5 Receiver Jitter Tolerance Test
TD.1.1 Low Frequency Periodic Signaling TX Test 主要是針對USB3.0 一開始傳送的Handshake信號進行量測,其信號是一個低頻的Burst信號,USB3.0 Compliance Test Specification會要求利用示波器抓取前五個Burst信號來進行電氣信號的測試如Differential Output Voltage的測試、Period、Rise/Fall Time及Duty Cycle等常見測試參數,如圖(十)所示。
TD.1.2 Low Frequency Periodic Signaling RX Test則是利用誤碼分析儀JBERT送出下麵條件的LFPS信號,測試待測物是否有無回應。
· tPeriod 50ns, VTX-DIFF-PP-LFPS 800mV, Duty Cycle 50%
· tPeriod 50ns, VTX-DIFF-PP-LFPS 1200mV, Duty Cycle 50%
· tPeriod 50ns, VTX-DIFF-PP-LFPS 1000mV, Duty Cycle 40%
· tPeriod 50ns, VTX-DIFF-PP-LFPS 1000mV, Duty Cycle 60%
TD.1.3 Transmitted Eye Test的部分則是利用治具將USB3.0 待測物信號接到示波器上,利用Embedded S參數的方式得到Far-end的信號,再經過CTLE Equalizer補償高頻損失後進行眼圖的量測。如圖(十一)所示,我們可以看到由於經過Compliance Cable跟Reference Cable之後,信號衰減為綠色信號,在Rx量測的眼圖完全張不開,無法正確判斷0、1位準;但是當我們經過CTLE等化器後,我們可以看到高頻衰減的部分被補償回來,Rx量測的眼圖又重新張開,能夠正確判斷0、1位準。
此外,除了Eye Open的量測須符合規範以外,我們還必須量測出待測物經過規範後的Jitter Transfer Function後所殘留的Total Jitter、Random Jitter、Deterministic Jitter有沒有符合圖(十二)的要求。由此圖我們可以了解規範要求眼高至少需大於100mV、眼寬至少需大於0.34個UI;而Jitter的部分則是錯誤率定義在10-12的條件下,Total Jitter不超過0.66個UI,且Random Jitter不超過0.23個UI;Deterministic Jitter不超過0.43個UI。(注:Tj = Dj + Rj)
TD.1.4 Transmitted SSC Profile Test則是通過控制待測物發送出CP1的連續方波並抓取1000000個UI並還原出調變三角波,對三角波進行SSC Modulation Rate跟SSC Modulation Frequency的量測,參數規範如表(三)所示。
利用示波器抓取完1,000,000個UI,可通過軟體還原出調變三角波並進行SSC參數量測,如圖(十三)所示。
TD.1.5 Receiver Jitter Tolerance Test則有別於USB2.0隻針對Device測試Receiver Sensitivity,改採用Jitter Tolerance來驗證所有產品包含Host、Hub、Device的接收能力。Jitter Tolerance的測試概念如圖(十四)所示,通過誤碼分析儀JBERT Pattern Generator的功能編輯出一連串的Training Sequence讓待測物進入Loopback Mode。進入Loopback Mode的待測物會將Rx接收到的信號送到IC判讀後,再從發射端Tx送回誤碼分析JBERT Error Detector進行錯誤率比對,USB規範要求的錯誤率需達到10-10。
接下來,利用誤碼分析儀Pattern Generator的功能編輯協會規範的Receiver Test Pattern送至接收端Rx。以USB3.0 規範來說,會要求Host Receiver Test Pattern Eye High在經過CTLE Equalization後為180mV,Device Receiver Test Pattern Eye High在經過CTLE Equalization後為145mV。除此之外,在Receiver Test Pattern還需要測試8個不同頻率、大小的週期性抖動,如表(四)所示,來測試接收端對於抖動的容忍度。SJ Level我們可以把它想成抖動的大小,SJ Frequency的部分則是想成抖動的頻率,其概念可以把它想成一個縱向的弦波,如圖(十五),會比較容易理解。
在實際進行Receiver Jitter Tolerance量測的時候,操作的步驟如下:
1. 確保JBERT送進待測物Rx的Pattern符合規範。
2. 令待測物進入Loopback Mode。
3. 進行錯誤率對比。
一般來說我們會先利用示波器來確保JBERT輸出的信號有符合規範,經由儀器廠商所提供的自動化控制軟體如圖(十六),我們可以快速的進行信號的校正、Loopback Training Sequence 編輯、及最後的錯誤率對比。
圖(十七)為測試結果,橫軸跟縱軸表示SJ的大小與頻率,綠色代表測試結果Pass。
此外,軟體還另外提供Jitter Tolerance,在測試過程中,會逐漸加大抖動的大小及加快抖動的頻率,來測試待測物對於抖動的容許極限。其測試報告如圖(十八)所示,黑線的部分為規範所要求的八個抖動點,綠色線為儀器產生抖動上限,紅色部分為待測物承受抖動的極限量測值。(安盟科技(浩網集團)技術應用工程師 陳俊甫(Jeff Chen) 供稿)
日經BP社
一流技術文章,值得參考!
|
|