胡為東系列文章之五--USB 3.0物理層測試中的一致性
![]() |
LTSSM(Link Training and Status State Machine)主要用于控制鏈路的鏈接狀態(tài)和鏈路的電源管理。U0-U3為四種和工作相關(guān)的狀態(tài),U0狀態(tài)表示的是超高速鏈接處于使能狀態(tài),數(shù)據(jù)包正在收發(fā)或者鏈路處于空閑狀態(tài);U1表示的是低功耗鏈路狀態(tài),此時沒有數(shù)據(jù)包收發(fā),超高速鏈路可以處于非使能狀態(tài)以節(jié)省功耗;U2也是一種低功耗狀態(tài)(能進一步節(jié)省功耗,但是如果要退出該狀態(tài)則需要更長的等待時間);U3為鏈路終止狀態(tài)(可進一步的節(jié)省功耗);Rx.Detect、Polling、Recovery以及Hot Reset為四種鏈接狀態(tài),Rx.Detect狀態(tài)表示當鏈路上電后,host和device能夠相互識別到雙方的存在,一旦識別,雙方將開始進入初始化訓(xùn)練程序;Polling狀態(tài)表示host和device在訓(xùn)練初始化發(fā)送端和接收端以及進行同步,準備進行數(shù)據(jù)包的發(fā)送;Recovery主要是當鏈路發(fā)現(xiàn)當前系統(tǒng)要從低功耗狀態(tài)切換出來或本文引用地址:http://cqxgywz.com/article/201701/337810.htm
圖1 USB3.0 LTSSM的狀態(tài)機流程圖
者當前沒有工作在U0狀態(tài)而需要重新進行訓(xùn)練和配置的時候進行鏈路恢復(fù);Hot Reset表示鏈路允許下行端口重新設(shè)置上行端口;另外兩種鏈路狀態(tài)為Loopback和Comliance,分別用于誤碼率測試和發(fā)送端一致性測試;還有其它兩種狀態(tài)為SS.Inactive和SS.Disabled,分別為鏈路出現(xiàn)錯誤的狀態(tài)和鏈路工作在非超高速狀態(tài)或者鏈路工作USB2.0狀態(tài)。
從上圖1中可以看出,從鏈路上電開始到正常工作(類似于將USB3.0的U盤插到筆記本的USB3.0接口上到能夠正常開始讀取數(shù)據(jù))需要經(jīng)歷三個階段:Rx.Detect、Polling、U0,其中Polling過程會對鏈路上的終端設(shè)備進行相關(guān)的初始化設(shè)置,從Rx.Detect到U0的過程需要經(jīng)歷的子過程步驟如下:

圖2 Rx.Detect到U0狀態(tài)需要經(jīng)歷的子狀態(tài)
在Rx.Detect狀態(tài),鏈路上的host或者device開始識別遠端是否有端接,如果有端接,則鏈路上的終端均開始發(fā)送特定規(guī)格的Polling.LFPS碼(低頻周期突發(fā)信號,周期在20ns到100ns之間),LFPS信號是一個非常關(guān)鍵的信號,通過不同特征的LFPS信號可以實現(xiàn)host或者device在多種狀態(tài)之間進行切換,不同特征的LFPS信號主要表現(xiàn)為時序上的不同,如tBurst和tRepeat參數(shù),不同要求的LFPS信號參數(shù)如下圖3所示;經(jīng)過特定時間的Polling.LFPS握手后,開始發(fā)送定制好的TSEQ碼進行接收端的均衡器設(shè)置,然后再通過TS1/TS2(Training Sequence,訓(xùn)練碼)碼進行其它相關(guān)參數(shù)的設(shè)置,最后通過發(fā)送Idle碼進行握手,完成整個鏈路的初始化,進入U0正常工作狀態(tài)。如下圖4、圖5所示,圖5為用力科的USB3.0協(xié)議分析儀對鏈路初始化過程的分析結(jié)果,從該圖上可詳細了解到初始化過程的訓(xùn)練碼序列及其時序關(guān)系。



評論