用電晶體的三種方式
一顆 MOSFET 有三個你要關心的端子:閘極、汲極與源極。放大訊號,就是從某個端子把訊號送進去、再從另一個端子讀出結果——而那個被你接到固定電壓的*第三個*端子,決定了這種接法叫什麼名字。把源極接地,就得到 common-source 放大器。把汲極接住(接到電源),就得到 common-drain,更常被叫作源極隨耦器。把閘極接住,就得到 common-gate。同一顆器件,三種活兒。
在它們能放大之前,電晶體必須先導通、並且工作在正確的區域。類比電路活在飽和區(主動區),在這裡汲極電流幾乎不隨汲極電壓變化,卻對閘極反應強烈——正是這份靈敏給了你增益。把器件送進這個區域所需的那些穩定直流電流與電壓,就是 工作點;下面每一個增益數字,都是用 小訊號模型在這個點*附近*量出來的:把電晶體換成它那些微小的線性替身,再問:輸入端抖一下,輸出端會跟著抖多少。
* Bias a MOSFET and read its small-signal parameters M1 d g 0 0 nch W=10u L=0.5u Vgs g 0 0.8 Vds d 0 1.0 .op * solve the DC operating (bias) point .print gm gds * gm = transconductance, ro = 1/gds
共源:增益級
當你想要電壓增益時,共源級就是你順手抓來的主力。訊號進閘極;源極坐在一個固定電壓上(常常是地)。閘極抖動 +ΔV,會把汲極電流抬高 gm·ΔV,而這股多出來的電流流過負載電阻,會把汲極電壓往*下*拉。於是輸入小升、輸出大降——這一級既放大、又反相。
能放大多少?如果負載就是電晶體自己的輸出電阻 ro(這是單顆器件靠自身所能做到的極限),那麼增益就是你那兩個抓手的乘積:
Av (common-source) = -gm * ro * gm depends on how hard you bias it: gm = 2*Id / Vov ( Vov = Vgs - Vth, the overdrive ) * gm * ro is the device's 'intrinsic gain' — the ceiling * for one transistor, often ~20-40 dB in a modern process
源極隨耦器:一個緩衝器
把同一顆電晶體反過來接——訊號進閘極,輸出從源極取,汲極接電源——它就不再放大電壓了。源極忠實地*跟隨*閘極,穩穩地待在比閘極低一個大致恆定的 Vgs 的位置上。這就是 common-drain 級,幾乎總是被叫作 源極隨耦器。它的電壓增益略小於 1。
它既然不放大,為什麼還要做它?因為它是個緩衝器。想像一個大力士轉述一句耳語:內容一字不改,但現在這句話足以推開一扇沉重的大門。源極隨耦器對餵它訊號的那一級只呈現很輕的負載(輸入電阻高,閘極幾乎不取電流),卻給出大約 1/gm 的低輸出電阻,因此能驅動那些會把 共源級壓垮的沉重電容性或低阻負載。你把它停放在某個高增益級之後,好讓你接上下一模塊時增益不會塌掉。
Av (source follower) = (gm*ro) / (1 + gm*ro) ~ 1 (a hair under unity) Rout (source follower) ~ 1 / gm (nice and low)
共閘
第三種接法把閘極釘死,把訊號送進源極,再從汲極讀輸出。共閘級是這三個裡的異類:它的輸入電阻低(約 1/gm),而且不反相。往它的源極灌進電流,同樣的電流就從汲極冒出來——它是個電流緩衝器,正是源極隨耦器那個電壓緩衝器的鏡像。
單獨使用共閘級並不常見,但它的行為是下一個想法的鑰匙。它最突出的性質,是從汲極往*上*看時它所做的事:它讓那裡的電流變得格外不願隨電壓改變。記住這一點——這正是 cascode 要扳動的那根槓桿。
Cascode:要增益,不要代價
難處在這裡。單個共源級的增益上限就是 gm·ro。最直白的解法——往上再疊*第二*個放大級——確實管用,但每多一個增益級,就多帶來它自己的雜訊、多燒一份功耗,還多添一個極點,往後威脅穩定性。你想要的是更多增益,可不是多養一張嘴。
cascode 是個優雅的脫身之計。在你的共源管上面疊一顆 common-gate 管。下面那顆器件仍然幹放大的活——仍然由它定 gm。但上面那顆共閘器件充當一面盾牌:它把下管的汲極電壓按得幾乎紋絲不動,於是下管的 ro 不再把增益漏掉。實際效果是,cascode 把輸出電阻大約乘上頂管自己的 gm·ro,而增益也跟著水漲船高。
single common-source: Av ~ gm1 * ro1
cascode (CG stacked on CS):
Rout ~ (gm2 * ro2) * ro1 ( boosted by ~gm2*ro2 )
Av ~ gm1 * (gm2 * ro2 * ro1)
~ (gm*ro)^2 ( roughly the square! )增益—頻寬—擺幅的取捨
上面的每一個選擇,都會同時拉扯三樣東西:增益、頻寬和輸出擺幅。你幾乎永遠沒法把三者一起做到最大——把一個推上去,另一個就垮下來。一個老練的類比設計師,說穿了就是對該花哪一個有好直覺的人。
增益對頻寬,是其中最有名的一對。對於一個驅動負載電容的級,低頻增益與 −3 dB 頻寬的乘積大致保持不變:這就是 增益頻寬積。把增益猛拉上去,頻寬就縮下來補償;把頻寬展寬,增益就跌下去。你是在一根定長的繩子上滑動一顆珠子,而不是把繩子拉長。
GBW ~ gm / (2*pi*CL) ( set mostly by gm and the load cap ) * trade along a near-constant GBW: * A0 = 100, BW = 1 MHz -> GBW = 100 MHz * A0 = 10, BW = 10 MHz -> GBW = 100 MHz (same string) .ac dec 100 1 1G * sweep frequency to see gain roll off
輸出擺幅是第三個角,也正是 cascode 的帳單到期的地方。你每疊一顆電晶體,它都需要分走一段電壓壓在自己身上,才能留在飽和區,所以一個讓你增益翻倍的 cascode,也同時削掉了輸出在某顆器件跌出它的舒適區之前所能擺動的幅度。在低電源電壓下這很傷——這正是現代設計師要把 cascode 帶來的增益和它耗掉的擺幅放在一起掂量、有時改用更聰明的技巧的原因。這件事沒有放之四海皆準的正確答案;只有*針對你那份規格*的正確答案。