ISF 的 Fourier series(傅立葉級數)
前置閱讀:isf_definition(Γ 是無因次、2π 週期函數)、impulse_to_phase_shift(Γ 的操作型定義)、convolution_derivation(連續 noise 的相位積分式)。
動手驗證:本頁的 Fourier 係數萃取、重建與 Parseval 數值驗證見 lab_05。
上一章 impulse_to_phase_shift 推出了 ISF
的操作型定義 Δϕ=Γ(ω0τ)Δq/qmax,並指出 Γ 是一個
無因次、2π 週期的函數。這頁回答下一個關鍵問題:
既然 Γ 是週期函數,把它展成 Fourier series 之後,每一項各自代表什麼物理?
答案是 ISF 理論最漂亮的一段——它把「振盪器把哪一段頻率的 device noise 搬到 carrier 附近」
講得清清楚楚。核心結果([P1] Eq.(12), p.183):
Γ(ω0τ)=2c0+n=1∑∞cncos(nω0τ+θn)
物理直覺(先講結論):振盪器是一台時變的混頻器(mixer)。它對 noise 的相位敏感度
Γ 隨波形相位週期性變化,等於對 noise 乘上一個以 ω0 為基頻的「週期權重」。
一個週期函數乘上 noise,數學上就是把 noise 頻譜搬到 0, ω0, 2ω0,… 各處再疊加。
所以落在每個 nω0 附近的 device noise,都會被第 n 個 Fourier 係數 cn 加權、
然後 down-convert(下轉)到 carrier 附近變成 phase noise。其中 c0(DC 項)特別重要:
它把接近 DC 的 1/f flicker noise 直接搬上來,造成 close-in 的 1/f3 phase noise。
第 1 步:為什麼 Γ 可以展成 Fourier series
Γ(ω0τ) 描述「在波形的某個相位踢一下,相位被推多少」。振盪器處於週期穩態
(periodic steady state,輸出波形每 T=1/f0 重複一次),所以「在相位 x 踢」與「在相位
x+2π 踢」效果完全一樣。換言之 Γ 對自變數 x≡ω0τ 是 2π 週期:
Γ(x+2π)=Γ(x).
- 用到的數學:任何 2π 週期、在一個週期內平方可積(∫02π∣Γ∣2dx<∞)
的函數都能展成 Fourier series(Dirichlet 條件)。實際 ISF 是連續、分段平滑的,條件輕鬆滿足。
- 物理依據:週期性來自振盪器的 limit cycle(極限環)——穩態下狀態點每週期繞環一圈,
敏感度只跟「環上的位置(相位)」有關,與「第幾圈」無關。
- 單位檢查:x=ω0τ 是 [rad/s]⋅[s]=[rad] ✓,無因次;
Γ 本身無因次,c0,cn 也無因次(見 notation)。
第 2 步:寫出標準 Fourier 展開(cos/sin 形式)
先用最熟悉的 cos/sin 實數 Fourier series 寫一遍,再合併成 [P1] 的 amplitude–phase 形式。
對 2π 週期函數:
Γ(x)=2a0+n=1∑∞[ancos(nx)+bnsin(nx)],
係數由一個週期上的內積(投影)取得:
a0=π1∫02πΓ(x)dx,an=π1∫02πΓ(x)cos(nx)dx,bn=π1∫02πΓ(x)sin(nx)dx.
- 用到的數學:{cos(nx),sin(nx)} 在 [0,2π] 上正交,
∫02πcos(mx)cos(nx)dx=πδmn(m,n≥1),用這個正交性把對應分量「篩」出來。
- 注意 1/π 與 DC 的 factor:a0=π1∫02πΓdx,而 Γ 的平均值
(DC 值) 是 2π1∫02πΓdx=2a0。所以級數第一項寫成
2a0 才等於真正的平均值。這個 1/2 不是隨便加的,後面 c0 的定義會沿用它。
第 3 步:合併成 amplitude–phase 形式,得到 cn,θn
把同頻的 ancos(nx)+bnsin(nx) 用三角恆等式合成單一餘弦:
ancos(nx)+bnsin(nx)=cncos(nx+θn),
其中
cn=an2+bn2,θn=atan2(−bn,an).
- 用到的數學:cncos(nx+θn)=cncosθncos(nx)−cnsinθnsin(nx),
比對係數得 an=cncosθn、bn=−cnsinθn,反解即上式。
- DC 項對應:把 c0≡a0(DC 係數),於是常數項 2a0=2c0。
代入即得 [P1] Eq.(12):
Γ(ω0τ)=2c0+n=1∑∞cncos(nω0τ+θn) [P1] Eq.(12), p.183
- 符號陷阱(重要):c0 是傅立葉係數,而 ISF 的 DC值是 c0/2。這個 factor
在算 1/f3 corner(Eq.(24))時最容易出錯,後面章節會反覆提醒。本站 Python 的
compute_fourier_coefficients 回傳的 a0 即等於這裡的 c0(見第 8 步)。
第 4 步:c0 的物理意義——DC、控制 1/f upconversion
把 ISF 的 Fourier 展開代回 LTV phase response([P1] Eq.(11)→Eq.(13), p.183):
ϕ(t)=qmax1[2c0∫−∞tindτ+n=1∑∞cn∫−∞tincos(nω0τ+θn)dτ][P1] Eq.(13), p.183
第一項(c0 那項)對 noise 電流直接積分,沒有任何 cos(nω0τ) 調變。意思是:
- c0 項對 noise 電流的 DC / 極低頻分量有反應——你慢慢地推節點,相位就慢慢地漂。
- 把一個靠近 DC 的小單音 i(t)=I0cos(Δωt)(Δω≪ω0)代入,
只有 c0 項會響應(其他諧波被 cos(nω0τ) 平均掉),得到([P1] Eq.(15), p.183):
ϕ(t)≈2qmaxΔωI0c0sin(Δωt).
- 為何這叫 "1/f upconversion(上轉)":device 的 flicker / 1/f noise 集中在低頻
(DC 附近)。c0 項把這些「住在 baseband 的 noise」搬(up-convert)到 carrier 旁,
變成 close-in phase noise。後面 flicker_noise_upconversion
會用它推出 1/f3 skirt([P1] Eq.(23),(24))。
- 設計含義:c0 越小,flicker 上轉越弱。c0=0(完美對稱波形)時,理論上 close-in 不再
有 1/f3 貢獻。這是「波形對稱性 → close-in phase noise」這條 design rule 的數學根源
([P2] Fig. 17, p.802 有實驗佐證)。
第 5 步:cn 的物理意義——把 nω0 附近的 noise frequency-translate 到 carrier
看 Eq.(13) 第二項的第 n 個分量:它把 noise 電流乘上 cos(nω0τ+θn) 再積分。
乘上 cos(nω0τ) 在頻域就是把 noise 頻譜搬移 ±nω0(調變定理)。所以:
- 落在 nω0+Δω(與 nω0−Δω)附近的 device noise,被 cn 加權後
down-convert 到 Δω,成為 carrier 旁 Δω 處的 phase noise。
- 把一個靠近 nω0 的小單音 i(t)=I0cos((nω0+Δω)t) 代入 Eq.(13),
只有第 n 個諧波響應,得到([P1] Eq.(16)/(17), p.183):
ϕ(t)≈2qmaxΔωI0cnsin(Δωt).
明算:用 cosAcosB 把 nω0 附近的 noise 搬到 carrier