Nonlinear Buck Converter Controller For Fast Transient

by allenlu2007


Ref1: TI AP note

Ref2: E.D, Meyer PhD thesis, “New Technologies to Improve the Transient Response of Back Converter”

Ref3: Another paper talking about sliding mode controller?

Synchronous and Asynchronous Converter 以及 ZCD (zero current detection)

Synchronous (下圖左) and asynchronous (下圖右) converter difference:  diode (asyn.) 和 switch (syn.) 的差別在當 operate 在 DCM (discontinuous current mode) 時:

Synchronous converter 需要 ZCD (detect zero current and reverse current to open the diode equivalent switch).  Asynchronous converter 完全不需要考慮 reverse current.  同時在 ZCD 時兩個 switches 都要 open. 而不是 one open one short.   

Boost does NOT have reverse current (no ZCD required?) Wrong!!!!


Synchronous 需要 ZCD 避免 reverse current

Asynchronous 不需要 ZCD 因為 diode does it

不論 buck or boost synchronous converter 都需要 ZCD 以免 reverse current 出現浪費 efficiency.  Boost 的問題應該更嚴重,因為 Vout > Vin, 比較有可能產生大的 reverse current 同時升壓可能有問題。  

Buck converter 如果有 reverse current 主要會影響 conversion efficiency 問題。

Boost converter 如果有 reverse current 則可能有升壓的問題再加上 conversion efficiency 問題。




Synchronous/Asynchronous Buck Converter; Linear/Nonlinear Controller

上圖左是 synchronous buck converter; 右是 asynchronous buck convert.  下圖是 synchronous buck converter 加上 hysteresis nonlinear feedback controller. (Q2 如果換成 diode 為 asynchronous buck converter).  Lo and Co 為儲能 devices. 因此為二階系統,相當 double integrator system.  其他的 parasitic 如 RL, ESR (or ESL in some cases), 再加上 loading 讓整個 system 變更複雜。這是常見的情況。

Buck controller 就是紅色的部份,最後通過 driver control Q1 and Q2.  Q1 和 Q2 基本上反相,只留一點 guard time 避免 Vin short through.  (例外是當操作在 DCM 時 ZCD 偵測到 zero current 時, Q1 Q2 都 open).  Switching regulator (e.g. buck converter) 基本上只有兩種 state, 類似 bang-bang controller.  

Controller 可以是類比或是數位。本文討論如何設計 optimal controller (shortest time or fast transient).  圖中的 hysteretic controller 算是最簡單的 controller.  如果 Vo > Vref,  Q1 open and Q2 short 以降壓。如果 Vo < Vref, Q1 short and Q2 open 以升壓。Controller 需要加上 hysteresis 避免 Q1 (and Q2) 持續 on and off vibration.


幾個 controller 設計的基本重點:

1. Feedback control 需要 error signal.  最簡單的 error = voltage error = Ve = Vo-Vref 如上圖, 就是0階 error

2. Assuming ESR/ESL is small,  Qc = Co Vo    ic = Co dVo/dt = Co dVe/dt  就是1階 error

   如何 sense ic?  一個方法是量 ESR 的電壓。但 ESR 太小,會受 noise 以及 ESL 的干擾。若 ESR 太大,ic 就不會等於 dVe/dt.  同時也會增加 Ve. 

  根據 KCL   iL = ic + iload.     IL(平均) = Iload (平均)   Ic(平均) = 0 (因為 capacitor) 

  假設 iload 維持不變或很慢 (relative to switching frequency),   d iL/dt = d ic/dt ~ d^2 ve/dt^2.  就是二階 error.

    phi = L iL   d phi/dt = VL = L diL/dt    iL 是連續, 但 diL/dt = Vphase – Vo  所以 sense Vphase 有助於2階 error.  可是 Vphase 就是由 switch 決定 (either Vin or 0)?  後文有 math derivation.  Vphase 可視為  control term 而非 error term.


Error Term Measurement
0th order error Vo-Vref
1st order error ic or Vesr
2nd order error Vphase


上圖的 nonlinear 非定頻 buck controller,  一般在特殊情況才使用 (light load, or fast transient, etc.).

大多數 buck controller 是定頻 PWM controller (linear controller,  PWM on duty proportional to error 大小) 


* Fast settling if designed correctly (finite time to steady state instead of asympototic exponential converge)

* May have higher efficiency at light load using lower switching frequency (like PFM mode)

* May be easy to implement


* Difficult to analyze, lack of tool

* May be unstable if operating in undesired or unexpected conditions

* Not well defined (or bad) settling behavior 

* Worse settling error compared with linear controller

* Variable switching frequency


Linear 定頻 Controller

常見的 buck controller, not surprising, 還是 linear controller 為主如下圖 (output 接回上圖的 Driver)。也稱為  PWM controller.  特性為定頻,duty cycle 會隨 error 大小 (r*Vo – Vref) 有線性的關係。


* Linear is easy to analyze and stability is well understood (Bode plot, PM, etc.)

* Well defined settling behavior and steady state error 


* Slow because of linear settling behavior

* Implementation may be complicated (compared with nonlinear controller)


Z1 and Z2 包含不同的 pole and zero combination.  最常見的有兩種: type-II (2 poles and 1 zero); and type-III (3 poles and 2 zeros) 如下:


同樣在 TI AP note 也用 type-III compensator.  TI AP note 解釋 Bode plot and phase margin, 包含 transfer function 很詳細,在此不重覆。



 我們更有興趣是 time domain transient behavior.

下圖是 linear feedback controller 時 load current 突然增加的 transient behavior. 

因為 PWM controller 必須等到下一個 ramp 的 rising phase 才開始反應。同時經過 filter finite bandwidth (3 poles and 2 zeros) 造成的 Vcon smoothing and delay.  一般 filter bandwidth 只有 switching frequency 的部分 (fraction) 以避免 stability problem, 就像在 PLL 一樣。

因此 load current 要幾個 cycles 之後才會反應上去。此時由於 capacitor 的 discharge 會讓 output voltage 產生 dip, 最後電壓會 settling 到原來的電壓 (underdamp, over damp, or critical damp system).  在有 noise 或 imperfection 時也許會更久。

一個解法就是讓 switching frequency 增加 (No Good)

不過會造成 switching loss, gate loss, inductor coil loss 增加以致於降低 efficiency.

理想上最好是 comparator 一偵測到 voltage drop 就立刻反應 (如 ideal inductor current path)。這就是 nonlinear controller 的好處。



另一招就是換 linear current mode control

因為用 inductor current + output voltage (i.e. e and e_dot or e_int?) 來 drive controller 會比 voltage (e only) 來的快。有兩種 current 模式 (i) peak current detection; (ii) average current detection.


雖然 linear current mode controller 比 voltage mode controller 在 input voltage 改變時更快反應。但對於前述的 synchronous switching 和 finite filter bandwidth 仍無解。


如果用 phase plane 來看,linear voltage or current controller 的 settling behavior 最後可化簡為 exponential asymptote (1st order system) or spiral circle (2nd order system).  3 階以上 settling 基本上最後也變成 1st or 2nd order system.  共同的特性就是收歛慢。但 settling error 也是 exponential bound (better than Liapnov bound)


下圖為接近 critical damped 的 2nd order controller (PD controller) 的 phase diagram.  愈接近 origin 速度就愈慢 (exponential approach 但永遠達不到!!!)



Nonlinear (非定頻 another asynchronous) Controller

另外的解法就是 turn on Q1 immediately (and stay for some time) after comparator detect the load current change.  這可稱為非定頻 asynchronous (和最前面用 diode 的 asynchronous buck converter 不同) controller.

基本上有四類 nonlinear controller: (1) hysteretic voltage mode controller; (ii) V2 controller; (iii) hysteretic current mode controller; and (iv) sliding mode/boundary controller (SMC). 

先看最簡單的 hysteretic voltage mode controller 如下圖


Hysteretic voltage-mode controller 應該是最直覺以及簡單的 controller.  只要 Vo > Vref, Q1 open and Q2 short; Vo < Vref, Q1 short and Q2 open.  工作原理和 thermostat (空調控制) 基本相同。

為了避免持續的 on and off, 必須加上 hysteresis 在 comparator.  Hysteresis 有兩種: (i) voltage hysteresis, 就像 Schmitt trigger 有 Vref1 and Vref, Vhys=Vref1-Vref2.  Vo rises and falls 對應不同的 Vref;  (ii) time hysteresis.  以上圖為例,就讓 Q1 short, Q2 open 的時間有 minimal duration, Tdel_hys.  

在 steady state 的 switching frequency:


Hysteretic voltage mode controller 最大的好處是反應快,但有幾個問題:

(i) steady state Vo 會有 error (due to Vhys and ESR)

(ii) switching frequency 非固定, 隨著 Vin, Vo, ESR, ESL, hysteresis 而變化。也隨時間和溫度變化。對於 EMI/EMC 以及 buck converter 的一些需求, e.g. stability, efficiency, external component.  

(iii) 另一個問題是需要 low ESR capacitor to get better switching frequency.  不過會造成其他 implementation 的問題。

(iv) 即使以上的問題都解決,hysteretic voltage mode controller 的 transient behavior 實在不太好如下圖。

在 load current 突然增加時。inductor current and Vout 雖然反應快 (<10us), 但明顯過頭了,造成 Vout 類似 oscillation 的行為。


The POOR transient response is caused by the phase difference between the output voltage and the capacitor current.  

但在 capacitor LOW ESR 的情況下,controller tend to over-compensate (less stable), 就會有上圖行為。

在 High ESR 的情況下,Vout and capacitor current relative in phase.  就不會有上述情形。

但在 High ESR load current 抽拉時,會造成 Vout 的 ripple 而影響供電的品質。  



V2 controller 如下圖

V2 controller 並不是 hysteretic controller 因為不包含 hysteresis comparator.

但工作原理類似 hysteretic controller.  主要的優點是反應快,同時很簡單。是利用 Vo 的 ripple (一定需要)以及 filter 過後的 version 來比較。Vo ripple 必須主要包含 capacitor ESR effect (意即 ic).  如果 ic 突然變小 (被 load current 突然抽走)。Then Q1 short and Q2 open.  如果 ic 突然變大, Q1 open and Q2 short. 

所以 V2 controller 的問題和 hysteretic controller 類似:

(i) steady state Vo 會有 error (due to controller intrinsic 需要 for control)

(ii) switching frequency 非固定, 隨著 Vin, Vo, ESR, ESL 而變化。也隨時間和溫度變化。對於 EMI/EMC 以及 buck converter 的一些需求, e.g. stability, efficiency, external component.  

(iii) 需要 high ESR for robust control, 但會造成 output ripple when load current changes.

(iv) V2 controller 的 transient behavior 比 hysteretic voltage mode controller 好。

這是陳科宏和學生在 COT (constant on time) 解決的問題 (用 low ESR 但其他方式 compenstation 維持 stability and low ripple, 同時定頻).   COT 是 V2 controller or hysteretic voltage controller?


V2 controller 應該需要 ic?  based on the above description.  這樣就和 1st order sliding mode controller (SMC) 如下非常相似? or 相同?

Hysteretic Current Mode Controller 如下圖

Current mode 則多了 inductor current + output voltage feedback 如下圖。Inductor current 可由 (Vphase-Vo) 的積分得到。好處是不需要 capacitor current or high ESR.


(i) steady state Vo 會有 error (due to Vhys and ESR)

(ii) switching frequency 非固定, 隨著 Vin, Vo, ESR, ESL, hysteresis 而變化。也隨時間和溫度變化。對於 EMI/EMC 以及 buck converter 的一些需求, e.g. stability, efficiency, external component.  



如果有 load current 時,equivalent DC gain 會掉到 30-40dB (10A-5A load current), 進一步造成 Vo error. 參數 如下述。




Sliding Mode Controller 如下圖

Sliding-mode control is a particularly robust non-linear control that can be applied to Buck converters. The general concept is relatively simple. For a Buck converter, the voltage error and the derivative of the voltage error are continuously observed. Assuming an arbitrary starting point for each variable, it is the goal to drive the variables to a steady-state, centered at zero. The phase trajectory of the voltage error and its derivative are plotted in Figure 2.10. 

下圖是 sliding mode controller 的 phase diagram.  Sliding line boundary 是 1st order boundary (直線).

在 phase trajectory (e and e_dot) 跨越 sliding line 時,switch (or driver) status 跟著 turn on or off.   

Sliding mode controller (SMC) 的特性 (見 Wiki sliding mode controller):

1. Switch on and off 只由跨越 sliding line 決定,on duration 由下圖的 system dynamic 決定。下圖看起來和 error 大小 (e and e_dot) 無關。因此是非線性,非定頻,非連續的 feedback controller. 

2. Phase plane trajectory 可看出是 zig-zag follows sliding line.  可以在 finite time reach origin, 比 exponential settling 快的多。

3. SMC controller 的 strength 是 robust, 對於 parameter variations 不敏感。

4. Under certain common conditions, optimality requires the use of bang–bang control; hence, sliding mode control, SMC describes the optimal controller for a broad set of dynamic systems.

5. 仍需要 hysteresis 避免 on-off vibration or finite switching frequency? yes.  



上圖是 1st order sliding line (或稱為 switching/boundary surface).  如何取 1st order sliding line 的斜率?  如果slope 太小,收歙速度非常慢 (大 e 小 e_dot).  反過來 (小 e 大 e_dot) 可能會有 settling problem, such as overshoot?  Slope 愈大但不能造成 overshoot, 一般會選 斜率 = 1/RC? 見 Meyer’s thesis reference.

實務上 RC constant 會隨 loading 而改變,很少會 fix 在固定值。所以也有用 adaptive 方式根據 loading 改變斜率。不過用類比 adaptive 的方式是相當困難。可能還是要用 digital adaptive controller. 

另一個 point 是 buck converter 本身是 non-linear nature.  實務上用 curved switching surface 比起 linear switching line 更適合。Analog block 示意如下 (用 analog 方式實踐 multiplication 不容易)。


下圖是 2nd order sliding line 的可能 implementation (不實用因為 (1) multiplication; (2) k1 and k2 需要知道 Lo and Co).   0st order error (e) 是 (Vo-Vref), 1st order error (e_dot) 是 ic.  下圖定義的 sliding line 是 function of e, and (e_dot^2, k1*e_dot, k2).


最後, sliding mode controller (SMC) 就和之前的 Hysteretic controller 有相同的問題:

(1) Non-zero steady state error;

(2) Variable switching frequency (非定頻)


總結 Non-linear controller

需要不同的 error term 如下表。只有 Vo-Vref 的效果最簡單,但反應慢且 error 大 (如 hysteretic voltage controller and V2 controller).   如果加上 ic (or Vesr) 反應變快且 error 變小 (如 SMC).  

Error Term Measurement
0th order error Vo-Vref
1st order error ic or Vesr
2nd order error Vphase

 除了 error term 之外,需要 comparator (加上 voltage and/or time hysteresis!!)

Nonlinear controller 的最大好處: 反應快。在 light load 時效率可以比較高 (lower switching frequency).

Nonlinear controller 的最大兩個問題:

(1) Non-zero steady state error;

(2) Variable switching frequency (非定頻)

陳科宏的 COT address 上述問題。