摘要
數字電源控制器UCD3138 內部集成有 4 個數字比較器,可以靈活配置其輸入端和參考值。模擬前端(AFE)模塊的絕對值量和EADC 的輸出都可以作為數字比較器的輸入,因此使用數字比較器可以實現對系統輸出電壓的故障響應與保護。UCD3138 內部集成有 16 個模數轉換器(ADC),其中名稱為 ADC15 的模數轉換器不對外部開放,可以用來檢測 3 個AFE 模塊中任何一個的 EAP 或 EAN 引腳,實現對系統輸出電壓的精確采集,最終可以實現對輸出電壓的故障響應與保護。
?
1、UCD3138 的數字比較器
UCD3138 內部集成有4數字比較器,可以以AFE 的絕對值量或者誤差值為輸入端,靈活配置參考值,最終實現對系統輸出電壓故障(過壓,欠壓等)的快速響應與保護。
?
1.1 數字比較器的硬件電路簡介
圖 1 所示的是UCD3138 芯片內部模擬前端(Analog Front End,AFE)的框圖。輸出電壓在分壓后以差分信號的方式進入到AFE 模塊,與參考電壓(DAC0 的輸出值)比較后得到誤差信號(模擬量);該誤差信號在模數轉換后變為數字量,然后輸入到數字環路補償模塊(Filter)。
為豐富應用的靈活性,用戶設置的參考值(數字量)與EADC 的輸出值(數字量)相加后生成一個叫做“ 絕對值量(absolute value)” 的數字信號,可以表征實際采集到的電壓信息(即Vd 的值)。
UCD3138 的數字比較器就是以數字誤差信號(B 點值)或絕對值量(C 點值)作為一個輸入端,參考電壓值(用戶可以自行設置)為另一個輸入端所組成,觸發后可以配置其關斷任何一路DPWM。
UCD3138 中有3 個AFE 模塊,同樣地,也有4 個數字比較器。
?
1.2 數字比較器涉及的關鍵寄存器
?
1.2.1 EADC的輸出
EADC 的輸出是參考電壓與輸入模擬量相減后的值在數字化之后的信息量,即數字誤差量,其范圍與AFE 自身的增益有直接關系。例如,當增益值設置為1 時,其輸出范圍是+248~-256;而增益設置為8 時,輸出范圍是+31~-32.
寄存器EADCRAWVALUE 的第0~8 位(共9bit,名稱為RAW_ERROR_VALUE)保存的即為EADC 的輸出,分辨率為1mV/bit。
?
1.2.2 DAC的輸入
DAC 的輸出即為系統的參考電壓。在UCD3138 的實際應用中,用戶可以設置DAC 的輸入值,為數字信號量。寄存器EADCDAC 的第4~13 位(共10bit,名稱為DAC_VALUE)保存了用戶的設置值。分辨率為1.5625mV/bit。
?
1.2.3 絕對值量
寄存器 EADCVALUE 的第16~25 位(共10bit,名稱為ABS_VALUE)保存的就是絕對值量,分辨率為1.5625mV/bit。
上文提到,絕對值量是EADC 的輸出信息與DAC 的輸入信息相加得到的,但并不是二者數字量的直接相加,因為其分辨率不同。事實上,上述三個數字量所各自表征的模擬量存在等式關系。
例如,某條件下,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.
或者,三個數字量可以在增加衰減系數后存在如下等式關系:
?
1.3 數字比較器的軟件配置
在程序初始化階段,可以完成對數字比較器的配置。以配置數字比較器0 為例,主要代碼如下:
FaultMuxRegs.DCOMPCTRL0.bit.CNT_THRESH = 1;
上述代碼配置只需觸發一次數字比較器就會產生一個fault。
FaultMuxRegs.DCOMPCTRL0.bit.FE_SEL = 0;
上述代碼配置數字比較器的輸入為AFE0 的絕對值量。也可以配置為EADC 的輸出。另外,其余兩個AFE 的絕對值量和EADC 的輸出也可以配置為數字比較器0 的輸入。
FaultMuxRegs.DCOMPCTRL0.bit.COMP_POL = 1;
上述代碼配置為數字比較器的輸入高于參考量后才會觸發。
FaultMuxRegs.DCOMPCTRL0.bit.THRESH = 850;
參考量設置為850。如果輸入量選擇為絕對值量,則當Vd 電壓大于850×1.5625mV/bit =1.33V 時便會觸發數字比較器。
FaultMuxRegs.DPWM0FLTABDET.bit.DCOMP0_EN=1;
上面代碼配置為,數字比較器觸發后立即關斷DPWM0A 和DPWM0B。
?
數字電源控制器UCD3138 內部集成有 4 個數字比較器,可以靈活配置其輸入端和參考值。模擬前端(AFE)模塊的絕對值量和EADC 的輸出都可以作為數字比較器的輸入,因此使用數字比較器可以實現對系統輸出電壓的故障響應與保護。UCD3138 內部集成有 16 個模數轉換器(ADC),其中名稱為 ADC15 的模數轉換器不對外部開放,可以用來檢測 3 個AFE 模塊中任何一個的 EAP 或 EAN 引腳,實現對系統輸出電壓的精確采集,最終可以實現對輸出電壓的故障響應與保護。
?
1、UCD3138 的數字比較器
UCD3138 內部集成有4數字比較器,可以以AFE 的絕對值量或者誤差值為輸入端,靈活配置參考值,最終實現對系統輸出電壓故障(過壓,欠壓等)的快速響應與保護。
?
1.1 數字比較器的硬件電路簡介
圖 1 所示的是UCD3138 芯片內部模擬前端(Analog Front End,AFE)的框圖。輸出電壓在分壓后以差分信號的方式進入到AFE 模塊,與參考電壓(DAC0 的輸出值)比較后得到誤差信號(模擬量);該誤差信號在模數轉換后變為數字量,然后輸入到數字環路補償模塊(Filter)。
Figure 1. UCD3138 AFE 模塊框圖
?為豐富應用的靈活性,用戶設置的參考值(數字量)與EADC 的輸出值(數字量)相加后生成一個叫做“ 絕對值量(absolute value)” 的數字信號,可以表征實際采集到的電壓信息(即Vd 的值)。
UCD3138 的數字比較器就是以數字誤差信號(B 點值)或絕對值量(C 點值)作為一個輸入端,參考電壓值(用戶可以自行設置)為另一個輸入端所組成,觸發后可以配置其關斷任何一路DPWM。
UCD3138 中有3 個AFE 模塊,同樣地,也有4 個數字比較器。
?
1.2 數字比較器涉及的關鍵寄存器
?
1.2.1 EADC的輸出
EADC 的輸出是參考電壓與輸入模擬量相減后的值在數字化之后的信息量,即數字誤差量,其范圍與AFE 自身的增益有直接關系。例如,當增益值設置為1 時,其輸出范圍是+248~-256;而增益設置為8 時,輸出范圍是+31~-32.
寄存器EADCRAWVALUE 的第0~8 位(共9bit,名稱為RAW_ERROR_VALUE)保存的即為EADC 的輸出,分辨率為1mV/bit。
?
1.2.2 DAC的輸入
DAC 的輸出即為系統的參考電壓。在UCD3138 的實際應用中,用戶可以設置DAC 的輸入值,為數字信號量。寄存器EADCDAC 的第4~13 位(共10bit,名稱為DAC_VALUE)保存了用戶的設置值。分辨率為1.5625mV/bit。
?
1.2.3 絕對值量
寄存器 EADCVALUE 的第16~25 位(共10bit,名稱為ABS_VALUE)保存的就是絕對值量,分辨率為1.5625mV/bit。
上文提到,絕對值量是EADC 的輸出信息與DAC 的輸入信息相加得到的,但并不是二者數字量的直接相加,因為其分辨率不同。事實上,上述三個數字量所各自表征的模擬量存在等式關系。
例如,某條件下,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.
或者,三個數字量可以在增加衰減系數后存在如下等式關系:
?
1.3 數字比較器的軟件配置
在程序初始化階段,可以完成對數字比較器的配置。以配置數字比較器0 為例,主要代碼如下:
FaultMuxRegs.DCOMPCTRL0.bit.CNT_THRESH = 1;
上述代碼配置只需觸發一次數字比較器就會產生一個fault。
FaultMuxRegs.DCOMPCTRL0.bit.FE_SEL = 0;
上述代碼配置數字比較器的輸入為AFE0 的絕對值量。也可以配置為EADC 的輸出。另外,其余兩個AFE 的絕對值量和EADC 的輸出也可以配置為數字比較器0 的輸入。
FaultMuxRegs.DCOMPCTRL0.bit.COMP_POL = 1;
上述代碼配置為數字比較器的輸入高于參考量后才會觸發。
FaultMuxRegs.DCOMPCTRL0.bit.THRESH = 850;
參考量設置為850。如果輸入量選擇為絕對值量,則當Vd 電壓大于850×1.5625mV/bit =1.33V 時便會觸發數字比較器。
FaultMuxRegs.DPWM0FLTABDET.bit.DCOMP0_EN=1;
上面代碼配置為,數字比較器觸發后立即關斷DPWM0A 和DPWM0B。
?
評論
查看更多