在通訊電源領域,有很多開發(fā)者需要采用峰值電流控制。在最新一代的C2000中,比如F28004X和F28002X(本文的討論都是基于這兩個系列的芯片),可以利用C2000內部的CMPSS 模塊對電感電流進行比較,產生比較信號后,通過PWM的T1或T2事件去控制PWM的發(fā)波。
但是,Digital compare 模塊和Trip zone 模塊緊緊耦合在一起,所以開發(fā)者稍不留神,就會出現預料之外的現象。這里,以同步boost 電路為例,分析一下異常情況的原因和解決辦法。
每個Digital compare模塊能夠根據你選則的輸入信號,滿足低或高時,產生總共4個比較事件,即DCAEVT1/2和DCBEVT1/2。然后去做一些事情,比如,產生PWM保護,同步其他PWM,或者是去觸發(fā)ADC采樣。另外,也可以將這個信號可以送入T1和T2事件,去做PWM的動作。
圖1 PWM 子模塊關系圖
圖2為PWM保護模塊邏輯信號, 從圖中可以清楚地知道,DCAEVT1/DCBEVT1只能用于ONE SHOT保護,DCAEVT2/DCBEVT2只能用于CBC保護。
圖2 PWM保護模塊邏輯信號
同時,由Digital Compare模塊生成的DCAEVT1/2和DCBEVT1/2有兩個路徑可以作用到TZ:
一個是通過TZSEL 寄存器,選擇為TZA 和TZB的輸入源,即合上圖2 左側是選通開關;
另外就是在圖2右側,force和DCAEVT2.force會直接作用到PWMxA,類似的,DCBEVT1.force和DCBEVT2.force會直接作用到PWMxB。如figure 18-135所描述。
注:第一種方式,通過TZA 和TZB 的信號是有鎖存器的,即會有CBC 或是OST的保護,而這里,TZCTL的DCAEVT1/2和DCBEVT1/2復位值為高阻態(tài),這樣如果外圍電路有下拉,對應的動作會是拉低。第二種方式,DCAEVT1.force和DCAEVT2.force直接作用到PWMxA是沒有鎖存器的,所以在一個PWM周期內,如果相應的信號消失后,PWMxA就會立刻恢復。
在同步boost 電路的設計中,開發(fā)者用PWM1A/ PWM1B 兩個通道做Boost的主管和同步整流管的驅動。選擇峰值電流控制,并將比較信號通過C2000內部的XBar給到DCBEVT2 產生T1動作,PWM的生成情況如圖3所示(為了簡化,圖3沒有加入死區(qū)),其中,PWM1B的波形為PWM1A的反轉波形。這個時候,開發(fā)者并沒有去修改TZCTL寄存器的值,即默認值高阻態(tài)。如table 18-66所描述。
圖3 同步boost PWM 發(fā)波邏輯
那么,當輸入電壓和輸出電壓非常接近的時候,這時,主管的占空比應該非常小,而同步整流管的占空比應該非常大。但是,實際上,從圖4 同步boost在輸入電壓近似于輸出電壓時發(fā)波異常的波形圖中可以看出,PWM1B的波形并不是PWM1A 的反轉。原因在于,由于DCBEVT2.force 的作用(程序設定高有效)會強制PWM1B 為高阻,而PWM1B管腳在硬件上有下拉電阻,從而拉低了PWM1B ,直到DCBEVT2.force消失。
這邊,需要注意,當DCAEVT1/2和DCBEVT1/2 做T1 和T2事件去動作PWM, 同時,沒有禁掉DCAEVT1/2和DCBEVT1/2的Trip 功能時,如果T1 和T2事件與trip的動作是矛盾的,以trip 的動作為準。而DCBEVT2只會影響PWM1B,不會影響PWM1A。
所以,我們重新配置軟件,把相應的TZCTL寄存器中的DCBEVT2的值改為11,即讓DCBEVT2不產生保護作用。就可以解決波形異常的問題。
圖4 同步boost在輸入電壓近似于輸出電壓時發(fā)波異常
審核編輯:郭婷
-
電源
+關注
關注
184文章
17809瀏覽量
251087 -
寄存器
+關注
關注
31文章
5359瀏覽量
120827 -
PWM
+關注
關注
114文章
5196瀏覽量
214398
發(fā)布評論請先 登錄
相關推薦
評論