<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > CMOS逆變器短路功耗的仿真

          CMOS逆變器短路功耗的仿真

          作者: 時(shí)間:2024-05-30 來(lái)源:EEPW編譯 收藏

          在邏輯電平轉(zhuǎn)換期間,電流短暫地流過(guò)兩個(gè)晶體管。本文探討了由此產(chǎn)生的功耗,并為測(cè)量電流和功率提供了一些有用的技巧。

          本文引用地址:http://www.ex-cimer.com/article/202405/459364.htm

          在本系列的第一篇文章中,我們研究了CMOS反相器的動(dòng)態(tài)和靜態(tài)功耗。在隨后的文章中,我們使用模擬來(lái)進(jìn)一步了解電容充電和放電引起的功耗。作為討論的一部分,我們創(chuàng)建了如圖1所示的反相器電路。

          增加了負(fù)載電阻和電容的CMOS反相器的LTspice示意圖。

           

          1.png

          圖1。具有負(fù)載電阻和電容的CMOS反相器的LTspice示意圖。

          我們將在本文中繼續(xù)使用上述原理圖,研究“短路”或“擊穿”電流。這兩個(gè)術(shù)語(yǔ)指的是在輸出過(guò)渡期內(nèi)流經(jīng)圖1中NMOS和PMOS晶體管的電流。

          短路電流是可能的,因?yàn)殡S著輸入電壓——控制兩個(gè)晶體管的柵極電壓——的變化,反相器通過(guò)一個(gè)電區(qū)域,在該電區(qū)域中NMOS溝道和PMOS溝道都是導(dǎo)電的。

          測(cè)量短路電流

          我們只想測(cè)量由于擊穿而從VDD流到地的電流。這意味著我們必須排除在轉(zhuǎn)換期間對(duì)負(fù)載電容器C1充電和放電的電流。

          上升輸出轉(zhuǎn)換期間的短路電流

          在圖2中,我們放大了逆變器電路的中心部分。低至高輸出轉(zhuǎn)變的探針位置由NMOS晶體管(M1)的漏極處的綠點(diǎn)示出。

          綠點(diǎn)表示當(dāng)輸出從邏輯低變?yōu)檫壿嫺邥r(shí),我們測(cè)量擊穿電流的位置。

           2.png

          圖2:綠點(diǎn)表示當(dāng)輸出從邏輯低變?yōu)檫壿嫺邥r(shí),我們測(cè)量擊穿電流的位置。

          在從低輸出到高輸出的轉(zhuǎn)換過(guò)程中,充電電流流動(dòng):

          來(lái)自VDD。

          通過(guò)PMOS晶體管(M2)。

          至負(fù)載電容器(C1)。

          同時(shí),短路電流流動(dòng):

          來(lái)自VDD。

          通過(guò)PMOS晶體管。

          通過(guò)NMOS晶體管。

          接地。

          通過(guò)探測(cè)圖2中綠點(diǎn)標(biāo)記的線段,我們測(cè)量了充電電流轉(zhuǎn)向電容器后流過(guò)兩個(gè)晶體管的電流。結(jié)果如圖3所示。

          在上升輸出轉(zhuǎn)換期間,逆變器擊穿電流。

           3.png

          圖3。在上升輸出轉(zhuǎn)換期間,逆變器擊穿電流。

          當(dāng)輸入為0.9 V時(shí),測(cè)量的電流達(dá)到峰值。在該電壓下,NMOS和PMOS晶體管都處于弱導(dǎo)通狀態(tài)。這允許電流直接從VDD流到地。

          輸出下降過(guò)渡期間的短路電流

          對(duì)于高輸出到低輸出的轉(zhuǎn)換,情況發(fā)生了逆轉(zhuǎn)。放電電流:

          來(lái)自負(fù)載電容器。

          通過(guò)NMOS晶體管(M1)

          接地。

          然而,短路電流的路徑保持不變。它在到達(dá)地面的途中仍然經(jīng)過(guò)M2和M1。因此,我們?cè)诜烹婋娏鲝碾娙萜鞯竭_(dá)的節(jié)點(diǎn)之前探測(cè)PMOS晶體管的漏極處的電流。探頭位置如圖4所示。

          綠點(diǎn)表示當(dāng)輸出從邏輯高變?yōu)檫壿嫷蜁r(shí),我們測(cè)量擊穿電流的位置。

           4.png

          圖4。綠點(diǎn)表示當(dāng)輸出從邏輯高變?yōu)檫壿嫷蜁r(shí),我們測(cè)量擊穿電流的位置。

          圖5顯示了下降輸出轉(zhuǎn)換的LTspice模擬結(jié)果。

          逆變器在下降輸出轉(zhuǎn)換期間通過(guò)電流。

           5.png

          圖5。逆變器在下降輸出轉(zhuǎn)換期間通過(guò)電流。

          同樣,當(dāng)輸入電壓接近其中點(diǎn)0.9V時(shí),電流達(dá)到峰值。該短路電流在流過(guò)NMOS和PMOS電阻時(shí)引起功率耗散。

          測(cè)量瞬時(shí)功耗

          有兩件事使我們無(wú)法輕松地將晶體管電流測(cè)量值轉(zhuǎn)換為功耗的數(shù)字估計(jì)值:

          電流不是通過(guò)固定電阻流動(dòng)的,所以我們不能直接應(yīng)用P=I2R。

          晶體管的漏極到源極電壓不是恒定的,所以我們不能直接應(yīng)用P=IV。

          然而,LTspice并不反對(duì)執(zhí)行必要的計(jì)算。如果您在單擊組件時(shí)按下Alt鍵(Mac電腦上的Cmd),LTspice將繪制該組件的瞬時(shí)功耗。讓我們?cè)囋囘@個(gè)。

          不斷上升的產(chǎn)出轉(zhuǎn)變

          圖6中的紅色軌跡繪制了NMOS在從低到高輸出轉(zhuǎn)換期間消耗的功率。因?yàn)樵谏仙^(guò)渡期間沒(méi)有充電或放電電流流過(guò)NMOS,所以這種功率耗散主要由短路電流引起。

          在低到高輸出轉(zhuǎn)換期間的瞬時(shí)NMOS功率耗散。

           6.png

          圖6。在低到高輸出轉(zhuǎn)換期間的瞬時(shí)NMOS功率耗散。

          相比之下,圖7顯示了PMOS在相同轉(zhuǎn)變過(guò)程中的瞬時(shí)功耗。因?yàn)槌潆婋娏鞔_實(shí)流過(guò)這個(gè)晶體管,所以它的功耗明顯更高。

          在低到高輸出轉(zhuǎn)換期間的瞬時(shí)PMOS功率耗散。

           7.png

          圖7。在低到高輸出轉(zhuǎn)換期間的瞬時(shí)PMOS功率耗散。

          下降的過(guò)渡

          對(duì)于從高到低的輸出轉(zhuǎn)變,電容電流流過(guò)NMOS而不是PMOS。NMOS(圖8)的功耗現(xiàn)在大于PMOS(圖9)的功耗。

          NMOS在高到低輸出轉(zhuǎn)變期間的瞬時(shí)功耗。

           8.png

          圖8。NMOS在高到低輸出轉(zhuǎn)變期間的瞬時(shí)功耗。

          PMOS在高到低輸出轉(zhuǎn)換期間的瞬時(shí)功耗。

           9.png

          圖9。PMOS在高到低輸出轉(zhuǎn)換期間的瞬時(shí)功耗。

          對(duì)于下降過(guò)渡,PMOS是我們想要檢查的組件,以找到逆變器的。

          LTspice是如何獲得這些結(jié)果的?

          LTspice不僅計(jì)算功率,它還通過(guò)跟蹤標(biāo)簽讓我們知道它是如何執(zhí)行計(jì)算的。例如,我們可以看到NMOS(M1)在上升轉(zhuǎn)變期間的功耗等于:

          10.png

          其中Id是晶體管的漏極電流(短路電流),Ig是柵極電流。

          PMOS(M2)在相同轉(zhuǎn)變期間的功耗為:

           11.png

          其中V+是指電源電壓(在我們的原始示意圖中為VDD)。

          在這種特殊情況下,功率耗散幾乎完全是由于漏極電流。然而,兩個(gè)方程中Ig的存在應(yīng)該提醒我們,柵極電流也會(huì)對(duì)總功耗產(chǎn)生影響。

          能量損失和平均功耗

          最終,本文系列中的概念和旨在為分析中的動(dòng)態(tài)功耗提供一個(gè)工具包。本著這種精神,在我們結(jié)束之前,我想再介紹一個(gè)LTspice功能。雖然它不會(huì)幫助我們找到任何關(guān)于短路功率的其他信息,但它與更廣泛的動(dòng)態(tài)功耗主題完全相關(guān)。

          如果我們按住Ctrl鍵并單擊其中一個(gè)瞬時(shí)功率波形的跟蹤標(biāo)簽,LTspice將打開(kāi)一個(gè)光標(biāo)框。此框中標(biāo)記為“積分”的底部字段報(bào)告模擬過(guò)渡過(guò)程中的能量損失量。例如,圖10顯示了NMOS在從低到高輸出轉(zhuǎn)換期間的總能量損失。

          在一個(gè)上升轉(zhuǎn)變過(guò)程中通過(guò)NMOS晶體管損失的能量。

           12.png

          圖10。在一個(gè)上升轉(zhuǎn)變過(guò)程中通過(guò)NMOS晶體管損失的能量。

          圖11顯示了下降躍遷的NMOS總能量損失。

          一次下降躍遷通過(guò)NMOS損失的能量。

           13.png

          圖11。在一次下降過(guò)渡期間通過(guò)NMOS損失的能量。

          一旦我們找到了PMOS的總能量損失(圖12和13),我們就可以估計(jì)逆變器的平均動(dòng)態(tài)功耗。

          在一次上升過(guò)渡期間,通過(guò)PMOS損失的能量。

           14.png

          圖12。在一次上升過(guò)渡期間,通過(guò)PMOS損失的能量。

          在一次下降過(guò)渡期間通過(guò)PMOS損失的能量。

           15.png

          圖13。在一次下降過(guò)渡期間通過(guò)PMOS損失的能量。

          為了便于參考,在表1中再現(xiàn)了能量損失值。請(qǐng)注意右邊的“總計(jì)”列--我們稍后將使用這些數(shù)字。

           16.png

          表1。在一個(gè)上升和一個(gè)下降轉(zhuǎn)變期間晶體管的總能量損失。

          NMOS PMOS總計(jì)(NMOS+PMOS)

          我們現(xiàn)在可以如下估計(jì)逆變器的平均動(dòng)態(tài)功耗:

           17.png

          其中f是每秒的循環(huán)次數(shù)。

          對(duì)于該模擬,我們的PRising=16.2pJ,PFalling=17.4pJ。假設(shè)逆變器的開(kāi)關(guān)頻率為500赫茲?;叵胍幌?,1瓦等于1焦耳每秒(1 W=1 J/s),這給了我們一個(gè)估計(jì)的功耗:

           18.png

          有了這些,您就可以在CMOS反相器中試驗(yàn)減少動(dòng)態(tài)電流和功耗的技術(shù)了。這就結(jié)束了我關(guān)于CMOS反相器功耗的系列,盡管我們將來(lái)可能會(huì)回到這些模擬中。與此同時(shí),我希望你發(fā)現(xiàn)我們的討論對(duì)你有所幫助。




          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();