跳至主要内容

波形斜率與相位敏感度

先備impulse_to_phase_shiftΔϕ=ΓΔq/qmax\Delta\phi=\Gamma\,\Delta q/q_{max} 操作定義與 qmax=CVmaxq_{max}=CV_{max})、lti_vs_ltv(為何同 impulse、不同相位、不同效果)| 接下來symmetrytank_swing

這頁回答一個非常實用、layout 與 bias 階段就用得到的問題:同樣一坨 noise 電荷, 在波形的哪個相位注入最傷? 直覺上你可能以為「波峰最高、最敏感」——剛好相反。 ISF 大小大致與波形斜率成反比:斜率小(接近波峰)的地方 Γ|\Gamma| 大、最容易被推出相位誤差; 斜率大(ZC,zero crossing,過零點)的地方反而把 noise 多半轉成振幅、被拉回。

物理直覺(先講結論):相位是「沿著 limit cycle 切線方向跑得多快」。在波峰,狀態點 走得「慢、平」(dV/dt0dV/dt\approx0),你橫推一下,它在時間軸上要花很久才走回原位——等效於 很大的相位偏移。在 ZC,狀態點正「全速通過」(dV/dtdV/dt 最大),同樣橫推一下,很快就被 帶回軌道,幾乎不留相位(多半變成可衰減的振幅擾動)。所以「斜率小的相位」才是危險區。

第 1 步:ISF 與斜率的反比關係

回到 impulse→phase 的操作定義([P1] Eq.(10)–(11), p.182):

Δϕ=Γ(ω0τ)qmaxΔq\Delta\phi=\frac{\Gamma(\omega_0\tau)}{q_{max}}\,\Delta q

一坨電荷 Δq\Delta q 造成電壓跳變 ΔV=Δq/C\Delta V=\Delta q/C([P1] Eq.(9))。把這個電壓跳變翻譯成 「時間軸上的提前/延後」:波形在該點以斜率 V˙=dV/dt\dot V=dV/dt 通過,要把電壓抬高 ΔV\Delta V, 等效於把波形在時間上平移

ΔtΔVV˙=ΔqCV˙.\Delta t\approx\frac{\Delta V}{\dot V}=\frac{\Delta q}{C\,\dot V}.
  • 單位檢查[V]/[V/s]=[s][\text{V}]/[\text{V/s}]=[\text{s}] ✓。
  • 換成相位 Δϕ=ω0Δt\Delta\phi=\omega_0\Delta t
Δϕ=ω0ΔqCV˙Γ1V˙.\Delta\phi=\omega_0\frac{\Delta q}{C\,\dot V}\quad\Rightarrow\quad \Gamma\propto\frac{1}{\dot V}.

逐步代數:把這個「平移近似」和 ISF 操作定義對齊,看 Γ\Gamma 究竟正比於什麼。 把上式的 Δϕ\Delta\phi 與操作定義 Δϕ=ΓΔq/qmax\Delta\phi=\Gamma\,\Delta q/q_{max} 兩個表達式令相等:

ΓqmaxΔq=ω0ΔqCV˙Γ=qmaxω0CV˙(兩邊同消 Δq)Γ=(CVmax)ω0CV˙=ω0VmaxV˙(代入 qmax=CVmax)=VmaxV˙/ω0=VmaxdV/dθ(V˙=ω0dV/dθ).\begin{aligned} \frac{\Gamma}{q_{max}}\,\Delta q&=\omega_0\,\frac{\Delta q}{C\,\dot V} \\[4pt] \Gamma&=\frac{q_{max}\,\omega_0}{C\,\dot V} \qquad(\text{兩邊同消 }\Delta q) \\[4pt] \Gamma&=\frac{(C\,V_{max})\,\omega_0}{C\,\dot V}=\frac{\omega_0\,V_{max}}{\dot V} \qquad(\text{代入 }q_{max}=C\,V_{max}) \\[4pt] &=\frac{V_{max}}{\dot V/\omega_0}=\frac{V_{max}}{dV/d\theta}\qquad(\dot V=\omega_0\,dV/d\theta). \end{aligned}
  • 每一步用到什麼:第 1→2 行純代數(消 Δq\Delta q);第 2→3 行用 qmax=CVmaxq_{max}=C V_{max}(電容定義, CC 自動約掉——這就是為什麼 ISF 與節點電容無關,只跟波形形狀有關);第 3→4 行把 時間斜率換成相位斜率 V˙=ω0dV/dθ\dot V=\omega_0\,dV/d\theta(鏈鎖律)。

  • 結果的意義Γ=Vmax/(dV/dθ)\Gamma=V_{max}\big/(dV/d\theta) ——ISF 正比於 VmaxV_{max}、反比於波形對相位的斜率 dV/dθdV/d\theta

  • 代正弦驗證V=VmaxcosθdV/dθ=VmaxsinθV=V_{max}\cos\theta\Rightarrow dV/d\theta=-V_{max}\sin\theta,故 Γ=Vmax/(Vmaxsinθ)=1/sinθ\Gamma=V_{max}/(-V_{max}\sin\theta)=-1/\sin\theta。這個「1/sin1/\sin」是平移近似的產物,在斜率→0(波峰)處發散; 嚴格的 LTV 投影給的是有界的 Γ=sinθ\Gamma=-\sin\theta(波峰處 Γ=0\Gamma=0)。兩者都說「斜率小 → 危險」, 但發散與否不同——平移近似只在斜率不為 0 的區間定性可用,定量請以 Γ=sinθ\Gamma=-\sin\theta 為準。

  • dimension check[V]/[V]=[\text{V}]/[\text{V}]= 無因次 ✓(Γ\Gamma 必須無因次);中間式 [C][rad/s][F][V/s]=[C][s1][C/V][V/s]=[C][s1][C][s1]=\dfrac{[\text{C}]\cdot[\text{rad/s}]}{[\text{F}]\cdot[\text{V/s}]}=\dfrac{[\text{C}][\text{s}^{-1}]}{[\text{C/V}][\text{V/s}]} =\dfrac{[\text{C}][\text{s}^{-1}]}{[\text{C}][\text{s}^{-1}]}= 無因次 ✓(rad 不計入因次)。

  • 結論:ISF 大小反比於瞬時斜率 V˙\dot V。斜率大→Γ|\Gamma| 小(不敏感);斜率小→Γ|\Gamma| 大(敏感)。

  • 對理想正弦 V=cosθV=\cos\thetaV˙sinθ\dot V\propto-\sin\theta,所以 Γ(θ)1/sinθ\Gamma(\theta)\propto1/\sin\theta 的這個 「平移」近似只在斜率不為 0 時成立;嚴格的 LC ISF 是 Γ(θ)=sinθ\Gamma(\theta)=-\sin\theta(在波峰 θ=0\theta=0Γ=0\Gamma=0,在 ZC θ=π/2\theta=\pi/2Γ|\Gamma| 最大)。

發散問題的嚴格解(resolved)1/slope1/\text{slope} 在波峰的發散如今有正式的「母公式」—— [P1] 附錄的 closed form(Eq.(37), p.193)Γ=f/(f2+f2)\Gamma=f'/(f'^{\,2}+f''^{\,2}):在 transition 上 (f2f2f'^{\,2}\gg f''^{\,2})它退化成本頁的 1/f1/f' heuristic;在波峰處分子 f0f'\to0、分母被 f2f''^{\,2} 撐住,Γ0\Gamma\to0 有界不發散。對 f=cosf=\cos 代入得分母 sin2+cos2=1\sin^2+\cos^2=1Γ=sin\Gamma=-\sin 精確成立。完整推導、[P1] 三種 ISF 計算法的逐字轉錄與數值對決,見 isf_from_waveform

這裡有一個常見的方向混淆,要說清楚:上面「Δt=ΔV/V˙\Delta t=\Delta V/\dot V」的平移圖像, 講的是「波形被電壓擾動後,過零時刻(threshold crossing)移動多少」——那是 threshold-crossing 敏感度,斜率大時 timing 反而穩(這也是「快 transition 有幫助」的另一個角度)。 而 Γ=sinθ\Gamma=-\sin\theta 講的是 excess phase 敏感度:它在波峰為 0、在 ZC 最大。 兩者看似矛盾,其實是不同問題:threshold crossing 問「邊緣何時穿過閾值」,excess phase 問 「limit cycle 切向被推多少」。本頁與全站的 design rule 一律以 [P1] 的 ISF Γ\Gamma(excess phase)為準Γ|\Gamma| 在 ZC(高斜率穿越點)最大、在波峰最小。這正是下圖要呈現的。

第 2 步:用 LC 波形與 ISF 對照圖看「哪裡危險」

下圖把理想 LC 的波形 V(θ)=cosθV(\theta)=\cos\theta 與其 ISF Γ(θ)=sinθ\Gamma(\theta)=-\sin\theta 疊在一起:

LC 波形與其 ISF

怎麼讀這張圖:

  • 波峰/波谷θ=0,π\theta=0,\piVV 極值、dV/dθ=0dV/d\theta=0):Γ=0\Gamma=0。在這裡注入電荷 → 純振幅擾動 → 被 amplitude restoration(振幅恢復)拉回 → 幾乎不留相位。這是「安全」相位。
  • 過零點 ZCθ=π/2,3π/2\theta=\pi/2,3\pi/2V=0V=0、斜率最大):Γ|\Gamma| 最大。在這裡注入電荷 → 純相位跳變 → 永久殘留。這是「危險」相位。
  • 對照 [P1] Fig. 4:同一個 impulse 打在 peak 與打在 ZC,state-space 裡切向/徑向分配完全不同—— 這正是 oscillator 是 **LTV(線性時變)**系統的招牌(claim C1)。

這是 pedagogical toy model(教學玩具,非 transistor-level):用理想正弦狀態的 LC。 真實 LC 因 tank loss 與非線性 transconductor,ISF 不會是完美的 sin-\sin,但「波峰安全、ZC 危險」 的定性結論成立。完整 script:simulations/lab_02_lc_toy_model.py

第 3 步:為什麼「快 transition」幫助 ring oscillator

Ring oscillator(環形振盪器)的波形不是正弦,而是接近方波——大部分時間「壓在軌(rail)」, 只有在切換瞬間(transition)快速衝過 ZC。它的 ISF 因此集中在 transition 附近([P2] Fig. 6, p.793;Fig. 5 顯示峰值/lobe 隨 N 變窄):

  • rail 上(平頂)V˙0\dot V\approx0 理論上應該很敏感——但 device 此時通常沒在導通/沒在漏雜訊α0\alpha\approx0,見 device_noise_mapping),所以 effective ISF 仍小。
  • transition 上V˙\dot V 最大→裸 Γ\Gamma 小;但 device 正全力切換、雜訊最大(α\alpha 大)。
  • 兩者乘起來:ring 的 effective ISF Γeff=Γα\Gamma_{eff}=\Gamma\cdot\alpha 能量集中在 transition。

快 transition(陡邊緣)為什麼好,有兩個互相加強的理由:

  1. 縮短危險視窗:transition 越快,device「全開、邊緣穿越」的時間視窗越窄,noise 被 收集進相位的「曝光時間」越短 → Γrms\Gamma_{rms} 下降(ring 的 ΓrmsN3/2\Gamma_{rms}\propto N^{-3/2} 趨勢也與 每級 transition 變陡有關,見 lc_vs_ring)。
  2. 提高 threshold-crossing 抗擾:邊緣越陡,Δt=ΔV/V˙\Delta t=\Delta V/\dot V 越小——同樣電壓 noise 造成的 timing 抖動越小。這是 SerDes data path 上「快 slew rate → 小 jitter」的同一條道理 (見 serdes_clocking_connection)。

數值例子(建立手感)

用 canonical 數值估「同一坨 Δq\Delta q 在 peak vs ZC 的相位差」。

qmax=1q_{max}=1 pC、Δq=1\Delta q=1 fC、f0=5f_0=5 GHz。理想 LC Γ(θ)=sinθ\Gamma(\theta)=-\sin\theta

  • 在 ZCθ=π/2\theta=\pi/2Γ=1\Gamma=-1,最大敏感):
Δϕ=ΓΔqqmax=1×10151012=103 rad    Δt=1032π5×109=31.8 fs.\Delta\phi=\frac{|\Gamma|\,\Delta q}{q_{max}}=\frac{1\times10^{-15}}{10^{-12}}=10^{-3}\ \text{rad}\;\Rightarrow\;\Delta t=\frac{10^{-3}}{2\pi\cdot5\times10^9}=31.8\ \text{fs}.
  • 在波峰θ=0\theta=0Γ=0\Gamma=0):Δϕ=0\Delta\phi=0 rad,Δt=0\Delta t=0(理想;真實有殘餘)。
  • 在中間相位θ=π/6\theta=\pi/6Γ=0.5\Gamma=-0.5,即 canonical 例 A 的 Γ=0.5\Gamma=0.5):
Δϕ=0.5×10151012=5×104 rad    Δt=15.9 fs.\Delta\phi=\frac{0.5\times10^{-15}}{10^{-12}}=5\times10^{-4}\ \text{rad}\;\Rightarrow\;\Delta t=15.9\ \text{fs}.
  • 手感:同一坨 1 fC,在 ZC 造成 ~32 fs、在波峰造成 ~0 fs。位置(相位)比大小更重要—— 這就是為什麼 layout 時要避免讓大 noise 源(如尾電流源切換、supply ripple)耦合到「斜率小」的相位窗口。

把斜率轉成 design knobs(清單)

Knob怎麼做機制代價/註記
提高 transition slew rate加大 delay cell 驅動、降負載電容縮短危險視窗、降 Γrms\Gamma_{rms}、降 threshold jitter更大電流→功耗↑
把大 noise 源挪離敏感相位尾電流切換、charge injection 對準波峰/低 α\alpha 窗口Γeff\vert \Gamma_{eff}\vert 小的相位注入需要 timing 規劃
加大 swing(提高 V˙\dot V大 tank swing(LC)、full-rail(ring)高斜率→低 threshold 敏感度,同時提 qmaxq_{max}受 headroom 限制(見 tank_swing
避免波形「平頂」期間 device 仍導通讓 device 在低 Γ\Gamma 相位才導通cyclostationary α\alphaΓ\Gamma 錯開需 effective ISF 分析

適用與失效條件

條件成立時失效時
小擾動、線性投影Γ1/V˙\Gamma\propto1/\dot V 近似有效強非線性、大注入時 ISF 自身會變
斜率不為 0Δt=ΔV/V˙\Delta t=\Delta V/\dot V 有定義純波峰(V˙=0\dot V=0)要用 Γ=0\Gamma=0 的極限(純振幅)
振幅擾動會衰減可只追蹤相位高 AM–PM 時波峰注入也會殘留相位

Worked examples 數值例題

以下兩題把「同一坨 Δq\Delta q、注入在 slope 大/小處,Δϕ\Delta\phi 差多少」用具體 Γ\Gamma 值算清楚, 沿用 canonical qmax=1q_{max}=1 pC、Δq=1\Delta q=1 fC、f0=5f_0=5 GHz、理想 LC Γ(θ)=sinθ\Gamma(\theta)=-\sin\theta

例 1(slope 大處 vs slope 小處,同一 Δq\Delta qΔϕ\Delta\phi 比值) 在 ZC(θ=π/2\theta=\pi/2,slope 最大,Γ=1|\Gamma|=1)與在「靠近波峰」(θ=π/6=30\theta=\pi/6=30^\circ,slope 小, Γ=sin(π/6)=0.5|\Gamma|=\sin(\pi/6)=0.5)各注入同一坨 Δq=1\Delta q=1 fC。求兩處 Δϕ\Delta\phi 與其比值。

逐步代入(帶單位),用 Δϕ=ΓΔqqmax\Delta\phi=\dfrac{|\Gamma|\,\Delta q}{q_{max}}

ΔϕZC=sin(π/2)Δqqmax=1×(1×1015C)1×1012C=1×103 rad,Δϕ30=sin(π/6)Δqqmax=0.5×10151012=5×104 rad,ΔϕZCΔϕ30=Γ(π/2)Γ(π/6)=10.5=2.\begin{aligned} \Delta\phi_{ZC}&=\frac{|{-}\sin(\pi/2)|\cdot\Delta q}{q_{max}}=\frac{1\times(1\times10^{-15}\,\text{C})}{1\times10^{-12}\,\text{C}}=1\times10^{-3}\ \text{rad}, \\[4pt] \Delta\phi_{30^\circ}&=\frac{|{-}\sin(\pi/6)|\cdot\Delta q}{q_{max}}=\frac{0.5\times10^{-15}}{10^{-12}}=5\times10^{-4}\ \text{rad}, \\[4pt] \frac{\Delta\phi_{ZC}}{\Delta\phi_{30^\circ}}&=\frac{|\Gamma(\pi/2)|}{|\Gamma(\pi/6)|}=\frac{1}{0.5}=2. \end{aligned}
  • 結果:slope 大處(ZC)的相位偏移是 slope 小處(3030^\circ)的 2 倍——因為 Γ\Gamma 值正好相差 2 倍。 注意這裡 ZC 是 Γ|\Gamma| 最大、最危險的相位。
  • Dimension check[無因次][C][C]=[rad]\dfrac{[\text{無因次}]\cdot[\text{C}]}{[\text{C}]}=[\text{rad}](無因次)✓;比值無因次 ✓。
  • 一行 Python 驗證
import numpy as np
from simulations.common.isf_utils import gamma_lc_ideal, impulse_to_phase_step
g_zc = abs(gamma_lc_ideal(np.pi/2)); g_30 = abs(gamma_lc_ideal(np.pi/6))
d_zc = impulse_to_phase_step(1e-15, g_zc, 1e-12)
d_30 = impulse_to_phase_step(1e-15, g_30, 1e-12)
print(d_zc, d_30, d_zc/d_30) # -> 0.001 0.0005 2.0

例 2(波峰幾乎免疫 + 換成 timing error 看手感) 同一坨 Δq=1\Delta q=1 fC 注入在「正波峰」(θ=0\theta=0,slope =0=0Γ=0\Gamma=0)。求 Δϕ\Delta\phiΔt\Delta t; 再和例 1 的 ZC 注入比,換成 f0=5f_0=5 GHz 的時間誤差。

逐步代入(帶單位)

Δϕpeak=sin0Δqqmax=0×10151012=0 rad    Δtpeak=0 s,ΔtZC=ΔϕZC2πf0=1×103 rad2π×5×109 Hz=1033.1416×1010 s3.18×1014 s=31.8 fs.\begin{aligned} \Delta\phi_{peak}&=\frac{|{-}\sin 0|\cdot\Delta q}{q_{max}}=\frac{0\times10^{-15}}{10^{-12}}=0\ \text{rad}\;\Rightarrow\;\Delta t_{peak}=0\ \text{s}, \\[4pt] \Delta t_{ZC}&=\frac{\Delta\phi_{ZC}}{2\pi f_0}=\frac{1\times10^{-3}\ \text{rad}}{2\pi\times5\times10^{9}\ \text{Hz}} =\frac{10^{-3}}{3.1416\times10^{10}}\ \text{s}\approx3.18\times10^{-14}\ \text{s}=31.8\ \text{fs}. \end{aligned}
  • 結果:理想波峰注入 → Δϕ=0\Delta\phi=0Δt=0\Delta t=0(純振幅擾動,被 amplitude restoration 拉回); 同樣大小的電荷在 ZC 注入 → 31.8 fs。位置(相位)比大小更重要:差別不是幾個 %,而是 0 對 32 fs。
  • Dimension check[rad]/[rad/s]=[s][\text{rad}]/[\text{rad/s}]=[\text{s}] ✓(2πf02\pi f_0 是 rad/s)。
  • 一行 Python 驗證
import numpy as np
from simulations.common.isf_utils import gamma_lc_ideal, impulse_to_phase_step
from simulations.common.noise_utils import phase_to_time_error
for th in (0.0, np.pi/2):
dphi = impulse_to_phase_step(1e-15, abs(gamma_lc_ideal(th)), 1e-12)
print(f"theta={th:.3f}: dphi={dphi:.1e} rad, dt={phase_to_time_error(dphi,5e9)*1e15:.1f} fs")
# theta=0.000: dphi=0.0e+00 rad, dt=0.0 fs ; theta=1.571: dphi=1.0e-03 rad, dt=31.8 fs

兩題皆 pedagogical toy(理想 LC sin-\sin,非 transistor-level):真實波峰有殘餘 AM–PM,Δt\Delta t 不會嚴格為 0。

重點回顧

  • ISF 大小大致反比於波形斜率:斜率小(波峰)→Γ|\Gamma| 大、危險;斜率大(ZC)→Γ|\Gamma| 小、安全。
  • 理想 LC:Γ=sinθ\Gamma=-\sin\theta,波峰 Γ=0\Gamma=0、ZC Γ|\Gamma| 最大(見圖)。
  • 快 transition 兩重好處:縮短「危險視窗」降 Γrms\Gamma_{rms}、提高 threshold-crossing 抗擾降 timing jitter。
  • 同一坨 1 fC:ZC 注入 ~32 fs、波峰注入 ~0 fs(5 GHz, qmax=1q_{max}=1 pC)——位置比大小更重要
  • ring 的 effective ISF 集中在 transition;要把大 noise 源挪離 Γeff|\Gamma_{eff}| 大的相位。

延伸閱讀