JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

通道反撲:損耗與符元間干擾

在第 1 階,發送端發出了乾淨又快速的位元流。但在晶片與它的夥伴之間,橫亙著幾公分的銅——而那段銅並不是一根中性的管子。它是一個頑固的低通濾波器,把每一個銳利的邊緣抹散,直到一個位元滲進了下一個。來認識符元間干擾,這是本軌道後續所有技巧都為了打敗它而存在的核心敵人。

兩個朋友之間的銅

想像兩個人站在一條長長的石砌走廊兩端。一人輕聲說出一個清脆、短促的字;當它傳到另一端時,那些硬邊的子音已經軟化成模糊的嗡聲,而前一個字的回音還在響著,下一個字就已經到了。那條走廊對你的位元所做的,正是一個 SerDes 通道所做的事。一端的串列器發出一道漂亮的方形電壓邊緣,但導線在另一端送達的,卻是圓鈍、延遲又彼此重疊的東西。

「通道」並不抽象。它是一條實體鏈:離開發送端封裝的一顆錫球或凸塊、印刷電路板上的分線走線、在 PCB 各層之間俯衝穿過的一個導通孔(via)、一個連接器、也許一條纜線、另一個連接器、更多走線、又一個導通孔,最後是接收端封裝。它們每一個都是被絕緣介電質包覆的銅,而它們每一個都在向訊號課稅。一條現代的 56 Gb/s PAM4 鏈路,在 30 公分的 FR-4 板材上損失的能量,可能比一條無線鏈路橫越一個房間還多。

為什麼一條導線會變成低通濾波器

有兩種截然不同的物理效應一起圍攻高頻,而把它們在腦中分開來想是值得的,因為它們的縮放方式不同。

集膚效應(skin effect)是第一個。在直流下,電流均勻地分布在整個銅截面上。當頻率升高,導體內部的磁場把電流推向外表面——也就是「皮膚」——讓核心閒置。有效的導電面積縮小,於是有效電阻上升。由於集膚深度以 1/√f 縮小,這種損耗大致隨 √f 增長。你也許曾在電力匯流排上的集膚效應中遇過的同一套物理,在這裡正擠壓著你的資料邊緣。

介電損耗(dielectric loss)是第二個。銅周圍的絕緣材料——FR-4 玻璃環氧樹脂,或像 Megtron 這類較低損耗的疊層——充滿了極性分子。訊號變化的電場試圖搖動它們,而它們與鄰居摩擦,每一個週期都把你訊號的一小片轉化成熱。這種損耗大致隨 f 線性增長,因此在頻帶最頂端佔主導。一種材料在這方面的「壞」由它的損耗正切 tan δ 來刻劃;把 tan δ 減半,是把損耗買回來最直接的方法之一。

  Attenuation vs frequency  (the two enemies add up)

  loss
  (dB) ^
       |                                     total ___
       |                                   ___/
       |                            ___/···  dielectric  (∝ f)
       |                      ___/   ···
       |                ___/    ·········   skin (∝ √f)
       |           __/  ··········
       |       __/·······
       |    _/····
       |  _/··
       |_/_____________________________________________> frequency
       0                         f_Nyquist

  Below f_Nyquist the channel is gentle; right where your data
  lives, the curve is already plunging.
插入損耗隨頻率單調上升:來自集膚效應的 √f,加上來自介電質的線性項。定義你位元的那些快速邊緣,恰恰由通道懲罰得最重的高頻所組成。

當一個位元滲進下一個

現在看看那個磨圓在時間上做了什麼。把一個孤立的、一個位元週期寬的「1」脈衝送進一條有損耗的通道。從遠端出來時,它並不會是一個乾淨的矩形——它回來時更低、更寬,還拖著一條長長的尾巴。通道沒能準時送達的能量遲到了,溢進了後續位元的時槽裡。這種擴散是根本原因;它造成的症狀有一個名字。

  IDEAL (no loss)            LOSSY CHANNEL (pulse response)

  v |  ___                    v |    _
    | |   |                     |   / \__               main cursor
    | |   |                     |  /     \___           + long tail
    |_|   |____                 |_/          \_____      bleeds into
    +----+----+--> t            +----+----+----+--> t   next slots
     bit  next                   bit  next  next

  cursors sampled at bit centers:
     ideal : [ ... 0   1   0   0 ... ]
     lossy : [ ... .1  .6  .25 .1 ... ]   <- neighbors are nonzero!
            (pre-cursor)↑  main↑  (post-cursors)↑
單一脈衝在時間上擴散。在每個位元中央取樣時,有損耗的響應在相鄰時槽中並非零——那些就是 ISI 的「游標(cursor)」。最大的那個是主游標;它前後的殘餘則是前游標與後游標。

那正是 符元間干擾(ISI):接收端在位元 *n* 的取樣瞬間所看到的電壓,不只是位元 *n*,而是位元 *n* 加上來自更早與更晚位元洩漏尾巴的總和。接收端的門檻比較器現在讀成「1」還是「0」,竟取決於鄰近位元是什麼。鏈路長出了一個記憶——而且是個糟糕的記憶,因為這份記憶汙染了它正在餵養的那個判決本身。

ISI 如何把眼睛閉上

*看見* ISI 最乾淨的方法,是第 1 階的眼圖。把數千個接收到的位元週期全部對齊時脈、疊在一起,這些軌跡就刻劃出一隻睜開的「眼睛」。眼睛的高度是你的電壓裕度——「1」與「0」電位在雜訊之上分開了多遠。它的寬度是你的時序裕度——取樣時脈可以晃動多少而仍落在清晰區。

ISI 同時攻擊兩個維度。因為每個位元的電位現在取決於它的鄰居,「1」的軌道不再是一條乾淨的線,而是一條由略有差異的「1」電位組成的模糊帶——「0」亦然。這條帶從上下兩側吃進眼睛中央,縮小高度。同時,擴散的尾巴讓有些邊緣提早跨過門檻、有些較晚,於是交越點橫向模糊,眼睛在寬度上變窄。把損耗推得夠遠,眼睛就砰地閉上:再也沒有任何瞬間、任何電壓,能讓一個簡單的比較器可靠地分辨「1」與「0」。

  LOW LOSS  (eye wide open)        HIGH LOSS  (ISI closing it)

   1 \__________/  \______          1 \____    ____/\___
         \    /    \    /                 \\  //   \\
          \  /      \  /                   \\//     ====   <- eye
   -----    \/        \/   <-thresh  -----  XX      ====      barely
          /  \      /  \                   //\\     ====      open
         /    \    /    \                 //  \\   //
   0 ___/      \__/      \__       0 ____//    \\__\\___
      <-- 1 UI -->                    height ↓   width ↓

  Sampling point wants the WIDEST, TALLEST opening it can find.
同樣的資料,兩條通道。由損耗驅動的 ISI 同時縮小眼睛的高度(電壓裕度)與寬度(時序裕度)。閉合的眼睛意味著未經任何等化前、高到無法使用的原始位元錯誤率。

在奈奎斯特頻率以分貝編列損耗預算

工程師不會用模糊的字眼爭論通道;他們會把傷害量化成一個數字。那個數字就是插入損耗,以分貝計,並在 奈奎斯特頻率(Nyquist frequency)——最快樣式(不斷重複的 1010… 流)的基本頻率——下標註。對不歸零(NRZ)訊號而言,這個樣式每兩個位元重複一次,因此 f_Nyquist 恰好是位元率的一半(符元率,即鮑率,除以二)。

  Worked example: a 32 Gb/s NRZ link

    bit rate          = 32 Gb/s
    f_Nyquist         = 32 / 2 = 16 GHz      <- spec the loss HERE

    measured channel insertion loss @ 16 GHz = -24 dB
      -> received fundamental is 24 dB down
      -> 10^(-24/20) ≈ 0.063  -> only ~6.3% of the amplitude survives!

  Reading a spec line:
    "channel budget: ≤ 30 dB at Nyquist (10 GHz / 5 GHz / etc.)"
    means: equalization + good material must keep total loss
    under 30 dB at the half-baud frequency, or the eye won't open.

  PAM4 twist: 4 levels squeeze 2 bits/symbol, so f_Nyquist is
  HALF that of NRZ at the same bit rate — but the eye is split into
  three thinner sub-eyes, so PAM4 is far less loss-tolerant per dB.
插入損耗以分貝在奈奎斯特頻率標註,因為那正是通道傷害你最壞切換樣式之基波的所在。24 dB 聽起來不嚴重,直到你換算它:只有約 6% 的擺幅抵達。

這一個數字,讓系統架構師在任何電路板誕生之前就能劃分責任。「損耗預算」可以這樣說,例如:封裝可吃掉 4 dB、PCB 走線 18 dB、兩個連接器 6 dB,依此類推——而接收端的等化器必須夠強,才能把總和奪回來。隨著互連縮放不斷縮小晶片內的導線,而板上的距離卻頑固地維持長度,鏈路愈來愈多的困難就住在這條晶片外的通道裡,這也正是為什麼如此多的 SerDes 創新都瞄準著它。

  1. 找出符元(鮑)率與調變方式(NRZ 對 PAM4)——這就確定了奈奎斯特頻率。
  2. 在那個奈奎斯特頻率(而非直流)讀取或量測通道的插入損耗,以分貝計。
  3. 把它與 SerDes IP 公布的損耗預算(它能等化且仍使鏈路成功的最大分貝數)相比較。
  4. 若超出預算,就向通道下手:較低損耗的疊層(更小的 tan δ)、更短或更寬的走線、更少的導通孔、更好的連接器——在更用力倚賴等化之前。

等化為了打敗它而存在的敵人

退一步,整條軌道的策略便清晰起來。通道是一個固定的、塑形頻率的低通濾波器,盒子一旦造好,你通常無法太多更動它。ISI 是它在時域投下的影子。閉合的眼睛是判決。而奈奎斯特頻率下的插入損耗是計分板。接下來的一切,都是針對這同一個對手的反制。

如果通道是一個低通濾波器,顯而易見的解藥就是建一個做相反事情的「高通式」濾波器——恰好提升通道餓著的那些高頻。那就是等化,它有好幾種你會在第 3 階遇到的口味:一個讓訊號預先失真、好讓它抵達時剛好正確的發送端濾波器,以及接收端的濾波器——它們要嘛連續地抬升高頻帶,要嘛逐位元主動地把洩漏的尾巴減掉。它們沒有一個能免費創造資訊;它們是在重新塑形,而且要付出功率與雜訊的代價。但它們能把一隻砰地閉上的眼睛重新撬開。