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

          新聞中心

          EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > 電源時序管理和電源電壓監(jiān)控管理芯片

          電源時序管理和電源電壓監(jiān)控管理芯片

          作者: 時間:2005-07-27 來源:網(wǎng)絡(luò) 收藏

          作者Email: cherh@dragonhk.com

          摘要:本文介紹了一種新的用于控制的可編程??稍趩蝹€上實現(xiàn)多的控制和功能,并且所有的控制結(jié)果可以立即的仿真出來,要更改設(shè)計時,只要對器件的E2CMOS(r) 配置內(nèi)存重新編程就可以了。

          關(guān)鍵詞:控制;場效應(yīng)功率管;可編程邏輯器件;內(nèi)部振蕩器

          前言

          目前控制電源和監(jiān)測方案大都是:電阻或電容等分離器件搭起來實現(xiàn)控制的,如A,B兩種,要求A先上電,然后B上電。則使用A處理好的作為B的電荷泵的激勵源,這樣的兩路還較容易實現(xiàn)控制,但精確性已經(jīng)不足;兩路以上的話PCB畫起來就不十分簡潔了,若再精確的延時控制就需要加上電容實現(xiàn);更加精確的延時控制還需要通過CPLD計時來實現(xiàn),但這都建立在主控正常穩(wěn)定的基礎(chǔ)下。偌主控電壓稍不正常,種種電壓引起的問題依然會出現(xiàn)。

          一些簡單的控制也可以用復(fù)位組成,但當(dāng)要求的控制電源較多時,比較繁瑣,而且靈活性不強,電源控制部分稍作改動,就需要重新改板。要實現(xiàn)監(jiān)測保護功能的話,還需要再加監(jiān)測芯片。復(fù)雜的上電順序,可用單片機調(diào)試來實現(xiàn)的,這就需要我們了解單片機的寄存器結(jié)構(gòu)使用等等,需要調(diào)試。在自身供電電壓上,很多單片機都要求比較嚴(yán)格,大致為3.3V和5V,正負10%的偏差,沒有一般專用時序電路那樣范圍大,如POWERPAC,為2.25V到5.5V。另外在控制外圍NMOS時,需要外加MOS驅(qū)動。在市場上也有一些時序控制芯片,可以控制多路電源,內(nèi)置電荷泵,可以開啟外圍的NMOS,時序間隔采用外圍阻容來調(diào)節(jié),但一般沒有監(jiān)測保護功能,且定時不太精確。

          Powepac是業(yè)界第一片混合信號可編程邏輯器件(PLD),它內(nèi)含在系統(tǒng)可編程的模擬和邏輯組塊,能提供經(jīng)過優(yōu)化的電源功能,這一功能對如今的多電源電子系統(tǒng)是至關(guān)重要的。而且芯片自身對電壓供給要求非常低,2.25V至5V該芯片都可以穩(wěn)定正常的工作,從而保證了整個板子對供電穩(wěn)定性的高冗余度。該器件集成了可編程邏輯、電壓比較器、參考電壓及高電壓的場效應(yīng)管驅(qū)動器,支持單芯片可編程供電定序與,為總值達到 120 億美元的電源半導(dǎo)體市場奉獻了獨特的可編程控制方案。POWERPAC是目前業(yè)績比較新、由Lattice公司推出的電源時序控制和電壓保護監(jiān)測等功能集于一身的芯片。

          2 POWERPAC的構(gòu)成

          POWERPAC是由模擬輸入、數(shù)字輸入、時序控制的 PLD、時鐘和定時器、模擬比較器輸出、控制高壓輸出、邏輯輸出共七部分組成(圖一)。

          模擬輸入用于各路電壓的檢測,為內(nèi)置基準(zhǔn)的比較器提供輸入,內(nèi)置電壓基準(zhǔn)可編程為1.03V到5.72V范圍 內(nèi)192個等級上的任一電壓;時鐘和定時器電路為內(nèi)部數(shù)字電路提供時鐘基準(zhǔn),以及產(chǎn)生四個可編程的定時器,250 kHz 的內(nèi)部振蕩器在芯片產(chǎn)生時鐘(另外也可以根據(jù)需要由外部引入時鐘),可編程定時器的定時在32μs 到 512ms之間靈活編程控制;

          控制高壓輸出和邏輯輸出用于控制開啟MOS開關(guān)和DC/DC模塊等,特別說明的是:控制高壓輸出可以配置成高壓輸出,利用內(nèi)部的電荷泵,產(chǎn)生高達12V的電壓,用于控制作為開關(guān)的小導(dǎo)通電阻NMOS;開啟MOS開關(guān)過程長短可以編程,工程師可以根據(jù)使用現(xiàn)場靈活控制,開關(guān)減少開啟時對電源系統(tǒng)的沖擊,以保證電源系統(tǒng)的穩(wěn)定。另外高壓輸出端也可以配置為和邏輯輸出一樣的OC門輸出,用于邏輯控制。

          圖2

          比較器輸出和數(shù)字輸入可和板上的相關(guān)外圍電路結(jié)合起來,完成用戶設(shè)計的一些特定功能。時序控制PLD是POWERPAC的主控部分,利用各種輸入的檢測,根據(jù)用戶的控制程序,利用高壓輸出和邏輯輸出來控制時序和實現(xiàn)保護,圖2示出一款POWERPAC1208的詳細結(jié)構(gòu)框圖。

          Lattice公司免費提供基于PC機的設(shè)計工具―― PAC-Designer,具有功能強大、簡單易用的特點,幫助您設(shè)計、綜合仿真和燒寫電路板上的電源電路。當(dāng)你仿真完成后,通過POWERPAC的JTAG口下載到器件中的E2COMS中,實現(xiàn)了 JTAG 在系統(tǒng)可編程能力 ,靈活、有效地跟蹤電源。

          3 POWERPAC在單板上的應(yīng)用

          該應(yīng)用是介紹Powerpac在RPR板上的應(yīng)用,該板共要求有3.3V、2.5V、1.8V、1.5V、1.3V六種直流電壓,另外還有兩種用于QDR和DDR的總線匹配電壓0.75V和1.25V,分別要求跟蹤QDR和DDR的IO供電電壓1.5V和2.5V。各電壓要求直接或間接從48V輸入變換得到。

          本板上需要控制電源的主要芯片為:網(wǎng)絡(luò)處理器(NPU)、QDR、DDR。各芯片要求上電順序如下;

          為滿足上電順序及電源保護的要求,還有整個板上電源的有效,采用了Lattice公司的電源控制專用芯片ispPAC_POWR1208來控制。由于本板上的電源較多,功率較大的特點,故在設(shè)計時采用隔離電源模塊先得到3.3V和2.5V的直流輸出,然后按特點采用非隔離模塊、LDO以及電源芯片產(chǎn)生所需電壓。

          具體見圖3單板電源時序和監(jiān)控管理框圖。

          圖3

          從單板實現(xiàn)的框圖中,可以看到我們利用POWERPAC1208,將48V輸入DC/DC模塊輸出3.3V和2.5V通過高壓直接驅(qū)動NMOS作為開關(guān),來進行時序控制,LDO和非隔離DC/DC模塊則通過邏輯輸出控制其開啟腳,來達到綜合此單板器件所需要的電源1.3V、3.3V、1.8V、1.5V、2.5V的先后時序,另外總線終端(BUS TERNIMAL)則采用專用終端芯片,使1.25V和0.75跟隨相應(yīng)的2.5V和1.5V。

          時序中的時間間隔設(shè)計見后面介紹的程序,可以用POWERPAC提供的四個定時器來定時,也可以用檢測某一電壓開通之后作為條件,再開通另一電壓的方法實現(xiàn)。

          另POWERPAC還提供電壓監(jiān)測保護的功能,當(dāng)檢測到有電壓超過相應(yīng)的預(yù)先設(shè)定的閥值時,立即產(chǎn)生一個中斷的動作,完成用戶指定的中斷操作,實現(xiàn)保護功能。這里設(shè)定得閾值基準(zhǔn)可編程為1.03V到5.72V范圍 內(nèi)192個等級上的任一電壓,擁有1%的標(biāo)準(zhǔn)電壓閾值可調(diào)度。在我們的設(shè)計里,當(dāng)3.3V電壓大于3.4V(3.3+3.3*5%=3.458V)或者2.5V大于2.6V(2.5V+2.5V*5%=2.622V)時,產(chǎn)生中斷,切斷電源,實現(xiàn)保護。

          4 POWERPAC的編程及配置

          POWERPAC的編程和配置,利用Lattice公司免費提供基于PC機的設(shè)計工具―― PAC-Designer,簡單易用。先可以寫出需要控制的偽代碼,然后利用PAC-Designer設(shè)計出代碼。仿真無錯后,下載于器件中。我們利POWERPAC1208控制時序的偽代碼如圖4。

          其中等待時間如圖5 ,t1,t2,t3,t4,t5,t6 為Powerpac1208內(nèi)部的250 kHz 的內(nèi)部振蕩器在芯片產(chǎn)生時鐘, 產(chǎn)生四個可編程的定時器:Timer1--16.38ms ; Timer2-2.048ms ; Timer3-2.048ms ; Timer1-262.1ms 來實現(xiàn)的.如果有些設(shè)計需要的定時器時間超過了512ms,那么就可以雙擊圖5中的開關(guān),把開關(guān)配置在外部的時鐘上,靈活實現(xiàn)各種時延要求。

          圖5

          利用POWERPAC的開發(fā)工具PAC-Designer可以將偽代碼設(shè)計成工程正式代碼,編譯仿真后可寫于器件中。本板開發(fā)代碼的界面如下圖6。

          圖6

          通過圖6,我們可以看到整個控制實現(xiàn)的配置過程:

          Step0 :Begin Startup Sequence 是每個設(shè)計都需要的一句開始語,告訴我們的軟件設(shè)計開始了,是ispPAC-POWER1208復(fù)位指示.

          Step1 :FET_Driver_3V3=0, FET_Driver_2V5=0,LDO1V8_En=0,Brick1V5_En=0,B… 是表示關(guān)閉3.3V和2.5V的FET驅(qū)動,關(guān)閉1.8V和1.5V的LDO導(dǎo)通信號。至于FET_Driver_3V3,F(xiàn)ET_Driver_2V5,LDO1V8_En,Brick1V5_En等都是我們在軟件中自己給信號起的名字。

          Step2:一個條件D>等3.3V和2.5V信號都為高電平以后。

          Step3:一個條件->滿足Step2的條件以后,等待一個16.38ms的時間(16.38ms是用的計時器Timer2)。

          Step4: 執(zhí)行一個結(jié)果了,在滿足Step3以后,把Brick1V3_En的信號拉高,實現(xiàn)了輸出1.3V的允許,就把單板的1.3V的電壓打開了。

          Step5:一個條件D>等輸入1.3V為高電平以后。

          Step6:一個條件->滿足Step5的條件以后,等待一個2.048ms的時間(2.048ms是用的計時器Timer1)。

          Step7:執(zhí)行一個結(jié)果了,在滿足Step6以后,把FET_Drive_3.3V的信號拉高,實現(xiàn)了輸出打開3.3VFET的允許,就把單板的3.3VFET MOS管開始打開了。至于打開FET的導(dǎo)通斜率,在圖7 中有闡述。

          以后Step8,Step9,Step10,Step11……意思相同,這里就不一一解釋了。

          圖7

          在圖7中,可以通過調(diào)節(jié)Charge Pump Output 的Voltage 和Source 值來,控制FET導(dǎo)通時的斜率。從圖中我們可以看到,如果這四個控制輸出不用作FET的導(dǎo)通,可以把它們配置成Open Drain Logic Output ,即可用作為一般的控制LDO,DC/DC…的控制導(dǎo)通信號。

          5 使用POWERPAC電源控制結(jié)論

          現(xiàn)在采用在線可編程數(shù)字邏輯和在線可編程模擬電路實現(xiàn)電源時序控制和電壓監(jiān)測和保護功能。無需使用較多的比較器、電阻、電容、定時器和邏輯,就在單個芯片上實現(xiàn)完全的電源定序和監(jiān)控功能!并且所有的控制結(jié)果都可以立即的仿真出來,ispPAC 電源管理器件就能為您做到這些。要更改設(shè)計時,只要對器件的E2CMOS(r) 配置內(nèi)存重新編程就可以了。使用下來最大的感受就是:簡單、方便、可靠、準(zhǔn)確。



          評論


          相關(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); })();