深入淺出聊抖動(Jitter)

誤位元速率是衡量什麼的指標

作者:131v1vv

抖動(上)

內容提要:

1、概述

2、抖動基本概念

3、抖動分類

4、抖動時域表示

5、抖動頻域表示

6、抖動和相噪轉化

7、抖動容限和浴盆曲線

深入淺出聊抖動(Jitter)

1、概述

先舉個例子,假如你每天早上要去趕一趟8點鐘始發的地鐵,出門要走5分鐘的路。假如地鐵只有30秒鐘的開門時間。為了不等待,也不錯過。那麼你出門的時間就必須卡在7:54‘30’‘到7:55’00“之間。那如果在趕路的過程中出現了意外,比如今天走慢了,就可能趕不上了。當然你也不希望這班地鐵來早了,你也可能錯過這趟車。人生處處是意外,處處是驚喜。我們把這種時間的不確定性,形象的理解為時間抖動(

Jitter

)。這裡邊就有著描述時間的兩個基本概念,時間點(八點鐘)和時間段(30秒鐘),需要區分開這兩個基本概念。

我們透過圖1,簡單回顧一下總相位φ,超量相位φe,頻率f,角頻率ω的概念。圖1 為基本的正弦波為相位的函式,而相位又是角頻率和時間的函式。準確地說相位為角頻率對時間的積分。角頻率(rad/s)是頻率(Hz)的2π倍。比如大家都瞭解的鎖相環(PLL)就是透過負反饋,保證反饋時鐘的相位跟蹤鎖定輸入時鐘的相位,得到需要的輸出時鐘頻率的目的。

深入淺出聊抖動(Jitter)

圖1

如果存在超量相位(Excess Phase)是時間的函式,其對時間的二階微分不等於0,那麼表現在頻率上就是頻率隨時間的變化,也就是其週期會隨時間的變化。如圖2所示,黑色為固定角頻率的總相位-時間曲線,紅色為包含了隨時間變化的超量相位的總相位-時間曲線。那麼經過整形後,分別對應如圖的理想時鐘和抖動時鐘。

深入淺出聊抖動(Jitter)

圖2

圖2的例子說明隨時間變化的超量相位的存在(相位噪聲)可能會引起頻率的變化,從而帶來抖動,兩者內在是相互統一的。後邊會詳細討論相位噪聲、抖動及相互關係。

2、抖動基本概念

我們先回顧幾個描述時鐘抖動(Clock Jitter)的幾個基本概念,如圖3。

絕對抖動(Absolute Jitter),

絕對抖動就是一個衡量時間點的不確定性概念,參考為理想時鐘的時間點,該相對偏差量可能表示為一個離散時間的隨機變數。

深入淺出聊抖動(Jitter)

圖3

絕對抖動造成的時間點不確定性可能會對很多采樣電路有影響,比如說資料時鐘恢復電路(CDR)中,需要利用時鐘沿對資料的中心和資料變化的沿進行取樣,取樣時鐘的絕對抖動對於CDR的抖動容限有直接影響。

如圖4,時鐘Clk半速率取樣非理想的資料Data,如果時鐘clk偏離中間取樣位置,該抖動會造成取樣後資料的錯誤。且該抖動越大,資料的誤位元速率就越高。

深入淺出聊抖動(Jitter)

圖4

週期抖動(Period Jitter)是一個衡量時間段不確定性的概念,定義為實際時鐘和理想時鐘的週期偏差,同樣可以表示為離散事件隨機變數。如圖3

其實週期抖動的概念應該是大家最熟悉的。考慮圖5中的簡單數字同步電路模型。由於時鐘樹網路的非理想,根時鐘CK經過不同的時鐘buffer到達圖中觸發器的時鐘端分別為CK1和CK2,並且都和CK存在不同的歪斜時間(Skew time),將CK的第一個上升沿作為初始時刻0。可以得到資料D1到D2的變化所需時間。如圖分別計算了資料滿足建立時間的最晚時刻t1,以及實際到達時刻t2。

深入淺出聊抖動(Jitter)

圖5

注意t1表示式包含了時鐘週期Tclk,存在非理想因素。在數位電路的綜合過程中,需要提前設定時鐘的不確定性(Clock uncertainty)來約束時序,其中時鐘不確定性就包含了

時鐘的skew

週期抖動jitter和裕量margin

。即如果時鐘CK非理想,圖中t1時間需要在減去時鐘抖動的分量,比如週期抖動的峰峰值(給定BER的條件下)。當然通常還會多加一些裕量。

深入淺出聊抖動(Jitter)

圖6

圖6給出了滿足高斯分佈的隨機抖動(RJ)均方根值和峰峰值滿足不同誤位元速率的轉換關係。如果你是CK時鐘源的設計者。那麼所設計OSC的週期抖動就是一個重要設計指標。需要提前和數字人員溝通協商好,雙方都留好餘量。避免設計不滿足要求的情況出現。

當週期抖動的概念擴充套件到N個週期,就是N週期抖動(N-Period Jitter)。這裡N並不特指具體數字,可根據需要得到特定的正整數。比如N分頻器,如果分頻器是理想的,其實關注的是分頻前N個週期的抖動。

相鄰週期間抖動(Cycle-to-Cycle Jitter),定義為相鄰週期的週期差值。可透過週期抖動進行轉換。如圖3。為了降低EMI,很多時鐘都透過展頻功能。將訊號能量分散到一定的頻段內。比如說透過週期鋸齒波調製的展頻,對於其噪聲抖動特性,就可以透過鄰週期間抖動來衡量。

除了以上大家熟知描述時鐘的PJ,CCJ等概念,實際上還有一些其他常見概念,這裡進行了彙總如下圖7,包括相同或相似概念的不同表述。比如TIE和Phase jitter等。

深入淺出聊抖動(Jitter)

圖7

3、抖動分類

目前最常見的抖動分類如圖8所示。總體抖動(TJ)可以根據抖動的幅度是否有界分為兩大類,確定性抖動(DJ)和隨機抖動(RJ)。

深入淺出聊抖動(Jitter)

圖8

其中隨機抖動RJ是包含了所有具有

無界(Unbounded)

PDF的抖動。比如常說的具有高斯分佈PDF的高斯抖動,具有各頻點相等PDF的熱噪聲引起的抖動。

因其分佈有無界的特點,理論上說其抖動值機率上可能為無窮大。在描述該型別抖動時需要提供機率界限(如BER)。所以,下次當你告訴別人你設計的100MHz振盪器的週期抖動的峰峰值為50ps@BER=1E-6時,順便告訴別人是在什麼樣的機率下,方便判斷設計的效能指標。

確定性抖動DJ包含的是具有

有界(Bounded)

PDF的抖動分量。可粗略地分為和資料相關的抖動DDJ,週期性抖動(

Periodic Jitter,PJ

),和有界不相關抖動BUJ。

注:

Periodic jitter

和Period jitter是兩個不同的概念,雖然都簡稱為PJ,要注意區分。

DDJ抖動常見的為序列通訊中的碼間干擾ISI,訊號的低通特性及資料的前後相關會造成資料的抖動現象。

DCD抖動是由於時鐘的佔空比失真造成的抖動。

SJ(Sinusiodal Jitter),正弦抖動,因為該抖動僅在一個頻點上,經常用了驗證和測試電路的效能,不如時鐘資料恢復電路CDR的抖動容限(Jitter tolerance)。

還有有界不相關抖動BUJ,這裡主要有由電源或相鄰通道的串擾等引起的,可以是週期的(Periodic),也可以是非週期的(non-periodic)。

深入淺出聊抖動(Jitter)

圖9

如圖9和10,可以從不同維度對抖動的是否有界和是否和資料相關進行劃分以及抖動來源進行總結。

深入淺出聊抖動(Jitter)

圖10

4、抖動時域表示

既然抖動量可近似為隨機過程,那麼統計學的很多指標都可以用。比如說期望,方差,標準差,峰峰值等等。可以根據需要選擇使用。

如圖11透過統計不同幅度區間的jitter頻數得到的直方圖,可直觀的觀察到抖動分佈趨勢,如圖中紅色輪廓。或透過數學近似得到機率密度函式(PDF),來描述其不同抖動的分佈。

深入淺出聊抖動(Jitter)

圖11

圖12列出了幾個不同型別抖動的樣本點和統計直方圖,比較直觀地表現幾種不同抖動的所具有的PDF特點。比如正弦抖動SJ的時域幅度會比較集中在兩個邊界之間。

深入淺出聊抖動(Jitter)

圖12

圖13補充了包含了幾個不同單一抖動型別的眼圖。實際上在高速介面的測試中,可透過誤位元速率測試儀BERT,可以方便的新增一種或多種抖動型別,透過抖動注入驗證系統對抖動的效能。或者測量分析抖動的組成及分量比重。

深入淺出聊抖動(Jitter)

圖13

現實中碰到的一個現象就是統計的抖動的輪廓會有著複雜的形狀,不能簡單地使用圖12中的一種來表示。也就是現實中的抖動通常是包含了不同型別抖動的疊加。比如在高速序列介面中,TX傳送資料的抖動,是時鐘,TX傳送器,電源和相鄰通道串擾等,不同源頭、型別抖動綜合影響的結果。

基於機率論的知識,對於相互獨立的不同抖動透過

卷積運算

可以得到總體抖動。如圖11,直方圖可以等效為具有高斯分佈的RJ和具有狄拉克分佈的DJ經過卷積的結果。

對於測量儀器,在測量得到抖動PDF,通常需要將抖動分解,給出不同型別的抖動的計算結果方便技術人員分析各部分抖動的分量和比例。分析原因最佳化設計。

目前抖動分解最常用的一種是高斯尾部擬合(tail fit)分離演算法。既然抖動可以看做RJ和不同型別的(

有界

)DJ的卷積合成而來,那麼在遠離DJ的界限的範圍,其PDF會很接近高斯分佈的尾部。且在左右尾部的高斯分佈會有著相同的標準差σ,也即將RJ分離出,然後結合下一節會學習到的頻域的細節進一步將DJ分解。

如圖14左為一個非高斯分佈透過尾部擬合,得到兩個高斯分佈都具有相同的標準差σ=1ps,右圖為使用尾部擬合分離得到的機率分佈和實際的分佈誤差比較小。

深入淺出聊抖動(Jitter)

圖14

抖動(下)

深入淺出聊抖動(Jitter)

5、抖動頻域表示

我們比較詳細的介紹了功率譜密度的概念,抖動在頻域主要是用相位噪聲(Phase Noise)來表示,也就是相位功率譜密度的單邊帶資訊(頻率大於0的部分)。

系統級我們常用時域的抖動描述。但對於電路級會更廣泛的使用頻域表示。對於像週期性訊號,比如時鐘電路。使用相位噪聲是一種常用效能評價方式。

相位噪聲的產生和電路中熱噪聲,閃爍噪聲等相關。表現出的邊帶功率會是指數衰減。在相位噪聲圖中呈現為1/f^2或1/f^3的特性。如圖1所示。隨著頻偏增大,熱噪聲會佔主導地位。PSD頻譜表現為底噪(floor noise)。

深入淺出聊抖動(Jitter)

圖1

那麼從相位噪聲曲線能夠得到哪些資訊那?如圖2是某通道傳送器Clock Pattern的相噪曲線。該圖中比較明顯的觀察到相位噪聲隨頻偏衰減的資訊,另外也顯示了載波頻率,載波功率,輸入衰減倍數,頻偏掃描範圍等資訊。

比如載波頻率為6。25GHz,載波功率為-5。25dBm,輸入衰減為5dB。簡單計算得到傳送器輸出方波的幅度約為500mVppd。

深入淺出聊抖動(Jitter)

圖2

在相噪曲線上,還觀察到在若干個頻點處有比較大的雜散(

spur

ious)分量,實際上需要根據定位對抖動貢獻較大的spur的頻點及其出現的原因,從而最佳化設計,提高效能。

如果spur的位置在積分頻段內,可能會使所計算的RJ抖動的RMS值偏大。spur通常對應為DJ分量,因此需要將引入較大誤差的spur從RJ中去除,從而得到比較準確的RJ。

6、抖動和相噪轉化

相位噪聲比較直觀的反應了相位功率在頻域的分佈。但在很多時候,更關心對應時域的抖動值。這就需要根據相位噪聲,得到所關心頻率範圍內的積分功率,從而得到抖動值。

圖3為一個實際傳送器的相位噪聲,分別為雙對數座標和對數-線性座標的表示。可以看到雙對數座標能夠比較清楚的反應功率分佈,並且可分段近似為直線段。

深入淺出聊抖動(Jitter)

圖3

低頻偏出近似為1/f^2的噪聲,但在1Mhz頻偏附近處存在尖峰,存在隨著頻率增加,噪聲功率也增加的頻段。可以猜測該部分會對總抖動有較大的貢獻量。

圖4給出了圖3各頻段歸一化後的抖動貢獻比例。也驗證了我們的猜測。

深入淺出聊抖動(Jitter)

圖4

其實知道了相位噪聲的曲線,按照圖5公式,也就是對功率譜密度積分得到單邊帶功率的一半,乘以2得到積分頻段的總相位噪聲功率。維納-辛欽定理說明了,該總噪聲功率和對應的超量相位φe方差的關係(超量相位φe可近似為寬平穩隨機過程,均值為0),進而得到標準差。最後再轉化為時域的RJ的均方根值。

需要注意的是相位噪聲L(f)如果是dBc/Hz的對數表示形式,需要先轉化為線性座標形式。對數座標是不能直接積分成功率值的。

深入淺出聊抖動(Jitter)

圖5

在很多時候為了簡單估算抖動,常會使用

折線圖

粗略近似相位噪聲曲線。也就是利用有限個頻率點的資料,採用分段統計累加計算。

如果是圖6所示的線性-線性座標中的折線圖。兩個頻率點的區間實際上就是

梯形區域

。可用梯形的求面積公式,得到該區域的積分值,分別計算後再累加得到總的積分功率。

深入淺出聊抖動(Jitter)

圖6

如果是圖7所示的對數-對數座標中的折線圖。其線上性座標中實際上是,表示為指數(a,b,c等)和常量(ha,hb,hc等)的

分段指數函式

。需要根據折線段的首尾兩點資料。計算出表示該折線段的函式引數(指數和常量)。利用定積分得到各區域面積,再累加得到所關心頻段的總噪聲功率。

在雙對數座標中,根據折線段的首尾資料,可方便的得到指數計算值。轉化為對數座標後,僅僅是資料值的

減法操作

,在很多地方都能找到這種演算法的工具,用於計算相位噪聲到抖動的轉化值。

深入淺出聊抖動(Jitter)

圖7

再舉個例子,如圖8所示的雙對數座標中的折線段表示的相位噪聲。利用圖7中的計算方法。可分別得到各梯形(線性座標中實際為指數函式,如圖9中的對比)區域的抖動值。根據總功率和抖動有效值關係,各折線分段計算出的抖動(轉化為時間單位s)和總積分抖動的滿足RSS關係。

深入淺出聊抖動(Jitter)

圖8

圖9給出了圖8相位噪聲不同座標表示的對比,從線性-線性座標中看到100KHz以下的噪聲功率有比較大的分量。實際上,100~100K範圍的抖動佔了100~4。5G總抖動的97%以上。

深入淺出聊抖動(Jitter)

圖9

圖10顯示了圖8所示相位噪聲在各頻段抖動相對於總抖動的歸一化佔比。極本符合以上的結果。

深入淺出聊抖動(Jitter)

圖10

7、抖動容限和浴盆曲線

在高速序列通訊中,時鐘恢復電路(CDR)能夠跟蹤一定的資料抖動,也就是當資料和時鐘的抖動小於一定的範圍時,CDR能夠正確的恢復出資料來。抖動容限(Jitter Tolerance)就是CDR的一個重要指標。CDR環路和PLL環路模型比較相近。

在實際測試中,會使用誤位元速率測試儀(BERT)對CDR的抖動容限進行測試。透過在資料上增加固定頻率的可調幅度的PJ,分別得到滿足一定誤位元速率要求時不同頻點對應的最大PJ幅度。

常見的CDR抖動容限曲線如圖11所示。對於低頻抖動,CDR能夠完全響應,且隨著抖動頻率降低,能夠容忍抖動的幅度會增加,並且超過1UI。而對於高頻抖動(超過了CDR的閉環頻寬),CDR就無法響應該高頻抖動,理論上這時候抖動的最大幅度約為1UI。並且CDR環路的阻尼係數也會影響頻寬處的JT值。

深入淺出聊抖動(Jitter)

圖11

實際的資料抖動還包含RJ和DJ的分量,在一般的應用中,對於總體抖動的要求為0。2UI~0。7UI,這樣可以達到比較好的效能和功耗折衷。

在高速序列通訊的各種協議規範中,為保證正常的通訊,都會對抖動有規格要求。其中用mUI作為單位描述不同型別抖動是常見的方式。前邊我們提到CDR的抖動容限,也就是理論上滿足一定BER條件時,TJpp值小於等於1UI即可。

而TJ是由有DJ和RJ構成,其近似關係可以表示為如下的公式:

TJpp≈DJpp+α*RJrms

其中引數α由誤位元速率決定,如抖動(上)所述。實際上TJpp最大值會在不同協議的不同速率上都會有規格說明。有時也會把指標分解到傳送器,通道、接收器和參考時鐘等部分。

比如PCIe Gen1中對傳送器(Tx)的最大TJ規定0。15UI,而接收器輸入最大TJ規定為0。3UI,Serial RapidIO level2中傳送器(Tx)的最大TJ規定0。3UI,而接收器輸入最大TJ規定為0。55UI。

誤位元速率(Bit Error Ratio,BER)是用於衡量資料傳輸準確度的指標,是傳輸錯誤碼元和總傳輸碼元的比值。比如BER=1E-12,代表每一萬億位元資料中錯誤少於等於1位元。如果是用10Gbps的速率傳輸,可以簡單地理解為平均100s的時間內錯誤小於等於1位元。

抖動

幅度噪聲

都會使資料的傳輸存在出錯的機率,而抖動對誤位元速率的影響關係通常用浴盆曲線(Bathtub Curve)描述。

如圖10,對於

抖動

,浴盆曲線反映了取樣位置和對應的取樣結果錯誤機率的關係。可以看到,滿足高斯分佈的RJ,理論上一定存在錯誤(機率大小問題)的可能。所以減小RJ的標準差對提高誤位元速率的重要性不言而喻。

深入淺出聊抖動(Jitter)

圖10

同樣,幅度的噪聲其實包含了熱噪聲和各種干擾、ISI等因素。圖10中僅考慮幅度滿足高斯分佈的熱噪聲。對於差分訊號,判斷的幅度閾值通常為0,當幅度閾值變化時,也同樣有近似的機率分佈函式(CDF)。

幅度噪聲和時間抖動構成了二維尺度的影響因素,綜合起來就是二維的誤位元速率分佈圖,也就是我們常用的眼圖(Eye Diagram)。如圖11所示為開啟DFE功能的內部資料眼圖。不同顏色色環代表不同的誤位元速率分佈。

深入淺出聊抖動(Jitter)

圖11

希望透過這兩期【抖動(上,下)】內容,大家能夠增強大家對與抖動的相關關的概念的有更多理解和收穫。歡迎大家前往論壇討論:http://bbs。eetop。cn/thread-840734-1-1。html

點選閱讀原文檢視論壇原帖