EP28. Jitter
這次來聊聊比較硬核的技術: Jitter。Jitter的種類蠻多,本次報告著重在影響互聯傳輸的Jitter。分享個人觀點,歡迎討論。
1. Jitter Background
1.1. 觀察Jitter
當過硬體工程師的讀者,應該利用過示波器 無限餘輝(Infinite Persistence) 模式觀察過Jitter:
基本原理 (Implementation)
機制: 利用示波器觸發(Trigger)單一邊緣,並透過餘輝功能累積大量波形。
判讀: 直接觀察波形在特定電壓點的「時間變異寬度」,作為 Jitter 的直觀呈現。
關鍵限制 (Drawbacks)
這張圖特別強調了此方法在高速訊號測量上的不足:
誤差疊加 (Additive Error): 測得的 Jitter 包含了示波器本身的 Trigger Jitter,導致結果比實際訊號更差(現代高階儀器此誤差極小)。
無法分析 (No Decomposition): 只能看到總合的現象,無法區分 RJ (隨機抖動) 與 DJ (確定性抖動),因此對於 Debug 問題根源(如 Crosstalk 或 ISI)幫助甚微。
1.2. TIE(Time Interval Error)
現代 Jitter 分析中最基礎的物理量——TIE (時間間隔誤差)
TIE 的定義
如圖所示,TIE 是一個簡單的減法公式:
TIE = [實測到達時間] - [預期到達時間]
實測 (Pink Trace): 訊號實際跨過電壓門檻的時間。
預期 (Yellow Trace): 這是由 CDR (Clock Data Recovery) 演算法算出的「理想參考時脈」位置。
正負值: 訊號晚到 (Late) 則 TIE 為正;早到 (Early) 則 TIE 為負
TIE 與 Jitter 的關係 (Raw Data vs. Statistics)
這是最關鍵的概念:Jitter 不是直接測出來的,而是由 TIE 算出來的
TIE 是「瞬時值」 (Raw Data): 示波器會計算每一個 Bit 的 TIE,如果捕捉了 100 萬個 Bits,就會得到 100 萬個 TIE 數值,這形成了一個隨時間波動的 TIE Track (趨勢圖)。
Jitter 是「統計值」 (Statistics): 我們平常說的 Jitter 規格,就是對這串 TIE 數據進行統計分析:
RMS Jitter: 等於 TIE 分佈的標準差。
Peak-to-Peak Jitter: 等於 TIE 最大值與最小值的差值。
1.3. Eye Diagram
硬體工程師應該也看過眼圖,眼圖就是 Jitter 的總合表現;Jitter 決定了眼睛水平張開的極限。
示波器將無數個像上張圖這樣的邊緣,以 1 UI (Unit Interval) 為週期進行**「時間摺疊 (Folding)」與「堆疊」**後的統計結果。
垂直軸 (Vertical Axis):雜訊與振幅
物理量: 電壓 (Voltage) 或功率。
影響因子: 振幅雜訊 (Amplitude Noise)、通道損耗 (Loss)、串音 (Crosstalk)。
結果: 這些因素會導致眼圖上下邊緣變厚,壓縮 眼高 (Eye Height),影響訊號的信噪比 (SNR)。
水平軸 (Horizontal Axis):Jitter 的主戰場 (本次報告重點)
物理量: 時間 (Time) 或相位。
影響因子: 抖動 (Jitter)。
物理機制: Jitter 本質上是訊號邊緣 (Edge) 在時間軸上的「左右隨機游移」。
關鍵結論: Jitter 是決定接收端採樣時間窗口,眼寬 (Eye Width),的唯一關鍵。
垂直閉合看雜訊 (Noise),水平閉合看抖動 (Jitter);Jitter 的大小直接決定了眼圖在水平方向還剩多少「乾淨」的採樣時間
2. 歷史背景:Wavecrest的興衰
2.1 技術特徵:統計學派的巔峰
在2000左右, 2.5 Gbps 以下的時代,Wavecrest SIA-3000 是Jitter量測的霸主
硬體架構: TIA (Time Interval Analyzer)。它本質上是一個超高速計數器,僅偵測訊號過零點 (Zero-crossing) 的時間標記 (Time Tags)。進一步計算TIE和直方圖(Histogram)。
分析方法: 由當時Wavecrest的CTO Mike Li博士提出Dual Dirac Model。利用直方圖 (Histogram) 的尾部斜率來逆推 RJ,DJ,試圖在混亂的統計數據中分離隨機性(RJ)與決定性(DJ)成分。
2.2. Dual Dirac Model
針對 Dual-Dirac 模型 (雙狄拉克模型) 技術的簡述,這是高速訊號量測 (SI) 中估算 Total Jitter (TJ) 的業界標準方法:
數學模型
目的:以「統計」換取「時間」
直接測量 BER = 10-12 需要數小時甚至數天。此模型利用短時間測得的高 BER 數據(如10-6),透過統計外插(extrapolate)來快速預測極低 BER 下的 TJ。
核心假設:卷積 (Convolution)
它將複雜的 Jitter 分佈簡化為兩個數學函數的卷積:
DJ (Deterministic Jitter): 簡化為兩個離散的狄拉克脈衝,代表有界(Bounded)抖動的邊界(前圖中的μL和μR, 或下圖中的μ-和μ+)。
RJ (Random Jitter): 假設為標準高斯分佈 (Gaussian),代表無界(Unbounded)抖動。
手段:尾部擬合 (Tail Fitting)
演算法忽略直方圖中間複雜的波峰(因 ISI(Inter Symbol Interference) 等造成的細節),專注於擬合分佈曲線左右兩側的尾部 (Tails)。因為只有尾部的高斯特性決定了極低 BER 的表現:
關鍵公式
TJ(BER) = DJ(σσ) + Q(BER) x RJrms
DJ(σσ) :擬合出的兩個高斯分佈均值之間的距離(注意:這通常小於實際測量DJp-p)
RJrms: 擬合出的高斯標準差 σ
Q(BER) : 對應於 BER = 10-12,係數約為 14
TJ(BER=10-12) = DJ(σσ) + 14 x RJrms
註: 請參考補充說明的公式推導
Mike Li 的 Dual-Dirac 模型是一種**「忽略中間細節、專注兩端尾部」**的統計擬合手段,用以快速推算高速鏈路的 Total Jitter。
Bathtub Curve
Bathtub Curve (浴缸曲線) 的核心概念,這是評估高速訊號時序裕度 (Timing Margin) 的最終圖表
圖表意義:
描述了 誤碼率 (BER) 與 採樣位置 (Strobe Position) 的關係。曲線呈現「V」字形(對數坐標下),兩側代表 Jitter 的分布尾部 (Tails),中間底部代表訊號最穩定的區域 (Eye Opening)
時序預算等式:
1 UI = TJ(BER) +EW(BER)
TJ(total Jitter): 訊號「不穩定」的時間寬度(兩側牆壁佔據的空間)
EW(Eye Width): 訊號「穩定」的時間寬度(中間可用的採樣窗口)
在一個固定的 Unit Interval (1 UI) 內,TJ 越大,剩下的 EW 就越小。
BER 與 Margin 的代價關係:
BER 要求越寬鬆 (如 10-6): Eye Width 較寬 (箭頭較長)。
BER 要求越嚴格 (如10-12): 我們必須考慮發生機率極低的 Jitter (RJ 的極端尾部),這導致 Bathtub 曲線向內收縮,TJ 變大,Eye Width (Margin) 變窄。
2.4. 致命缺陷
隨著速率提升,通道損耗造成的 ISI (Inter-Symbol Interference) 大幅增加。
偽高斯現象: 根據中央極限定理,複雜的 ISI 在直方圖上會呈現類似高斯分佈 (Bell Curve) 的形狀:
誤判機制: 由於 TIA(Time Interval Analyzer) 看不到波形,它無法感知訊號的電壓形狀、震盪或振幅衰減。因為 ISI 造成的機率分佈是 bounded(有邊界的),但在某些長通道下,ISI 的分佈非常複雜,導致其 Histogram 的尾巴看起來很像高斯分佈(Gaussian-like)。Wavecrest 的演算法無法區分「真的高斯尾巴」和「很像高斯尾巴的 ISI」,導致 RJ 被高估,進而乘以 14 倍後讓 TJ 爆表。
代價: 這些「偽裝成 RJ」的 ISI 被錯誤地乘以14倍( BER = 10-12)。導致計算出的 TJ 嚴重虛高,產品良率下降 (False Fail)。
Wavecrest 的命運
公司結局: 於 2008 年左右因財務危機倒閉,旗艦產品 SIA-3000 隨即停產
靈魂人物: 技術核心 Mike Li 於2007加入 Altera,現為 Intel Fellow,繼續主導高速信號標準制定
技術遺產: 公司雖結束,但其推廣的 Dual-Dirac Model 與 Tail Fitting 算法卻成為了業界標準 (PCIe, Ethernet),被昔日競爭對手 (Keysight, Tektronix) 全面採用,統治了今日的 Jitter 量測領域。
3. 技術轉折:示波器的修正(2004)
Keysight 與 Tektronix 利用示波器具備 ADC 取樣,數位信號處理的優勢,推動了從「純統計」向「訊號處理」的典範轉移。
3.1. Jitter 分類和分解
這張圖表展示了 Signal Integrity 中最核心的 Jitter 分類樹 (Jitter Classification Tree),這是診斷系統問題的標準流程。簡述如下:
第一層:物理本質 (TJ = RJ + DJ)
RJ (Random Jitter, 隨機抖動):
特性: 無界 (Unbounded),服從高斯分佈。
來源: 物理熱噪聲 (Thermal Noise),無法完全消除。
影響: 決定 Bathtub Curve 的斜率 (收斂速度)。
DJ (Deterministic Jitter, 確定性抖動):
特性: 有界 (Bounded),有固定的最大/最小值。
來源: 系統設計缺陷 (如頻寬不足、電源干擾),可被改善。
影響: 決定 Bathtub Curve 的底部平坦區 (吃掉固定的 Margin)
第二層:DJ 的診斷歸因
DJ 根據「是否與數據內容相關」進一步細分,直接對應具體的物理成因:
DDJ (Data Dependent, 數據相關):
ISI (碼間干擾): 通道損耗大、頻寬不足 —> 導致波形拖尾。
DCD (Duty Cycle Distortion, 佔空比失真): 上升/下降時間不對稱或 Vref 偏移 —> 導致 0 與 1 寬度不等。
BUJ (Bounded Uncorrelated, 有界不相關):
PJ (週期性抖動): 電源開關噪聲 (Switching Noise) 耦合 —> 頻譜上有特定頻率的刺 (Spur)。
OBUJ / Crosstalk: 串音(Crosstalk)在分類上屬於 BUJ (Bounded Uncorrelated Jitter)。但要注意,當干擾源(Aggressors)非常多且非同步時,根據中央極限定理(Central Limit Theorem),串音的總和效應看起來會非常像高斯分佈,這時候它會變成 "Gaussian-like" Crosstalk,這也是現代儀器最難分離的部分(容易被誤判為 RJ)。
結論:
Jitter 分類是 SI 除錯的「導航圖」:RJ 看時鐘品質,ISI 看通道損耗,PJ 看電源噪聲。只有正確分類,才能套用模型準確估算 TJ(BER=10-12) = DJ(σσ) + 14 x RJrms
3.2. 核心技術:獨立 σ 技術
現代方法不再盲目擬合直方圖,而是採用「分而治之 (Divide and Conquer)」策略:
圖樣鎖定與平均 (Pattern Lock & Averaging):
利用重複的測試圖樣 (如 PRBS),將波形多次疊加平均。
效果:隨機雜訊被濾除,留下的純淨波形即為DDJ (ISI)。這讓我們能直接測量並扣除 ISI,而非用猜的
頻譜移除 (Spectral Removing):
對殘差訊號 (Residual Error) 進行 FFT 分析,識別頻譜上的尖峰,將其歸類為 PJ (Periodic Jitter) 並扣除。
純化 RJ (Pure RJ Extraction):
經過上述清洗,剩餘的背景雜訊才是真正的熱噪聲 (RJ)。此時計算出準確的σ值和DJ(σσ)。
3.3. Jitter Analysis Tool
這張截圖展示了業界標準的 Keysight FlexDCA Jitter 分析介面,其核心邏輯是將複雜的訊號進行 Jitter Decomposition (抖動分解):
圖表功能 (四大象限):
診斷病因 (右側): 將混合的噪聲拆解為 RJ/PJ (時鐘/電源問題) 與 DDJ (通道 ISI 問題) 的直方圖,讓工程師一眼看出問題根源。
呈現結果 (左側): 顯示總抖動分佈 (TJ) 與最終的 Bathtub Curve,用以判斷訊號餘裕。
量化數據 (下方表格):
直接列出基於 Dual-Dirac 模型 算出的關鍵指標
TJ,EyeWidth,RJ, DJ
作為驗證 Link 是否達標 (Pass/Fail) 的最終依據
4. 現代前沿:訊號模型與串音分離 (2020)
針對最棘手的 串音 (Crosstalk / BUJ) 與 任意圖樣 (Live Traffic) 測量,R&S 進一步引入了 Signal based Model 的方法:
4.1. Signal Based Model
Rohde & Schwarz (R&S) 獨有的 Signal-Based Decomposition (基於訊號的分解模型),這是針對高速長通道測量(如 PCIe Gen5/6)的一種先進演算法。簡述如下:
核心差異:全波形 vs. 過零點
傳統方法 (TIE-Based): 僅關注訊號的「過零點 (Edges)」,計算時間誤差 (TIE)。如果眼圖閉合,找不到 Edge,傳統方法就會失效。
R&S 模型: 如圖中文字所述,它**「對整個訊號波形建立模型」**。它利用每一個採樣點(包含波峰、波谷)來擬合出數學模型,而不僅僅依賴 Edge。
數學物理意義
公式 y(t) = Pattern × Step Response + Jitter + Noise表達了接收訊號是由三個物理量合成的:
hsr (Step Response): 演算法會算出通道的「步驟響應」,這直接對應 ISI (碼間干擾)。
ξh (Horizontal Jitter): 水平方向的時序抖動。
ξv (Vertical Noise): 垂直方向的電壓雜訊。
最大優勢
閉合眼圖分析 因為它能算出通道的hsr ,即使眼圖完全閉合,這個模型也能透過數學運算將 ISI 剝離,精確分離出 RJ 與 DJ,並區分出到底是「垂直雜訊」還是「水平抖動」在惡搞,這是傳統 Dual-Dirac 模型難以做到的。
4.2. 優點
處理BUJ (Bounded Uncorrelated Jitter)
傳統 Averaging 會將非相關的串音從平均波形中消除,使其躲進殘差裡被誤算為 RJ。
解決方案:垂直雜訊分離 (Vertical Noise Separation)
原理: 利用物理特徵——串音本質上是電壓幅度干擾。演算法分析波形平坦區 (Flat regions) 的電壓分佈,將有邊界的串音 (Bounded Noise) 與無邊界的熱噪聲 (Random Noise) 分開
結果: 即使在充滿串音的惡劣環境下,RJ 依然不會被汙染。
無需特定 Pattern 的通道估測
原理: 假設通道為線性非時變系統 (LTI),利用即時擷取的任意資料,逆推通道的 步階響應 (Step Response)。
優勢:無需 PRBS31 等特定圖樣即可精確計算 DDJ,適用於真實業務流量 (Live Traffic) 的除錯
5. 總結
高速序列訊號Jitter測量的歷史,本質上是一部**「將 Deterministic Jitter (ISI, PJ, Crosstalk) 從 Random Jitter 中逐一剔除」**的歷史。
Mike Li 博士提出的Dual Dirac model和TJ = DJ(σσ) + 14 x RJrms ,提供了一個正確的框架。而後續二十多年儀器技術的進步(從 TIA 到 Scope,從統計到訊號模型),則是為了確保填入這個框架的 RJ 數值是**「乾淨的」**。
正是這些技術修正,讓 Dual-Dirac 模型經得起時間考驗,至今仍精準地守護著每一條高速鏈路的訊號品質。
6. 補充說明
6.1. 推導 TJ(BER=10-12) = DJ(σσ) + 14 x RJrms
Total Jitter (TJ) 就是中間固定的 DJ 加上兩邊隨機擴展的 RJ:
TJ = DJ + (左邊的 RJ 擴展) + (右邊的 RJ 擴展)
推導係數 14 (針對 BER=10-12)
它是基於統計學中的 Q函數(或標準常態分佈表的反函數)(圖中的α(BER)=2Q函數)。
步驟 A:單邊尾巴的機率 高斯分佈是從中心向兩邊擴散的。我們要看的是,為了保證錯誤率低於 10-12,我們需要離中心點多遠?
當 BER=10-12 時,Q值大約是 7.0345(α = 14.069)
這意味著,如果你從高斯分佈的中心往外走 7.034 倍的標準差(σ),只有 10-12 的機率會超出這個範圍。
步驟 B:雙邊總和 (Dual-Dirac 的關鍵) 在眼圖中,抖動會影響「左邊的邊緣」和「右邊的邊緣」,或者更準確地說,Dual-Dirac 模型有左右兩個峰值(由 DJ 撐開)
左邊的高斯曲線向左延伸,貢獻了 7.034 * RJ_rms 的寬度
右邊的高斯曲線向右延伸,貢獻了 7.034 * RJ_rms 的寬度
步驟 C:加總 Total Jitter (TJ) 就是中間固定的 DJ 加上兩邊隨機擴展的 RJ
TJ = DJ + (左邊的 RJ 擴展) + (右邊的 RJ 擴展) = DJ(σσ) + 14.069 x RJrms
6.2. DJ(σσ) vs. DJ(p-p)
DJ(σσ)是一個「模型參數」,是為了畫出 Bathtub Curve 而虛擬出來的兩個 Dirac 脈衝的距離。它通常小於實際示波器量的DJ(p-p)
原因:
實際的 DJ(包含 ISI)在直方圖中間有許多能量分佈,Dual-Dirac 模型為了簡化,把這些能量「推」到了兩根棒子(DJ(σσ))上,但這只是一種數學擬合。強調這一點可以避免讀者拿著示波器的DJ(p-p)數值去手算公式,發現跟軟體算出來的 TJ對不上
6.3. CDR(Clock Data Recovery)
Jitter 是「相對」的概念。示波器中的 CDR(Clock Data Recovery)不僅是算出理想時鐘,它本質上是一個 High-Pass Filter(高通濾波器,下圖中的OJTF)。
技術細節:
CDR 會「跟隨」低頻的抖動(Low Frequency Jitter)。因此,被 CDR 追蹤到的低頻抖動,在 TIE 測量中會被濾除(看不見)。只有頻率高於 CDR Loop Bandwidth 的抖動才會顯示在 TIE 上。這也是為什麼不同標準(PCIe, Ethernet)會嚴格規範 CDR 的 PLL 頻寬(例如 10 MHz 或 frequency dependent),因為頻寬設錯,測出來的 Jitter 數值就會完全不同
Real Time Scope vs. Sampling Scope
兩種示波器的 CDR 架構對 Jitter 量測有本質區別:
Real-Time Scope (軟體 CDR): 採用演算法(如 Golden PLL)對記憶體數據進行後處理。優勢是靈活且零額外成本(但硬體成本昂貴),可在同一筆波形上反覆調整 Loop Bandwidth 進行 “What-if” 分析,精確計算 TIE 並進行 RJ/DJ 分解。
Sampling Scope (硬體 CDR): 依賴昂貴的實體 RF 模組(如 N107x)從資料中提取時脈以觸發示波器。物理上它是高通濾波器,會追蹤並濾除低頻抖動(Tracking Effect),因此測得的永遠是 殘餘抖動 (Residual Jitter),且無法事後改變頻寬來找回被濾掉的成分。
[Reference]
Teledyne Lecroy Jitter University Part 5,6
Keysight Jitter Analysis_ The Dual-Dirac Model, RJ_DJ, and Q-scale
R&S AppNote-Gain-New-Insights-in-Jitter-Analysis_V1
R&S Joint-jitter-noise-decomposition_wp_en_3608-5241-52_v0100

































