摘要
數(shù)字電源控制器UCD3138 內(nèi)部集成有4 個數(shù)字比較器,,可以靈活配置其輸入端和參考值。模擬前端(AFE)模塊的絕對值量和EADC 的輸出都可以作為數(shù)字比較器的輸入,,因此使用數(shù)字比較器可以實現(xiàn)對系統(tǒng)輸出電壓的故障響應與保護,。UCD3138 內(nèi)部集成有16 個模數(shù)轉換器(ADC),其中名稱為ADC15 的模數(shù)轉換器不對外部開放,,可以用來檢測3 個AFE 模塊中任何一個的EAP 或EAN 引腳,,實現(xiàn)對系統(tǒng)輸出電壓的精確采集,最終可以實現(xiàn)對輸出電壓的故障響應與保護,。
1,、UCD3138 的數(shù)字比較器
UCD3138 內(nèi)部集成有4數(shù)字比較器,可以以AFE 的絕對值量或者誤差值為輸入端,,靈活配置參考值,,最終實現(xiàn)對系統(tǒng)輸出電壓故障(過壓,欠壓等)的快速響應與保護,。
1.1 數(shù)字比較器的硬件電路簡介
圖1 所示的是UCD3138 芯片內(nèi)部模擬前端(Analog Front End,,AFE)的框圖。輸出電壓在分壓后以差分信號的方式進入到AFE 模塊,,與參考電壓(DAC0 的輸出值)比較后得到誤差信號(模擬量),;該誤差信號在模數(shù)轉換后變?yōu)閿?shù)字量,,然后輸入到數(shù)字環(huán)路補償模塊(Filter)。
Figure 1. UCD3138 AFE 模塊框圖
為豐富應用的靈活性,,用戶設置的參考值(數(shù)字量)與EADC 的輸出值(數(shù)字量)相加后生成一個叫做“ 絕對值量(absolute value)” 的數(shù)字信號,,可以表征實際采集到的電壓信息(即Vd 的值)。
UCD3138 的數(shù)字比較器就是以數(shù)字誤差信號(B 點值)或絕對值量(C 點值)作為一個輸入端,,參考電壓值(用戶可以自行設置)為另一個輸入端所組成,,觸發(fā)后可以配置其關斷任何一路DPWM。
UCD3138 中有3 個AFE 模塊,,同樣地,,也有4 個數(shù)字比較器。
1.2 數(shù)字比較器涉及的關鍵寄存器
1.2.1EADC的輸出
EADC 的輸出是參考電壓與輸入模擬量相減后的值在數(shù)字化之后的信息量,,即數(shù)字誤差量,,其范圍與AFE 自身的增益有直接關系。例如,,當增益值設置為1 時,,其輸出范圍是+248~-256;而增益設置為8 時,,輸出范圍是+31~-32.
寄存器EADCRAWVALUE 的第0~8 位(共9bit,,名稱為RAW_ERROR_VALUE)保存的即為EADC 的輸出,分辨率為1mV/bit,。
1.2.2DAC的輸入
DAC 的輸出即為系統(tǒng)的參考電壓,。在UCD3138 的實際應用中,用戶可以設置DAC 的輸入值,,為數(shù)字信號量,。寄存器EADCDAC 的第4~13 位(共10bit,名稱為DAC_VALUE)保存了用戶的設置值,。分辨率為1.5625mV/bit,。
1.2.3絕對值量
寄存器EADCVALUE 的第16~25 位(共10bit,,名稱為ABS_VALUE)保存的就是絕對值量,,分辨率為1.5625mV/bit。
上文提到,,絕對值量是EADC 的輸出信息與DAC 的輸入信息相加得到的,,但并不是二者數(shù)字量的直接相加,因為其分辨率不同,。事實上,,上述三個數(shù)字量所各自表征的模擬量存在等式關系。
例如,,某條件下,,EADC 的輸出(ERROR_VALUE)為192;DAC 的輸入為747;絕對值量(ABS_VALUE)為624,,如下圖2 所示,。
Figure 2. Memory Debugger 中讀取到的寄存器值
顯然,747-624=123≠ 192,。但是,,各自的模擬量則滿足等式關系,如下:
? EADC 的輸出192 對應的模擬量為192×1mV/bit=192mV,;
? DAC 的輸入747 對應的模擬量為747×1.5625mV/bit=1167.1875mV,;
? 絕對值量624 對應的模擬量為624×1.5625mV/bit=975mV;
◎最終,,1167.1875-975=192.1875≈ 192.
或者,,三個數(shù)字量可以在增加衰減系數(shù)后存在如下等式關系:
1.3 數(shù)字比較器的軟件配置
在程序初始化階段,可以完成對數(shù)字比較器的配置,。以配置數(shù)字比較器0 為例,,主要代碼如下:
FaultMuxRegs.DCOMPCTRL0.bit.CNT_THRESH = 1;
上述代碼配置只需觸發(fā)一次數(shù)字比較器就會產(chǎn)生一個fault。
FaultMuxRegs.DCOMPCTRL0.bit.FE_SEL = 0;
上述代碼配置數(shù)字比較器的輸入為AFE0 的絕對值量,。也可以配置為EADC 的輸出,。另外,其余兩個AFE 的絕對值量和EADC 的輸出也可以配置為數(shù)字比較器0 的輸入,。
FaultMuxRegs.DCOMPCTRL0.bit.COMP_POL = 1;
上述代碼配置為數(shù)字比較器的輸入高于參考量后才會觸發(fā),。
FaultMuxRegs.DCOMPCTRL0.bit.THRESH = 850;
參考量設置為850。如果輸入量選擇為絕對值量,,則當Vd 電壓大于850×1.5625mV/bit =1.33V 時便會觸發(fā)數(shù)字比較器,。
FaultMuxRegs.DPWM0FLTABDET.bit.DCOMP0_EN=1;
上面代碼配置為,數(shù)字比較器觸發(fā)后立即關斷DPWM0A 和DPWM0B,。
1.4 數(shù)字比較器的實際應用結果
實際調試時,,圖1 的Vd 處外接一個可調電壓,并由0V 慢慢增大,??梢杂^察到,當電壓超過1.33V 后,,驅動信號便立即被關閉,,符合預期,如下圖3(CH3 為Vd 電壓,,CH2 為DPWM0B),。
Figure 3. 數(shù)字比較器觸發(fā)后關閉DPWM0B
1.5 數(shù)字比較器的實際應用結果
實際應用中需要注意EADC 的飽和問題。
上文1.2 節(jié)提到,,EADC 的輸出有一定的范圍,,當輸入過大或過小時,,EADC 的輸出會固定在其上限或下限,此時便是EADC 處于了飽和狀態(tài),。仍以上面提到的實驗為背景進行說明,,其中AFE的增益設置為1。
當Vd 電壓為554mV 時,,絕對值量預計為355(因為554/1.5625≈ 355),,EADC 的輸出預計為613(參考1.2 節(jié)最后的等式)。而實際讀取發(fā)現(xiàn),,絕對值量為588,,EADC 的輸出為248,這與設想完全不同,。分析原因可知,,此時EADC 已經(jīng)處于了正向飽和,輸出的上限為248,。
Figure 4. EADC 正向飽和
同樣地,,當Vd 電壓為1.64V 時,絕對值量預計為1050(因為1640/1.5625≈ 1050),,EADC 的輸出預計為-473(參考1.2 節(jié)最后的等式),。而實際讀取發(fā)現(xiàn),絕對值量為911,,EADC 的輸出為-256,,這與設想也是完全不同。分析原因亦可知,,此時EADC 已經(jīng)處于負向飽和,,輸出的下限為-256。
Figure 5. EADC 負向飽和
綜合上面分析可知,,在DAC 的值固定后,,絕對值量存在一個范圍,該范圍與AFE 的增益有直接關系,,如下表所示,。
Table 1. 絕對值量范圍和AFE 增益的關系
可以觀察到,如果AFE 的增益設置為8,,DAC 的值為747 時,,絕對值的范圍是727~767,。此時,,如果計劃讓數(shù)字比較器在Vd 為1.33V 時觸發(fā),則其參考值需要設置為850,。然而,,數(shù)字比較器的另一端(輸入為絕對值)最大僅為767,,因此數(shù)字比較器將沒有機會被觸發(fā)。
實際應用中,,設置數(shù)字比較器的參考值時需要考慮AFE 的增益,,以防止因EADC 提前飽和導致其輸出被鉗制而無法觸發(fā)數(shù)字比較器。
2,、UCD3138 的內(nèi)部模數(shù)轉換器ADC15
UCD3138 芯片內(nèi)部共有16 個模數(shù)轉換器,,其中ADC15 可以在芯片內(nèi)部連接到AFE 模塊的EAP或EAN 引腳。實際應用中,,ADC15 可以用來檢測系統(tǒng)的反饋電壓,,在軟件中可以還原出實際的輸出電壓。
2.1 ADC15 的配置
UCD3138 芯片內(nèi)部的ADC15 可以連接到任意一個AFE 模塊的EAP 或EAN 引腳,,完成模擬信號的數(shù)字化,。在應用時,與其它ADC 的配置方式非常相似,,唯一的差別是需要配置ADC15 到指定的AFE,。
下面三行代碼是完成ADC15 與AFE 的關聯(lián)。其中,,AFE_MUX_CH_SEL 為1 是指ADC15 連接到AFE0,;AFE_VIN_MUX 為0 是指ADC15 連接到EAP 引腳。
MiscAnalogRegs.AFECTRL.bit.AFE_MUX_SEL=3;
MiscAnalogRegs.AFECTRL.bit.AFE_VIN_MUX=0;
MiscAnalogRegs.AFECTRL.bit.AFE_MUX_CH_SEL=1;
綜合上述配置,,ADC15 是連接到了AFE0 的EAP 引腳,,即可以檢測圖1 中的Vd 電壓。
2.2 實驗結果
如圖4,,當Vd 為554mV 時,,ADC15 的結果(adc_values.Vout)為902。二者近似符合下面的等式:
如圖5,,當Vd 為1.64V 時,,ADC15 的結果(adc_values.Vout)為2681。二者近似符合下面的等式:
上述物理值與數(shù)字量之間的差別,,主要是測量誤差導致,。
3、UCD3138 的內(nèi)部模數(shù)轉換器ADC15
UCD3138 芯片內(nèi)部的數(shù)字比較器和模數(shù)轉換器ADC15 都可以用來處理與輸出電壓相關的工作,。
其中,,數(shù)字比較器配置之后可以實現(xiàn)對輸出電壓過壓或欠壓等的快速響應與保護;ADC15 配置之后可以精確的采集輸出電壓信息,,然后借助軟件設計同樣可以實現(xiàn)對輸出電壓的故障保護,。
4、參考文獻
1. UCD3138 datasheet, Texas Instruments Inc.
2. UCD31xx Fusion Digital Power Peripherals Programmer’s Manual, Texas Instruments Inc.
3. UCD31xx Miscellaneous Analog Control _MAC_, Texas Instruments Inc.