通用序列匯流排(Universal Serial Bus, USB)是目前應用最廣泛的電腦串列介面,舉凡滑鼠、鍵盤,甚至到硬碟及其他電子裝置的連結,都可以透過USB來進行連結。也因其廣泛的應用,USB應用者論壇(USB-IF)制訂了四種速度規格(表1),從最低速1.5Mbit/s的USB 1.0應用在滑鼠鍵盤,到最高速5Gbit/s的USB 3.0應用於硬碟等存儲產品上。此外,USB還提供向下相容的能力,舉例來說,可以在筆電(Notebook)上的USB 3.0接口接上USB 1.0的滑鼠,而不用使用額外的轉接頭。
由此可以看出,USB 2.0與USB 3.0在整個訊號架構上有幾個重大的改變。最明顯的是,訊號傳輸率由480Mbit/s提升到5Gbit/s。訊號傳輸架構也由原本的NRZI架構修改成8b/10b的架構,強調直流平衡(DC Balance),藉此降低接收端訊號判斷出錯。
|
圖1 USB 3.0接口 |
而且,由半雙工改成全雙工的傳輸模式,因此USB 3.0的傳輸訊號會將Tx及Rx訊號分成SSTX+、SSTX-、SSRX+、SSRX-四組訊號(SS:Super Speed),而不像原本USB 2.0的訊號只有Dn、Dp兩個Tx及Rx共用的訊號線,因此,可以發現USB 3.0接口為了向下相容,除了原本USB 2.0使用的四組訊號線外,再額外加上USB 3.0的四組訊號線(圖1)。
此外,USB 3.0也進一步提升主控端(Host)輸出電流的能力,由500毫安培(mA)提升到900毫安培,能提供更廣泛產品的應用。USB 3.0並採用PCI-E架構中的展頻時脈(Spread Spectrum Clock, SSC)來降低電磁干擾(EMI)。
也由於訊號速度提升到5GHz,USB 3.0為了保持訊號完整,因此會在發射端Tx加入解加強(De-emphasis)預先對訊號做處理,接收端Rx須要增加連續時間線性等化器(CTLE)對接收訊號再做一次補償。
表2為USB 2.0及USB 3.0的比較表。由於考量到USB 3.0必須相下相容USB 2.0、USB 1.0,在連接器(Connector)的部分會在原有USB 2.0訊號的架構上,再額外加入Super Speed的四組訊號,如圖1所示。
USB 2.0物理層測試規範
|
圖2 USB系統類型 |
在USB 2.0的物理層測試規範中,USB-IF分別制訂針對低速(Low Speed)、全速(Full Speed)、高速(High Speed)的三種測試規範。此外,由於USB將系統定義成Host、集線器(Hub)、裝置(Device),如圖2所示,因此在三種速度的測試規範中,會另外再分成Host、Hub、Device的測試。
物理層測試中,所需要的儀器為示波器;表3列出各種速度所需的示波器頻寬。此外,針對一般作業系統的待測物,可以利用USB應用者論壇所提供的USB High-Speed Electrical Test Tool來控制待測物打出特定測試波形,並搭配儀器廠商所提供的自動化測試軟體來進行測試。
在USB 2.0相容性測試規範(CTS)中,可以看到USB 2.0所需要測試規範有下列五大項:
‧ |
|
|
考慮USB 2.0向下相容的特性,必須對Full/Low Speed進行訊號品質的量測,如眼圖、訊號工作電壓大小等等,以確保訊號符合一致性。 |
‧ |
|
|
Drop測試是在測量當Host所有下行埠(Downstream Port)全部接上100毫安培或500毫安培負載時,Vbus電壓還能保持在4.75伏特與5.25伏特之間。其測試概念是希望在全負載的狀況下,所有下行埠還能夠提供足夠的Vbus給所有連接裝置,並正常工作。而Droop測試則是模擬動態插拔其中一個負載的狀態,其他下行埠的壓降不會超過330毫伏特(mV),其目的是避免動態插拔的時候會造成其他下行埠無法正常工作。 |
‧ |
|
|
包含High Speed眼圖測試,Packet Parameter Timing測試,交握(Handshake)訊號CHIRP Timing、Suspend/Resume/Reset Command Timing測試,以及J/K、SE0_NAK Voltage測試。 |
‧ |
|
|
Inrush Current Test主要是透過電流探棒針對熱插拔瞬間所產生的瞬時電流進行量測,其目的在於避免瞬時電流過大,造成USB Port毀損。 |
‧ |
|
|
|
圖3 Host High-Speed Signal Quality |
利用樣式產生器(Pattern Generator)來模擬Host,並對預測試的Device發出In Token封包,且觀測待測物回應靈敏度。 |
Host的測試規範會要求測試一、二、三項,項目一、三會利用眼圖Mask測試來驗證訊號品質,如圖3為Hi-Speed眼圖測試結果。眼圖Mask判定通過(Pass)的條件為訊號不能碰觸到中間六角形的部分。此外,電壓上下限也有規定,不能過高或過低。
|
圖4 USB 2.0 Test Point |
此外,在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),可以從圖4的部分了解其測試點位置定義與Mask規格的差異。
|
圖5 Device Receiver Sensitivity |
此外,除了上述Host測試中所介紹Droop/Drop測試不用量測外,還要進行湧入電流測試(Inrush Current Test)及裝置接收器靈敏度(Device Receiver Sensitivity)。Inrush Current Test主要是透過電流探棒針對熱插拔瞬間所產生的瞬時電流進行量測,其目的在於避免瞬時電流過大,造成USB埠毀損。
Receiver Sensitivity則是利用Pattern Generator來模擬Host並對待測的Device發出In Token封包,且觀測待測物回應的最小電壓以及不回應的最大電壓,量測待測物回應的最小電壓是為了規範Device接收端的靈敏度。另外,量測不回應的最大電壓,則是為了確保待測物不會對太大的Noise產生回應(圖5)。
USB 3.0物理層測試規範
|
圖6 USB 3.0互容性模式 |
相對於USB 2.0繁複的測試規範與測試方式,USB 3.0大量簡化測試規範及測試方式。Host、Device、Hub不像以往USB 2.0一樣有獨立的規範,而是統一所有USB 3.0產品的規範。
在測試方式上,USB 3.0簡化控制待測物發送測試樣式(Pattern)的方式,預先在IC內建立測試模式。如圖6所示,當USB 3.0待測物透過測試治具接上示波器時,由於並不是接上其他USB 3.0產品,所以不會有交握的動作,IC在等待一段時間沒有回應後,就會直接進入互容性模式(Compliance Mode),待測物本身會開始送出測試Pattern。
|
圖7 USB 3.0 Ping LFPS
|
在Compliance Mode模式下,USB 3.0的待測物會開始發送CP0測試Pattern,CP0主要是一個隨機樣式(Random Pattern),用來進行傳輸端眼圖的測試。須要用CP1 Pattern來測試SSC展頻時脈的參數,CP1為一個時脈(Clock)訊號,可以透過Ping LFPS這個訊號來控制待測物切換下一個Pattern,Ping LFPS這個訊號可以利用Pattern Generator產生(圖7),或者利用示波器內建的Pattern來取代。
|
圖8 Physical Layer測試解決方案 |
在USB 3.0物理層測試中,針對發送端Tx測試及接收端Rx測試,所需要的測試儀器如圖8所示。Tx的測試主要針對的是透過高頻寬示波器(頻寬至少12GHz)來驗證待測物傳輸訊號的能力,包含傳輸訊號De-emphasis的層級(Level)、抖動(Jitter)的大小、眼圖Mask的測試、SSC的測試,以及交握訊號LFPS的電氣特性測試。
Rx的測試則有別於上述USB 2.0只針對Device進行Receiver Sensitivity的測試,改用抖動誤碼分析儀(JBERT)來進行Low Frequency Periodic Signaling RX Test及抖動的容許度(Jitter Tolerance)的測試。此外,相容性測試規範要求所有USB 3.0產品包含Host、Hub、Device都須針對Rx做Low Frequency Periodic Signaling RX Test及Jitter Tolerance測試。下面的內容將會對協會測試項目及概念進行說明。
|
圖9 USB 3.0 TX Far End Test point |
不同於USB 2.0測試點在Connector的概念,USB 3.0要求的是遠端(Far-end)測試點,其測試點位置如圖9所示。其中Reference Cable代表的是USB 3公尺纜線;Reference Test Channel模擬的是印刷電路板Trace線,分別模擬Host 11吋Trace線或Device 5吋Trace線。
換言之,Host的測試需要額外加上USB 3公尺纜線及Device 5吋Trace線的Channel效應;Device的測試須要額外加上USB 3公尺纜線及Host 11吋Trace線的Channel效應。此外,訊號還須經過示波器模擬CTLE處理後再正式進行TX測試。
在TX測試中主要有五項測試要求,包括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、1.3、1.4項為Tx測試,TD.1.2、1.5為Rx測試。
|
圖10 Low Frequency Periodic Signaling TX Test |
TD.1.1 Low Frequency Periodic Signaling TX Test主要是針對USB 3.0一開始傳送的交握訊號進行量測,其訊號是一個低頻的突波(Burst)訊號,USB 3.0 Compliance Test Specification會要求利用示波器抓取前五個突波訊號來進行電氣訊號的測試,例如Differential Output Voltage的測試、Period、Rise/Fall Time及Duty Cycle等常見測試參數(圖10)。
TD.1.2 Low Frequency Periodic Signaling RX Test則是利用抖動誤碼分析儀送出下面四個條件的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%」。
|
圖11 Rx Eye等化與未等化比較 |
TD.1.3 Transmitted Eye Test的部分,則是利用治具將USB 3.0待測物訊號接到示波器上,利用Embedded S參數的方式得到Far-end的訊號,再經過CTLE補償高頻損失後進行眼圖的量測。如圖11所示,可以看到由於經過Compliance Cable及Reference Cable後,訊號衰減為綠色訊號,在Rx量測的眼圖完全張不開,無法正確判斷0、1位準。但是經過CTLE後,可以發現高頻衰減的部分被補償回來,Rx量測的眼圖又重新張開,能夠正確判斷0、1位準。
|
圖12 USB 3.0 TX Eye Mask and Jitter Specification |
此外,除了Eye Open的量測須符合規範外,還必須量測出待測物經過規範後的Jitter Transfer Function後所殘留的完全抖動(Total Jitter)、隨機性抖動(Random Jitter)、定量性抖動(Deterministic Jitter)有沒有符合圖12的要求。由圖12可以了解規範要求眼高至少需要大於100毫伏特、眼寬至少需大於0.34個UI;而Jitter的部分則是錯誤率定義在10~12的條件下,Total Jitter不超過0.66個UI,且Random Jitter不超過0.23個UI;Deterministic Jitter不超過0.43個UI。相關公式內容為Tj=Dj+Rj。
|
表4 Spread Spectrum Clock Parameters |
TD.1.4 Transmitted SSC Profile Test則是透過控制待測物發送出CP1的連續方波,抓取1,000,000個UI並還原出調變三角波,對三角波進行SSC Modulation Rate與SSC Modulation Frequency的量測,參數規範如表4所示。
利用示波器抓取完1,000,000個UI,可透過軟體還原出調變三角波並進行SSC參數量測(圖13)。
|
圖13 SSC調變波形及規格說明 |
TD.1.5 Receiver Jitter Tolerance Test則有別於USB 2.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。以USB 3.0規範來說,會要求Host Receiver Test Pattern Eye High在經過CTLE等化(Equalization)後為180毫伏特,Device Receiver Test Pattern Eye High在經過CTLE等化後為145毫伏特。
除此之外,在Receiver Test Pattern還須要測試八個不同頻率、大小的週期性抖動(表5)來測試接收端對於抖動的容忍度。可以把SJ Level想成抖動的大小,SJ Frequency部分則是想成抖動的頻率,其概念可以把它想成一個縱向的弦波,會比較容易理解。
在實際進行Receiver Jitter Tolerance量測時,操作的步驟如下:首先確保抖動誤碼分析儀送進待測物Rx的Pattern符合規範,接著令待測物進入Loopback Mode,最後再進行錯誤率對比。
一般來說,會先利用示波器來確保抖動誤碼分析儀輸出的訊號有符合規範,藉由儀器廠商所提供的自動化控制軟體,可以快速進行訊號的校正、Loopback Training Sequence編輯以及最後的錯誤率對比。
|
圖14 USB 3.0 Rx互容性測試報告 |
圖14為測試結果,橫軸和縱軸表示SJ的大小與頻率,綠色代表通過測試結果。
此外,軟體還另外提供Jitter Tolerance,在測試過程中,會逐漸加大抖動的大小及加快抖動的頻率,來測試待測物對於抖動的容許極限。其測試報告如圖15所示,黑線的部分為規範所要求的八個抖動點,綠色線為儀器產生抖動上限,紅色部分為待測物承受抖動的極限量測值。
(本文作者任職於浩網)