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

幾種核心分析:直流、交流、暫態

網表寫好了也只是擱在那裡,直到你向它提問。這篇帶你走過每一次模擬都在回答的三個問題——電路停在哪裡、它對每個頻率如何反應、它逐刻又做了什麼——外加幾種把一次模擬變成一整項研究的掃描。

四個問題,一張虛擬工作台

到這裡你已經會寫網表了——元件都命名好、節點 0 選作一切量測的參考基準。但網表本身只是一份靜止的描述;它是一張接線圖,不是一場實驗。在你加上分析指令之前,什麼都不會發生——那是一行以點開頭的指令,把一個具體的問題交給虛擬工作台去回答。你每天會用到的三種是直流、交流與暫態,而每一種回答的,都是真正不同類型的問題。

想像用四種方式問同一個電路。當什麼都不動時,它停在哪裡?——那是直流工作點,電路閒置時的一張定格照片。當我慢慢轉動一個旋鈕時,輸出怎麼變?——那是直流掃描,描出一條轉移曲線。面對一個微小擾動的每一個頻率,它如何反應?——那是交流分析,一張逐頻率的 X 光片。當我戳它一下,它逐刻究竟做了什麼?——那是暫態分析,在虛擬示波器上播放的一部電影。

靜止狀態:工作點與直流掃描

要找出工作點,SPICE 把時間凍結,問每一個電壓與電流在直流下會穩定到多少。它把每個電容器當作開路——一個充飽電、不通過任何穩定電流的水桶——把每個電感器當作一條普通導線——一個以定速旋轉、兩端沒有電壓的飛輪。把這些電抗元件挪開後,剩下的就是純粹的電阻與電源代數,它便解出每一個節點。這正是你在替電晶體設定偏壓時遇過的偏壓點,也就是 Q 點——如今在幾毫秒內就交到你手上。一個 10 k 與 5 k、跨在 9 V 上的分壓器,會在中間節點印出 9 times 5/(10+5) = 3.000 V;對一個電晶體級,你會讀出 Vbe、Ic 與 Vce,確認它正坐在你所期望的主動區裡。

一次 直流掃描 把那個靜止狀態的求解一遍又一遍地重複,同時你把一個電源從起始值慢慢轉到終止值,並在每一步記錄輸出。把這些點串起來,你就得到一條轉移曲線。掃描跨在二極體上的電壓並畫出電流,你就直接從模型畫出了它的 I-V 曲線;把一個放大器的輸入從一條電源軌掃到另一條,你就看著它的輸出爬升、變平、然後削波。誠實的但書:直流掃描終究只是一連串凍結的靜止狀態,電容全程保持開路——所以它告訴你的是位準與極限,永遠不會是速度或時序。

* RC low-pass:  in --[ R 1.6k ]-- out --[ C 100n ]-- 0
V1   in  0   AC 1  SIN(0 1 1k)
R1   in  out 1.6k
C1   out 0   100n

.op                  ->  resting voltages (no DC drive here: all nodes 0 V)
.dc  V1 0 5 0.1      ->  sweep V1 from 0..5 V, out vs in  (a straight line)
.ac  dec 20 10 1Meg  ->  Bode: gain & phase vs frequency
.tran 0 5m 0 5u      ->  time movie: feed in a wave, watch out follow

.ac result:   100 Hz -> ~0 dB        (passband, in = out)
              1 kHz  -> -3 dB (0.707) (cutoff)
              10 kHz -> -20 dB        (-20 dB per decade roll-off)
同一個 RC 低通,用四種方式去問。截止頻率落在 fc = 1/(2 times pi times 1.6k times 100n) ≈ 1 kHz;交流掃描就在那裡找到 -3 dB 點。

頻率 X 光:交流分析與波德圖

交流分析 回答每個濾波器與放大器設計者賴以為生的問題:增益與相位如何隨頻率改變?SPICE 在某個頻率施加一個振幅為 1 的微小測試弦波,讀出輸出,再在一整段頻率掃描上重複——常常是每十倍頻 20 個點,從 10 Hz 到 1 MHz。把結果以分貝表示的增益、與以度表示的相位,畫在對數頻率軸上,就得到波德圖——類比設計中最有用的一張圖。對我們的 RC 低通,它顯示一段平坦的通帶直到截止頻率,接著是穩定的每十倍頻 -20 dB 的下滑——正是你用手算出的 RC 行為,如今一鍵就確認了。

放進一個運算放大器,波德圖就值回票價了。一個非反相放大器,Rf = 90 k、Rin = 10 k,增益為 1 + 90/10 = 10,也就是 20 dB——交流圖會顯示低頻處一條平坦的 20 dB 線,最終向下彎折、滾降。那個彎折正是增益頻寬積在起作用:一顆增益頻寬積為 1 MHz 的元件,被要求做出 10 倍增益時,會在 1 MHz / 10 = 100 kHz 附近用光頻寬。交流分析存在的全部理由,就是在你動手做之前,把這類極限攤在眼前。

那部電影:暫態分析

暫態分析 就是那台虛擬示波器。SPICE 以極小的增量在時間中一步步前進,在每個瞬間解出完整的非線性電路,讓電容器充電、電感器累積電流,就像它們在工作台上會做的那樣。這是三大分析中唯一一個,能顯示電路即時、真正在做它工作的:一個放大器把過大的輸入削波、一個運算放大器的輸出以它的迴轉率極限爬升、一個電源的電壓下垂又回復、一個回授迴路在開機瞬間振鈴或爆發出振盪。凡是波德圖的小訊號世界藏起來的,暫態都會揭露。

麻煩在於時間步長。SPICE 沒辦法解出每一個瞬間——它在離散的時間點上取樣,並在它們之間畫直線,很像取樣那一階裡波形上的那些點。步長太粗,一個快速邊緣或一個短暫的毛刺就會在樣本之間溜過、看不見;步長太細,模擬又會慢如爬行。現代模擬器會自動調整步長,在動作快的地方縮小、在平靜的地方拉長,但當你需要確定抓住某個尖銳的特徵時,可以替最大步長設上限。當一次暫態模擬卡住或拒絕跑完,麻煩通常出在數值上——收斂與步長——那正是本階最後一篇的主題。

  1. 決定時間視窗:長到足以看見你在乎的東西。要看一個 1 kHz 的波形穩定下來,幾毫秒(好幾個週期)就綽綽有餘;要捕捉開機行為,就從 t = 0 開始。
  2. 選擇初始條件:讓 SPICE 先解出工作點(預設),或用 .ic 強制一個起始狀態——當你想研究電路如何從一個已知起點達到穩態時。
  3. 執行並讀取:把節點電壓與支路電流隨時間畫出來,就像你擺放示波器探棒一樣——把輸入與輸出疊在一起,一眼看出增益、延遲與削波。
  4. 微調:如果某個邊緣看起來平滑得可疑、或一個快速事件不見了,就把最大時間步長收緊再跑一次;如果太慢,就放寬。只有當你微調時波形不再改變,才信任那個形狀。

三大分析之外——以及誠實的極限

還有三種分析讓這張工作台更完整,現在值得先記住名字、日後再拿來用。雜訊分析 把每個元件貢獻的熱雜訊與其他雜訊加總,回報你輸出端的總量——對於微弱訊號的感測器前端極為寶貴。參數掃描 在逐步改變某個元件值的同時重跑任何一種分析,於是你可以看著一條波德曲線隨你調動一個電阻而移動,挑出最好的那一個。蒙地卡羅分析 走得更遠:它讓每個元件在其容差內隨機抖動,把電路跑上數百次,顯示真實量產會給出的結果散佈——這正是一個只在你工作台上能動的設計,與一個在一萬台上都能動的設計之間的差別。

最後,是讓模擬值得信賴的那份誠實:一個結果,永遠不會比它背後的模型更好,而即使是完美的模型,也看不見你的電路板。模擬不知道兩條擁擠走線之間的雜散電容、一條長長接地回路的電感、會讓元件值漂移的熱,或你的佈線悄悄變成的那根天線。那些寄生效應 住在佈局裡,不在網表裡。所以,把這裡的每一種分析,都當作一種便宜、快速、用來抓住低級錯誤與探索構想的方法——一條提早削波的轉移曲線、一個相位裕度太少的迴路——然後動手把東西做出來、量它。餵養這一切的元件模型是下一篇;讓一次頑固的模擬真正收斂,則是最後一篇。