所謂退耦,既防止前后電路網絡電流大小變化時,在供電電路中所形成的電流沖動對網絡的正常工作產生影響。換言之,退耦電路能夠有效的消除電路網絡之間的寄生耦合。
用在退耦電路中的電容稱為退耦電容也叫去耦電容,退耦電容并接于電路正負極之間,可防止電路通過電源形成的正反饋通路而引起的寄生振蕩。所謂退耦,即防止前后電路電流大小變化時,在供電電路中所形成的電流波動對電路的正常工作產生影響,換言之,退耦電路能夠有效地消除電路之間的寄生耦合。
退耦濾波電容的取值通常為47~200μF,退耦壓差越大時,電容的取值應越大。所謂退耦壓差指前后電路網絡工作電壓之差。
什么是退耦?
? ? ? ? ?退耦(Decouple),最早用于多級電路中,為保證前后級間傳遞信號而不互相影響各級靜態工作點的而采取的措施。在電源中退耦表示,當芯片內部進行開關動作或輸出發生變化時,需要瞬時從電源線上抽取較大電流,該瞬時的大電流可能導致電源線上電壓的降低,從而引起對自身和其他器件的干擾。
為了減少這種干擾,需要在芯片附近設置一個儲電的“小水池”以提供這種瞬時的大電流能力。 在電源電路中,旁路和退耦都是為了減少電源噪聲。旁路主要是為了減少電源上的噪聲對器件本身的干擾(自我保護);退耦是為了減少器件產生的噪聲對電源的干擾(家丑不外揚)。
有人說退耦是針對低頻、旁路是針對高頻,我認為這樣說是不準確的,高速芯片內部開關操作可能高達上GHz,由此引起對電源線的干擾明顯已經不屬于低頻的范圍,為此目的的退耦電容同樣需要有很好的高頻特性。本文以下討論中并不刻意區分退耦和旁路,認為都是為了濾除噪聲,而不管該噪聲的來源。
簡單說明了旁路和退耦之后,我們來看看芯片工作時是怎樣在電源線上產生干擾的。我們建立一個簡單的IO Buffer模型,輸出采用圖騰柱IO驅動電路,由兩個互補MOS管組成的輸出級驅動一個帶有串聯源端匹配電阻的傳輸線(傳輸線阻抗為Z0)。
為了做成純文檔的格式,盡量采用文字說明,不不采用圖片,這樣給理解帶來一定的困難,看官們見笑了。設電源引腳和地引腳的封裝電感和引線電感之和分別為: Lv和Lg。兩個互補的MOS管(接地的NMOS和接電源的PMOS)簡單作為開關使用。
假設初始時刻傳輸線上各點的電壓和電流均為零,在某一時刻器件將驅動傳輸線為高電平,這時候器件就需要從電源管腳吸收電流。在時間T1,使PMOS管導通,電流從 PCB板上的VCC流入,流經封裝電感Lv,跨越PMOS管,串聯終端電阻,然后流入傳輸線,輸出電流幅度為VCC/(2×Z0)。
電流在傳輸線網絡上持續一個完整的返回(Round-Trip)時間,在時間T2結束。之后整個傳輸線處于電荷充滿狀態,不需要額外流入電流來維持。當電流瞬間涌過封裝電感 Lv時,將在芯片內部的電源提供點產生電壓被拉低的擾動。該擾動在電源中被稱之為同步開關噪聲(SSN,Simultaneous Switching Noise;SSO,Simultaneous Switching Output Noise)或Delta I噪聲。
在時間T3,關閉PMOS管,這一動作不會導致脈沖噪聲的產生,因為在此之前PMOS管一直處于打開狀態且沒有電流流過的。同時打開NMOS管,這時傳輸線、地平面、封裝電感Lg以及NMOS管形成一回路,有瞬間電流流過開關B,這樣在芯片內部的地結點處產生參考電平點被抬高的擾動。該擾動在電源系統中被稱之為地彈噪聲(Ground Bounce,我個人讀著地tan)。
實際電源系統中存在芯片引腳、PCB走線、電源層、底層等任何互連線都存在一定電感值,因此上面就IC級分析的SSN和地彈噪聲在進行Board Level分析時,以同樣的方式存在,而不僅僅局限于芯片內部。就整個電源分布系統來說(Power Distribute System)來說,這就是所謂的電源電壓塌陷噪聲。
因為芯片輸出的開關操作以及芯片內部的操作,需要瞬時的從電源抽取較大的電流,而電源特性來說不能快速響應該電流變化,高速開關電源開關頻率也僅有MHz量級。為了保證芯片附近電源線上的電壓不至于因為SSN和地彈噪聲降低超過器件手冊規定的容限,這就需要在芯片附近為高速電流需求提供一個儲能電容,這就是我們所要的退耦電容。
如果電容是理想的電容,選用越大的電容當然越好了,因為越大電容越大,瞬時提供電量的能力越強,由此引起的電源軌道塌陷的值越低,電壓值越穩定。但是,實際的電容并不是理想器件,因為材料、封裝等方面的影響,具備有電感、電阻等附加特性;尤其是在高頻環境中更表現的更像電感的電氣特性。我們都知道實際電容的模型簡單的以電容、電阻和電感建立。除電容的容量C以外,還包括以下寄生參數:
1、等效串聯電阻ESR(Resr):電容器的等效串聯電阻是由電容器的引腳電阻與電容器兩個極板的等效電阻相串聯構成的。當有大的交流電流通過電容器,Resr使電容器消耗能量(從而產生損耗),由此電容中常用用損耗因子表示該參數。
2、等效串聯電感ESL(Lesl):電容器的等效串聯電感是由電容器的引腳電感與電容器兩個極板的等效電感串聯構成的。
3、等效并聯電阻EPR Rp :就是我們通常所說的電容器泄漏電阻,在交流耦合應用、存儲應用(例如模擬積分器和采樣保持器)以及當電容器用于高阻抗電路時,Rp是一項重要參數,理想電容器中的電荷應該只隨外部電流變化。然而實際電容器中的Rp使電荷以RC時間常數決定的速度緩慢泄放。 還是兩個參數RDA、CDA 也是電容的分布參數,但在實際的應該中影響比較小,這就省了吧。所以電容重要分布參數的有三個:ESR、ESL、EPR。其中最重要的是ESR、 ESL,實際在分析電容模型的時候一般只用RLC簡化模型,即分析電容的C、ESR、ESL。因為寄生參數的影響,尤其是ESL的影響,實際電容的頻率特性表現出阻抗和頻率成“V”字形的曲線,低頻時隨頻率的升高,電容阻抗降低;當到最低點時,電容阻抗等于ESR;之后隨頻率的升高,阻抗增加,表現出電感特性(歸功于ESL)。因此對電容的選擇需要考慮的不僅僅是容值,還需要綜合考慮其他因素。包括: 1、電容容值;2、電介質材料;3、電容的幾何尺寸和放置位置。
所有考慮的出發點都是為了降低電源地之間的感抗(滿足電源最大容抗的條件下),在有瞬時大電流流過電源系統時,不至于產生大的噪聲干擾芯片的電源地引腳。選用常見的有兩種方法計算所需的電容: 簡單方法:由輸出驅動的變化計算所需退耦電容的大小;
復雜方法:由電源系統所允許的最大的感抗計算退耦電容的大小。
我們假設一個模型,在一個Vcc=3.3V的SRAM系統中,有36根輸出數據線,單根數據線的負載為Cload=30pF(相當的大了),輸出驅動需要在Tr=2ns(上升時間)內將負載從0V驅動到3.3V,該芯片資料里規定的電源電壓要求是3.3V+0.3V/-0.165V。
可以看出在SRAM的輸出同時從0V上升到3.3V時,從電源系統抽取的電流最大,我們選擇此時計算所需的退耦電容量。我們采用第一種計算方法進行計算,單根數據線所需要的電流大小為: I=Cload×(dV/dt)=30pF×(3V/2ns)=45mA;
36根數據線同時翻轉時的電流大小為Itot=45mA×36=1.62A。芯片允許的供電電壓降為0.165V,假設我們允許該芯片在電源線上因為SSN引入的噪聲為50mV,那么所需要的電容退耦電容為: C=I×(dt/dV)=1.62A×(2ns/50mV)=64nF;
從標準容值表中選用兩個34nF的電容進行并聯以完成該值,正如上面提到的退耦電容的選擇在實際中并不是越大越好,因為越大的電容具有更大的封裝,而更大的封裝可能引入更大的ESL,ESL的存在會引起在IC引腳處的電壓抖動(Glitching),這個可以通過V=L×(di/dt)公式來說明,常見貼片電容的L大約是1.5nH,那么V=1.5nH×(1.62A/2ns)=1.2V,考慮整個Bypass回路的等效電感之后,實際電路中glitch 會小于該值。通過前人做的一些仿真的和經驗的數據來看,退耦電容上的Glitch與同時驅動的總線數量有很大關系。
因為ESL在高頻時覺得了電源線上的電流提供能力,我們采用第二種方法再次計算所需的退耦電容量。這中方法是從Board Level考慮單板,即從Bypass Loop的總的感抗角度進行電容的計算和選擇,因此更具有現實意義,當然需要考慮的因素也就越多,實際問題的解決總是這樣,需要一些折中,需要一點妥協。
同樣使用上面的假設,電源系統的總的感抗最大: Xmax=(dV/dI)=0.05/1.62=31m歐;
在此,需要說明我們引入的去耦電容是為了去除比電源的去耦電容沒有濾除的更高頻率的噪聲,例如在電路板級參數中串聯電感約為Lserial=5nH,那么電源的退耦頻率:
Fbypass=Xmax/(2pi×Lserial)=982KHz,這就是電源本身的濾波頻率,當頻率高于此頻率時,電源電路的退耦電路不起作用,需要引入芯片的退耦電容進行濾波。另外引入另外一個參數——轉折點頻率Fknee,該頻率決定了數字電路中主要的能量分布,高于該頻率的分量認為對數字電路的上升沿和下降沿變化沒有貢獻。在High-Speed Digital Design:A Hand Book of Black Magic這本書的第一章就詳細的討論了該問題,在此不進行詳細說明。只是引入其中推倒的公式: Fknee=(1/2×Tr)=250MHz,其中Tr=2ns;
可見Fknee遠遠大于Fbypass,5nH的串聯電感肯定是不行了。那么計算: Ltot=Xmax/(2pi×Fknee)=(Xmax×Tr/pi)=19.7pH;
如前面提到的常見的貼片電容的串聯電感在1.5nH左右,所需要的電容個數是:
N=(Lserial/Ltot)=76個,另外當頻率降到Fbypass的時候,也應該滿足板級容抗需要即: Carray=(1/(2pi×Fbypass×Xmax))=5.23uF; Celement=Carray/N=69nF;
哇噻,真不是一個小數目啊,這么多啊!如果單板上還有其他器件同時動作,那么需要更多的電容呢!如果布不下,只能選擇其他具有更小電感值的電容了。
電容選擇上都采用的MLCC的電容進行退耦,常見的MLCC的電容因為介質的不同可以進行不同的分類,可以分成NPO的第一類介質,X7R和Z5V等的第二、三類介質。EIA對第二、三類介質使用三個字母,按照電容值和溫度之間關系詳細分類為: 第一個數字表示下限類別溫度: X:-55度;Y:-30度;Z:+10度 第二個數字表示上限溫度:
4:+65度;5:+85度;6:105度;7:125度;8:150度; 第三個數字表示25度容量誤差:
P:+10%/-10%;R:+15%/-15%;S:+22%/-22%; T:+22%/-33%;U:+22%/-56%;V:+22%/-82%
例如我們常見的Z5V,表示工作溫度是10度~85度,標稱容量偏差+22%/-82%,就這玩意兒我們還大用特用啊。
介質性能好的電容容量做不大,容量大的介質常量不好,生活啊,你怎么總是這么矛盾啊!尤其重要的一點是MLCC電容提供的電容值都是指靜電容量,表示電容在很低的電壓下測試得到的電容量,當電容的兩端的直流電壓在不超過電容耐壓下加大時電容量將急劇下降,例如在某耐壓16V 的MLCC電容的測試數據中有:
0V--》100%,8V——》86%,12V——》68%,16V——55%。