Lesson 1 — The buck converter: what happens, why, and how to design it

Power Electronic Systems · HTWG · 2026
Teaching source: lecture 1, Anwendungen der Leistungselektronik, WS 2025/2026, Riccardo Tinivella / Kurt Schenk.
Prerequisite: the 2026 circuit-foundations recap. Language: English, following the intro lesson.

A converter design starts with a question, not a component value. What must the circuit do? Which physical limit matters first? We will use the answer to choose each part, then check whether the choice works.

Our example is TI's PMP31349 reference design. This synchronous GaN buck converts a 30–60 V bus to 12 V at 20 A. An LM5148 peak-current-mode controller drives an LMG2100R044 half-bridge at 350 kHz.

We start from the specification and work towards a complete design. At each step, we compare our estimate with TI's chosen part and published measurements.

How we work. First, estimate by hand. State the assumptions and predict what the circuit should do. Then simulate the same model and compare the results. Finally, compare with TI's measurements and explain any gap.

A failed choice is useful evidence. We keep it on the page, marked No!, and explain what must change. Before moving on, explain why we chose this option. Name its main benefit and cost. Then say when a credible alternative would become preferable.

This sequence follows C. Basso, Switch-Mode Power Supplies: SPICE Simulations and Practical Designs, McGraw-Hill, 2008, §5.1. The worked examples are our own. The Example scripts reproduce the calculations. §9 explains the two PLECS models to draw.

Where the buck is used. The German name says what the buck can do: Tiefsetzsteller, the converter that only sets the voltage lower. Its output must stay below its input. The boost of a later lesson is the Hochsetzsteller.

Use a buck when the load needs a lower voltage and galvanic isolation is unnecessary. Applications range from small point-of-load regulators to high-current stages with several phases. Switching frequencies span roughly 20 kHz to 10 MHz. A few hundred kilohertz is common.

Efficiency depends on the complete design and operating point. PMP31349 reaches 95.5 % at 48 V and 20 A (TI, measured, §8).

Reading route. Follow Part I (§1–11) for the complete design. Use Part II (§12) to practise diagnosing a waveform, choosing a model and defending a decision. The appendices hold background and longer derivations. §13 gives the sources and numerical checks.

The recap supplies the circuit foundations. Return to it when a current path, RMS calculation or balance equation is unclear.

Learning outcomes and teaching route

By the end, students should be able to:

Lesson 01 spans three sessions of 90 minutes. Students read the rest at home: the appendices, and the Part II exercises that the sessions do not work.

Session Route Time Classroom question
1 §1–2 Specification and duty extremes 20 min Which limits did TI publish, and which must we set ourselves?
1 §3 The inductor 25 min Why is 60 V, not 30 V, the worst case for ripple?
1 §4–5 Output and input capacitors 35 min Why does a bank that meets the ripple fail the load step?
1 Discussion 10 min Which of TI's parts would you have chosen differently?
2 §6 The power stage 20 min Where does the charge to swing the switch node come from?
2 §7 Closing the loop 30 min Why did TI cross at 15 kHz and not at our 35 kHz?
2 §8 Losses and temperature 25 min Which losses did the datasheets miss, and why?
2 §9 Proof by simulation 15 min Why does the ideal-capacitor formula miss the output ripple by a factor of ten?
3 §10–11 Variations and what to retain 30 min What does critical conduction buy, and what does it cost?
3 §12 Training 60 min Can the chosen model still apply after the parameters change?

1. A 12 V, 20 A synchronous GaN buck from a 30–60 V source

A 48 V battery bus must supply a 12 V, 20 A load. TI's PMP31349 does it with an LM5148 controller in peak current mode and forced PWM, driving an LMG2100R044 GaN half-bridge. We take TI's published operating range as given. Where TI publishes no limit, we set our own target and mark it as ours.

Quantity Value Source
Input voltage, min / nom / max 30 / 48 / 60 V TI (TIDT427A Table 1-1, 48 V nominal per its description)
Output voltage and current 12 V, 20 A TI (TIDT427A Table 1-1)
Switching frequency fsf_s 350 kHz, given TI (TIDT427A Table 1-1)
Inductor ripple at 60 V 0.30 · IoI_o, peak to peak ours
Output ripple ≤ 120 mV peak to peak (1 % of VoV_o) ours
Load step 10 → 20 A, drop ≤ 360 mV (3 % of VoV_o) ours. TI measured this step (TIDT427A fig. 3-7) but publishes no limit
Loop crossover target 35 kHz (fs/10f_s/10) ours
Input ripple at 48 V ≤ 1.0 V peak to peak ours
Ambient for the thermal check 25 °C ours

Ours or TI. Every number in Part I carries one of two labels. Ours is computed from this specification and from datasheets. TI is a part TI chose or a value TI measured, taken from the TIDT427A test report, the TIDMDL2 schematic and the TIDMDL6 bill of materials.

The Example scripts in ti-pmp31349/scripts/ compute every ours number and write it to a *-checks.json file, which this text quotes. Never mix the two labels: a curve fitted to TI's measurement is not our prediction.

Design sequence. Start with the duty range (§2). Then choose the inductor (§3), output capacitor (§4) and input capacitor (§5). Check the power stage (§6), loop (§7), losses and temperature (§8). In §9, compare the complete model with measurements.

Each step starts with our estimate. We then compare it with TI's choice and use TI's actual part in the next step. This keeps the final model comparable with the measured board. All current ripple values are peak to peak unless labelled RMS.

Before choosing parts. We keep TI's published voltage, current and frequency as constraints. Ripple and transient limits are ours. Tightening one may require more hardware or a different loop. Change a target openly, then repeat the affected checks.

2. Duty-cycle extremes

2.1 Two switch positions, two ramps

In the synchronous buck the high-side switch connects the switch node to VinV_{\mathrm{in}} for the time DTsDT_s. The low-side switch then clamps the node to ground for (1−D)Ts(1-D)T_s. §4 checks that the output voltage barely moves within one period. The inductor then sees two constant voltages, and its current is two straight lines:

diLdt=Vin−VoL(high side on),diLdt=−VoL(low side on).\frac{di_L}{dt}=\frac{V_{\mathrm{in}}-V_o}{L}\quad\mathrm{(high\ side\ on)},\qquad \frac{di_L}{dt}=-\frac{V_o}{L}\quad\mathrm{(low\ side\ on)}.

The inductor resists a change of current, not current itself. While the low side conducts, the current still flows toward the load and the inductor releases energy. The output capacitor takes the difference, iC=iL−ioi_C = i_L - i_o. The output ripple is therefore a consequence of the inductor ripple, and §4 checks it after we choose the capacitor.

2.2 Volt-second balance sets the duty

Repeating the two intervals at fs=1/Tsf_s = 1/T_s, with duty ratio D=ton/TsD = t_{\mathrm{on}}/T_s, is pulse-width modulation. At start-up VoV_o is small: the current rises steeply and falls slowly, so it grows from period to period and charges the output. As VoV_o rises the two ramps come into balance.

In periodic steady state the inductor current returns to its starting value, so the volt-seconds across L cancel over one period. The recap derives this from periodicity (§7.2) and applies it to the ideal buck (§7.3). The cycle average of the inductor voltage is zero, not its instantaneous value.

D (Vin−Vo)+(1−D) (−Vo)=0⇒M(D)=VoVin=DD\,(V_{\mathrm{in}}-V_o)+(1-D)\,(-V_o)=0\quad\Rightarrow\quad M(D)=\frac{V_o}{V_{\mathrm{in}}}=D
(2.1a)
0.250⋅(48−12) V+0.750⋅(−12 V)=9 V−9 V=00.250\cdot(48-12)\ \mathrm{V}+0.750\cdot(-12\ \mathrm{V})=9\ \mathrm{V}-9\ \mathrm{V}=0
(2.1b)

With VoV_o regulated, the duty follows the input. The extremes sit at the ends of the input range:

Dmin⁡=VoVin,max,Dnom=VoVin,nom,Dmax⁡=VoVin,minD_{\min}=\frac{V_o}{V_{\mathrm{in,max}}},\qquad D_{\mathrm{nom}}=\frac{V_o}{V_{\mathrm{in,nom}}},\qquad D_{\max}=\frac{V_o}{V_{\mathrm{in,min}}}
(2.2a)
Dmin⁡=1260=0.200,Dnom=1248=0.250,Dmax⁡=1230=0.400D_{\min}=\frac{12}{60}=0.200,\qquad D_{\mathrm{nom}}=\frac{12}{48}=0.250,\qquad D_{\max}=\frac{12}{30}=0.400
(2.2b)

2.3 What each current does, and why the ideal buck is lossless

With ideal switches and small output ripple, every current in the stage is a piece of the inductor current or zero:

Current High side on, 0≤t<DTs0 \leq t < DT_s Low side on, DTs≤t<TsDT_s \leq t < T_s Mean
Output ioi_o IoI_o IoI_o IoI_o
Inductor iLi_L rises by ΔIL\Delta I_L falls by ΔIL\Delta I_L IoI_o
Input iini_{\mathrm{in}} (high side) iLi_L 0 D⋅IoD\cdot I_o
Low side iLSi_{LS} 0 iLi_L (1−D)⋅Io(1-D)\cdot I_o
Output capacitor iCi_C iL−Ioi_L - I_o iL−Ioi_L - I_o 0

The input voltage is constant, so the input power is VinV_{\mathrm{in}} times the mean input current: Pin=Vin⋅D⋅Io=Vo⋅Io=PoP_{\mathrm{in}} = V_{\mathrm{in}}\cdot D\cdot I_o = V_o\cdot I_o = P_o. The ideal buck is a DC transformer with ratio D: it steps the voltage down and the mean current up, and it loses nothing. The losses of §8 come from the components, not from the principle.

What the extremes decide. At 60 V, Dmin⁡D_{\min} gives the shortest on-time and the largest inductor ripple (§3). The low side conducts for 80 % of the period, so it has the larger conduction loss (§8).

At 30 V, Dmax⁡D_{\max} = 0.400 is closest to 0.5. This gives the largest input-capacitor RMS current within our input range (§5). Different checks have different worst cases.

TI chose, TI measured. TI chose the 30–60 V range and the 12 V output, so the extremes follow directly. On the board, the conduction and dead-time losses push the duty slightly above the ideal D=Vo/VinD = V_o/V_{\mathrm{in}}.

Our datasheet loss model with TI's parts needs DD = 0.2565 at 48 V and 20 A (ours, loss-estimate-checks.json). §8.2 shows where the extra duty goes. TI measured the switching frequency at 344.9 kHz rather than 350 kHz (TIDT427A fig. 3-2). We keep TI's range and fsf_s and continue with the inductor.

What we can choose. The required voltage ratio fixes the ideal duty. We cannot lower duty independently and keep the same output. A different bus voltage is an alternative system choice. It changes ripple, timing and device stress together.

3. The inductor

3.1 The ripple ratio sets L

Integrate either ramp of §2.1 over its own interval and substitute D=Vo/VinD = V_o/V_{\mathrm{in}}:

ΔIL=(Vin−Vo) DL fs=VoL fs(1−VoVin).\Delta I_L=\frac{(V_{\mathrm{in}}-V_o)\,D}{L\,f_s}=\frac{V_o}{L\,f_s}\left(1-\frac{V_o}{V_{\mathrm{in}}}\right).

At fixed VoV_o the ripple grows with VinV_{\mathrm{in}}, so the worst case is the maximum input, 60 V. A shortcut warning: Vin⋅D(1−D)V_{\mathrm{in}}\cdot D(1-D) peaks at DD = 0.5 only if VinV_{\mathrm{in}} stays fixed while DD changes. Here VoV_o stays fixed and VinV_{\mathrm{in}} sweeps, so VinV_{\mathrm{in}} and DD are coupled. Find the worst case from the equation above, not from D(1−D)D(1-D).

We ask for a ripple of rr = 0.30 of the full load at 60 V. Solving for L:

L=Vo (1−Dmin⁡)r fs IoL=\frac{V_o\,(1-D_{\min})}{r\,f_s\,I_o}
(3.1a)
L=12 V⋅(1−0.200)0.30⋅350 kHz⋅20 A=4.571 μHL=\frac{12\ \mathrm{V}\cdot(1-0.200)}{0.30\cdot350\ \mathrm{kHz}\cdot20\ \mathrm{A}}=4.571\ \mu\mathrm{H}
(3.1b)

So our inductor is 4.571 µH (ours). This is an ideal minimum: it carries no allowance for tolerance or for the drop of inductance with current. The ripple ratio is a full-load specification: at a 2 A load the same ripple is three times the load current. Always state the ripple against full load.

3.2 Peak and RMS current, with the right measure

We now take TI's 4.7 µH and evaluate it at the worst case, 60 V:

ΔIL=Vo (1−Dmin⁡)L fs\Delta I_L=\frac{V_o\,(1-D_{\min})}{L\,f_s}
(3.2a)
ΔIL=12 V⋅0.8004.7 μH⋅350 kHz=5.836 A\Delta I_L=\frac{12\ \mathrm{V}\cdot0.800}{4.7\ \mu\mathrm{H}\cdot350\ \mathrm{kHz}}=5.836\ \mathrm{A}
(3.2b)
Ipk=Io+ΔIL2,IL,rms=Io2+ΔIL212I_{\mathrm{pk}}=I_o+\frac{\Delta I_L}{2},\qquad I_{L,\mathrm{rms}}=\sqrt{I_o^2+\frac{\Delta I_L^2}{12}}
(3.3a)
Ipk=20+5.8362=22.92 A,IL,rms=202+5.836212=20.07 AI_{\mathrm{pk}}=20+\frac{5.836}{2}=22.92\ \mathrm{A},\qquad I_{L,\mathrm{rms}}=\sqrt{20^2+\frac{5.836^2}{12}}=20.07\ \mathrm{A}
(3.3b)

That is a ripple of 5.836 A and a peak of 22.92 A (ours, TI's part). Which current measure enters a loss depends on the element, as the recap derives (§6.1, §6.2):

Element Model Power uses In this buck
Constant voltage VV v=constv = \mathrm{const} V⋅IavgV\cdot I_{\mathrm{avg}} input power Vin⋅D⋅IoV_{\mathrm{in}}\cdot D\cdot I_o, and the third-quadrant drop in the dead time (§6)
Resistance RR v=R⋅iv = R\cdot i R⋅Irms2R\cdot I_{\mathrm{rms}}^2 GaN on-resistance, inductor DCR, current shunt, capacitor ESR

Never use the mean current for a resistive loss. It is the most common error in loss estimates.

Two rules from the recap (§5.1–5.2) give every current of the stage without new integrals. Compressing a waveform into the fraction DD of the period, with zero elsewhere, multiplies its mean by DD and its RMS value by D\sqrt{D}. Orthogonal parts, such as DC and a zero-mean triangle, add in mean square. With J=Io2+ΔIL2/12=IL,rms2J = I_o^2 + \Delta I_L^2/12 = I_{L,\mathrm{rms}}^2:

Current Mean RMS
Inductor IoI_o J\sqrt{J}
High-side switch D⋅IoD\cdot I_o D⋅J\sqrt{D\cdot J}
Low-side switch (1−D)⋅Io(1-D)\cdot I_o (1−D)⋅J\sqrt{(1-D)\cdot J}
Output capacitor 0 ΔIL/12\Delta I_L/\sqrt{12}
Input current drawn by the stage D⋅IoD\cdot I_o D⋅J\sqrt{D\cdot J}

At this ripple ratio the RMS current is only slightly above the 20 A mean. The DC term dominates every conduction loss. The low side conducts for 1−D1-D of the period, so it carries most of that loss.

3.3 Checks against the real part

TI chose, TI measured. TI chose a 4.7 µH Würth 74439370047 (WE-XHMI, shielded metal composite). Our ripple ratio of 0.30 at 60 V asks for 4.571 µH. TI's 4.7 µH is a standard value just above it. The ripple at 60 V, 5.836 A, is therefore slightly below our target.

TI did not measure the inductor current. §9 checks the ripple it causes at the output and the input. From here on the lesson continues with TI's 4.7 µH.

3.4 What if we allow 10% or 100% current ripple?

Our 30% target is a design choice. To see its consequences, compare two extremes. Here ripple means peak-to-peak inductor current divided by the 20 A full-load current. It is not duty ratio. Keep 60 V input, 12 V output and 350 kHz fixed. Use the ideal CCM equations of §3.1–3.2.

Before calculating, predict which choice needs more inductance. Which one gives the capacitor more work?

Quantity at full load 10% ripple 100% ripple
Peak-to-peak inductor ripple 2 A 20 A
Required ideal inductance 13.71 µH 1.371 µH
Minimum / peak inductor current 19 / 21 A 10 / 30 A
Inductor RMS current 20.008 A 20.817 A
Output-capacitor RMS current 0.577 A 5.774 A
Current rise rate during high-side ON 3.50 A/µs 35.0 A/µs

Choose 10% when ripple-current stress matters. Peak current and capacitor RMS current are lower. The cost is ten times more inductance. At the same applied voltage, current changes ten times more slowly. Check the load-step response before accepting that cost.

Choose 100% when less inductance and faster current change justify the ripple. The capacitor carries ten times more RMS ripple current, and the inductor must handle a 30 A peak. This remains CCM at full load: the valley is still 10 A. It is not boundary conduction.

Less inductance does not by itself guarantee a smaller or more efficient part. Compare actual saturation curves, winding and core losses, capacitor losses and transient response. With diode emulation, reduced load can also move the high-ripple design into DCM sooner.

Our decision. Keep 30% for the base design and continue with TI's 4.7 µH. The 100% alternative requires relaxing that ripple target. The 10% alternative reduces ripple, but its larger inductance still needs a transient check. Neither alternative is a qualified replacement part.

Your choice. Suppose capacitor ripple-current capability is the limiting constraint. Which direction would you try first? Now suppose current rise is too slow during a load step. Explain what you would change and which earlier check you must repeat.

scripts/ripple_tradeoff.py writes data/ripple-tradeoff.json. It checks the table against independently integrated current ramps, including mean/RMS current, capacitor charge and ideal power balance.

4. The output capacitor

4.1 Charge balance

The capacitor has the dual property of the inductor. In periodic steady state the charge delivered to a capacitor equals the charge removed, so its mean current is zero (recap §7.2).

Balance Statement in steady state
Volt-second balance (inductor) Mean inductor voltage is zero
Charge balance (capacitor) Mean capacitor current is zero
∫0TsiC(t) dt=0⇒IL=Io.\int_0^{T_s}i_C(t)\,dt=0\quad\Rightarrow\quad I_L=I_o.

The output capacitor carries the ripple of the inductor current. It cannot supply a lasting DC deficit without its voltage drifting. Only the loop can correct that.

4.2 The ripple-only choice

In CCM the capacitor current is a zero-mean triangle of height ΔIL\Delta I_L. The capacitor charges while that current is positive, for half a period. The charge is a triangle of base Ts/2T_s/2 and height ΔIL/2\Delta I_L/2, so ΔQ=ΔIL⋅Ts/8\Delta Q = \Delta I_L\cdot T_s/8. For an ideal capacitor:

ΔVo=ΔQC=ΔIL8 fs C⇒C≥ΔIL8 fs ΔVo\Delta V_o=\frac{\Delta Q}{C}=\frac{\Delta I_L}{8\,f_s\,C}\quad\Rightarrow\quad C\geq\frac{\Delta I_L}{8\,f_s\,\Delta V_o}
(4.1a)
C≥5.836 A8⋅350 kHz⋅0.12 V=17.37 μFC\geq\frac{5.836\ \mathrm{A}}{8\cdot350\ \mathrm{kHz}\cdot0.12\ \mathrm{V}}=17.37\ \mu\mathrm{F}
(4.1b)

Our ripple limit alone asks for 17.37 µF (ours).

4.3 The load step: No!

When the load jumps by ΔIstep\Delta I_{\mathrm{step}}, the inductor current cannot follow at once. Until the loop answers, roughly for 1/(2πfc)1/(2\pi f_c), the capacitor supplies the deficit. Holding the drop within ΔVstep\Delta V_{\mathrm{step}} at our crossover target needs:

C≥ΔIstep2π fc ΔVstepC\geq\frac{\Delta I_{\mathrm{step}}}{2\pi\,f_c\,\Delta V_{\mathrm{step}}}
(4.2a)
C≥10 A2π⋅35 kHz⋅0.36 V=126.3 μFC\geq\frac{10\ \mathrm{A}}{2\pi\cdot35\ \mathrm{kHz}\cdot0.36\ \mathrm{V}}=126.3\ \mu\mathrm{F}
(4.2b)

17.37 µF against 126.3 µF: the ripple-only choice fails the load step by more than a factor of seven. No! The load step, not the ripple, sizes this bank.

Never accept a capacitor because the ripple is small. Steady switching ripple proves nothing about transient droop, about the effective capacitance under bias, about RMS heating or about high-frequency behaviour. A load step removes charge in proportion to the integral of the current deficit, and the loop decides how long that deficit lasts.

4.4 Real parts: DC bias, then ESR — No! again

We take 126.3 µF as the minimum effective capacitance. TI uses four 22 µF 25 V X7R ceramics and two 150 µF 16 V tantalum polymers (TIDMDL6). By our DC-bias estimate, each ceramic keeps about 10 µF at 12 V (ours). The bank therefore gives ≈340 µF and passes (4.2b).

A capacitor helps the loop only while it still looks capacitive at crossover. Its ESR must therefore stay below its reactance at fcf_c:

rC≤∣ZC(fc)∣=12π fc Cr_C\leq|Z_C(f_c)|=\frac{1}{2\pi\,f_c\,C}
(4.3a)
∣ZC(fc)∣=12π⋅35 kHz⋅340 μF=13.37 mΩ < rC=32.5 mΩ|Z_C(f_c)|=\frac{1}{2\pi\cdot35\ \mathrm{kHz}\cdot340\ \mu\mathrm{F}}=13.37\ \mathrm{m\Omega}\ <\ r_C=32.5\ \mathrm{m\Omega}
(4.3b)

Kemet rates the polymer at 65 mΩ ESR maximum per part (T598D157M016ATE065). Two in parallel give 32.5 mΩ, more than twice the 13.37 mΩ budget of the whole 340 µF. No!

Which branch sets the impedance where? At fcf_c the ceramic branch still shows ∣Z∣|Z| ≈ 114 mΩ, so it does not help there. The polymer ESR sets the impedance of the bank. Its zero lies at

fz,ESR=12π rC Cpolf_{z,\mathrm{ESR}}=\frac{1}{2\pi\,r_C\,C_{\mathrm{pol}}}
(4.4a)
fz,ESR=12π⋅32.5 mΩ⋅300 μF=16.3 kHzf_{z,\mathrm{ESR}}=\frac{1}{2\pi\cdot32.5\ \mathrm{m\Omega}\cdot300\ \mu\mathrm{F}}=16.3\ \mathrm{kHz}
(4.4b)

below our 35 kHz target. At crossover the output stage therefore looks resistive, and the compensation must account for it (§7). The ceramics are useful near fsf_s. At 350 kHz their branch shows ∣Z∣|Z| ≈ 11.4 mΩ, lower than the polymer ESR. They therefore carry most of the ripple current and bypass the ESL of the polymers. Without them the ESR term alone would be

ΔVo,ESR≃ΔIL rC\Delta V_{o,\mathrm{ESR}}\simeq\Delta I_L\,r_C
(4.5a)
ΔVo,ESR≃5.836 A⋅32.5 mΩ≈190 mV\Delta V_{o,\mathrm{ESR}}\simeq5.836\ \mathrm{A}\cdot32.5\ \mathrm{m\Omega}\approx190\ \mathrm{mV}
(4.5b)

That is 190 mV (ours), above our 120 mV limit. The ESR also reshapes the ripple and adds a zero to the loop, so never judge a capacitor by the size of its ripple alone.

What a failed ESR check means. Check (4.3a) assumes we want a capacitive bank at fcf_c. When it fails, two redesigns remain. The first adds low-ESR capacitance until the ESR of the bank drops below 13.37 mΩ. The second keeps the bank, lowers the crossover and compensates the ESR zero.

TI's board matches the second route: it crossed at about 15 kHz (TI measured, §7). At that crossover (4.2a) asks for ≈290 µF, and TI's 340 µF passes it (loop-checks.json).

Decision: keep TI's bank. The bank passes the capacitance check but fails the ESR check, so the compensation must include the 16.3 kHz ESR zero (§7). TI measured 56 mV peak-to-peak output ripple at 48 V and 20 A (TIDT427A fig. 3-5). The 10 → 20 A load step gave a −276 mV dip (fig. 3-7). Both meet our targets, and the bank keeps the model comparable with the board. A different bank changes ripple and ESR, so it needs a new loop calculation.

5. The input capacitor

The stage draws the inductor current from the input while the high side conducts, and nothing while the low side conducts. If the source behind the input filter supplies only the mean D⋅IoD\cdot I_o, the local capacitor supplies the difference (1−D)⋅Io(1-D)\cdot I_o during DTsDT_s. The charge it loses is a rectangle, ΔV=I⋅tx/C\Delta V = I\cdot t_x/C:

ΔVin=(1−D) Io D TsCin⇒Cin≥D (1−D) Iofs ΔVin\Delta V_{\mathrm{in}}=\frac{(1-D)\,I_o\,D\,T_s}{C_{\mathrm{in}}}\quad\Rightarrow\quad C_{\mathrm{in}}\geq\frac{D\,(1-D)\,I_o}{f_s\,\Delta V_{\mathrm{in}}}
(5.1a)
Cin≥0.250⋅0.750⋅20 A350 kHz⋅1.0 V=10.71 μFC_{\mathrm{in}}\geq\frac{0.250\cdot0.750\cdot20\ \mathrm{A}}{350\ \mathrm{kHz}\cdot1.0\ \mathrm{V}}=10.71\ \mu\mathrm{F}
(5.1b)

Our input-ripple target asks for 10.71 µF (ours). No inductor smooths this current: the capacitor itself is the filter, which is why the input ripple is volts while the output ripple is millivolts.

The same pulsed current sets the RMS stress. Neglecting the inductor ripple, and with the source supplying only the mean:

ICin,rms≃IoD (1−D)I_{C\mathrm{in,rms}}\simeq I_o\sqrt{D\,(1-D)}
(5.2a)
ICin,rms≃20 A⋅0.400⋅0.600=9.798 AI_{C\mathrm{in,rms}}\simeq20\ \mathrm{A}\cdot\sqrt{0.400\cdot0.600}=9.798\ \mathrm{A}
(5.2b)

D(1−D)D(1-D) peaks at DD = 0.5, and over our range Dmax⁡D_{\max} = 0.400 at 30 V lies nearest to it. The output bank carries only the ripple triangle, ΔIL/12\Delta I_L/\sqrt{12}. The input bank carries a pulsed current of about half the load. Always size input capacitors for RMS current at the duty nearest 0.5, not at nominal input.

Decision. Our 1.0 V ripple target at 48 V needs 10.71 µF. TI uses seven 4.7 µF, 100 V X7S ceramics (TIDMDL6). Their nominal capacitance is not the value available under bias.

TI's schematic notes "1.5 µF effective @ 48 Vin" over the bank. We interpret that as a per-part value: 7 × 1.5 µF = 10.5 µF. This is just below our requirement. Ahead of this bank, TI places a 5.6 µH filter inductor and a 47 µF hybrid polymer. A 0.5 Ω resistor damps that filter (TIDMDL2).

TI measured 1.28 V peak to peak at 48 V and 20 A (TIDT427A fig. 3-6). No! This exceeds our 1.0 V target. TI publishes no input-ripple limit, so this is a failure against our target. §9 shows that the measurement implies only ≈8.8 µF effective. We retain ≈10.5 µF in the model and keep this discrepancy visible.

If 1.0 V is mandatory, revise the bank. More effective local capacitance is the first candidate. Nominal microfarads alone are not sufficient under bias. Recheck impedance and RMS current. A relaxed target avoids that redesign only if the system permits it.

6. The power stage: GaN half-bridge and dead time

6.1 The half-bridge and its dead time

The LMG2100R044 puts both GaN switches and their drivers in one package (SNOSDF9B). Our model uses 4.4 mΩ typical on-resistance, multiplied by 1.4 for the hot device. The low side replaces the diode of the classical buck (Appendix D), so the conduction drop at 20 A is a resistance, not a junction.

The two switches must never conduct together. The LM5148 holds both off for a dead time tdt_d at each edge, adaptive and 20 ns typical (SNVSC01 §7.5). During tdt_d the inductor keeps its current flowing. The low-side GaN conducts it in reverse, in the third quadrant, with a drop VSDV_{SD} of about 1.5 V.

SNOSDF9B gives this value as typical at 0.5 A reverse current and publishes no value at 20 A. The drop at 20 A is likely higher, so (6.1b) is probably a low estimate. GaN has no body diode and so no reverse-recovery charge. What remains is this third-quadrant drop, paid at both edges:

Pdead=VSD td fs (Ipk+∣Iv∣)P_{\mathrm{dead}}=V_{SD}\,t_d\,f_s\,\left(I_{\mathrm{pk}}+|I_v|\right)
(6.1a)
Pdead=1.5 V⋅20 ns⋅350 kHz⋅40 A=0.42 W(48 V, 20 A)P_{\mathrm{dead}}=1.5\ \mathrm{V}\cdot20\ \mathrm{ns}\cdot350\ \mathrm{kHz}\cdot40\ \mathrm{A}=0.42\ \mathrm{W}\quad(48\ \mathrm{V},\ 20\ \mathrm{A})
(6.1b)

6.2 Which device switches at zero, and at which edge

Resonant converters were the first answer to switching loss. Today, soft switching does the same where possible: the circuit and its timing bring the voltage or the current to zero at the transition. Zero inductor current, zero device current and zero device voltage are different conditions.

ZCS means negligible current through the device at its switching event. ZVS means negligible voltage across it, usually at turn-on. Name the device and the edge before calling a transition soft.

At 48 V TI's 4.7 µH ripples by 5.47 A (ours). The sign of the valley current decides the turn-on of the high side:

Iv=Io−ΔIL2<0⇔Io<ΔIL2I_v=I_o-\frac{\Delta I_L}{2}<0\quad\Leftrightarrow\quad I_o<\frac{\Delta I_L}{2}
(6.2a)
Io<5.47 A2=2.74 A(48 V, 4.7 μH)I_o<\frac{5.47\ \mathrm{A}}{2}=2.74\ \mathrm{A}\quad(48\ \mathrm{V},\ 4.7\ \mu\mathrm{H})
(6.2b)
Edge Valley positive (IoI_o > 2.74 A at 48 V) Valley negative (forced PWM, light load)
High side off → low side on the inductor current swings the node to ground. The low side turns on at zero voltage the same
Low side off → high side on the node stays low and the low side conducts in reverse for tdt_d. The high side turns on hard, charging the output capacitance and overlapping VinV_{\mathrm{in}} with the valley current the reversed current lifts the node toward VinV_{\mathrm{in}} during tdt_d. The high side turns on at reduced voltage (partial ZVS)

TI's board runs forced PWM: the low side stays on through the valley even when the current reverses. Below 2.74 A at 48 V the valley goes negative and the high side gains partial ZVS. Above it, every turn-on is hard and pays the output-charge and overlap losses of §8.

The ZVS is only partial, because charge and time must both suffice. Under a constant-current approximation the node must swing through the switch output charge within the dead time:

tcomm≃Qoss∣Iv∣≤td⇒∣Iv∣≥Qosstdt_{\mathrm{comm}}\simeq\frac{Q_{\mathrm{oss}}}{|I_v|}\leq t_d\quad\Rightarrow\quad|I_v|\geq\frac{Q_{\mathrm{oss}}}{t_d}
(6.3a)
∣Iv∣≥55 nC20 ns=2.75 A|I_v|\geq\frac{55\ \mathrm{nC}}{20\ \mathrm{ns}}=2.75\ \mathrm{A}
(6.3b)

The valley never quite reaches −2.75 A (at no load −2.74 A), and the 55 nC is the total node charge at 50 V. Across the useful load range the node does not finish its swing within 20 ns. Forced PWM therefore buys partial ZVS at light load, not full ZVS.

Our loss model in §8 uses an energy condition without this time limit, so it treats the light-load turn-on as softer than it is. Never call a transition ZVS before checking current direction, charge and time. A published buck example optimizes exactly this negative current: Tang et al., Optimization of Minimum Negative Current BCM Synchronous Buck Converter.

TI chose, TI measured. TI chose the LMG2100R044 and the LM5148 with its adaptive dead time tDEADt_{\mathrm{DEAD}}, 20 ns typical (SNVSC01 §7.5). TI does not publish the dead time measured on the board. We keep forced PWM and 20 ns to reproduce TI's measured design. The negative light-load current helps commutation but costs circulating-current loss. Diode emulation avoids the reversal, but it changes the mode and the response (§10.2). Neither choice guarantees ZVS.

7. Closing the loop

7.1 The LM5148 loop with TI's parts

The LM5148 runs peak current mode. Each cycle it compares the sensed inductor current with the error-amplifier output and ends the on-time when they meet. The controller senses the current across R7 ∥ R10 = 1.714 mΩ and amplifies it by GCSG_{CS} = 10 (SNVSC01). An internal slope ramp keeps the current loop stable at any duty.

The board uses the fixed 12 V mode, so the feedback gain is VREF/VoV_{\mathrm{REF}}/V_o = 0.8 V/12 V with no external divider. The compensation is type II on EXTCOMP: R23 = 6.8 kΩ in series with C57 = 6.8 nF, and C56 = 220 pF in parallel (TI parts, TIDMDL2). An amplifier of gmg_m = 1.2 mS (SNVSC01) drives it.

In current mode the inductor behaves as a controlled current source at low frequency. The power stage then shows one pole, formed by the load and the output bank, and the ESR zero of §4.4. It also shows a double pole at fs/2f_s/2, which the slope ramp damps.

With our ramp of 84 mV/µs (ours, derived from SNVSC01 Eq. 9), the ramp ratio is mcm_c = 1.64. That double pole then has QQ = 0.436 and is well damped. We use Ridley's current-mode model with TI's compensation, untuned (ti-pmp31349/scripts/loop_design.py).

∣T(j2πfc)∣=1,φm=180∘+∠T(j2πfc)|T(j2\pi f_c)|=1,\qquad \varphi_m=180^\circ+\angle T(j2\pi f_c)
(7.1a)
fc=21.8 kHz,φm=100.8∘(48 V, 20 A)f_c=21.8\ \mathrm{kHz},\qquad \varphi_m=100.8^\circ\qquad(48\ \mathrm{V},\ 20\ \mathrm{A})
(7.1b)

At 48 V and 20 A our model crosses at 21.8 kHz with 100.8° of phase margin (ours) and 13.7 dB of gain margin.

7.2 Model against measurement: an input limit

TI measured the loop at a 10 A load (TIDT427A figs. 2-6 to 2-8). At that load:

VinV_{\mathrm{in}} Model fcf_c / PM (ours) TI fcf_c / PM / GM (measured)
30 V 21.9 kHz / 96.9° 14.87 kHz / 67.1° / 19.0 dB
48 V 22.7 kHz / 99.6° 15.27 kHz / 72.8° / 17.2 dB
60 V 23.0 kHz / 100.6° 15.13 kHz / 70.8° / 17.6 dB

Our model crosses about 1.5 times higher than TI measured, with 27–30° more phase: the max-rated polymer ESR puts its zero at crossover.

The model crosses about 1.5 times higher and with 27–30° more phase. The cause is an input, not Ridley's model. We gave the model the polymer ESR at its maximum rating, 65 mΩ per part, which puts the ESR zero at 16.3 kHz, right at crossover.

That zero adds phase lead and lifts the mid-band gain onto a flat ESR shelf. At TI's 15.27 kHz the model's ∣T∣|T| is only +1.9 dB, so a small gain change moves fcf_c far. The table sweeps only the polymer ESR at 48 V and 10 A (loop-checks.json, esr_sensitivity):

Polymer ESR per part ESR zero fcf_c / PM (ours, model)
65 mΩ (maximum rating) 16.3 kHz 22.7 kHz / 99.6°
20 mΩ 53.1 kHz 14.85 kHz / 74.2°
0 — 14.49 kHz / 60.7°

TI measured 15.27 kHz / 72.8°. A lower polymer ESR brings both predicted quantities close to these measurements. Now check competing explanations. The R13/C54 sense filter adds −3.1°. A 100 ns delay adds −0.8°.

Set gmg_m to its 1020 µS minimum and GCSG_{CS} to its 10.8 maximum. The crossover moves to 14.85 kHz, but the phase margin remains 97.3°. Gain tolerance can explain the crossover shift without explaining the measured phase.

Decision. Of these comparisons, lower ESR explains both changes. This does not measure the board's ESR. We keep the untuned 65 mΩ rating in the base model and record its limitation. Check uncertain inputs before adjusting a model to match a curve.

7.3 The load step, and the price of a lower crossover

The averaged model drops 233 mV on the 10 → 20 A step, TI measured −276 mV, both inside our 360 mV limit.

On the 10 → 20 A step at 48 V the averaged model drops 233 mV (ours) and recovers within about 90 µs. TI measured −276 mV (TIDT427A fig. 3-7, scope minimum including switching ripple and noise). Both sit inside our 360 mV. The model is optimistic because it crosses higher than the board.

Our 35 kHz target sized the bank at 126.3 µF with (4.2a). TI crossed at ≈15.3 kHz, and its schematic notes "fcc ~15 kHz" as the design intent. At that crossover the same estimate asks for 290 µF. Our 126.3 µF would drop ≈825 mV and fail the 360 mV limit. TI's 340 µF gives ≈307 mV by the same estimate.

TI pairs a lower crossover with more capacitance. Our 126.3 µF holds only if the loop really reaches 35 kHz. With the type II network R23, C57, C56, TI measured about 15 kHz crossover at every input voltage. The phase margin was 67–73° and the gain margin 17–19 dB. We keep TI's compensation with its larger bank. A smaller bank or a higher crossover is a new design target: redesign the compensation and verify the load step again.

8. Losses, efficiency and temperature

8.1 Where the losses come from: the datasheet estimate

The ideal buck of §2.3 is lossless. The losses come from the components, not from the conversion principle. We first estimate every loss from datasheets only: LMG2100R044 (SNOSDF9B), LM5148 (SNVSC01) and Würth 74439370047, with no measured number (ti-pmp31349/scripts/loss_estimate.py). At 48 V and 20 A (ours):

Loss Mechanism Scales with Estimate
Inductor DCR copper conduction IL,rms2I_{L,\mathrm{rms}}^2 2.01 W
Low-side conduction GaN on-resistance (1−D)⋅IL,rms2(1-D)\cdot I_{L,\mathrm{rms}}^2 1.84 W
Input filter filter DCR and capacitor ESR input current² 0.71 W
Current shunt sense resistor IL,rms2I_{L,\mathrm{rms}}^2 0.69 W
High-side conduction GaN on-resistance D⋅IL,rms2D\cdot I_{L,\mathrm{rms}}^2 0.64 W
Turn-on overlap V and I coexist at hard turn-on Vin⋅Iv⋅fsV_{\mathrm{in}}\cdot I_v\cdot f_s 0.55 W
Output charge hard turn-on charges the switch node Qoss⋅Vin⋅fsQ_{\mathrm{oss}}\cdot V_{\mathrm{in}}\cdot f_s 0.47 W
Dead time third-quadrant drop (6.1a) VSD⋅td⋅fs⋅IV_{SD}\cdot t_d\cdot f_s\cdot I 0.42 W
Gate drive gate charge, both switches Qg⋅V⋅fsQ_g\cdot V\cdot f_s 0.31 W
Inductor core remagnetisation, lower bound ripple and frequency 0.11 W
Controller bias, output capacitor ESR — — 0.11 W
Total 7.87 W

There is no reverse-recovery row: the GaN half-bridge has no body diode (§6.1). The model does not include skin and proximity effects separately. These effects raise the AC resistance of the winding (recap §2.7).

η=PoPo+∑Pk\eta=\frac{P_o}{P_o+\sum P_k}
(8.1a)
η=240 W240 W+7.87 W=96.83 %\eta=\frac{240\ \mathrm{W}}{240\ \mathrm{W}+7.87\ \mathrm{W}}=96.83\ \%
(8.1b)

Our datasheet estimate gives 96.83 % at 48 V and 20 A (ours). TI measured 95.5 %.

8.2 The losses change the duty

Replace each switch and winding by its resistance. Replace the input filter by its resistance rinr_{\mathrm{in}} and the dead time by its drop. Keep the current in each output-side drop at IoI_o. Then apply volt-second balance again:

Vo=D (Vin−Iin rin)−Io[rL+rs+D RHS+(1−D) RLS]−2 td fs VSDV_o=D\,(V_{\mathrm{in}}-I_{\mathrm{in}}\,r_{\mathrm{in}})-I_o\left[r_L+r_s+D\,R_{HS}+(1-D)\,R_{LS}\right]-2\,t_d\,f_s\,V_{SD}

Here Iin rinI_{\mathrm{in}}\,r_{\mathrm{in}} is the drop of the mean input current across the input filter, so the switch node sees slightly less than VinV_{\mathrm{in}}. With TI's parts at 48 V and 20 A, this equation asks for DD = 0.2565 against the ideal 0.250 (ours, datasheet values only, loss-estimate-checks.json). The controller adds duty to cover the drops.

This is a CCM average model. If its valley goes below zero with diode emulation, or it predicts a negative output, its assumptions have failed. Its result is then not a prediction (§10.2).

8.3 The estimate against TI's measurement

Our datasheet estimate is optimistic everywhere, by 2.65 pp rms, and most at light load where the fixed losses dominate.

TI's data have 147 rows, three of them at 0 A. Against the 144 measured points with nonzero load, the datasheet estimate errs by 2.65 pp (percentage points) rms (ours vs TI). It is optimistic everywhere, and most at light load, by up to 14.2 pp at 60 V and 0.5 A, where the fixed losses dominate.

Our curves have a kink between 2 A and 2.5 A at 48 V and 60 V, and between 1.5 A and 2 A at 30 V. There the model's high-side turn-on becomes hard (§6.2).

8.4 Calibration: what the measurement says we missed

We now fit the six loss coefficients to TI's measurement (ti-pmp31349/scripts/reverse_engineer.py). The fit reproduces TI's curve to 0.33 pp rms by construction. What it teaches is which of our estimates were low:

Term Ours (datasheet) Fitted to TI's measurement What it says
Turn-on overlap time 1.92 ns 7.41 ns the board switches slower than the datasheet's 25 V/ns rule, or the term absorbs other Vin⋅IoV_{\mathrm{in}}\cdot I_o losses
Dead-time VSD⋅tdV_{SD}\cdot t_d 30 V·ns 0, at its lower bound the dead-time loss, about 2⋅VSD⋅td⋅fs⋅Io2\cdot V_{SD}\cdot t_d\cdot f_s\cdot I_o, does not depend on VinV_{\mathrm{in}}, while the overlap loss grows with VinV_{\mathrm{in}}. With three input voltages the fit can tell them apart, and the data prefer a VinV_{\mathrm{in}}-dependent loss, so the fit pushes this term to zero. That does not prove the board has no dead-time loss
Output-charge factor 0.51 0.39 our datasheet factor was slightly pessimistic
Resistance rise with load 0 0.109 mΩ/A heating raises the resistances, 0.88 W at 20 A
Core loss kk 0.00252 W/A^2.2 0.0294 W/A^2.2 about 12 times ours (see below)

The core-loss gap is mainly our method's bias, not a measurement surprise. Würth publishes no core-loss data for this part. Our kk therefore comes from the impedance-curve peak, RpR_p = 4.28 kΩ at 16.4 MHz, which we take as frequency independent. Steinmetz scaling makes the loss per volt² rise toward lower frequency. The extrapolation from 16 MHz to 350 kHz therefore biases our core loss low by roughly an order of magnitude.

Our 0.11 W is a lower bound. A REDEXPERT core-loss figure at 350 kHz would replace it.

Fitted to TI's 144 points, the six-term loss model tracks the measurement to 0.33 pp rms: calibration, not prediction.

Calibrated breakdown at 48 V (ours, calibrated to TI): at full load the fitted overlap and core terms rival the conduction losses, and at light load the core loss dominates.

With the fitted terms the model gives 95.62 % at 48 V and 20 A (ours, calibrated to TI) against TI's measured 95.5 %. Never present the fitted curve as a prediction: it agrees with TI because we fitted it to TI.

8.5 Junction temperature

Tj=Ta+PGaN RθJAT_j=T_a+P_{\mathrm{GaN}}\,R_{\theta JA}
(8.2a)
Tj=25 ∘C+1.58 W⋅29 K/W=70.8 ∘C(48 V, 10 A)T_j=25\ ^\circ\mathrm{C}+1.58\ \mathrm{W}\cdot29\ \mathrm{K/W}=70.8\ ^\circ\mathrm{C}\qquad(48\ \mathrm{V},\ 10\ \mathrm{A})
(8.2b)

RθJAR_{\theta JA} = 29 K/W is the datasheet value on a JEDEC board (SNOSDF9B Table 5.4). The GaN loss of 1.58 W is our datasheet estimate. TI measured 85 °C at the same operating point, without heat sink (TIDT427A §2.3.1, fig. 2-3). That is the thermal-camera hot spot on the board bottom under the GaN IC. It is a PCB surface temperature, not TjT_j, and TI gives no ambient temperature.

The reading is therefore a lower bound on TjT_j. Our junction estimate lies 14 K below a surface that cannot be hotter than the junction. No! Our estimate is optimistic three times over. The JEDEC RθJAR_{\theta JA} is not this board, the 25 °C ambient is our assumption, and the datasheet losses are low (§8.3). Always compare like with like: a thermal-camera reading is a surface temperature.

Other TI temperatures. At 10 A without a heat sink, the GaN thermal-pad vias reached 81 °C and the inductor 76 °C. At 20 A with a heat sink, TI measured 95 °C on the inductor, 92 °C on the vias and 76 °C on the heat sink (TIDT427A §2.3).

What would we improve first? At full load, investigate inductor DCR and low-side conduction, two of the largest datasheet loss terms. A lower-resistance candidate may help, but its magnetic, switching and thermal costs must also pass. At light load, get better core-loss evidence first. The fit shows that a loss is missing. It does not show which replacement part reduces it. Let the intended operating range decide which investigation comes first.

9. Proof by simulation

9.1 Python waveform checks against TI's scope captures

ti-pmp31349/scripts/ripple_checks.py solves the operating point TI captured: 48 V to 12 V at 20 A, at the measured 344.9 kHz. It uses TI's parts and the losses calibrated on TI's measurement (§8.4). The model gives DD = 0.2565, an on-time of 0.744 µs and ΔIL\Delta I_L = 5.64 A (ours, calibrated to TI). It then compares the ripple equations of §4 and §5 with TI's scope captures (ripple-checks.json):

Check Ours (model) TI measured
Output ripple, ideal single 340 µF capacitor (4.1a) 6.0 mV 56 mV (fig. 3-5)
Output ripple, ceramic ∥ polymer branches, harmonic sum 47.2 mV 56 mV
Input ripple, capacitive (5.1a) with ≈10.5 µF 1.05 V —
Input ripple, capacitive plus ESR step 1.07 V 1.28 V (fig. 3-6)
Effective input capacitance 10.5 µF assumed ≈8.8 µF implied by the measurement

The ideal-capacitor formula misses the output ripple by almost a factor of ten. On a mixed bank the ceramic branch carries most of the ripple current, and the polymer ESR adds the triangular part. The branch impedances, not the total capacitance, therefore set the ripple.

Never size a mixed bank's ripple with the ideal-capacitor formula alone. At the input the measurement implies ≈8.8 µF effective. Our DC-bias estimate of 10.5 µF is therefore high, and the input ripple misses our 1.0 V target (§5).

The other two proofs are already on the page: the efficiency curve against TI's measured points (§8.3) and the averaged load step against TI's capture (§7.3).

9.2 PLECS models (pending)

The lecturer draws two PLECS models from ti-pmp31349/plecs/pmp31349_buck.m and its drawing guide ti-pmp31349/plecs/README.md. The lesson supplies parameters and wiring only.

When the lecturer draws both, their results replace the word pending here. Investigate any disagreement with the Python model. Do not average it away.

Choose the model for the question. Use the averaged model for the local loop and load step. Use a switching model for ripple and commutation. The first is simpler to inspect. The second needs more detail and computation. Compare their overlapping predictions before trusting either.

10. What if? Four variations of the finished design

The base design runs in continuous conduction (CCM): the inductor current stays above zero through the cycle,

IL,min⁡=Io−ΔIL2>0,K=2 L fsR>Kcrit=1−D,I_{L,\min}=I_o-\frac{\Delta I_L}{2}>0,\qquad K=\frac{2\,L\,f_s}{R}>K_{\mathrm{crit}}=1-D,

with R=Vo/IoR = V_o/I_o the load at the operating point. At the boundary Io=ΔIL/2I_o = \Delta I_L/2, which for TI's 4.7 µH at 48 V is the 2.74 A of §6.2. The duty balances the volt-seconds, while the load sets the mean current. Each variation below changes one thing and states what changes in the numbers, the waveforms and the parts (variation-checks.json).

At 48 V the base design's 20 A triangle never touches zero. Critical conduction doubles the peak to 40 A. At 2 A with diode emulation the current rests at zero for 15 % of the period.

10.1 Critical (boundary) conduction

Hold the current triangle so that it just touches zero each cycle. Its peak is then twice the load, and the frequency or the inductance follows:

Ipk=2 Io,fs=Vo (1−Vo/Vin)2 L Io,L=Vo (1−Vo/Vin)2 fs IoI_{\mathrm{pk}}=2\,I_o,\qquad f_s=\frac{V_o\,(1-V_o/V_{\mathrm{in}})}{2\,L\,I_o},\qquad L=\frac{V_o\,(1-V_o/V_{\mathrm{in}})}{2\,f_s\,I_o}
(10.1a)
Ipk=40 A,fs=12⋅0.7502⋅4.7 μH⋅20=47.87 kHz,L=12⋅0.7502⋅350 kHz⋅20=0.643 μHI_{\mathrm{pk}}=40\ \mathrm{A},\qquad f_s=\frac{12\cdot0.750}{2\cdot4.7\ \mu\mathrm{H}\cdot20}=47.87\ \mathrm{kHz},\qquad L=\frac{12\cdot0.750}{2\cdot350\ \mathrm{kHz}\cdot20}=0.643\ \mu\mathrm{H}
(10.1b)

Keeping TI's 4.7 µH means running at 47.87 kHz (ours). The 40 A peak then lies far above the 20.9 A at which that inductor has lost 10 % of its inductance. Keeping 350 kHz needs a different 0.643 µH inductor rated for 40 A.

Either way the RMS current rises to 2/√3 of the load, and the high side now turns off at twice the load current. Critical conduction gives a high-side turn-on at zero inductor current, so the turn-on overlap loss disappears. The output charge is still hard-switched unless the current goes slightly negative (§6.2).

Critical conduction does not mean a fixed frequency. At fixed VinV_{\mathrm{in}}, VoV_o and LL, (10.1a) makes fsf_s inversely proportional to IoI_o. A controller that stays on the boundary detects zero current and starts the next pulse there. Its frequency therefore moves with load and input: at half the load, twice the frequency.

Once a deliberate negative valley is added for ZVS, recalculate the current area: Io=Ipk/2I_o = I_{\mathrm{pk}}/2 holds only for the zero-valley triangle.

When would we choose the boundary? Keep CCM for the stated board. Boundary operation at 20 A needs a 40 A peak, above its 35 A current limit. It also changes the magnetic and RMS-current requirements.

Boundary control remains a redesign option when reduced turn-on overlap justifies those costs. It needs suitable parts, protection and a controller that accommodates the frequency range. Changing the conduction mode alone is not enough.

10.2 Discontinuous conduction

With diode emulation the controller turns the low side off when the current reaches zero, instead of letting it reverse as forced PWM does. Below the boundary the current then rests at zero until the next pulse. The cycle has three intervals: high side on (DD), low side on (D2D_2), and both off.

Which mode at 48 V and 2 A? The CCM candidate would have a valley of 2 A − 2.74 A, below zero. With diode emulation that candidate is invalid, and the converter is in DCM. With TI's forced PWM it is valid. The negative valley then circulates current that costs conduction loss but gives the partial ZVS of §6.2.

For DCM, with M=Vo/VinM = V_o/V_{\mathrm{in}} and the current triangle supplying the load:

K=2 L fsR,D=MK1−M,D2=D Vin−VoVo,Ipk=(Vin−Vo) DL fsK=\frac{2\,L\,f_s}{R},\qquad D=M\sqrt{\frac{K}{1-M}},\qquad D_2=D\,\frac{V_{\mathrm{in}}-V_o}{V_o},\qquad I_{\mathrm{pk}}=\frac{(V_{\mathrm{in}}-V_o)\,D}{L\,f_s}
(10.2a)
K=2⋅4.7 μH⋅350 kHz6 Ω=0.548<0.750,D=0.2500.5480.750=0.2138,D2=0.6413,Ipk=4.678 AK=\frac{2\cdot4.7\ \mu\mathrm{H}\cdot350\ \mathrm{kHz}}{6\ \Omega}=0.548<0.750,\qquad D=0.250\sqrt{\frac{0.548}{0.750}}=0.2138,\qquad D_2=0.6413,\qquad I_{\mathrm{pk}}=4.678\ \mathrm{A}
(10.2b)

Always check D+D2<1D + D_2 < 1: here 0.855, so the zero interval exists and the DCM model applies. The triangle area checks the load: Ipk/2⋅(D+D2)I_{\mathrm{pk}}/2\cdot(D + D_2) = 2.0 A. Substituting K=1−DK = 1-D recovers M=DM = D, so the two models meet at the boundary.

Why MM no longer equals DD. The third interval puts zero volts across L, and the length of the low-side interval depends on VoV_o. The duty falls from the CCM 0.250 to 0.2138. The conversion ratio for a given duty now depends on the load, and the control-to-output transfer function changes.

TI's board runs forced PWM and stays in CCM instead. With KM2=D2(1−M)KM^2 = D^2(1-M) the DCM gain is M=2/(1+1+4K/D2)M = 2/(1+\sqrt{1+4K/D^2}). Appendix E gives the full derivation and a worked DCM case.

At light load. Keep forced PWM to reproduce the TI board, and accept its circulating-current cost. If light-load loss is the priority, investigate diode emulation. Compare its losses and control in DCM before choosing. The CCM calculation cannot decide the DCM case.

10.3 A different switching frequency

Keep the 30 % ripple at 60 V and resize L by (3.1a) for each fsf_s. The datasheet-only estimate at 48 V and 20 A (ours):

fsf_s LL ΔIL\Delta I_L at 48 V Efficiency
175 kHz 9.14 µH 5.70 A 97.16 %
250 kHz 6.40 µH 5.71 A 97.02 %
350 kHz 4.571 µH 5.71 A 96.82 %
500 kHz 3.20 µH 5.71 A 96.53 %
700 kHz 2.29 µH 5.72 A 96.14 %

Halving fsf_s to 175 kHz raises L to 9.14 µH. Our predicted efficiency rises from 96.82 % to 97.16 %. At 700 kHz, L falls to 2.29 µH and efficiency falls to 96.14 %. Output-charge, overlap, dead-time and gate-drive losses grow with frequency in this model.

The 350 kHz row uses our 4.571 µH rather than TI's 4.7 µH. This explains the small difference from §8.1's 96.83 %.

Before choosing a lower frequency, question the model. The sweep keeps the original DCR even as L changes. Its core-loss lower bound also becomes more optimistic at lower frequency. A larger inductor costs space and may have different losses. This sweep shows a trade-off. It does not establish an optimum.

Frequency choice. Keep 350 kHz for this comparison. Choose a new frequency only after you compare real magnetics, device losses and transient limits.

10.4 A different LC filter

Halve or double the 340 µF output bank. The filter's corner, characteristic impedance and resistive-load Q are

f0=12πL C,Z0=LC,Q=RZ0,ΔV≈ΔI Z0f_0=\frac{1}{2\pi\sqrt{L\,C}},\qquad Z_0=\sqrt{\frac{L}{C}},\qquad Q=\frac{R}{Z_0},\qquad \Delta V\approx\Delta I\,Z_0
(10.3a)
f0=12π4.7 μH⋅340 μF=3.98 kHz,Z0=118 mΩ,Q=0.6 Ω118 mΩ=5.1,ΔV≈1.18 Vf_0=\frac{1}{2\pi\sqrt{4.7\ \mu\mathrm{H}\cdot340\ \mu\mathrm{F}}}=3.98\ \mathrm{kHz},\qquad Z_0=118\ \mathrm{m\Omega},\qquad Q=\frac{0.6\ \Omega}{118\ \mathrm{m\Omega}}=5.1,\qquad \Delta V\approx1.18\ \mathrm{V}
(10.3b)
CC f0f_0 Z0Z_0 QQ at 20 A Open-loop ΔV\Delta V for the 10 A step
170 µF 5.63 kHz 166 mΩ 3.6 1.66 V
340 µF (TI) 3.98 kHz 118 mΩ 5.1 1.18 V
680 µF 2.82 kHz 83 mΩ 7.2 0.83 V

Halving or doubling C moves the corner by √2 but not the peak: without ESR and DCR the load alone, 0.6 Ω, damps the filter.

Without ESR and DCR, L and C cancel at f0f_0 and the peak ∣Zout∣|Z_{\mathrm{out}}| equals the load, RR = 0.6 Ω at full load, for every C. It grows as the load gets lighter and R rises. Then only ESR, DCR and the control loop limit it.

Z0Z_0 is what more capacitance buys: the open-loop deviation for a load step is about ΔI⋅Z0\Delta I\cdot Z_0, which the loop then reduces by the factor 1+T1 + T (Part II). The ideal model here ignores ESR, ESL and DCR. With TI's polymer, the ESR of §4.4 damps the peak further.

Capacitance choice. Keep 340 µF with TI's compensation for the comparison with the measured board. The 680 µF alternative lowers Z0Z_0 but adds hardware and changes the loop dynamics. It does not lower the ideal resonant peak. The 170 µF alternative saves space, but only a passing closed-loop load step can justify it. Either change needs a new compensation check, because this open-loop table does not prove the transient requirement.

11. What to retain

  1. Write the specification first, and label every limit as given (TI) or chosen (ours). A missing limit is a design decision, not a free parameter.
  2. Worst cases sit at the ends of the range. The inductor ripple peaks at the maximum input. The input-capacitor RMS current peaks at the duty nearest 0.5, here the minimum input.
  3. The load step, not the ripple, sizes the output bank. Then check the ESR against ∣ZC∣|Z_C| at crossover: a failed check moves the crossover or the bank. It does not go away.
  4. Check real parts under real conditions: ceramics under DC bias, the inductor at its peak and at the current limit, the input bank against measured ripple.
  5. The sign of the valley current and the dead time decide each switching edge. Name the device and the edge, and check charge and time, before calling anything ZVS.
  6. A model gap points to an input first. The max-rated polymer ESR explains the loop gap. The impedance-curve core loss explains most of the loss gap.
  7. Estimate from datasheets, then calibrate against measurement. The fit says what we missed, never what we predicted.

12. Training: problem-driven exercises

Start each exercise by making a prediction. Sketch the current path or waveform before calculating. Then choose a model and solve the problem. Compare the alternatives and explain which one you would use.

Try the problem before reading its solution. For every exercise, state your choice, one benefit and one cost. Compare a credible alternative and name the condition or measurement that would change your choice. Keep the operating point and requirements clear.

Operating points. T4 works on PMP31349 itself, with the calibrated model of §8.4. The others need a mechanism that the finished GaN design hides: a diode buck, a deliberately saturating core, an authored filter or an authored loop. They use the simpler teaching model of Appendix E, a diode buck from 30–48 V to 24 V and 10 A at 100 kHz with 60 µH and 100 µF, or a stated variant of it.

Every Problem states its own operating point; never carry a number from one operating point to another.

E2–E5 examine the same LC network through four questions. How does it filter voltage (E2)? What output impedance does the load see (E3)? Where are its poles (E4)? What changes when feedback is added (E5)?

The filter equations impose an ideal switch-node voltage and place R across C. They require continuous conduction or a synchronous stage that permits current reversal. A diode buck in DCM needs Appendix E's three-interval model. The feedback examples describe small changes about a positive-current CCM equilibrium. Keep the load resistance R separate from the series resistance r.

The exercises go beyond the live route. Session 3 works one or two of them in class; the rest are assigned as reading.

T1 — Ripple shape: rounded, triangular or rectangular?

Problem

The scope shows the output ripple of a buck. On one board it is rounded, almost sinusoidal; on a second it is a triangle; on a third it carries a step at every switching edge. If the waveform becomes more angular, which part of the output capacitor is responsible, and how would you prove it? Start with the simplest current waveform and find the contribution of each parasitic on its own.

Operating point. A prescribed capacitor current: the 2 A peak-to-peak, zero-mean triangle of the teaching model at 48 V input and 100 kHz, into CC = 100 µF with series resistance rCr_C (ESR) and series inductance lCl_C (ESL). The current is imposed; the converter around it is not solved.

Why we do it

The shape of the ripple is the first clue the scope gives about which impedance dominates. Read it right and you know whether to add capacitance, lower the ESR or shorten the current loop. Read it wrong and you buy the wrong part. The same ESR also moves the loop (§4.4, §7.2), so a misread parasitic costs twice.

What matters

Model the output-capacitor branch as an ideal capacitance CC with series rCr_C and lCl_C. For branch current iCi_C, with a consistent passive voltage reference:

vterminal=vC+rCiC+lCdiCdt,dvCdt=iCC.v_{\mathrm{terminal}}=v_C+r_Ci_C+l_C\frac{di_C}{dt},\qquad \frac{dv_C}{dt}=\frac{i_C}{C}.

Where it appears in practice

Possible solutions

Solution A — superpose the three terms in the time domain. For the ideal CCM buck with approximately constant load current, iCi_C is a continuous, zero-mean triangle. Its three voltage contributions have different shapes:

Term Operation on the triangular current Resulting shape
Ideal capacitance Integrate current Continuous, piecewise parabolic; rounded and often approximately sinusoidal in appearance
ESR Multiply current by rCr_C Continuous triangular component
ESL Multiply current slope by lCl_C Piecewise constant component, with steps where the current slope changes

Increasing the ESR alone therefore moves this ordinary buck's output ripple toward a triangle; it does not generate a square wave. A rectangular contribution points to a different current waveform or to the derivative term. E1 asks which inductor model provides exactly such an additional current component.

Prescribe the 2 A peak-to-peak triangle at 100 kHz into CC = 100 µF and vary only the capacitor parameters, so the comparison isolates their voltage contributions:

ESR, with ESL = 0 ESR-only ripple magnitude Total computed terminal ripple
0 0 25.0 mV peak-to-peak
10 mΩ 20 mV peak-to-peak 29.0 mV peak-to-peak
100 mΩ 200 mV peak-to-peak 200.0 mV peak-to-peak

Why 25 mV + 20 mV does not equal 45 mV here: the capacitive and ESR extremes occur at different instants. Adding their peak-to-peak magnitudes is a conservative bound; summing their instantaneous waveforms gives the actual result. At high ESR, the triangle dominates.

The current slopes of this symmetric triangle are ±0.4 A/µs. An illustrative 50 nH of effective series inductance adds ±20 mV, a 40 mV peak-to-peak rectangular contribution. This ESL value is an intentionally visible capacitor-plus-connection example, not a selected capacitor's specification.

The same prescribed capacitor current with separate ESR and ESL sweeps, showing rounded, triangular and rectangular voltage contributions.

Solution B — read the branch impedance against frequency. In a simple model the ESR adds a zero at 1/(2πrCC)1/(2\pi r_C C) to the capacitor branch; the ESL adds a series resonance above it. Whichever term dominates ∣Z∣|Z| at fsf_s and its first harmonics sets the shape: the capacitive slope gives the rounded wave, the flat ESR shelf the triangle, the inductive rise the steps.

This is the view §4.4 uses for TI's bank, and it shows at once that the same ESR zero also changes the loop phase (§7.2).

Solution C — change one thing, in the model or on the bench. Set the ESL to zero and sweep the ESR. Then restore a fixed ESR and vary only the ESL. On hardware, swap one capacitor type at a time and probe at the capacitor terminals with the shortest ground connection available.

Analog Devices' Input and Output Noise in Buck Converters Explained separates the capacitive, ESR and high-frequency parasitic contributions this way.

Pros and cons

Solution Pros Cons
A. Time-domain superposition Exact for a prescribed current; shows the instantaneous shape and why peak magnitudes do not add Needs the current waveform; does not solve how a changed component alters the converter's own current
B. Impedance against frequency Fast; ranks the terms at fsf_s; links ripple and loop through the same ESR zero Loses the time shape and the phase between the terms; one frequency hides the harmonics
C. Change one thing Separates cause from effect; works on real hardware Each run answers one question; the probe adds its own loop, ringing and pickup

Conclusion

Use time-domain superposition first to explain the shape. It separates capacitance, ESR and ESL with little calculation, but assumes a prescribed capacitor current. Use the impedance view when the frequency range matters, and a switching model when that current assumption fails.

For the 100 mΩ case, investigate ESR before buying more capacitance: its triangular contribution dominates. For an edge step, first repeat the measurement with a short probe return. Then change one suspected element. A terminal-current jump is another explanation, examined in E1.

Our next action follows the observed shape. We do not select a replacement capacitor until a change-one-thing check supports the cause.

T2 — Is a CCM buck a current source?

Problem

An LED string or a battery needs a set mean current, not a set voltage. A designer proposes the teaching-model buck at a fixed duty and argues that its inductor already makes the current smooth. Does a fixed-duty CCM buck regulate current? If not, how would you deliver a commanded mean current, and what does each way cost?

Operating point. Teaching model, diode buck: VinV_{\mathrm{in}} = 48 V, LL = 60 µH, fsf_s = 100 kHz. Fixed duty DD = 0.5 into a 2.4 Ω or 4.8 Ω resistor, or into a stiff voltage such as an LED string or a battery. For the peak-controlled routes: a commanded peak of 1 A, with the load voltage between 12 V and 36 V.

Why we do it

Smooth current and regulated current are different requirements. An inductor makes current continuous on a short timescale; a current source must hold its mean delivered current close to a setpoint as the load voltage changes. Mixing up the two is a common design error, and it hides until the load voltage moves.

What matters

The duty sets a voltage. At fixed duty, the ideal CCM steady-state relations are:

Vo=DVin,Io=DVinR.V_o=DV_{\mathrm{in}},\qquad I_o=\frac{DV_{\mathrm{in}}}{R}.

At DD = 0.5 a 2.4 Ω load takes 10 A and a 4.8 Ω load takes 5 A, and both stay in CCM with 60 µH. The duty sets a voltage, not a current independent of the load.

A stiff load has no preferred current. A battery or an LED string imposes a fairly stiff voltage instead of behaving as a resistor. For the ideal averaged inductor:

LdILdt=DVin−Vo.L\frac{dI_L}{dt}=DV_{\mathrm{in}}-V_o.

If the imposed output voltage equals DVinDV_{\mathrm{in}} exactly, any initial mean current is an equilibrium of this simplified model: there is no preferred setpoint. A small mismatch makes the current drift instead of restoring it. At 48 V, an absolute duty error of 0.01 gives a 0.48 V average error across L, an initial slew of 8 A/ms with 60 µH, before load dynamics or resistance restore balance.

Compliance. The requested current must lie within the available output-voltage range and the component ratings. An open load cannot absorb a programmed current, so the controller needs a voltage ceiling. These limits define the compliance range.

Where it appears in practice

Possible solutions

Solution A — let the passive stage do it: more inductance, or the series resistance. Double LL while keeping VinV_{\mathrm{in}}, DD and RR fixed in ideal CCM: the ripple halves, and the settled mean current remains DVin/RDV_{\mathrm{in}}/R. Inductance changes ripple and dynamics, not the ideal fixed-duty DC current; a larger L only slows the drift above. With series resistance and a diode drop, an approximate CCM relation is:

Io≃DVin−(1−D)Vf−VorL+DrQ.I_o\simeq\frac{DV_{\mathrm{in}}-(1-D)V_f-V_o}{r_L+Dr_Q}.

The resistance does set a current, but poorly. At fixed DD, a 0.2 V change of the imposed output voltage moves the current by about 1 A if the effective series resistance is 0.2 Ω. Lower resistance improves efficiency and makes this open-loop current sensitivity larger, and temperature moves the winding resistance, the MOSFET resistance and the diode drop.

The right-hand plot of the DCM example in Appendix E shows these local slopes; negative-current extrapolations need a bidirectional stage and lie outside the diode-buck CCM domain.

Appendix E.8 gives a complete fixed-duty comparison. It changes inductance through CCM, the zero-current boundary and DCM, with independent charge and power checks. Appendix E.9 applies this reasoning to an inverter's neutral leg and compares alternative control approaches.

Solution B — an average-current loop in CCM. Sense the current, compare it with a reference and adjust the duty so that the mean current error is driven toward zero. A current-regulated CCM buck is entirely practical; a battery charger or LED driver uses this principle within its voltage and duty limits.

The difficulty of Solution A concerns operation with a fixed duty or with voltage regulation only, not a fundamental inability of CCM to act as a controlled current source. Peak control is not automatically average-current regulation. In CCM, approximately Io=Ipk−ΔIL/2I_o = I_{\mathrm{pk}} - \Delta I_L/2.

If the ripple changes with the input or output voltage, a constant peak limit lets the mean current move. Average-current accuracy needs the appropriate sensing and loop objective; a peak-current ceiling by itself is a protection limit. A current-mode controller inside a voltage regulator can use peak current to regulate its power stage while the outer loop still regulates voltage.

Solution C — peak control in boundary mode. In ideal boundary operation with peak-current control, each pulse starts at zero, rises to the commanded peak and returns to zero just as the next pulse begins. The current has no inherited valley to determine, and its area gives:

Io=1TsIpk(ton+td)2=Ipk2.I_o=\frac{1}{T_s}\frac{I_{\mathrm{pk}}(t_{\mathrm{on}}+t_d)}{2}=\frac{I_{\mathrm{pk}}}{2}.

This assumes approximately constant voltages during a cycle, linear ramps, no extra zero-current interval and no negative-current commutation area. The rising and falling ramps need not last equally long. For a buck with 0<Vo<Vin0 < V_o < V_{\mathrm{in}}:

ton=LIpkVin−Vo,td=LIpkVo,fBCM=1ton+td.t_{\mathrm{on}}=\frac{LI_{\mathrm{pk}}}{V_{\mathrm{in}}-V_o},\qquad t_d=\frac{LI_{\mathrm{pk}}}{V_o},\qquad f_{\mathrm{BCM}}=\frac{1}{t_{\mathrm{on}}+t_d}.

With VinV_{\mathrm{in}} = 48 V, LL = 60 µH and a commanded 1 A peak: at VoV_o = 24 V, ton=tdt_{\mathrm{on}} = t_d = 2.5 µs, the switching frequency is 200 kHz and the mean current 0.5 A. If the imposed output voltage falls to 12 V, tont_{\mathrm{on}} becomes 1.667 µs and tdt_d 5 µs; the frequency falls to 150 kHz, but the mean current stays 0.5 A.

At 36 V the ramp durations exchange and the mean current is again 0.5 A. A controlled 1 A peak delivers a 0.5 A mean, and the load decides the voltage: a 24 Ω resistor settles at 12 V, a 48 Ω resistor at 24 V.

An open circuit, or a load needing Vo≥VinV_o \geq V_{\mathrm{in}}, lies outside this compliance range.

The current is not set by inductance alone. With fixed ON time, L and the applied voltage set the peak. With a fixed peak threshold, changing L mainly changes the time to reach that peak, and so the frequency. The control law is part of the current-source behaviour.

This is a useful current-regulation architecture: the controller sets a peak and detects the zero-current boundary, while the load determines the voltage required to accept that current. Sensor error, propagation delay, nonlinear inductance and additional commutation intervals introduce practical current error.

Solution D — pulse charge in DCM. In DCM the same current triangle is followed by a zero-current interval. Its occupied fraction of the period is:

ρ=ton+tdTs=D+δ<1.\rho=\frac{t_{\mathrm{on}}+t_d}{T_s}=D+\delta<1.

The delivered charge per cycle and the mean current are:

Qo=Ipk2(ton+td),Io=fsQo=Ipk2ρ.Q_o=\frac{I_{\mathrm{pk}}}{2}(t_{\mathrm{on}}+t_d),\qquad I_o=f_sQ_o=\frac{I_{\mathrm{pk}}}{2}\rho.

Why the denominator matters: Ipk/2I_{\mathrm{pk}}/2 is the mean during the triangle, not over a full DCM period. At VoV_o = 24 V and a 1 A peak the triangle lasts 5 µs and delivers 2.5 µC. Repeated every 5 µs it gives boundary operation and 0.5 A; repeated every 10 µs it gives DCM, ρ\rho = 0.5 and IoI_o = 0.25 A. The repetition rate sets the mean.

Peak control alone is not enough at a fixed DCM frequency. Keep the 1 A peak and 100 kHz repetition rate. At VoV_o = 12 V or 36 V, the triangle lasts 6.667 µs and gives 0.3333 A mean. At 24 V, the mean is 0.25 A. The DCM mean therefore still depends on VoV_o:

Io=D22Lfs(Vin2Vo−Vin).I_o=\frac{D^2}{2Lf_s}\left(\frac{V_{\mathrm{in}}^2}{V_o}-V_{\mathrm{in}}\right).

At DD = 0.15 this gives 0.135 A at 19.2 V and 0.060 A at 28.8 V, both in DCM. To hold the current, control the pulse area or the repetition rate, compensate for the conducting fraction, or close an average-current loop; feedforward can estimate the duty while feedback corrects losses and uncertainty.

Every such calculation needs a physically valid ρ<1\rho < 1. This pulse-charge view explains why DCM and boundary operation can be especially convenient for current delivery: resetting the inductor current removes one inter-cycle initial-current uncertainty. It does not remove output-capacitor state, load compatibility or the need to define a controller.

DCM is not an ideal current source either, and the two-state CCM transfer functions of E2–E5 must not be carried unchanged into DCM or variable-frequency boundary operation.

Identical peak-controlled current triangles at boundary and DCM repetition rates, and their different mean-current dependence on imposed output voltage.

Pros and cons

Solution Pros Cons
A. Passive: more L, or the series resistance No sensor and no controller Sets no current: L only slows the drift; the resistance gives a poor, temperature-dependent setpoint and costs efficiency
B. Average-current loop, CCM Accurate mean current at fixed frequency; low ripple, so low RMS current Needs a current sensor and a compensated loop; a peak ceiling alone is not this loop
C. Peak control, boundary mode Mean current Ipk/2I_{\mathrm{pk}}/2 independent of VoV_o in the ideal model; each pulse starts at zero, so commutation is favourable Variable frequency (200 kHz to 150 kHz here); for a 0.5 A mean, 1 A peak and 0.5774 A RMS instead of about 0.5 A in low-ripple CCM, about one-third more winding I²R loss; sensor error, delay and nonlinear L add current error
D. Pulse charge, DCM Every pulse starts at zero, which removes the inherited initial current A fixed peak at fixed frequency does not hold the mean; shorter occupied fractions raise the RMS-to-mean ratio further; the CCM transfer functions of E2–E5 do not carry over

For the ideal triangles of C and D, the inductor RMS current is Ipkρ/3I_{\mathrm{pk}}\sqrt{\rho/3} against a mean of Ipkρ/2I_{\mathrm{pk}}\rho/2. Easier pulse-current control and favourable commutation have a conduction-loss cost.

Conclusion

A fixed-duty CCM buck does not set a preferred current. More inductance slows a current change but does not regulate its mean.

For accurate mean current at fixed frequency, choose the average-current loop. It needs sensing and compensation, but keeps ripple and RMS current low. A peak ceiling alone is not an equivalent regulator.

Boundary peak control is a valid alternative when variable frequency and higher RMS current are acceptable. Here it delivers half the peak current in the ideal model. Choose fixed-frequency DCM only with pulse-area or repetition-rate control, or feedback that corrects the mean.

For a charger requiring accurate current, keep the average-current loop as the design route. For a driver prioritising simple boundary operation, investigate the peak-controlled alternative. State the compliance range and current-error budget before selecting hardware.

T3 — Saturation: is the peak current safe?

Problem

An inductor passes the steady-state ripple and RMS checks, and the voltage loop is stable at every operating point. Can a load step or an input step still drive the inductor into saturation? If so, what would you add to keep the peak current safe, and what does it cost?

Operating point. Teaching model, a buck whose freewheeling path carries positive current only (diode emulation), regulated to 24 V at about 8 A, fsf_s = 100 kHz, CC = 100 µF, winding resistance 50 mΩ. Disturbances: a load step from 3 Ω to 2 Ω at VinV_{\mathrm{in}} = 48 V, and an input step from 30 V to 48 V at RR = 3 Ω.

Authored magnetic curve: 60 µH up to 14 A, falling linearly to 6 µH at 18 A, and 6 µH above that, with no hysteresis, thermal dependence or core loss. A real Isat rating normally describes a specified percentage inductance drop, rather than an abrupt universal failure current; use the manufacturer's bias and temperature information.

The sampled voltage controller sees only the output voltage:

en=24−vo(nTs),dn=clip(xn+Kpen, 0.02, 0.95),e_n=24-v_o(nT_s),\qquad d_n=\mathrm{clip}(x_n+K_pe_n,\ 0.02,\ 0.95),
xn+1=xn+KiTsen,x_{n+1}=x_n+K_iT_se_n,

with KpK_p = 0.03 duty/V and KiK_i = 100 duty/(V·s), one duty update per period, and the integrator frozen when it would push the duty further beyond a bound. This simple anti-windup acts at those bounds; it does not track the separate current-limit override. Its local linear sampled model has all poles inside the unit circle at the three nominal conditions, so local voltage-loop instability is not required to produce a current excursion.

This is an intentionally weakly damped teaching loop, not an optimised regulator or a model of a particular IC.

Why we do it

Voltage regulation commands energy delivery in response to the output error. By itself it imposes no instantaneous ceiling on the current in the inductor or the switch. The steady-state checks are the easy ones; the transient peak decides whether the part survives. This is a limitation of an unprotected voltage-only control path, not a rule that every voltage-mode regulator lacks protection.

A voltage-mode controller may include a separate fast current comparator, overload timer and shutdown logic; the PWM regulation architecture and its fault protections must be assessed separately.

What matters

Flux linkage accumulates over cycles. Do not impose the steady-state conversion ratio on every cycle:

λn+1−λn=∫nTs(n+1)TsvL(t) dt,vL=vx−vo−rsiL.\lambda_{n+1}-\lambda_n=\int_{nT_s}^{(n+1)T_s}v_L(t)\,dt,\qquad v_L=v_x-v_o-r_si_L.

For linear L this flux-linkage change is L times the current change. In periodic steady state the integral is zero. During a transient it can be positive for several consecutive periods, moving the current and the flux to a higher operating point. That is how the converter meets a new load; a nonzero cycle integral is not automatically a fault.

Saturation steepens the ramp. For a nonlinear but memoryless magnetic characteristic, define the differential inductance:

Ldiff(i)=dλdi,didt=vLLdiff(i).L_{\mathrm{diff}}(i)=\frac{d\lambda}{di},\qquad \frac{di}{dt}=\frac{v_L}{L_{\mathrm{diff}}(i)}.

As the core approaches saturation, LdiffL_{\mathrm{diff}} falls, and the same 24 V across L rises at 0.4 A/µs with 60 µH but 4 A/µs with 6 µH. A controller still requesting ON time can therefore underestimate the peak severely if its design assumes constant L.

Do not use v=d[L(i)i]/dtv = d[L(i)i]/dt with a datasheet differential-inductance curve as though L(i)iL(i)i were the flux linkage: integrate the curve to obtain λ(i)\lambda(i), and use λ\lambda as the magnetic state.

Authored differential-inductance and flux-linkage curves, showing the saturation knee and a peak-trip setting below it.

Where it appears in practice

Possible solutions

Each solution is compared with the same voltage controller and the same disturbances. Peaks and energy checks use a 2 ms simulation with the disturbance at 0.2 ms (scripts/saturation_transient_example.py):

Disturbance, starting at 24 V and approximately 8 A Linear 60 µH, no current trip Saturable L, no current trip Saturable L, 13 A trip plus 200 ns delay
Load resistance 3 Ω → 2 Ω at VinV_{\mathrm{in}} = 48 V 16.30 A peak 18.49 A peak 13.083 A peak
Input 30 V → 48 V with RR = 3 Ω 21.58 A peak 48.73 A peak 13.076 A peak

For the load step the final load current is about 12 A, below the 14 A knee, yet the unprotected transient crosses the knee into the 6 µH region. The input step is worse: the nonlinear curve more than doubles the peak that a constant-60-µH calculation predicts.

Solution A — a bigger core. Keep the controller and choose an inductor that stays linear past the largest transient peak: the linear column says above 21.58 A in this example, plus margin for tolerance and temperature. No new circuit is needed, and the loop sees the inductance it was designed for.

Solution B — a separate fast peak-current comparator. Keep the existing inductor and voltage loop. Add a comparator with a 13 A trip, below the saturation knee. Allow an illustrative 200 ns propagation delay. After a trip, hold the switch off for the rest of the period.

If current remains at or above the threshold at the next cycle start, skip that ON pulse. The simulated peaks are 13.083 A and 13.076 A. They exceed 13 A because current keeps rising during the comparator and gate-drive delay:

Ipk≃Itrip+vL,onLdiff tdelay.I_{\mathrm{pk}}\simeq I_{\mathrm{trip}}+\frac{v_{L,\mathrm{on}}}{L_{\mathrm{diff}}}\,t_{\mathrm{delay}}.

With about 24 V, 60 µH and 200 ns the extra rise is about 80 mA, consistent with the protected traces. If the comparator acted only after LdiffL_{\mathrm{diff}} had fallen to 6 µH, the same voltage and delay would add about 0.8 A. With zero delay the trip caps the current at 13 A, which makes the delay overshoot directly measurable.

Switched load-step and input-step responses using the same sampled voltage PI, comparing linear inductance, unprotected saturation and a separate peak-current trip.

The figure shows the first 550 µs after each event, a transient window, not a claim that every trace has settled. The output-voltage and delivered-duty panels show the price of limiting current: in the input step even the protected model reaches about 30.02 V at its output. Limiting the current below the knee does not by itself prevent an output overvoltage.

Solution C — shape the disturbance instead of clipping it. Input-voltage feedforward cuts the duty disturbance of a line step. Appropriate voltage compensation, soft start, anti-windup and enough transient energy storage reduce unnecessary excursions. Sustained overload may need longer OFF intervals, foldback, hiccup or shutdown. None of these sets a hard instantaneous ceiling.

Solution D — peak-current-mode control. Make the current comparator the PWM itself: every ON pulse ends when the sensed current reaches the command, and a clamp on the command is a cycle-by-cycle limit. This is how the LM5148 runs PMP31349 (§7.1). The sensing, blanking and timing constraints of B remain.

Pros and cons

Solution Pros Cons
A. Bigger core No added circuit; the loop keeps its designed inductance Size, weight and cost; sized for the largest transient, not the operating point; still no protection against a fault or a short
B. Separate peak comparator Hard ceiling within one pulse, below the knee; works with any voltage loop Overshoot from delay, sensing error, threshold tolerance and blanking; does not stop output overvoltage (30.02 V here) or establish safe average power or fault behaviour in sustained overload, especially when little output voltage is available to ramp current down
C. Feedforward, soft start, anti-windup, foldback Smaller excursions and gentler start-up; foldback or hiccup bounds fault power No instantaneous ceiling; depends on modelling the disturbance correctly
D. Peak-current-mode control The limit is built into every cycle; the current loop also simplifies the voltage loop (§7.1) Needs slope compensation and clean current sensing; the same delay overshoot as B; a peak limit is not an average-current limit (T2)

Conclusion

Keep the separate fast peak comparator for this transient problem. A stable voltage loop does not enforce the magnetic limit. The 13 A trip keeps the demonstrated peaks below the 14 A knee, while the delay explains why they exceed 13 A.

A larger core is an alternative when the required normal transient needs more current. It costs magnetic hardware and still needs an overload check. Better damping can reduce excursions, but does not impose a hard ceiling.

Retain the trip and improve the transient response if necessary. If it interrupts a required load step, reconsider the core and threshold together. Include sensing error, delay, tolerance and temperature before treating that threshold as a hardware setting.

The model predicts electrical stress, not component failure. A slower average-current limit can miss a peak inside one pulse.

Change one thing: replace the saturable element by constant 60 µH, then restore it and add only the peak trip. Finally set comparator delay to zero. Each comparison isolates one cause.

Coilcraft explains the link between saturation and increased current slope. Analog Devices' AN-149 discusses voltage and current control and transient limiting.

T4 — Which parameter is worth improving? Sensitivity of PMP31349

Problem

A colleague has budget to improve one thing on PMP31349, to raise its efficiency and tighten its open-loop output: a lower-DCR inductor, a lower-resistance GaN stage, a faster switching edge, a larger inductance or a higher switching frequency. Which parameter matters most, and does the ranking still hold at light load? Rank the parameters at two operating points and say what your ranking depends on.

Operating point. PMP31349 at VinV_{\mathrm{in}} = 48 V and VoV_o = 12 V, fsf_s = 350 kHz (TI), at IoI_o = 20 A and at 5 A. The model is the calibrated loss model of §8.4: our datasheet parameters plus the terms fitted to TI's measurement (ti-pmp31349/scripts/sensitivity.py, sensitivity-checks.json).

Each parameter is raised by 10 % on its own. Every number in T4 comes from that file; the base efficiencies are ours, calibrated to TI, and the sensitivities are results of our calibrated model, not measurements.

Why we do it

A sweep shows how a model changes across a range; a local sensitivity is the slope at one specific point. A ranking without its operating point ranks nothing: the part that wins at full load can lose at light load. And the money for a better part is spent once, while the converter runs at every point of its range.

What matters

A local sensitivity is a tangent. The prediction for several small changes is

ΔVo≃∑p∂Vo∂pΔp,\Delta V_o\simeq\sum_p\frac{\partial V_o}{\partial p}\Delta p,

not a guarantee for a large change. Recompute the operating point when a change is large or crosses a mode boundary, such as the high side's change to hard turn-on (§8.3) or the CCM boundary (§10).

Absolute or normalised. An absolute sensitivity has units, such as V/Ω. A normalised sensitivity compares fractional changes:

SpVo=pVo∂Vo∂p,ΔVoVo≃SpVoΔpp.S_p^{V_o}=\frac{p}{V_o}\frac{\partial V_o}{\partial p},\qquad \frac{\Delta V_o}{V_o}\simeq S_p^{V_o}\frac{\Delta p}{p}.

Raising every parameter by 10 % is a normalised comparison. A specified change, such as "10 mΩ less", needs the absolute slope. Normalisation misleads near a zero nominal value.

Where it appears in practice

Possible solutions

Solution A — analytic derivatives of the averaged equation, open loop. Start from the loss-corrected volt-second balance of §8.2:

Vo=D (Vin−Iin rin)−Io[rL+rsh+D RHS+(1−D) RLS]−2 td fs VSDV_o=D\,(V_{\mathrm{in}}-I_{\mathrm{in}}\,r_{\mathrm{in}})-I_o\left[r_L+r_{sh}+D\,R_{HS}+(1-D)\,R_{LS}\right]-2\,t_d\,f_s\,V_{SD}

Here rshr_{sh} is the current shunt (rsr_s in §8.2; in T3 and E1 rsr_s is a winding resistance). Hold VinV_{\mathrm{in}}, IinI_{\mathrm{in}}, DD and IoI_o and differentiate:

∂Vo∂rL=∂Vo∂rsh=−Io,∂Vo∂RHS=−D Io,∂Vo∂RLS=−(1−D) Io,∂Vo∂rin=−D Iin,∂Vo∂fs=−2 td VSD.\frac{\partial V_o}{\partial r_L}=\frac{\partial V_o}{\partial r_{sh}}=-I_o,\qquad \frac{\partial V_o}{\partial R_{HS}}=-D\,I_o,\qquad \frac{\partial V_o}{\partial R_{LS}}=-(1-D)\,I_o,\qquad \frac{\partial V_o}{\partial r_{\mathrm{in}}}=-D\,I_{\mathrm{in}},\qquad \frac{\partial V_o}{\partial f_s}=-2\,t_d\,V_{SD}.

Why: the winding and the shunt carry the current for the whole cycle, the high side only during DD, the low side during 1−D1-D, and the dead-time drop grows with every switching edge. At DD = 0.2565 (20 A) the low side conducts for almost three quarters of the period.

Both sides are the same LMG2100R044 resistance in the model, so the ratio of their effects is D/(1−D)D/(1-D): +10 % gives −3.16 mV on the high side and −9.16 mV on the low side. This is the synchronous form of the diode-buck rule that a diode drop is especially visible at low duty (Appendix D): the low side has taken the diode's place.

The winding gives −10.0 mV at 20 A and −2.50 mV at 5 A, a ratio of four, as ∂Vo/∂rL=−Io\partial V_o/\partial r_L = -I_o predicts. The dead-time drop hardly depends on the load: +10 % fsf_s costs −2.10 mV at 20 A and −2.08 mV at 5 A.

Solution B — perturb the full loss model, one parameter at a time, regulated. Hold VoV_o = 12 V. Increase one parameter by 10 % and solve the operating point again. Retain ripple, partial high-side ZVS, fitted overlap and fitted core loss.

The calibrated base point at 20 A is 95.62 %, with DD = 0.2565. At 5 A it is 95.66 %, with DD = 0.2519. The table gives the efficiency change in percentage points. It also gives the fixed-duty output-voltage change at 20 A for comparison with Solution A.

Parameter Δη\Delta\eta, 48 V, 20 A Δη\Delta\eta, 48 V, 5 A Open-loop ΔVo\Delta V_o, 20 A
Turn-on overlap time (fitted) −0.0819 pp −0.0427 pp −0.0272 mV
Inductor DCR rLr_L −0.0776 pp −0.0216 pp −10.0 mV
Low-side resistance RLSR_{LS} −0.0713 pp −0.0201 pp −9.16 mV
Core-loss factor (fitted) −0.0490 pp −0.191 pp −0.0162 mV
Resistance rise with load (fitted) −0.0336 pp −0.00229 pp −0.0111 mV
Shunt rshr_{sh} −0.0266 pp −0.00738 pp −3.43 mV
Input-filter resistance rinr_{\mathrm{in}} −0.0245 pp −0.00600 pp −3.18 mV
High-side resistance RHSR_{HS} −0.0243 pp −0.00644 pp −3.16 mV
Output-charge factor (fitted) −0.0138 pp −0.0550 pp −0.00457 mV
Switching frequency fsf_s −0.0246 pp +0.177 pp −2.10 mV
Inductance LL +0.0840 pp +0.327 pp +0.0278 mV

Efficiency change for a +10 % change of each parameter at 48 V, at 20 A and at 5 A, on the calibrated model.

At 20 A, conduction and fitted overlap dominate. A 10 % parameter change affects efficiency by about 0.07–0.08 pp. At 5 A, the fitted core term dominates. Increasing LL by 10 % gains 0.327 pp because ripple falls. The fitted core loss scales with ΔIL2.2\Delta I_L^{2.2}.

The frequency result needs caution. Increasing fsf_s by 10 % gives +0.177 pp at light load in this model. The sign of the hardware improvement is not established.

At fixed LL, increasing fsf_s reduces flux swing: ΔB∝1/fs\Delta B \propto 1/f_s. Steinmetz gives P∝fα⋅ΔBβ∝fα−βP \propto f^{\alpha}\cdot\Delta B^{\beta} \propto f^{\alpha-\beta}. Our fitted term omits the fαf^{\alpha} factor. It therefore credits a saving near f−2.2f^{-2.2}, rather than f−(β−α)f^{-(\beta-\alpha)}. The actual core-loss saving may be much smaller. It may erase the predicted +0.177 pp net gain.

Decision. Use the ranking to choose what to investigate. Check the magnetic-loss model before changing frequency. §10.3 shows the same limitation. A sensitivity calculation describes the model we supplied.

The regulated view also says what the loop must supply. With equal high- and low-side resistance the duty of §8.2 is D≈[Vo+Io(rL+rsh+RLS)+2tdfsVSD]/VinD \approx [V_o + I_o(r_L + r_{sh} + R_{LS}) + 2t_d f_s V_{SD}]/V_{\mathrm{in}}, so ∂D/∂rL≈Io/Vin\partial D/\partial r_L \approx I_o/V_{\mathrm{in}}. The loop absorbs the open-loop shift of Solution A by adding duty, while efficiency and temperature still deteriorate.

Regulation hides the output-voltage sensitivity, not the loss; near the maximum duty a small added drop can leave the controller without headroom.

Solution C — a global sweep over the operating range. Recompute every point of the map, for example TI's 147-row efficiency grid of §8.3, instead of a tangent at two points. A sweep catches the mode boundaries that a slope cannot see: the high side's change to hard turn-on, the kink of §8.3, and the DCM edge of §10.2.

A continuous-looking surface beyond a mode boundary can be mathematically smooth and physically wrong. The ntbees2 Pareto study over fsf_s and LL (ti-pmp31349/figures/04_pareto_fs_L.svg) is such a sweep; it predates the parameter alignment and is cited as a side study only.

Pros and cons

Solution Pros Cons
A. Analytic derivatives, open loop Shows why each term matters (DD, 1−D1-D, IoI_o, fsf_s); checks B by hand Only the terms in the averaged equation; misses ripple, ZVS and core loss; open loop only
B. One-at-a-time perturbation, regulated Every loss term, the regulated converter, a ranking in efficiency Local and one parameter at a time; ranks what the model contains, fitted terms included; a 10 % step is not a specified part change
C. Global sweep Catches mode boundaries and nonlinear trends over the whole range Costly; harder to read as a ranking; still only as good as the model

Conclusion

At 20 A, investigate conduction resistance and switching overlap first. At 5 A, obtain better magnetic-loss evidence before changing a part: the ranking is dominated by a fitted core term.

Use the simple derivative to explain a mechanism. Use the regulated perturbation model to rank its local efficiency effect. A wider sweep is preferable when the change approaches a conduction-mode boundary, but needs more computation and careful interpretation.

For the proposed light-load frequency change, keep the hardware unchanged until the core model is improved. Its predicted benefit is not established by the fitted ripple term. At full load, compare actual resistance and switching candidates using the relevant losses.

Report the operating point, held quantities, regulated or fixed duty, and model limits. Keep percentage changes separate from percentage points. Check selected points with current area, volt-second balance or power balance.

E1 — Inductor loss: a step in the terminal current

Problem

Can an inductor have a step in its terminal current? The output ripple shows a step at each switching edge. Capacitor ESL is negligible. Compare at least two inductor models.

In the drawn model, rsr_s is in series with the parallel combination of LL and RpR_p. At switch turn-off, calculate the terminal-current jump, output-voltage jump and mean RpR_p loss. Use these four cases:

Which loss mechanisms can this RpR_p represent? Where does the model stop being useful?

Operating point. Use the teaching-model diode buck. Set VinV_{\mathrm{in}} = 48 V, LL = 60 µH and CC = 100 µF. The load is RR = 2.4 Ω and winding resistance rsr_s = 50 mΩ. Set fsf_s = 100 kHz and fixed duty to 0.5104167. This gives a 24 V mean output and 10 A mean load.

The output capacitor has ESR rCr_C and no ESL. Let iLi_L denote current in the ideal inductance and vLv_L its voltage. The terminal current delivered to the output is iti_t.

Explicit series winding resistance and parallel loss resistor around the ideal inductance, connected to a capacitor with ESR and a resistive load.

Why we do it

T1 showed that a rectangular ripple contribution needs a current jump or a derivative term. Yet an ideal inductor's current is continuous. Resolve the apparent contradiction by separating branch current from terminal current.

Then ask a second question: does this equivalent circuit describe the part, or did we choose it merely to reproduce the waveform?

What matters

Choose a model for the observed step. What independent impedance measurement could make you reject it?

Where it appears in practice

Solution

Released after the deadline in the Enrolled companion.

E2 — Design the LC filter frequency first

Problem

Can you start the design from the filter, rather than choosing L from a current-ripple percentage? Treat the buck as a PWM source driving an LC filter loaded by R. Choose LL and CC for a natural frequency of 2 kHz with Butterworth damping, ζ=1/2\zeta = 1/\sqrt{2}, at the nominal load.

Then find the attenuation at fsf_s, the switching ripple at the output (from the fundamental alone and with the harmonics), the inductor ripple, and the damping if the load resistance rises to 12 Ω. Compare your design with the ripple-first design of the teaching model, 60 µH and 100 µF.

Operating point. Teaching model: VinV_{\mathrm{in}} = 48 V, DD = 0.5, fsf_s = 100 kHz, RR = 2.4 Ω (24 V, 10 A), with an ideal imposed switch-node voltage and continuous conduction.

Why we do it

The output ripple is what remains of the switching spectrum after the filter. The usual ripple equations are a compact time-domain route to the same result; the frequency view also exposes the passband gain, the resonant peak and how both change with the load. A duty ratio varying slowly relative to the switching frequency changes the low-frequency component of the switch-node voltage; the filter passes that component and attenuates the carrier and its harmonics.

A Class-D amplifier is designed this way, and the buck shares its filter. A full audio amplifier also needs suitable signal bandwidth, bridge arrangement and treatment of output DC; this exercise reconstructs a DC output.

What matters

For an ideal voltage source driving series L into C in parallel with R, the filter transfer and its standard second-order parameters are:

H(s)=vo(s)vx(s)=1LCs2+(L/R)s+1,H(s)=\frac{v_o(s)}{v_x(s)}=\frac{1}{LCs^2+(L/R)s+1},
ω0=1LC,Z0=LC,ζ=Z02R,Q=RZ0.\omega_0=\frac{1}{\sqrt{LC}},\qquad Z_0=\sqrt{\frac{L}{C}},\qquad \zeta=\frac{Z_0}{2R},\qquad Q=\frac{R}{Z_0}.

Recommend a design route for this application. Name the requirement that favours it and a changed requirement that would favour the other route.

Where it appears in practice

Solution

Released after the deadline in the Enrolled companion.

E3 — How stiff is the output? The output impedance of the LC

Problem

What does the load see when it asks for more current? Derive the source impedance seen from the output terminals with the duty fixed, first without and then with the load resistor. A load step of 5 A may move the output by no more than 50 mV.

Compare three ideal filters with the same natural frequency: 60 µH / 100 µF at 2.4 Ω, 15 µH / 400 µF at 2.4 Ω, and 60 µH / 100 µF at 12 Ω. Give f0f_0, Z0Z_0, ζ\zeta and the loaded impedance at 100 Hz and at ω0\omega_0, and the inductor ripple at 48 V input.

Propose ways to meet the target.

Operating point. Use the teaching model at 24 V output. Compare RR = 2.4 Ω (10 A) with 12 Ω (2 A). Set VinV_{\mathrm{in}} = 48 V and fsf_s = 100 kHz. Keep duty fixed and assume ideal components, with series resistance rr = 0. Both cases are in continuous conduction.

Why we do it

A regulator is judged by how little its output moves when the load changes. Before any loop, the passive LC sets that behaviour, and the impedance view shows where it is weak. It also answers a question the ripple view cannot: whether two filters with the same corner frequency behave the same for the load.

What matters

Look back into the output with duty fixed. Suppress the independent input-voltage perturbation. Where does the input end of L sit for AC? Draw the impedance seen from the output port, including L, C and series resistance r.

Choose how to meet the stiffness target. Compare the current stress, damping and hardware cost of your proposal with one alternative.

Where it appears in practice

Solution

Released after the deadline in the Enrolled companion.

E4 — Place the poles of the buck

Problem

If the buck is a PWM voltage source driving a second-order network, which dynamics can you choose, and with what? Find the open-loop poles. Then assume both state deviations are measured, apply full-state feedback u^=−kv⋅v^o−ki⋅ı^L\hat{u} = -k_v\cdot\hat{v}_o - k_i\cdot\hat{\imath}_L with u^=Vin⋅d^\hat{u} = V_{\mathrm{in}}\cdot\hat{d}, and find kik_i and kvk_v for a natural frequency of 3 kHz and a damping ratio of 0.7.

Compare the free responses from a +100 mV capacitor-voltage error with zero current deviation, find the largest duty perturbation, and decide whether proportional voltage feedback alone could do the same.

Operating point. Use LL = 60 µH, CC = 100 µF and RR = 2.4 Ω. The input is VinV_{\mathrm{in}} = 48 V. Analyse small deviations about VoV_o = 24 V, IoI_o = 10 A and DD = 0.5. Use the ideal averaged CCM model.

Why we do it

Choosing L and C already places the poles, at one load. Feedback moves them. Seeing how many independent coefficients each kind of feedback can set explains why a current loop, or a dynamic compensator, appears in nearly every buck controller.

What matters

The deviation state equations are:

Li^˙L=u^−v^o,Cv^˙o=i^L−v^oR.L\dot{\hat i}_L=\hat u-\hat v_o,\qquad C\dot{\hat v}_o=\hat i_L-\frac{\hat v_o}{R}.

Choose a feedback arrangement for the requested poles. Explain its sensing cost and when a simpler arrangement would be sufficient.

Where it appears in practice

Solution

Released after the deadline in the Enrolled companion.

E5 — Feedback lowers the output impedance through 1 + T

Problem

How does feedback lower output impedance? Where does it stop helping? Derive the closed-loop output impedance using the open-loop impedance and T=Cc⋅GvdT = C_c\cdot G_{vd}. Assume unity voltage sensing.

For the compensator below, choose KK for a 5 kHz crossover. Find the phase margin and check the closed-loop poles. At 100 Hz, 1 kHz, 5 kHz and 10 kHz, tabulate ∣T∣|T| and ∣1+T∣|1 + T|. Include both open- and closed-loop output impedances.

Finally, add a +0.5 A current sink while keeping the 2.4 Ω resistor connected. Find the peak voltage dip with and without feedback.

Operating point. Teaching model: 48 V input, 24 V output, 10 A nominal load, LL = 60 µH, CC = 100 µF, RR = 2.4 Ω, series resistance rr = 50 mΩ, equilibrium duty 0.51042. Continuous-time averaged model, without delay, PWM sampling, ESR or ESL. Illustrative type III compensator, an authored teaching loop rather than the network of a particular IC:

Cc(s)=Ks(1+s/ωz)2(1+s/ωp)2,C_c(s)=\frac{K}{s}\frac{(1+s/\omega_z)^2}{(1+s/\omega_p)^2},

with two zeros at 1 kHz and two poles at 50 kHz. The plant is:

Gvd(s)=48LCs2+(L/R+rC)s+1+r/R.G_{vd}(s)=\frac{48}{LCs^2+(L/R+rC)s+1+r/R}.

Why we do it

Part I (§10.4) leaves the output impedance at Z0Z_0 and says that the loop must cut it down by 1+T1 + T. This exercise shows by how much, at which frequencies, and where feedback makes things worse instead of better.

What matters

Recommend how to divide the disturbance requirement between passive filtering and feedback. State the cost of each and the frequency range in which you rely on it.

Where it appears in practice

Solution

Released after the deadline in the Enrolled companion.

Appendix A — What power electronics does

Background to §1. No design step depends on this appendix; it places the buck among the converters of power electronics.

A.1 Definition

Power electronics comprises the technologies for the static conversion of electrical energy using semiconductors as switches. "Static" means that no rotating machine performs the conversion. The semiconductor is operated as a switch, not as an adjustable resistance; this is the property that the rest of the lesson builds on.

Power electronics converts electrical energy using semiconductor switches, storage elements and control. The purpose is to deliver the voltage, current, frequency or power flow required by a load with acceptable losses and size.

A.2 Classification by function

The first classification asks what kind of electrical quantity enters and leaves the converter:

Conversion Name Typical applications
DC → DC DC-DC converter Supply of battery-powered electronics; point-of-load converters, e.g. the supply of a microprocessor
AC → DC Rectifier Power supplies of every kind (consumer electronics, IT, household); telecommunications
DC → AC Inverter Uninterruptible power supplies (UPS); grid-connected photovoltaic systems
AC → AC Frequency converter Drives; AC supply units

The buck converter of this lesson is the simplest DC-DC converter. Many of the other classes contain a DC-DC stage or reuse its switching cell.

A.3 Classification by application

The second classification asks where the converter is used:

Beyond these, power electronics appears in household appliances, telecommunications, information technology, industry, transport and the energy sector.

A regenerative drive also needs a path for energy to return from the mechanical system. A converter is therefore more than a voltage ratio: isolation, current direction and allowed power-flow direction matter.

A.4 Voltage classes: what "low voltage" means

Ask an engineer what low voltage means and you may hear 60 V. Ask the European Low Voltage Directive (2014/35/EU) and the answer is 50–1000 V AC and 75–1500 V DC. "Low" there means below the medium-voltage grid, not safe to touch. The two answers belong to different questions.

The touch-safety question has its own limits. In the product-safety standard for IT and audio/video equipment, IEC 62368-1, energy class ES1 is the class an ordinary person may touch. Its voltage limits are 60 V DC and 30 V rms (42.4 V peak) AC; a circuit may alternatively qualify by limiting the touch current to 2 mA DC or 0.5 mA rms. The older IEC 60950-1 called the same idea SELV (safety extra-low voltage). Road vehicles draw the line in the same place: ISO 6469-3 applies its shock-protection requirements to voltage class B, above 60 V DC or 30 V AC.

These limits are conventions. Body impedance hand to hand is of the order of 2 kΩ at these voltages, so 60 V can still drive tens of milliamperes. The standards set the limit from current-effect data and duration, with margin; it is not one current multiplied by one resistance. Treat the number as a defined boundary and read the standard that applies to the product.

Why PMP31349 stops at 60 V. A 48 V bus stays below the 60 V DC boundary across its whole operating range, including charging. Below it, touch protection is not required. In a vehicle, that removes the insulation monitoring, orange cabling and interlocks of the high-voltage system. This is the reason for 48 V automotive and telecom systems. A 60 V maximum input (§1) is therefore not arbitrary. Moving the bus above 60 V would cut current and copper for the same power. It would also move the whole system into the protected class, a cost that often outweighs the copper saved at 48 V power levels.

Above the Low Voltage Directive's range, medium voltage begins; grid practice uses classes up to about 35 kV, with high voltage above. The exact boundaries differ between standards and countries, so quote the one that governs the product.

Appendix B — Why switch?

B.1 Switched-mode converters: advantages and costs

A switched-mode converter, also called a switching regulator or switched-mode power supply, operates its power semiconductors in only two states. A semiconductor is either off, so it carries no current, or fully on (saturated), so it has practically no voltage across it. Voltage and current therefore do not appear across the device at the same time, which gives far lower losses than a linear regulator.

Advantages Disadvantages
Lower losses, higher efficiency More complex circuit
Less cooling effort Higher cost
Smaller size Inductors are unavoidable
Output voltage can be higher than the input voltage (other topologies) Nonlinear behaviour
Galvanic isolation is possible, also in DC-DC converters (with a transformer) Switching produces ripple and interference that must be filtered

The last disadvantage is not on the original slide; it follows from the switching itself and returns in §4, §5 and §9, and in T1 (§12).

Worked comparison with a linear regulator. A linear pass element simultaneously supports a substantial voltage and conducts the load current. For a 48 V → 24 V, 10 A supply (the teaching model of Appendix E):

Po=24⋅10=240 W,Plinear=(48−24)10=240 W.P_o=24\cdot10=240\ \mathrm{W},\qquad P_{\mathrm{linear}}=(48-24)10=240\ \mathrm{W}.

Its idealized efficiency is only 50%. An ideal switch, by contrast, has zero voltage when conducting and zero current when blocking, so its instantaneous dissipation is zero in either state. Real switches have conduction resistance and finite transitions, so real switching converters still lose power. The inductor and capacitor allow the load to receive approximately continuous power while the semiconductor switches.

Why this matters: higher switching frequency allows smaller energy-storage components for a given ripple, but increases many switching-related losses. Frequency is a tradeoff, not a free way to shrink the converter.

B.2 Remarks: where the buck converter is used

The opening of the lesson compresses these remarks of slide 36; here they are in full.

Appendix C — From one switching event to PWM

C.1 Closing the switch starts a transient

Start with an ideal changeover switch S, inductor L, output capacitor C and load resistor R. Initially the capacitor is discharged. Connecting VinV_{\mathrm{in}} to the inductor starts a transient.

The German slides call the input UeU_e and the output UaU_a. After settling, the ideal inductor acts as a short and the capacitor as an open circuit:

Vo(∞)=Vin,IL(∞)=VinR.V_o(\infty)=V_{\mathrm{in}},\qquad I_L(\infty)=\frac{V_{\mathrm{in}}}{R}.

How the circuit gets there depends on the damping; a lightly loaded LC rings around the final value. During a short interval at the beginning, however, two simple statements hold: the output voltage changes only a little, and the inductor current rises approximately linearly, because almost the full input voltage appears across L:

vL=Vin−vo≈Vin,diLdt≈VinL.v_L=V_{\mathrm{in}}-v_o\approx V_{\mathrm{in}},\qquad \frac{di_L}{dt}\approx\frac{V_{\mathrm{in}}}{L}.

This holds when the interval is much shorter than the oscillation period and the time constants of the transient. For the teaching model of Appendix E, LL = 60 µH and CC = 100 µF give a natural period of

2πLC=2π60 μH⋅100 μF≈487 μs,2\pi\sqrt{LC}=2\pi\sqrt{60\ \mu\mathrm{H}\cdot100\ \mu\mathrm{F}}\approx487\ \mu\mathrm{s},

about 50 times the 10 µs switching period. This separation of time scales is the premise of the whole lesson: within one switching interval, voltages are almost constant and currents are almost straight lines. Part I starts from it in §2.1.

C.2 The buck as a Class-D amplifier

A buck stage is a switched voltage source followed by a low-pass network. Hold the duty ratio approximately constant and it delivers DC. Vary duty ratio slowly relative to switching frequency and the filtered output can follow a signal, which is the basic connection to Class-D amplification. A half-bridge or bridge and appropriate modulation are needed for bipolar output waveforms; the single-ended buck shown here produces a positive output.

Seen from the switch node, L and C with the load R form the loaded second-order low-pass of the recap (§12.2), and the recap's Class-D example (§12.3) designs exactly this filter for an audio band. For the teaching model the corner frequency 1/(2πLC)1/(2\pi\sqrt{LC}) is about 2.05 kHz, far below the 100 kHz switching frequency; for PMP31349 it is 3.98 kHz against 350 kHz (§10.4).

Exercise E2 (§12) designs a buck from this filter view.

Appendix D — The diode buck

The classical buck freewheels through a diode. PMP31349 replaces that diode with the low-side GaN switch (§6.1), but the diode buck remains the clearest place to see a constant-voltage loss, the drop at low duty and the third interval of DCM. The teaching model of Appendix E is a diode buck, and this appendix uses its numbers.

D.1 Realisation with a MOSFET and a diode

The changeover switch is built from a controlled switch and a diode. Low and medium powers use a MOSFET; larger powers use an IGBT. Bipolar transistors are no longer used for this purpose, because of their drive power. When the MOSFET is on, the diode blocks.

When the MOSFET turns off, the inductor current commutates into the diode, which turns on. Each state has its own equivalent circuit, the two switch positions of §2.1.

Asynchronous buck circuit: high-side switch, freewheel diode, inductor, output capacitor and resistive load.

Let x be the switch node. Inductor current flows from x toward the output; inductor voltage is measured from x to the output. The diode has its anode at the common return and cathode at x. It supplies a path for positive inductor current when Q turns off. Its symbol is labelled Dᶠ to distinguish the device from duty ratio D.

Interval Current path Ideal switch-node voltage Inductor voltage Current slope
Q ON, duration DTsDT_s Input → Q → L → output → return VinV_{\mathrm{in}} Vin−VoV_{\mathrm{in}} - V_o (Vin−Vo)/L(V_{\mathrm{in}} - V_o)/L
Q OFF, diode conducting Return → diode → L → output → return 0 −Vo-V_o −Vo/L-V_o/L
Q OFF, current already zero Both semiconductor paths off Approximately VoV_o Approximately 0 0

The third interval occurs in DCM (Appendix E.4). The switch node is no longer clamped to zero by a conducting diode. In the ideal small-ripple model it sits at VoV_o; real switch-node capacitances can ring. Replacing the diode by a second MOSFET gives the synchronous buck of Part I (§6) and of Appendix E.7.

D.2 Characteristic quantities of the ideal diode buck

Assume steady state, ideal semiconductors and small output-voltage ripple. Then each current in the circuit is a segment of the inductor current, or zero:

Current Interval 1, 0≤t<DTs0 \leq t < DT_s Interval 2, DTs≤t<TsDT_s \leq t < T_s Mean value
Output current ioi_o Vo/RV_o/R Vo/RV_o/R Io=Vo/RI_o = V_o/R
Inductor current iLi_L rises by ΔIL\Delta I_L falls by ΔIL\Delta I_L IL=IoI_L = I_o
Input current iini_{\mathrm{in}} iLi_L 0 D⋅IoD\cdot I_o
Diode current iDi_D 0 iLi_L (1−D)⋅Io(1-D)\cdot I_o
Capacitor current iCi_C iL−Ioi_L - I_o iL−Ioi_L - I_o 0

The peak-to-peak inductor ripple follows from either interval (§3.1), and the output-voltage ripple from the capacitor charge (§4.2):

ΔIL=(Vin−Vo)DLfs,ΔVo=ΔIL8fsC.\Delta I_L=\frac{(V_{\mathrm{in}}-V_o)D}{Lf_s},\qquad \Delta V_o=\frac{\Delta I_L}{8f_sC}.

Power balance. The output power is Po=Vo⋅IoP_o = V_o\cdot I_o. The input voltage is constant, so the input power is VinV_{\mathrm{in}} times the mean input current:

Pin=Vin DIo=VoIo=Po,Ploss=Pin−Po=0.P_{\mathrm{in}}=V_{\mathrm{in}}\,DI_o=V_oI_o=P_o,\qquad P_{\mathrm{loss}}=P_{\mathrm{in}}-P_o=0.

The ideal buck behaves like a lossless DC transformer with ratio D. It reduces voltage and increases mean current. At 48 V input and 10 A output, the source supplies 5 A on average. The diode also carries 5 A on average.

At 30 V input, DD = 0.8. The mean source current becomes 8 A and the mean diode current 2 A. D.6 adds the component losses.

D.3 Which current measure gives the power?

The converted power is the mean of the instantaneous power over a switching period, P=⟨v⋅i⟩P = \langle v\cdot i\rangle. Two special cases cover most of a converter's power and loss calculations, derived in the recap (§6.1, §6.2):

Element Model Power uses Buck examples
Constant voltage VV v=constv = \mathrm{const} V⋅IavgV\cdot I_{\mathrm{avg}} Input power Vin⋅D⋅IoV_{\mathrm{in}}\cdot D\cdot I_o; diode loss Vf⋅(1−D)⋅IoV_f\cdot(1-D)\cdot I_o
Resistance RR v=R⋅iv = R\cdot i R⋅Irms2R\cdot I_{\mathrm{rms}}^2 MOSFET ON resistance, winding resistance, capacitor ESR

A MOSFET that is on behaves resistively, so its conduction loss needs the RMS current. A diode with a constant forward drop needs the mean current. Using the wrong measure is the most common error in loss estimates.

D.4 Mean and RMS values with a freewheel diode

Two rules from the recap (§5.1–5.2, with its table of common waveforms) give every buck current without new integrals:

  1. Inserting a zero interval. If a known periodic waveform is compressed into the fraction DD of the period, with zero elsewhere, its mean is multiplied by DD and its RMS value by D\sqrt{D}.
  2. RMS of a sum. If two waveforms are orthogonal, i.e. the mean of their product is zero, their mean squares add: Xrms2=X1,rms2+X2,rms2X_{\mathrm{rms}}^2 = X_{1,\mathrm{rms}}^2 + X_{2,\mathrm{rms}}^2. The main application is splitting a waveform into DC and AC components.

The switch current is the inductor current kept for the fraction DD; the diode current is the same waveform kept for 1−D1-D. The inductor current itself is DC plus a zero-mean triangle.

For the CCM triangular inductor waveform, define:

J=Io2+ΔIL212.J=I_o^2+\frac{\Delta I_L^2}{12}.

Then, for the ideal two-interval waveforms:

Quantity Mean RMS
Inductor current IoI_o J\sqrt{J}
High-side switch current D⋅IoD\cdot I_o D⋅J\sqrt{D\cdot J}
Freewheel diode current (1−D)⋅Io(1-D)\cdot I_o (1−D)⋅J\sqrt{(1-D)\cdot J}
Output-capacitor current 0 ΔIL/12\Delta I_L/\sqrt{12}
Input current drawn by the stage D⋅IoD\cdot I_o D⋅J\sqrt{D\cdot J}

D.5 Pulsed current: the buck input and the boost output

Case 2: pulsed charging through a diode or switch. The capacitor receives charge in pulses while the load draws nearly constant current I. Between pulses, the capacitor supplies that current alone. Call this interval txt_x. The removed charge is a rectangle:

ΔV=I txC.\Delta V=\frac{I\,t_x}{C}.

The output capacitor of a boost converter works this way. In the buck, it is the input capacitor that sees pulsed current. If the source supplies only the mean input current D⋅IoD\cdot I_o, the input capacitor must supply the difference (1−D)⋅Io(1-D)\cdot I_o during the ON time DTsDT_s:

ΔVin=(1−D)Io DTsCin=D(1−D)IofsCin.\Delta V_{\mathrm{in}}=\frac{(1-D)I_o\,DT_s}{C_{\mathrm{in}}}=\frac{D(1-D)I_o}{f_sC_{\mathrm{in}}}.

Case 1, the triangular current of the output capacitor, is §4.2; §5 applies case 2 to PMP31349's input bank.

D.6 Where the losses come from

Like every switching converter, a real buck is not lossless. The losses are not caused by the operating principle (D.2), but by non-ideal components. The loss sources are:

Loss source Mechanism Scales mainly with
MOSFET ON resistance RDS(on)R_{DS(\mathrm{on})} Resistive conduction loss Switch RMS current squared
Diode forward voltage Constant drop, about 0.3 V to more than 2 V depending on voltage rating, current and switching speed Mean diode current
MOSFET switching loss Current and voltage coexist briefly during each transition Voltage, current, transition time and switching frequency
Diode reverse recovery Stored charge must be removed when the diode turns off Recovery charge, voltage and frequency
Winding resistance of the inductor Copper loss Inductor RMS current squared
Core loss of the inductor Remagnetisation loss in the core Flux swing (ripple) and frequency
Conductor resistance at high frequency Skin and proximity effect raise AC resistance (recap §2.7) Ripple harmonics and layout

Resonant converters were introduced historically to reduce switching losses. Today, where possible, soft switching is used instead: the circuit and timing make the voltage or the current zero at the transition (§6.2, D.10 and Appendix F). D.7–D.9 first model the three conduction losses analysed on the slides: winding resistance, MOSFET ON resistance and diode drop. §8.1 lists the losses of PMP31349, where the GaN low side has no body diode and so no reverse-recovery row.

D.7 A useful nonideal CCM model

Use inductor winding resistance rLr_L, MOSFET ON resistance rQr_Q and a constant diode forward drop VfV_f. With small current ripple, replace current in their voltage drops by IoI_o:

vL,on≃Vin−Vo−Io(rL+rQ),v_{L,\mathrm{on}}\simeq V_{\mathrm{in}}-V_o-I_o(r_L+r_Q),
vL,off≃−Vo−Vf−IorL.v_{L,\mathrm{off}}\simeq -V_o-V_f-I_or_L.

Volt-second balance gives:

Vo=DVin−(1−D)Vf−Io(rL+DrQ).V_o=DV_{\mathrm{in}}-(1-D)V_f-I_o(r_L+Dr_Q).

For a resistive load, substitute Io=Vo/RI_o = V_o/R:

Vo=DVin−(1−D)Vf1+(rL+DrQ)/R.V_o=\frac{DV_{\mathrm{in}}-(1-D)V_f}{1+(r_L+Dr_Q)/R}.

This is the model swept in buck_loss_parametric.ipynb. It is a CCM average model. Negative predicted output voltage or a computed current valley below zero tells us that its operating assumptions have failed; those regions must not be presented as valid diode-buck predictions. §8.2 gives its synchronous form for PMP31349.

Notebook-style sweeps of winding resistance, MOSFET ON resistance and diode forward drop at 30 V input and 1 Ω load. Only points consistent with the approximate CCM model are drawn.

D.8 Worked example: required duty changes

Choose illustrative rL=rQr_L = r_Q = 0.1 Ω and VfV_f = 1 V. At VoV_o = 24 V and IoI_o = 10 A:

D=Vo+Vf+IorLVin+Vf−IorQ.D=\frac{V_o+V_f+I_or_L}{V_{\mathrm{in}}+V_f-I_or_Q}.

At 30 V the required duty is 26/30 = 0.86667; at 48 V it is 26/48 = 0.54167. The ideal values were 0.8 and 0.5. The controller must increase duty to overcome the losses.

With only VfV_f = 1 V and zero resistances, the corresponding duties are 25/31 = 0.80645 and 25/49 = 0.51020. Diode conduction loss at 10 A is then about 1.94 W and 4.90 W respectively. Why worse at high input? Lower required duty means a larger fraction of the period is spent freewheeling through the diode.

D.9 Estimate dissipation with the correct current measure

The approximate CCM conduction losses are:

PL=rLJ,PQ=rQDJ,PD=Vf(1−D)Io.P_L=r_LJ,\qquad P_Q=r_QDJ,\qquad P_D=V_f(1-D)I_o.

For the full illustrative parasitic case at 48 V → 24 V, 10 A, DD = 0.54167, the OFF-slope estimate gives ripple about 1.986 A. The winding dissipates about 10.03 W, Q about 5.43 W, and the diode about 4.58 W. Conduction-only efficiency is approximately 92.29%.

These illustrative resistances are deliberately large enough to make their effects visible. This is not a prediction for a chosen converter. The mean-drop voltage model neglects small waveform corrections; including ripple in the RMS losses adds a small correction to its DC power balance.

Other losses include MOSFET voltage/current overlap during transitions, gate drive, device capacitance, diode reverse recovery, inductor core loss and frequency-dependent winding/connection loss. A first switching-overlap estimate is:

Psw≃12VinIo(tr+tf)fs.P_{\mathrm{sw}}\simeq\frac{1}{2}V_{\mathrm{in}}I_o(t_r+t_f)f_s.

At 48 V, 10 A, 40 ns combined transition time and 100 kHz this gives 0.96 W. It excludes capacitance and reverse recovery and assumes the stated overlap shape. It is a screening estimate, not a complete loss model.

Why soft switching can help: reducing switch voltage or current during the transition reduces overlap loss. It requires suitable circuit and timing conditions; simply operating at the CCM/DCM boundary does not prove that those conditions are satisfied.

D.10 Identify which device switches at zero, and at which edge

Boundary and DCM operation create natural current-zero events. Those events can simplify commutation and enable higher-frequency designs. However, zero inductor current, zero semiconductor current and zero semiconductor voltage are different conditions. Label the device and the turn-on or turn-off event before calling a transition ZCS or ZVS.

For the ordinary positive-current buck sequence:

Event What the current waveform provides What remains to check
Freewheel diode finishes conducting Its forward current reaches zero naturally Stored charge, subsequent reverse voltage and ringing; recovery stress is often reduced
High-side Q is commanded ON after the zero-current boundary Initial load-related inductor current is zero Q may still support a large VDSV_{DS}; capacitive discharge can cause turn-on loss
High-side Q is turned OFF at the positive current peak Boundary/DCM alone does not make its current zero Current/voltage overlap, capacitance charging and device-specific turn-off loss
A synchronous/resonant dead-time transition moves x toward VinV_{\mathrm{in}} Correctly directed current can discharge high-side output capacitance Enough commutating charge/energy and appropriate gate timing are required for high-side ZVS turn-on

ZCS describes negligible current through the relevant device at its switching event. ZVS describes negligible voltage across it at the relevant event, often gate turn-on for a MOSFET. A high-side buck MOSFET can start with zero load current while its output capacitance still holds substantial voltage. Thus a favorable load-current condition does not eliminate all turn-on energy.

To obtain high-side ZVS in a synchronous buck, the switch node must rise close to VinV_{\mathrm{in}} before that device is turned on. A suitably controlled negative inductor-current interval can provide that node transition during dead time. Resonant extensions can also exploit the L/CossL/C_{\mathrm{oss}} trajectory. The required polarity, energy and timing depend on VinV_{\mathrm{in}}, VoV_o, parasitic capacitances and the actual conduction paths.

A strict positive-triangle boundary waveform touching zero does not by itself establish this transition. §6.2 checks this transition for PMP31349's GaN half-bridge.

Once a deliberate negative valley or a finite resonant interval is added, recalculate the current area. The simple Io=Ipk/2I_o = I_{\mathrm{pk}}/2 expression applies to the ideal zero-valley triangle, not automatically to triangular-current-mode variants with negative current. This distinction matters when combining average-current accuracy with soft-switching control. A published buck example explicitly optimizes the required negative current: Tang et al., Optimization of Minimum Negative Current BCM Synchronous Buck Converter.

D.11 Sensitivity means “at this operating point”

T4 (§12) applies this method to PMP31349 with its calibrated loss model. Here it runs on the diode buck of D.7, where every derivative has a closed form.

Start by stating what is fixed

A sweep shows how a model changes across a range; a local sensitivity is the slope at one specific point. Before differentiating, state the operating point, the mode, and what is held fixed. For the following open-loop CCM calculation, hold VinV_{\mathrm{in}}, duty DD and resistive load RR fixed when varying a parasitic parameter. The output is allowed to change.

Define:

N=DVin−(1−D)Vf,A=1+rL+DrQR,Vo=NA.N=DV_{\mathrm{in}}-(1-D)V_f,\qquad A=1+\frac{r_L+Dr_Q}{R},\qquad V_o=\frac{N}{A}.

The local prediction for several small changes is:

ΔVo≃∑p∂Vo∂pΔp.\Delta V_o\simeq\sum_p\frac{\partial V_o}{\partial p}\Delta p.

This is a tangent approximation, not a guarantee for a large parameter change. Recompute the operating point and mode when a change is large or approaches the critical boundary.

Derivatives explain the sweep shapes

∂Vo∂Vin=DA,∂Vo∂Vf=−1−DA.\frac{\partial V_o}{\partial V_{\mathrm{in}}}=\frac{D}{A},\qquad \frac{\partial V_o}{\partial V_f}=-\frac{1-D}{A}.
∂Vo∂rL=−VoRA,∂Vo∂rQ=−DVoRA.\frac{\partial V_o}{\partial r_L}=-\frac{V_o}{RA},\qquad \frac{\partial V_o}{\partial r_Q}=-\frac{DV_o}{RA}.
∂Vo∂D=Vin+Vf−VorQ/RA.\frac{\partial V_o}{\partial D}=\frac{V_{\mathrm{in}}+V_f-V_or_Q/R}{A}.

Why: winding resistance acts throughout the conducting cycle. High-side ON resistance acts only during DD. Diode drop acts during 1−D1-D. Lower load resistance increases current and makes resistive drops more important. Notice also that the duty derivative includes the change of conduction resistance with duty; differentiating only the numerator would miss it.

For rQr_Q compared to rLr_L, the ratio of the absolute slopes is exactly DD in this model. But this compares equal changes measured in ohms. Component selection usually compares achievable changes, losses, cost and temperature, not just raw derivative values.

Worked comparison at two operating points

Hold VinV_{\mathrm{in}} = 30 V, RR = 2.4 Ω, rL=rQr_L = r_Q = 0.1 Ω and VfV_f = 1 V. Both operating points below are in CCM with LL = 60 µH and fsf_s = 100 kHz. Their output voltages differ because duty differs; this is a deliberate open-loop comparison.

Quantity DD = 0.2 DD = 0.8
VoV_o 4.9524 V 22.1395 V
IoI_o 2.0635 A 9.2248 A
∂Vo/∂Vf\partial V_o/\partial V_f −0.7619 V/V −0.1860 V/V
∂Vo/∂rL\partial V_o/\partial r_L −1.9652 V/Ω −8.5812 V/Ω
∂Vo/∂rQ\partial V_o/\partial r_Q −0.3930 V/Ω −6.8650 V/Ω

At DD = 0.2, reducing diode drop by 0.1 V raises output by about 76.2 mV, whereas reducing rQr_Q by 10 mΩ raises it by only 3.93 mV. At DD = 0.8, the same changes give about 18.6 mV and 68.7 mV respectively. The relative value of those two changes reverses with operating point.

This does not mean the diode is always the largest loss at low duty. The comparison includes the size of each proposed parameter change, and other losses may dominate. The lesson is to calculate the effect where the converter will actually operate.

Local diode sensitivity over duty and load, plus output changes predicted for separate 1% parameter increases at two operating points.

Winding-resistance sensitivity at several loads and DCM mean-current dependence on imposed output voltage.

The sensitivity map leaves points outside approximate CCM blank. A continuous-looking algebraic surface beyond a mode boundary can be mathematically smooth and physically wrong.

Absolute and normalized sensitivity answer different questions

An absolute sensitivity has units, such as V/Ω. A normalized sensitivity compares fractional changes:

SpVo=pVo∂Vo∂p,ΔVoVo≃SpVoΔpp.S_p^{V_o}=\frac{p}{V_o}\frac{\partial V_o}{\partial p},\qquad \frac{\Delta V_o}{V_o}\simeq S_p^{V_o}\frac{\Delta p}{p}.

For the parasitics:

SrLVo=−rLRA,SrQVo=−DrQRA,SVfVo=−(1−D)VfN.S_{r_L}^{V_o}=-\frac{r_L}{RA},\qquad S_{r_Q}^{V_o}=-\frac{Dr_Q}{RA},\qquad S_{V_f}^{V_o}=-\frac{(1-D)V_f}{N}.

Use absolute sensitivity to assess a specified change such as “10 mΩ less resistance.” Use normalized sensitivity to compare percentage uncertainties. Normalization becomes misleading near zero output or zero nominal parameter; use absolute changes there.

A regulated converter has a different sensitivity

If a voltage loop holds VoV_o fixed, output voltage is no longer the freely moving result of the open-loop calculation. Duty must move to compensate. At fixed target VoV_o and RR, so IoI_o is also fixed:

D=Vo+Vf+IorLB,B=Vin+Vf−IorQ.D=\frac{V_o+V_f+I_or_L}{B},\qquad B=V_{\mathrm{in}}+V_f-I_or_Q.
∂D∂rL=IoB,∂D∂rQ=DIoB,∂D∂Vf=1−DB.\frac{\partial D}{\partial r_L}=\frac{I_o}{B},\qquad \frac{\partial D}{\partial r_Q}=\frac{DI_o}{B},\qquad \frac{\partial D}{\partial V_f}=\frac{1-D}{B}.

At the 48 V, 24 V, 10 A parasitic operating point, BB = 48 V. An added 10 mΩ winding resistance requires approximately 0.002083 more duty, or 0.2083 percentage points. This keeps output near its target if the loop has enough gain and duty headroom, but adds approximately 1 W winding loss at 10 A. Regulation can hide output-voltage sensitivity while efficiency and temperature still deteriorate.

Why the operating point matters twice: it sets the derivative, and it sets whether the controller has enough range to compensate. Near maximum duty, a small added drop can make the requested voltage unattainable.

Bridge to small-signal dynamics

Static sensitivity describes the settled change. It does not say how fast or stably the converter gets there. For an ideal averaged CCM stage with resistive load:

LdiLdt=dvin−vo,Cdvodt=iL−voR.L\frac{di_L}{dt}=d v_{\mathrm{in}}-v_o,\qquad C\frac{dv_o}{dt}=i_L-\frac{v_o}{R}.

Write each quantity as its operating value plus a small perturbation. Linearizing the product d⋅vind\cdot v_{\mathrm{in}} gives:

Ldi^Ldt=Vind^+Dv^in−v^o.L\frac{d\hat{i}_L}{dt}=V_{\mathrm{in}}\hat{d}+D\hat{v}_{\mathrm{in}}-\hat{v}_o.

The duty perturbation is multiplied by the operating input voltage; the input-voltage disturbance is multiplied by the operating duty. The neglected product of the two perturbations is second order. With fixed input and zero initial perturbations:

v^o(s)d^(s)=VinLCs2+(L/R)s+1.\frac{\hat{v}_o(s)}{\hat{d}(s)}=\frac{V_{\mathrm{in}}}{LCs^2+(L/R)s+1}.

Even this ideal model has operating-point-dependent gain and load-dependent damping. Adding losses, current regulation or crossing into DCM changes the model further. This is why a notebook sweep and a Bode plot need stated conditions, not only a topology name.

D.12 Why is a diode drop especially visible at low duty?

Answer: the diode conducts during 1−D1-D, so ∂Vo/∂Vf=−(1−D)/A\partial V_o/\partial V_f = -(1-D)/A (D.11). The same added forward voltage acts for more of each period at low duty. Its loss still depends on current, so voltage sensitivity alone is not a complete thermal ranking. In PMP31349 the low-side GaN switch takes the diode's place, and T4 finds the same pattern in its resistance.

Appendix E — The 24 V teaching model in DCM

The teaching model comes from the U1 notebooks: 30–48 V input, 24 V output, 10 A nominal output, 100 kHz switching, with LL = 60 µH and CC = 100 µF. Numerical scenarios are teaching models, not selected hardware. We start with ideal components, a resistive load and small output-voltage ripple; Appendix D adds the losses. All current ripple values below are peak-to-peak unless labelled RMS.

The model is a diode buck. T1–T3 and E1–E5 (§12) use it, or a stated variant of it, because it shows mechanisms that the finished GaN design hides. The worked numbers of Appendices B–D come from it. Never carry its numbers to PMP31349, or the reverse.

E.1 The teaching model's design numbers

These are the numbers that Part I replaced with PMP31349's.

First numerical example. For regulated 24 V output, the ideal CCM duty ratio is 0.8 at 30 V input and 0.5 at 48 V input. At 100 kHz the period is 10 µs, so the ON times are 8 µs and 5 µs respectively.

Check: use LL = 60 µH at 48 V input. The current rises at 0.4 A/µs for 5 µs, then falls at −0.4 A/µs for 5 µs. The net current change is zero and peak-to-peak ripple is 2 A.

The inductor. The notebook specification asks for ripple no greater than 20% of the nominal 10 A, so the limit is 2 A. This is a nominal-current specification: at a 1 A load, a 2 A peak-to-peak ripple would be 200%, even though the component has not changed.

Lmin⁡=24(1−0.5)100000⋅2=60 μH.L_{\min}=\frac{24(1-0.5)}{100000\cdot2}=60\ \mu\mathrm{H}.

At 30 V input, the same inductor gives 0.8 A ripple. At 48 V input and 10 A mean current, its current ranges from 9 A to 11 A.

Ripple and critical load resistance over the specified regulated input range.

The capacitors. A 50 mV ripple requirement and 2 A ripple give an ideal minimum of 50 µF. Choosing an illustrative effective capacitance of 100 µF reduces the capacitive contribution to 25 mV.

At 48 V input (D = 0.5), 10 A and 100 kHz, an illustrative effective input capacitance of 20 µF gives a capacitive ripple of 1.25 V, before ESR. This is much larger than the 25 mV at the output with five times as much capacitance: the pulsed current is not smoothed by an inductor. The corresponding RMS current stress follows below.

With 10 mΩ ESR this is 20 mV. Adding the two magnitudes gives a conservative 45 mV estimate; the maxima need not occur at the same time. ESL and switching spikes require a higher-frequency model. Use effective capacitance at operating bias and temperature, not only the printed nominal capacitance.

Why ripple sizing is not enough: a sudden 5 A increase in load lasting 20 µs before the inductor supplies it would remove 100 µC. A 100 µF capacitor would drop by 1 V, plus an immediate ESR contribution. Actual droop depends on current slew, control response and the time integral of the current deficit.

Mean and RMS currents. At 48 V input, use DD = 0.5, IoI_o = 10 A and ΔIL\Delta I_L = 2 A. The inductor RMS current is 10.0167 A. The switch RMS current is 7.0828 A. Average input current is 5 A, and output-capacitor RMS current is 0.5774 A. Ideal input and output power are both 240 W.

Why the input capacitor matters: the stage draws pulsed input current even though its output-inductor current is continuous. A local input capacitor supplies much of that AC component. Neglecting inductor ripple and assuming a source that supplies only the average, its RMS current is approximately IoD(1−D)I_o\sqrt{D(1-D)}, or 5 A at DD = 0.5. Input and output capacitor stress are very different.

E.2 Continuous conduction mode

Two periods each of CCM, critical and DCM inductor current at 48 V input and regulated 24 V output.

For the diode buck considered here, CCM means the inductor current stays positive throughout the cycle:

IL,min⁡=Io−ΔIL2>0.I_{L,\min}=I_o-\frac{\Delta I_L}{2}>0.

The inductor retains a nonzero current from one period to the next. Duty ratio balances volt-seconds, while the load determines the mean current. This distinction explains the current-source behavior of T2.

E.3 Critical conduction mode: just touching zero

At the boundary:

Io,crit=ΔIL2,Rcrit=2Lfs1−D.I_{o,\mathrm{crit}}=\frac{\Delta I_L}{2},\qquad R_{\mathrm{crit}}=\frac{2Lf_s}{1-D}.

At 48 V input with LL = 60 µH, the boundary is 1 A or 24 Ω. At 30 V it is 0.4 A or 60 Ω. To guarantee strictly positive current across the entire input range at regulated 24 V, load resistance must be below 24 Ω. Equality is the critical boundary.

Using the dimensionless parameter:

K=2LfsR,Kcrit=1−D,K=\frac{2Lf_s}{R},\qquad K_{\mathrm{crit}}=1-D,

CCM has K>1−DK > 1-D, the boundary has equality, and DCM has K<1−DK < 1-D. Here R=Vo/IoR = V_o/I_o is the resistive-load value at the operating point.

CrCM terminology: a converter can happen to sit at this boundary at one fixed frequency. A controller operating intentionally in critical conduction mode normally detects zero current and starts the next pulse there, so switching frequency varies with load and voltage. For an ideal triangular waveform at the boundary:

Ipk=2Io,fs=Vo(1−Vo/Vin)2LIo.I_{\mathrm{pk}}=2I_o,\qquad f_s=\frac{V_o(1-V_o/V_{\mathrm{in}})}{2LI_o}.

At 48 V → 24 V with LL = 60 µH, maintaining the boundary at 0.5 A would require 200 kHz; at 1 A it requires 100 kHz. A fixed 100 kHz converter at 0.5 A instead operates in DCM. Critical operation can avoid diode turn-off at positive current, but has higher peak/RMS current than low-ripple CCM at the same mean and does not automatically guarantee zero-voltage switching of Q. §10.1 applies the same relations to PMP31349.

E.4 Discontinuous conduction mode: a third interval appears

Reduce load current further and the diode blocks the negative current that the two-interval solution would predict. The actual waveform reaches zero and remains there until the next ON pulse. Its cycle now has ON, diode conduction, and zero-current intervals.

Let DD be the ON fraction and δ\delta the diode-conduction fraction. Under the same ideal small-output-ripple assumption:

Ipk=(Vin−Vo)DLfs,δ=DVin−VoVo.I_{\mathrm{pk}}=\frac{(V_{\mathrm{in}}-V_o)D}{Lf_s},\qquad \delta=D\frac{V_{\mathrm{in}}-V_o}{V_o}.

The mean current is the area of the triangle divided by the full period:

Io=Ipk2(D+δ)=Vin(Vin−Vo)D22LfsVo.I_o=\frac{I_{\mathrm{pk}}}{2}(D+\delta)=\frac{V_{\mathrm{in}}(V_{\mathrm{in}}-V_o)D^2}{2Lf_sV_o}.

Why M no longer equals D: the OFF interval is not clamped to ground for its full duration. The third interval contributes zero inductor voltage, and the duration of diode conduction depends on the output voltage. Current area must also equal the load current.

For a resistive load, let M=Vo/VinM = V_o/V_{\mathrm{in}} and K=2Lfs/RK = 2Lf_s/R. Then:

KM2=D2(1−M),M=21+1+4K/D2.KM^2=D^2(1-M),\qquad M=\frac{2}{1+\sqrt{1+4K/D^2}}.

For a specified output voltage and load, solve instead for duty:

D=MK1−M.D=M\sqrt{\frac{K}{1-M}}.

Always check D+δ<1D + \delta < 1. If the computed conducting fractions occupy the full period or more, use the boundary or CCM model. Substituting K=1−DK = 1-D in the DCM gain expression recovers M=DM = D, so the models meet at the boundary. §10.2 applies this model to PMP31349 with diode emulation, writing D2D_2 for δ\delta.

E.5 Worked DCM example: the notebook's 200 Ω load

Keep VoV_o = 24 V, LL = 60 µH, fsf_s = 100 kHz, but increase RR to 200 Ω. Load current is now 0.12 A and KK = 0.06. This is DCM at both ends of the input range.

VinV_{\mathrm{in}} MM Required DD Diode fraction δ\delta Zero-current fraction Peak current
30 V 0.8 0.43818 0.10954 0.45228 0.43818 A
48 V 0.5 0.17321 0.17321 0.65359 0.69282 A

Check the 48 V case: a triangle of height 0.69282 A and base 0.34641 periods has area 0.12000 A·period. That supplies exactly the required mean current. Merely reusing the CCM duty ratio of 0.5 would overcharge the output.

Output versus load resistance at fixed duty, and the strong current response to an imposed output-voltage mismatch in a local CCM series-resistance model.

The left plot holds VinV_{\mathrm{in}} = 48 V and DD = 0.5. In CCM the output is 24 V. Above 24 Ω the ideal DCM output rises with resistance; at 200 Ω it is about 40 V. In the ideal no-load limit it approaches VinV_{\mathrm{in}}. Real controllers may skip pulses or stop switching, and leakage/losses affect the limiting voltage.

The right plot belongs to T2, Solution A. At fixed duty it extrapolates the CCM current through an effective series resistance of 0.2 Ω, 1 Ω or 2 Ω as the imposed output voltage moves away from 24 V. The smaller the resistance, the larger the current change per volt of mismatch. Its negative-current part needs a bidirectional stage and lies outside the diode-buck CCM domain.

E.6 Which mode at 24 V, 48 V input and 0.5 A load?

Answer: with 60 µH at 100 kHz, the CCM candidate has 2 A ripple and a valley of −0.5 A. The diode blocks negative current, so that candidate is invalid. RR = 48 Ω, KK = 0.25 and MM = 0.5 give DD = 0.35355 for regulated DCM.

The diode fraction is also 0.35355 and the zero fraction is 0.29289. The peak is 1.41421 A; its triangular area gives 0.5 A mean.

E.7 A synchronous buck needs a different mode check

Replacing the diode with a controlled low-side MOSFET reduces its conduction drop. If the controller keeps that MOSFET on, current can become negative at light load: the converter can remain in forced continuous operation. Diode-emulation control turns the low-side switch off near zero current and permits DCM. The diode-buck mode diagrams above assume negative current is blocked. PMP31349 runs forced PWM; §10.2 shows what diode emulation would change.

E.8 Worked example: does the inductor set the output current?

A designer reduces inductance to make a buck converter smaller. Will the output current change, or will only its ripple change?

Predict first. Compare 300 µH with 150 µH. Then predict what happens at 10 µH. Explain which model you would use and what could invalidate it.

This is an authored variant of the teaching model, with a different duty, load and inductance. Its output is free to settle. The 24 V target of E.1 does not apply.

Quantity Fixed value or assumption
Input voltage VinV_{\mathrm{in}} = 48 V
Switching frequency fsf_s = 100 kHz, so TsT_s = 10 µs
Duty ratio DD = 0.70, so tont_{\mathrm{on}} = 7 µs
Resistive load RR = 8 Ω
Output capacitor CC = 100 µF, with negligible voltage ripple in the calculations
Power stage Ideal switch, ideal diode and linear inductor
Operating condition Periodic steady state, fixed duty, no feedback and no losses

The same DCM analysis applies to a synchronous buck with diode emulation. A forced-PWM synchronous stage can conduct negative current instead (E.7).

Start with the averaged CCM model

For the next two equations, lower-case current and voltage denote averaged states. The duty ratio is dd:

LdiLdt=dVin−vo.L\frac{di_L}{dt}=dV_{\mathrm{in}}-v_o.
Cdvodt=iL−voR.C\frac{dv_o}{dt}=i_L-\frac{v_o}{R}.

These are averaged equations. The instantaneous switching waveforms still have ripple. At the steady operating point, the averaged derivatives are zero:

Vo=DVin,IL=Io=VoR.V_o=DV_{\mathrm{in}},\qquad I_L=I_o=\frac{V_o}{R}.

Thus, while CCM remains valid:

Vo=0.70⋅48=33.6 V,Io=33.68=4.20 A.V_o=0.70\cdot48=33.6\ \mathrm{V},\qquad I_o=\frac{33.6}{8}=4.20\ \mathrm{A}.

Inductance does not appear in this equilibrium. It sets current slopes, ripple and transient response. Its value also determines whether the assumed conduction mode is possible.

Why CCM retains current memory. The two averaged states are inductor current and capacitor voltage, written as x=(iL,vo)x=(i_L,v_o). For the instantaneous inductor current between successive cycle boundaries:

iL(tk+1)=iL(tk)+1L∫tktk+1vL(t) dt.i_L(t_{k+1})=i_L(t_k)+\frac{1}{L}\int_{t_k}^{t_{k+1}}v_L(t)\,dt.

In CCM, the next cycle inherits a nonzero initial current. In periodic steady state, the integral is zero and the boundary current repeats. Volt-second balance fixes the voltage relation. It does not independently select the current offset. The capacitor balance and load relation complete the equilibrium calculation.

Check the 300 µH current waveform

During the 7 µs ON interval, the inductor voltage is 48 − 33.6 = 14.4 V. During diode conduction, it is −33.6 V. Therefore:

diLdt∣on=14.4300 μH=0.048 A/μs.\left.\frac{di_L}{dt}\right|_{\mathrm{on}}=\frac{14.4}{300\ \mu\mathrm{H}}=0.048\ \mathrm{A/\mu s}.
diLdt∣off=−33.6300 μH=−0.112 A/μs.\left.\frac{di_L}{dt}\right|_{\mathrm{off}}=\frac{-33.6}{300\ \mu\mathrm{H}}=-0.112\ \mathrm{A/\mu s}.

The current rises by 0.048 × 7 = 0.336 A. It falls by 0.112 × 3 = 0.336 A. The cycle returns to its initial current:

ΔIL=0.336 A,IL,min⁡=4.032 A,IL,max⁡=4.368 A.\Delta I_L=0.336\ \mathrm{A},\qquad I_{L,\min}=4.032\ \mathrm{A},\qquad I_{L,\max}=4.368\ \mathrm{A}.

The valley is positive, so the CCM assumption passes. Here and below, current ripple means peak-to-peak ripple.

The RMS current includes the ripple:

IL,RMS=Io2+ΔIL212=4.20112 A.I_{L,\mathrm{RMS}}=\sqrt{I_o^2+\frac{\Delta I_L^2}{12}}=4.20112\ \mathrm{A}.

For the ideal CCM triangle, the mean current during the ON interval equals the full-cycle mean. The input and output powers agree:

Iin=DIo=2.94 A.I_{\mathrm{in}}=DI_o=2.94\ \mathrm{A}.
Pin=48⋅2.94=141.12 W,Po=33.6⋅4.20=141.12 W.P_{\mathrm{in}}=48\cdot2.94=141.12\ \mathrm{W},\qquad P_o=33.6\cdot4.20=141.12\ \mathrm{W}.

With 100 µF, the approximate capacitive output ripple is only 4.2 mV, from ΔVo≃ΔIL/(8fsC)\Delta V_o\simeq\Delta I_L/(8f_sC). This supports the small-output-ripple assumption for this case.

Halve the inductance, then find the boundary

At 150 µH, both current slopes double. Ripple becomes 0.672 A, and the current ranges from 3.864 A to 4.536 A. The valley remains positive. Output voltage stays at 33.6 V and mean output current stays at 4.20 A.

Further reduction eventually makes the CCM valley reach zero. Use the boundary condition ΔIL=2Io\Delta I_L=2I_o:

Lcrit=R(1−D)2fs=8⋅0.302⋅100000=12 μH.L_{\mathrm{crit}}=\frac{R(1-D)}{2f_s}=\frac{8\cdot0.30}{2\cdot100000}=12\ \mu\mathrm{H}.

At 12 µH, the current rises from zero to 8.4 A and returns to zero exactly at the next switching boundary. Its mean remains 4.20 A. There is no finite zero-current interval.

At 10 µH, the CCM candidate gives 10.08 A ripple and a −0.84 A valley. The diode blocks this negative current. Reject that candidate and use the three-interval DCM model.

Solve the 10 µH DCM operating point

In DCM, the current starts at zero, rises to a peak, then falls continuously to zero. It remains zero until the next ON pulse. The current has no instantaneous jump or reset.

Let δTs\delta T_s be the diode-conduction interval. With negligible output-voltage ripple:

Ipk=(Vin−Vo)DLfs,δ=DVin−VoVo.I_{\mathrm{pk}}=\frac{(V_{\mathrm{in}}-V_o)D}{Lf_s},\qquad \delta=D\frac{V_{\mathrm{in}}-V_o}{V_o}.

The triangular current area, divided by the full period, supplies the mean load current:

Io=Ipk2(D+δ)=Vin(Vin−Vo)D22LfsVo.I_o=\frac{I_{\mathrm{pk}}}{2}(D+\delta)=\frac{V_{\mathrm{in}}(V_{\mathrm{in}}-V_o)D^2}{2Lf_sV_o}.

The output voltage is unknown because there is no voltage-control loop. Combine this equation with Io=Vo/RI_o=V_o/R. Define:

K=2LfsR=0.25,M=VoVin.K=\frac{2Lf_s}{R}=0.25,\qquad M=\frac{V_o}{V_{\mathrm{in}}}.

Then:

KM2=D2(1−M),M=21+1+4K/D2=0.728918.KM^2=D^2(1-M),\qquad M=\frac{2}{1+\sqrt{1+4K/D^2}}=0.728918.

The operating point becomes:

Vo=34.9881 V,Io=4.37351 A,Ipk=9.10836 A.V_o=34.9881\ \mathrm{V},\qquad I_o=4.37351\ \mathrm{A},\qquad I_{\mathrm{pk}}=9.10836\ \mathrm{A}.

Check the interval lengths. The diode fraction is 0.260328. The occupied fraction is D+δD+\delta = 0.960328, which is below one. Diode conduction lasts 2.60328 µs, followed by 0.39672 µs at zero current. This confirms DCM.

Check delivered charge and power. The current triangle delivers 43.7351 µC per cycle. Multiplying by 100 kHz gives 4.37351 A. The input supplies current only during the ON interval:

Iin=DIpk2=3.18793 A.I_{\mathrm{in}}=\frac{DI_{\mathrm{pk}}}{2}=3.18793\ \mathrm{A}.
Pin=153.0205 W,Po=Vo2R=153.0205 W.P_{\mathrm{in}}=153.0205\ \mathrm{W},\qquad P_o=\frac{V_o^2}{R}=153.0205\ \mathrm{W}.

The output rises because the fixed-duty DCM equilibrium depends on inductance and load. It does not establish a regulated current setpoint.

Inductance Mode Output voltage Mean current Minimum current Peak current RMS current
300 µH CCM 33.600 V 4.200 A 4.032 A 4.368 A 4.201 A
150 µH CCM 33.600 V 4.200 A 3.864 A 4.536 A 4.204 A
12 µH Boundary 33.600 V 4.200 A 0 A 8.400 A 4.850 A
10 µH DCM 34.988 V 4.374 A 0 A 9.108 A 5.153 A

Two periods of inductor current at four inductances with input, duty, resistance and frequency fixed. The shaded interval marks zero current in DCM.

The 10 µH waveform gives approximately 0.118 V capacitive output ripple with 100 µF, about 0.34% of its mean voltage. Integrate iL−Ioi_L-I_o between its zero crossings to get the charge excursion. The CCM ripple formula does not apply to this DCM waveform. These numbers remain small-ripple estimates, not an exact switched-LC solution.

Explain the energy without confusing storage and power

An ideal linear inductor stores energy whenever its current is nonzero:

EL=12LiL2,dELdt=vLiL.E_L=\frac{1}{2}Li_L^2,\qquad \frac{dE_L}{dt}=v_Li_L.

Integrate instantaneous power over one complete period in periodic steady state:

ΔEL=EL(Ts)−EL(0)=∫0TsvL(t)iL(t) dt=0.\Delta E_L=E_L(T_s)-E_L(0)=\int_0^{T_s}v_L(t)i_L(t)\,dt=0.

The capacitor obeys the same energy balance:

EC=12CvC2,ΔEC=∫0TsvC(t)iC(t) dt=0.E_C=\frac{1}{2}Cv_C^2,\qquad \Delta E_C=\int_0^{T_s}v_C(t)i_C(t)\,dt=0.

These integrals use instantaneous waveforms. They allow energy exchange within the period while requiring the stored energy to return to its initial value.

For 300 µH, stored energy rises from 2.43855 mJ to 2.86191 mJ during ON. It returns to 2.43855 mJ during OFF. Net inductor-energy change over the complete period is zero. The source still supplies 141.12 W to the load.

At 10 µH, stored energy rises from zero to 0.41481 mJ and returns to zero. The source also supplies the output directly during ON. Therefore, 12LIpk2fs\frac{1}{2}LI_{\mathrm{pk}}^2f_s is not the total buck output power. Here it gives 41.48 W, while the full power balance gives 153.02 W.

The capacitor also returns to its initial energy in periodic steady state. Zero net stored-energy change does not mean zero energy transfer to the load.

Connect filtering, dynamics and current control

For an ideal inductor, ZL(jω)=jωLZ_L(j\omega)=j\omega L. Its DC impedance is zero, while its reactance increases with frequency. This explains its filtering role. It does not make the complete switched converter a linear time-invariant circuit.

ZL(0)=0,∣ZL(jωs)∣=ωsL=2πfsL.Z_L(0)=0,\qquad |Z_L(j\omega_s)|=\omega_sL=2\pi f_sL.

At 100 kHz, the 300 µH inductor has 188.5 Ω reactance. Each switching harmonic sees its own frequency-dependent reactance. Ripple also depends on the applied voltage harmonics and the complete LC network.

For an inverter filter, also check the fundamental-frequency voltage drop. Its inductor reactance need not be negligible relative to the load impedance.

For advanced work, linearize the averaged CCM model about a positive-current equilibrium. Keep input voltage fixed and assume zero initial perturbations:

Lsi^L(s)=Vind^(s)−v^o(s).Ls\hat i_L(s)=V_{\mathrm{in}}\hat d(s)-\hat v_o(s).
(Cs+1R)v^o(s)=i^L(s).\left(Cs+\frac{1}{R}\right)\hat v_o(s)=\hat i_L(s).

Substitute the second equation into the first:

(LCs2+LRs+1)v^o(s)=Vind^(s).\left(LCs^2+\frac{L}{R}s+1\right)\hat v_o(s)=V_{\mathrm{in}}\hat d(s).

This gives the duty-to-output-voltage transfer function:

Gvd(s)=v^o(s)d^(s)=VinLCs2+(L/R)s+1.G_{vd}(s)=\frac{\hat v_o(s)}{\hat d(s)}=\frac{V_{\mathrm{in}}}{LCs^2+(L/R)s+1}.

For this fixed resistor, i^o=v^o/R\hat i_o=\hat v_o/R. Therefore:

Gid(s)=i^o(s)d^(s)=Vin/RLCs2+(L/R)s+1.G_{id}(s)=\frac{\hat i_o(s)}{\hat d(s)}=\frac{V_{\mathrm{in}}/R}{LCs^2+(L/R)s+1}.

Use i^L=(Cs+1/R)v^o\hat i_L=(Cs+1/R)\hat v_o to get the inductor-current transfer function:

GiLd(s)=i^L(s)d^(s)=Vin(Cs+1/R)LCs2+(L/R)s+1.G_{i_Ld}(s)=\frac{\hat i_L(s)}{\hat d(s)}=\frac{V_{\mathrm{in}}(Cs+1/R)}{LCs^2+(L/R)s+1}.

Load current and inductor current differ during transients because the capacitor carries their difference. These transfer functions support current-loop design in CCM. They do not apply unchanged to DCM.

In the low-frequency DCM model, each pulse starts from a known zero current. The cycle-average inductor current follows algebraically from duty, input voltage and output voltage. The remaining output-capacitor equation gives an approximately first-order voltage model. This reduction assumes operation well below switching frequency and continued DCM.

With dd and vov_o changing slowly compared with a switching period, that equation is:

Cdvodt=Vin(Vin−vo)d22Lfsvo−voR.C\frac{dv_o}{dt}=\frac{V_{\mathrm{in}}(V_{\mathrm{in}}-v_o)d^2}{2Lf_sv_o}-\frac{v_o}{R}.

Only the capacitor voltage remains an independent dynamic state in this reduced model. The physical inductor current still changes continuously within each pulse. Its zero-current interval removes the inherited initial-current uncertainty before the next pulse.

Choose from the requirement. For low ripple at the stated 4.20 A operating point, retain enough inductance for positive valley current. Smaller inductance may reduce component size, but increases peak and RMS current. This calculation alone does not select a real magnetic component.

For a commanded mean current, use feedback that measures the required current and adjusts duty within the available voltage range. Across an 8 Ω resistor, 4.20 A requires 33.6 V. If resistance doubles, the same current needs 67.2 V, beyond this 48 V buck's capability. T2 compares average-current feedback with peak-controlled boundary operation.

Verification. scripts/current_memory_example.py writes data/current-memory-example.json and figure 19. It independently integrates the current ramps and checks mean/RMS current, capacitor charge, energy and power balance. A separate numerical root solves the DCM operating point from integrated charge. It uses the same stated small-output-ripple model.

E.9 Worked example: the fourth leg and a resonant neutral point

A three-phase four-wire inverter supplies an unbalanced load. Its neutral current disturbs the midpoint of two split DC-link capacitors. An added half-bridge connects to that midpoint through an inductor. This independently controlled neutral leg must carry the neutral current and keep the capacitor voltages balanced.

Engineering question. Does an observed oscillation require DCM, or can a different controller stabilize the continuous-current stage and suppress neutral-point ripple?

Predict first. Choose between current feedback, a resonant controller and DCM. State one benefit, one cost and the measurement that would change your choice. Then test whether damping the resonance necessarily reduces ripple at every frequency.

This example extends the buck reasoning to a bidirectional neutral module with split capacitors. A four-leg inverter without this split-bus connection needs its own model. The values below are authored teaching assumptions. They do not describe PMP31349 or reproduce any cited prototype.

Quantity Teaching value or assumption
Total DC bus VdcV_{\mathrm{dc}} = 800 V, held stiff
Split capacitors C1=C2C_1=C_2 = 1 mF, with zero ESR in the model
Neutral inductor LL = 0.5 mH, linear
Physical branch resistance rr = 0.05 Ω
Switching frequency fsf_s = 20 kHz
Disturbance One 10 A peak sinusoidal neutral current at a time
Test frequencies 50 Hz, 150 Hz, 350 Hz and 450 Hz
Screening target Neutral-point displacement below 2 V peak at each test frequency
Initial model Averaged bidirectional stage, without delay, saturation or switching ripple

The frequency tests apply separate sinusoids. A simultaneous harmonic spectrum requires superposition with its actual amplitudes and phases, followed by current-rating checks.

Derive the neutral-module plant

Let vnv_n be the midpoint displacement from the center of the bus. The upper capacitor voltage is Vdc/2−vnV_{\mathrm{dc}}/2-v_n. The lower capacitor voltage is Vdc/2+vnV_{\mathrm{dc}}/2+v_n. Their voltage difference is therefore −2vn-2v_n. Keep this factor of two when comparing a voltage-imbalance specification with a midpoint-displacement specification.

Let iLi_L enter the midpoint from the neutral leg, and let ini_n leave toward the load. The midpoint sees the sum of the two capacitances because both DC rails are stiff:

CΣ=C1+C2=2 mF.C_\Sigma=C_1+C_2=2\ \mathrm{mF}.

This is the capacitance for midpoint motion. The series capacitance across the complete DC bus is a different quantity.

Define uu as the average half-bridge voltage relative to the bus center. With upper-switch duty dd:

u=Vdc(d−12).u=V_{\mathrm{dc}}\left(d-\frac{1}{2}\right).

The averaged state equations are:

LdiLdt=u−vn−riL,CΣdvndt=iL−in.L\frac{di_L}{dt}=u-v_n-ri_L,\qquad C_\Sigma\frac{dv_n}{dt}=i_L-i_n.

Substitute iL=CΣ dvn/dt+ini_L=C_\Sigma\,dv_n/dt+i_n into the inductor equation:

LCΣd2vndt2+rCΣdvndt+vn=u−Ldindt−rin.LC_\Sigma\frac{d^2v_n}{dt^2}+rC_\Sigma\frac{dv_n}{dt}+v_n=u-L\frac{di_n}{dt}-ri_n.

For zero initial perturbations, define the denominator:

D0(s)=LCΣs2+rCΣs+1.D_0(s)=LC_\Sigma s^2+rC_\Sigma s+1.

The command and disturbance transfer functions follow:

Vn(s)U(s)=1D0(s),Vn(s)In(s)=−Ls+rD0(s).\frac{V_n(s)}{U(s)}=\frac{1}{D_0(s)},\qquad \frac{V_n(s)}{I_n(s)}=-\frac{Ls+r}{D_0(s)}.

The same resonance appears in the control path and the neutral-current disturbance path. Stable command tracking alone does not establish adequate disturbance rejection.

For this model:

ω0=1LCΣ,Q=1rLCΣ.\omega_0=\frac{1}{\sqrt{LC_\Sigma}},\qquad Q=\frac{1}{r}\sqrt{\frac{L}{C_\Sigma}}.

The teaching values give f0f_0 = 159.15 Hz and QQ = 10. At the natural frequency, command gain is 20 dB above DC gain. The phase falls toward −180° above resonance. A 150 Hz neutral-current component is therefore close to a weakly damped mode.

Do not transfer the buck damping formula unchanged. A resistively loaded ideal buck has Q=RC/LQ=R\sqrt{C/L}. This neutral module has Q=L/CΣ/rQ=\sqrt{L/C_\Sigma}/r. Here, doubling both capacitors lowers f0f_0 to 112.54 Hz and QQ to 7.071. Larger capacitance moves the resonance, but does not automatically increase its peak.

Second-order dynamics also do not prove loss of controllability. With duty as the input, the determinant of the two-state controllability matrix is:

det⁡[B  AB]=Vdc2L2CΣ>0.\det[B\ \ AB]=\frac{V_{\mathrm{dc}}^2}{L^2C_\Sigma}>0.

Here AA is the state matrix and BB is the duty-input vector of the averaged equations. Duty limits, current ratings and sampling delay can still limit achievable performance.

Approach A: compensate the voltage loop directly

Use midpoint error to command voltage, u=−Cv(s)vnu=-C_v(s)v_n. Then:

Vn(s)In(s)=−Ls+rD0(s)+Cv(s).\frac{V_n(s)}{I_n(s)}=-\frac{Ls+r}{D_0(s)+C_v(s)}.

A proportional-integral controller has Cv(s)=Kp+KI/sC_v(s)=K_p+K_I/s. Multiplication by ss gives the closed-loop characteristic polynomial:

LCΣs3+rCΣs2+(1+Kp)s+KI.LC_\Sigma s^3+rC_\Sigma s^2+(1+K_p)s+K_I.

For positive gains, the cubic stability condition includes:

KI<r(1+Kp)L.K_I<\frac{r(1+K_p)}{L}.

At KpK_p = 1, the ideal-model bound is KI<200 s−1K_I<200\ \mathrm{s}^{-1}. Increasing integral gain without sufficient damping can destabilize the loop. A compensator with phase lead can provide another route. Evaluate gain and phase margins with the actual delay and tolerances.

This approach needs only voltage feedback, but a sharp resonance makes a simple PI controller restrictive. A stable low-bandwidth loop can still leave excessive harmonic ripple.

Approach B: add physical damping

A series resistor increases rr and reduces QQ. It gives damping without relying on sensor bandwidth or software timing. It also dissipates IL,RMS2raddI_{L,\mathrm{RMS}}^2r_{\mathrm{add}} and requires thermal design. An added 0.95 Ω would dissipate 95 W at an assumed 10 A RMS branch current.

This loss example assumes the stated RMS current. It is not a loss prediction for the three frequency-response cases below. A separate RC damping branch is another option, but changes the plant and requires its own design.

Approach C: use inductor-current feedback for active damping

Add a feedback term with gain kik_i, measured in volts per ampere:

u=uc−kiiL.u=u_c-k_i i_L.

The inductor equation now contains effective resistance rd=r+kir_d=r+k_i. Define:

Dd(s)=LCΣs2+(r+ki)CΣs+1.D_d(s)=LC_\Sigma s^2+(r+k_i)C_\Sigma s+1.

Then:

Vn(s)Uc(s)=1Dd(s),Vn(s)In(s)=−Ls+r+kiDd(s).\frac{V_n(s)}{U_c(s)}=\frac{1}{D_d(s)},\qquad \frac{V_n(s)}{I_n(s)}=-\frac{Ls+r+k_i}{D_d(s)}.

With kik_i = 0.95 Ω, effective resistance becomes 1 Ω and QQ falls to 0.5. This is critical damping in the simplified command plant. The PI stability bound at KpK_p = 1 rises to KI<4000 s−1K_I<4000\ \mathrm{s}^{-1}, before delay and other limits.

However, current feedback also changes the disturbance numerator. It opposes the inductor current needed to carry the neutral disturbance. Damping the resonance can therefore increase neutral-point ripple at another frequency. Active damping avoids the added physical resistor, but requires sensing, control headroom and a bus that accepts returned energy.

Approach D: use cascaded current and voltage loops

An inner current loop makes iLi_L follow irefi_{\mathrm{ref}}. An outer voltage controller supplies the balancing correction. If the inner loop is much faster than the outer dynamics, use:

iref=in−Cv(s)vn.i_{\mathrm{ref}}=i_n-C_v(s)v_n.

With ideal current tracking:

CΣdvndt=−Cv(s)vn.C_\Sigma\frac{dv_n}{dt}=-C_v(s)v_n.

For an outer PI controller, the characteristic polynomial becomes CΣs2+Kpvs+KIvC_\Sigma s^2+K_{pv}s+K_{Iv}. The inner loop has removed the LC pair from this reduced outer-loop model. Its gains have current-command units, unlike Approach A's voltage-command gains.

Real tracking is finite. If Gi(s)=IL(s)/Iref(s)G_i(s)=I_L(s)/I_{\mathrm{ref}}(s), the same neutral-current feedforward gives:

Vn(s)In(s)=Gi(s)−1CΣs+Gi(s)Cv(s).\frac{V_n(s)}{I_n(s)}=\frac{G_i(s)-1}{C_\Sigma s+G_i(s)C_v(s)}.

This equation exposes the residual from current-loop lag. Sensor filtering, PWM delay, current saturation and feedforward delay must enter the final model.

Approach E: shape a feedback path with a notch filter

A generic notch building block is:

N(s)=s2+2ζzωns+ωn2s2+2ζpωns+ωn2,0<ζz<ζp.N(s)=\frac{s^2+2\zeta_z\omega_n s+\omega_n^2}{s^2+2\zeta_p\omega_n s+\omega_n^2},\qquad 0<\zeta_z<\zeta_p.

At ωn\omega_n, its magnitude is ζz/ζp\zeta_z/\zeta_p. It reduces the selected path's gain over a frequency band. In a current-feedback architecture, frequency shaping can alter the trade-off between damping and harmonic ripple.

Filter location matters. A notch in a damping path can also remove needed damping. Component tolerances can move the LC resonance away from the selected notch. Check the complete loop instead of assuming exact pole cancellation.

This generic filter illustrates the design mechanism. Its location and coefficients do not reproduce the published NF-ICFS controller cited below.

Approach F: add proportional-resonant control

A finite-bandwidth proportional-resonant controller can increase correction near a selected neutral-current harmonic:

CPR(s)=Kp+2Krωbss2+2ωbs+ωh2.C_{\mathrm{PR}}(s)=K_p+\frac{2K_r\omega_b s}{s^2+2\omega_b s+\omega_h^2}.

Here ωh\omega_h selects the harmonic and ωb\omega_b sets the resonance bandwidth. Several branches can address several harmonics. A 150 Hz branch is a candidate for this example's dominant disturbance.

Use a stable inner plant and verify the complete loop. More harmonic gain consumes phase margin and current headroom. Frequency drift and digital delay limit how narrow or strong the resonant branches can be.

Approach G: feed the neutral current forward

For Approach C, add the illustrative feedforward term uff=kiinu_{\mathrm{ff}}=k_i i_n:

u=uc−kiiL+kiin=uc−ki(iL−in).u=u_c-k_i i_L+k_i i_n=u_c-k_i(i_L-i_n).

The feedback now acts on the current entering the split capacitors. The denominator remains damped, while the extra disturbance-numerator term cancels:

Vn(s)In(s)=−Ls+rDd(s).\frac{V_n(s)}{I_n(s)}=-\frac{Ls+r}{D_d(s)}.

This feedforward removes the virtual-resistance contribution to the disturbance numerator. Physical inductance and resistance still leave an error. An exact model-inverse term would require (Ls+r+ki)in(Ls+r+k_i)i_n, including a derivative. Noise, parameter error and delay make exact cancellation impractical across arbitrary frequencies.

Neutral-current feedforward can also enter the current reference, as in Approach D. The two implementations need their own scaling and timing checks.

Check the damping and feedforward trade-off numerically

Hold uc=0u_c=0 to isolate the three current-path responses. These are screening calculations, without an outer voltage controller. They do not rank fully tuned voltage-control systems. Every column uses the same capacitors, inductor, resistance and disturbance amplitude.

Neutral-current frequency Natural damping Current feedback, kik_i = 0.95 Ω Current feedback plus kiink_i i_n feedforward
50 Hz 1.828 V 9.213 V 1.500 V
150 Hz 32.419 V 5.854 V 2.510 V
350 Hz 2.865 V 2.547 V 1.886 V
450 Hz 2.021 V 1.925 V 1.573 V

All entries are peak midpoint displacement. Capacitor-voltage difference has twice this amplitude. At 150 Hz, current feedback strongly reduces the resonance response. At 50 Hz, the same feedback increases ripple. Feedforward improves both cases, but still misses the 2 V target at 150 Hz.

The 150 Hz case without active damping also predicts 68.41 A peak in the averaged inductor current. This warns that hardware current limits could invalidate the linear response before the predicted oscillation develops.

Command gain and phase with natural and active damping, followed by neutral-current disturbance response for natural damping, current feedback and current feedback with neutral-current feedforward.

Check what averaging hides. At a centered midpoint, forced PWM near 50% duty gives approximately:

ΔIL,pp≃Vdc4Lfs=20 A.\Delta I_{L,\mathrm{pp}}\simeq\frac{V_{\mathrm{dc}}}{4Lf_s}=20\ \mathrm{A}.

This switching ripple is additional to the averaged current. Halving inductance doubles it. A real component selection must check the resulting peak, RMS current and losses. Continuous bidirectional operation can cross zero without having a finite zero-current interval.

Approach H: synthesize a robust controller

An H∞H_\infty design selects a controller against weighted disturbance and control-effort objectives. A generic statement is:

min⁡K∥Tw→z(K)∥∞.\min_K\left\|T_{w\to z}(K)\right\|_\infty.

Disturbances ww can include neutral current, bus perturbations and measurement noise. Weighted outputs zz can penalize midpoint displacement and actuator effort. The plant should include relevant uncertainty, delay and sensor dynamics. Actuator saturation still requires a separate nonlinear check.

This method can address competing objectives more systematically than one gain adjustment. It requires a defensible model and weighting choices. No H∞H_\infty controller is synthesized or numerically ranked in this example.

Approach I: change to controlled bidirectional DCM

DCM changes the pulse dynamics rather than only the compensator. For this neutral leg, both current polarities must be supported. A positive pulse rises under the upper switch, falls under the lower switch and reaches zero. A zero-current interval follows before the next pulse. Reverse the switching roles for a negative pulse.

Crossing zero during forced PWM is not DCM. The zero-current interval requires appropriate gating, current detection and semiconductor conduction paths. Parasitic ringing and dead time need a switching model.

For a first pulse calculation, assume vn≃0v_n\simeq0, neglect rr and use bus voltages of ±400 V. Each linear ramp lasts:

tr=tf=2LIpkVdc.t_r=t_f=\frac{2LI_{\mathrm{pk}}}{V_{\mathrm{dc}}}.

For one signed triangular pulse per period:

ρ=fs(tr+tf)=4LfsIpkVdc≤1.\rho=f_s(t_r+t_f)=\frac{4Lf_sI_{\mathrm{pk}}}{V_{\mathrm{dc}}}\leq1.
∣IL,avg∣=Ipkρ2=2LfsIpk2Vdc.|I_{L,\mathrm{avg}}|=\frac{I_{\mathrm{pk}}\rho}{2}=\frac{2Lf_sI_{\mathrm{pk}}^2}{V_{\mathrm{dc}}}.

The pulse polarity sets the sign of the mean current. For a commanded +5 A mean at 20 kHz:

Ipk=(5 A)Vdc2Lfs=14.142 A.I_{\mathrm{pk}}=\sqrt{\frac{(5\ \mathrm{A})V_{\mathrm{dc}}}{2Lf_s}}=14.142\ \mathrm{A}.

Each ramp lasts 17.678 µs. The triangle occupies 35.355 µs of the 50 µs period, leaving 14.645 µs at zero current. Its delivered charge is 250 µC. Its RMS current is:

IL,RMS=Ipkρ3=6.866 A.I_{L,\mathrm{RMS}}=I_{\mathrm{pk}}\sqrt{\frac{\rho}{3}}=6.866\ \mathrm{A}.

A −5 A command uses the opposite pulse polarity with the same ideal durations and RMS current. At 10 A mean magnitude, peak current reaches 20 A and ρ=1\rho=1. That is boundary operation, with 25 µs per ramp and 11.547 A RMS. Strict DCM at this frequency and inductance supports mean magnitudes below 10 A in this idealized pulse model.

The instantaneous neutral-current demand also needs a balancing correction. Commanding its estimated pulse area alone does not guarantee zero capacitor-voltage error. Away from vn=0v_n=0, the ramp voltages and charge change. Feedback or voltage-dependent pulse calculation must correct them.

This calculation establishes feasible ideal pulse timing. It does not validate a DCM controller, switching transitions, current ratings or hardware efficiency. The capacitor remains an energy-storage state. Changing conduction mode does not remove the charge needed to correct its voltage.

Change the task: a small leg that only rebalances

The case above assumes that the leg carries the full neutral current. Some designs use the fourth leg only to rebalance the split capacitors. The useful mean current is then small. The inductor is also small, to keep the leg cheap. This changes which effect dominates.

Ask this first for any design. Must the leg carry the full AC neutral current, or only correct the capacitor imbalance? The answer sets the current rating, the inductance and the preferred mode.

Quantity Teaching value or assumption
Total DC bus VdcV_{\mathrm{dc}} = 800 V, held stiff
Split capacitors C1=C2C_1=C_2 = 12 mF, so CΣC_\Sigma = 24 mF
Neutral inductor LL = 100 µH, linear
Switching frequency fsf_s = 20 kHz, so TsT_s = 50 µs
Useful mean balancing current 2 A
Response target Correct a 10 V capacitor difference within 2 ms, one tenth of a 50 Hz cycle

The resonance is not the main problem here. The natural frequency is 102.7 Hz. With Q=L/CΣ/rQ=\sqrt{L/C_\Sigma}/r, a 50 mΩ branch gives QQ = 1.29 and a 10 mΩ branch gives QQ = 6.45. In this series topology, small inductance and large capacitance lower QQ. They do not sharpen the resonance peak. The mode still sits near 100 Hz, so check the neutral-current spectrum there.

Compare the ripple with the useful current. Forced PWM near dd = 0.5 gives:

ΔIL,pp≃Vdc4Lfs=100 A.\Delta I_{L,\mathrm{pp}}\simeq\frac{V_{\mathrm{dc}}}{4Lf_s}=100\ \mathrm{A}.

Around a 2 A mean, the current swings from −48 A to 52 A. Its RMS value is:

IL,RMS=IL2+ΔIL,pp212=28.94 A.I_{L,\mathrm{RMS}}=\sqrt{I_L^2+\frac{\Delta I_{L,\mathrm{pp}}^2}{12}}=28.94\ \mathrm{A}.

The leg carries about 29 A RMS to deliver 2 A of useful current. Forced-PWM CCM would need 1 mH, ten times the inductance, to cut the ripple to 10 A peak-to-peak.

Small timing errors move the mean current. At a centered midpoint, the averaged inductor equation is:

LdiLdt=Vdc(d−12).L\frac{di_L}{dt}=V_{\mathrm{dc}}\left(d-\frac{1}{2}\right).

A persistent duty error of 0.1 percentage points changes the mean current by 8 A per millisecond. Dead time, PWM resolution and gate-delay errors can reach this size. Current sampling has a similar problem. Each ramp has a slope of 4 A/µs. A 100 ns sampling-phase error reads 0.4 A wrong, which is 20% of the useful current. These errors do not make the loop unstable. They make an accurate small mean current hard to hold.

Command a charge packet instead. Let v1=Vdc/2−vnv_1=V_{\mathrm{dc}}/2-v_n be the upper capacitor voltage and v2=Vdc/2+vnv_2=V_{\mathrm{dc}}/2+v_n the lower one. A positive packet applies v1v_1 for tont_{\mathrm{on}}. It then applies −v2-v_2 until the current reaches zero:

Ipk=v1tonL,tf=v1v2ton.I_{\mathrm{pk}}=\frac{v_1t_{\mathrm{on}}}{L},\qquad t_f=\frac{v_1}{v_2}t_{\mathrm{on}}.

The packet charge is the triangle area:

Q+=Ipk2(ton+tf)=v1Vdcton22Lv2.Q_+=\frac{I_{\mathrm{pk}}}{2}\left(t_{\mathrm{on}}+t_f\right)=\frac{v_1V_{\mathrm{dc}}t_{\mathrm{on}}^2}{2Lv_2}.

For a commanded mean current I∗I^*, the packet charge per period is Q∗=I∗/fsQ^*=I^*/f_s. Invert the charge equation:

ton∗=2LQ∗v2v1Vdc.t_{\mathrm{on}}^*=\sqrt{\frac{2LQ^*v_2}{v_1V_{\mathrm{dc}}}}.

A negative packet applies −v2-v_2 first, then v1v_1. Exchange v1v_1 and v2v_2 in both equations for that case. The controller calculates each pulse from the measured capacitor voltages. It does not need a continuous current loop that tracks a small mean inside a large ripple.

At 2 A with balanced capacitors, the packet has a 5 µs ON time and a 20 A peak. It occupies 10 µs of the 50 µs period. Its RMS current is 5.16 A.

Quantity at 2 A mean Forced-PWM CCM DCM charge packets
Peak current 52 A 20 A
Valley current −48 A 0 A
RMS current 28.94 A 5.16 A
Current between periods Persists and crosses zero twice per period Stays at zero for 40 µs
Main error source Duty, dead time and sampling phase Zero-current detection and pulse timing

Conduction loss in the same resistance scales with the square of RMS current. Here the ratio is 31.4. Each DCM packet also starts at zero current. The device still discharges its output capacitance at turn-on.

Close the outer loop on charge. The capacitor equation sets the outer task:

CΣdvndt=iL−in.C_\Sigma\frac{dv_n}{dt}=i_L-i_n.

Command the mean leg current with an estimate i^n\hat i_n of the neutral current:

iL∗=i^n−CΣτvn.i_L^*=\hat i_n-\frac{C_\Sigma}{\tau}v_n.

With ideal tracking and an exact estimate, vnv_n decays with time constant τ\tau. Limit iL∗i_L^* to the leg capability. The packet law then turns each iL∗i_L^* into an ON time. A one-period choice, τ=Ts\tau=T_s, would demand a very large current with these capacitors.

The charge limit applies in every mode. A 10 V capacitor difference is a 5 V midpoint displacement. Correcting it moves:

Q=CΣ Δvn=24 mF⋅5 V=120 mC.Q=C_\Sigma\,\Delta v_n=24\ \mathrm{mF}\cdot5\ \mathrm{V}=120\ \mathrm{mC}.

In 2 ms this needs a 60 A mean, thirty times the 2 A design current. In the ideal pulse model, DCM at 100 µH and 20 kHz supports at most:

∣IL,avg∣max⁡=Vdc8Lfs=50 A.|I_{L,\mathrm{avg}}|_{\max}=\frac{V_{\mathrm{dc}}}{8Lf_s}=50\ \mathrm{A}.

The 60 A demand therefore also leaves DCM. No modulation removes this charge requirement. Reduce the imbalance that the leg must correct, accept a slower response, or size the leg for the current. A balancer that only holds small imbalances can stay small. A leg that must cancel large neutral-current transients needs the full-current design of the first case.

What this case shows. With a small inductor and a small useful current, the CCM difficulty comes mainly from ripple, timing errors and sampling. The LC resonance is not the main cause. DCM charge packets match the current waveform to the charge that must move. This supports DCM for a low-current balancer. It does not make DCM the right choice for a leg that carries the full neutral current.

Compare the choices and the published evidence

The controller equations above are teaching forms. The numerical comparison checks natural damping, proportional current feedback and one feedforward implementation. The pulse calculation checks ideal bidirectional DCM timing. Notch, PR, complete cascaded and robust controllers require further synthesis and validation.

Approach Benefit Cost or condition Evidence in this example
A. Direct voltage compensation Uses voltage error directly LC phase transition restricts simple PI gains Plant and PI stability condition derived
B. Physical damping Acts without control delay Dissipation, temperature and changed impedance Loss relation and conditional resistor example
C. Current feedback Adds active damping Can increase disturbance ripple elsewhere Frequency response and physical ODE checked
D. Cascaded control Separates current tracking and voltage balance Needs bandwidth separation and current sensing Reduced model derived, published experiments cited
E. Notch shaping Changes a selected feedback band's gain Sensitive to placement, drift and lost damping Generic filter explained, no tuned implementation
F. PR control Increases correction at selected harmonics Phase margin, frequency drift and current headroom Generic controller explained, no tuned implementation
G. Neutral-current feedforward Anticipates the disturbance Sensing, scaling and timing errors Illustrative implementation calculated and checked
H. Robust H∞H_\infty control Balances weighted competing objectives Model, uncertainty and synthesis effort Objective explained, published experiments cited
I. Bidirectional DCM Removes inherited pulse-current uncertainty Pulse-current ratings, zero detection and mode boundaries Signed pulse charge, timing and RMS checked, small-balancer comparison with CCM checked

Zhao et al. (2017) identify the neutral-module resonance and the ripple cost of current feedback. They report notch-assisted, PR-assisted and neutral-current-feedforward control schemes, tested on a 10 kW prototype. These results support the trade-off being taught. They are not measurements of our numerical cases.

Zhong et al. (2006) report robust neutral-point control on a 30 kW inverter. Their abstract gives an 800 V bus and 32 A RMS neutral current. Passalacqua et al. (2022) report a state-space model and experimentally tested cascaded neutral-leg control. These studies show successful control without establishing that our illustrative DCM scheme is necessary or validated.

Conditional recommendation. Begin with a measured plant, a current limit and the neutral-current spectrum. For fixed-frequency continuous operation, investigate cascaded current control with neutral-current feedforward. In this screening example, the 150 Hz residual still exceeds the target. A resonant branch or another compensator is therefore a candidate for the next checked design step.

Choose DCM when its pulse-current limits, zero-current timing and both current polarities meet the requirements. The small balancing leg is the clearest such case: at 2 A, its DCM packets carry 5.16 A RMS against 28.94 A in forced-PWM CCM. For the first case's ideal pulses, a 10 A mean already reaches the boundary. A larger required current needs different inductance, repetition rate or conduction mode. Compare losses and disturbance rejection before choosing hardware.

Verification. scripts/neutral_leg_example.py writes data/neutral-leg-example.json and figure 20. It checks transfer functions against a state-space solution and an independently written physical KVL/KCL ODE. It also checks periodic energy balance and integrates positive and negative DCM pulse charge and RMS current. For the small balancing leg, it integrates the CCM ripple and the charge packets, and checks the inverse packet law with unequal capacitor voltages. It does not model PWM delay, capacitor ESR, device parasitics or a complete switched inverter.

Appendix F — How semiconductor technology changes commutation

§6.2 checks charge and time for PMP31349's 48 V GaN edge. This appendix widens the view to a high-voltage bus and to other device technologies. Every number in it is an authored example, not a selected device.

F.1 A charge and timing screening example

A charge/timing screening example. Consider a separate illustrative 400 V half-bridge with a constant effective node capacitance of 400 pF. Moving the node through the full bus requires 160 nC. A 2 A commutating current of the correct polarity would require about 80 ns under a constant-current approximation:

Qcomm=∫Cnode(v) dv,tcomm≃Qcomm∣Icomm∣.Q_{\mathrm{comm}}=\int C_{\mathrm{node}}(v)\,dv,\qquad t_{\mathrm{comm}}\simeq\frac{Q_{\mathrm{comm}}}{|I_{\mathrm{comm}}|}.

This calculation checks charge and time only. It does not prove that the actual circuit can supply the trajectory's required energy or sustain that current. With zero commutating current, the node does not traverse a capacitive voltage step merely because a zero-current detector has fired.

F.2 Why semiconductor technology changes the preferred commutation

Many modern majority-carrier power switches can have relatively low turn-off energy compared with hard turn-on energy. They do not have the channel minority-carrier tail characteristic of an IGBT. That can make a design with low-voltage turn-on and nonzero-current turn-off attractive. It does not make turning off arbitrary current lossless: overlap, gate drive, parasitic inductance, output capacitance, reverse conduction and thermal limits remain.

Compare actual device switching-energy curves at the intended voltage, current, temperature and gate drive. Infineon's SiC versus IGBT discussion explains this difference in switching-loss mechanisms.

IGBTs add stored minority charge. After the gate is turned off, current can persist while the collector-emitter voltage has already recovered. The resulting tail can contribute substantial turn-off energy. Reducing current through a suitable resonant commutation before high blocking voltage is established can therefore be especially valuable for an IGBT.

ZVS at turn-on alone does not remove a later turn-off tail. Device generations differ greatly, so “ZCS is always better than ZVS for every IGBT” is too broad; compare the complete switching cycle and required commutation time.

Two separate authored loss examples, neither representing a selected device or either 48 V converter of this lesson:

For a voltage-dependent output capacitance, use the appropriate device energy/charge data or integrate the curve; the small-signal capacitance at one voltage is not sufficient:

Eoss(V)=∫0VvCoss(v) dv,Etail≃VbusItail,0τ.E_{\mathrm{oss}}(V)=\int_0^V v C_{\mathrm{oss}}(v)\,dv,\qquad E_{\mathrm{tail}}\simeq V_{\mathrm{bus}}I_{\mathrm{tail},0}\tau.

Separate illustrative models of a capacitive commutation transition, an exponential current tail and loss versus switching frequency.

Why soft switching can support higher frequency: for a repeated event, Psw≈fs⋅(Eon+Eoff)P_{\mathrm{sw}} \approx f_s\cdot(E_{\mathrm{on}} + E_{\mathrm{off}}). Reducing the dominant event energy allows higher frequency for the same switching-loss budget. Boundary/DCM timing and resonant commutation provide opportunities to do that, while higher peak/RMS current, gate-drive loss, magnetic loss, circulating current and variable-frequency behavior limit the benefit.

Conduction mode, current-control law and commutation strategy should therefore be stated separately when comparing converters.

13. Sources, coverage and numerical verification

13.1 Course sources

The primary course source is D:\OneDrive\Work\HTWG\2025\Lectures\V_1 Anwendungen der Leistungselektronik.pptx. The relevant notebook sources are in D:\OneDrive\Work\HTWG\2025\00_rtwh\Exercises\U1:

13.2 PMP31349 sources and method

Part I takes every number labelled TI from these documents. The test report, schematic, bill of materials and LM5148 datasheet are stored in ti-pmp31349/references/ (tidt427.pdf, tidmdl2.pdf, tidmdl6.pdf, lm5148.pdf), downloaded with scrape_tikit; the LMG2100R044, Würth and Kemet datasheets are cited, not stored.

The ntbees2 Kolar-flow and Pareto results (ti-pmp31349/figures/04_pareto_fs_L.svg and 05_ntbees2_l1_waveforms.svg, kolar-flow-checks.json, pareto-checks.json) predate the alignment of the PMP31349 parameters with TI's BOM and the LM5148 datasheet, and have not been rerun. They are cited as a side study only (T4, Solution C).

13.3 Slide map

Source slides Content in this lesson
1–2, 8–9, 37 Title, personal introduction, semester plan and video links: not carried forward
3–7 Definition, classification by function and by application (Appendix A)
10 Learning outcomes (opening section)
11 Switched-mode converters, advantages and costs (Appendix B.1)
12–13 Switching transient and Class-D view (Appendix C)
14–17 Switch positions, PWM and M(D)=DM(D) = D (§2.1–2.2)
18 MOSFET/diode realisation (Appendix D.1)
19–20 Characteristic quantities and ideal power balance (§2.3; diode form in Appendix D.2)
21–23 Volt-second balance (§2.2, general derivation in recap §7.2–7.3)
24 Inductor ripple (§3.1)
25 Charge balance (§4.1, recap §7.2)
26 Capacitor voltage ripple, triangular and pulsed current (§4.2 and §5; Appendix D.5)
27 Power with constant voltage and resistance (§3.2, recap §6.1–6.2; diode form in Appendix D.3)
28–31 Mean and RMS rules and buck waveforms (§3.2, recap §5.1–5.2; diode form in Appendix D.4)
32–33 Critical conduction and DCM (§10 and §10.1–10.2; teaching model in Appendix E)
34–35 Loss sources and the nonideal CCM model (§8.1–8.2; diode buck in Appendix D.6–D.9)
36 Remarks on efficiency, frequency and applicability (opening; Appendix B.2)

Each section built on a source slide carries an HTML comment <!-- slide: l01-sNN -->, the stable slide identity for Slide sync. Part I follows designer order, not slide order, so the markers appear out of sequence. Slides 38–44 are new slides of this lesson: the specification (§1), the input capacitor (§5), the power stage (§6), the loop (§7), simulation (§9), what to retain (§11) and the training (§12).

The training exercises (§12) expand the slides for teaching: ripple shape (T1), current-source behaviour (T2), saturation and peak-current protection (T3), operating-point sensitivity (T4) and four filter and control exercises with an inductor-loss riddle (E1–E5). A buck steps down voltage and provides no galvanic isolation. Practical efficiency and switching frequency depend on implementation; the historical ranges and maximum-efficiency claim in slide 36 are not used as universal design limits.

Notebook corrections: some exploratory cells use inconsistent DCM expressions, including a gain of D2/(D2+K)D^2/(D^2+K), which is not the resistively loaded buck DCM relation used here. Appendix E.4 derives KM2=D2(1−M)KM^2 = D^2(1-M) from the actual current triangle and validates both mean current and input/output power. The original notebooks are preserved.

The required ideal L is 60 µH (Appendix E.1); stale comments suggesting 50 µH are not used. The ideal capacitor minimum is 50 µF; the 100 µF example here is an explicitly chosen larger value.

13.4 External cross-checks

13.5 Numerical verification

All figures are authored for this lesson. Every checks JSON is written by the script named beside it; rerun them in the order of the tables, as in README.md.

Part I, PMP31349 (ti-pmp31349/scripts/, writing into ti-pmp31349/):

Checks file Script What it records
design-checks.json design_steps.py §2–6: duty extremes, LL, CoutC_{\mathrm{out}}, CinC_{\mathrm{in}} and power-stage numbers, ours against TI's parts
reverse-engineering-checks.json reverse_engineer.py §8.4: loss coefficients fitted to TI's measured efficiency; figures 01–02
loss-estimate-checks.json loss_estimate.py §8.1–8.3 and §8.5: datasheet-only loss estimate, duty with losses, error against TI's 144 points, junction temperature; figure 06
loop-checks.json loop_design.py §7: current-mode loop with TI's compensation, crossover and margins, ESR sweep, load step; figures 07–08
variation-checks.json variations.py §10: critical conduction, DCM, fsf_s sweep and LC variation; figures 09–10
sensitivity-checks.json sensitivity.py T4: +10 % sensitivities at 48 V, 20 A and 5 A on the calibrated model; figure 03
ripple-checks.json ripple_checks.py §9.1: output and input ripple against TI's scope captures
kolar-flow-checks.json kolar_flow_ntbees2.py Side study: Kolar flow on ntbees2 waveforms (before the parameter alignment); figure 05
pareto-checks.json pareto_sweep.py Side study: loss-volume sweep over fsf_s and LL (before the parameter alignment); figure 04

These scripts compute every number labelled ours; the TI values are read from ti-pmp31349/data/ti_spec.json and ti-pmp31349/data/measured_efficiency.csv. ti-pmp31349/plecs/pmp31349_buck.m holds the parameters of the two PLECS models (§9.2), which are pending.

Teaching model, Part II and the appendices (scripts/, writing into the lesson folder):

Checks file Script What it records
numerical-checks.json make_examples.py Appendices D–E: example calculations, DCM waveforms, sensitivity derivatives; figures 1–7
filter-control-checks.json filter_control_examples.py E2–E5: filter, output impedance, pole placement and loop; figures 8–11
boundary-switching-checks.json boundary_switching_examples.py T2 and Appendix F: pulse charge and commutation examples; figures 12–13
parasitic-ripple-checks.json parasitic_ripple_examples.py T1 and E1: capacitor and inductor parasitic ripple; figures 14–16
saturation-transient-checks.json saturation_transient_example.py T3: saturation transients and peak-current protection; figures 17–18
html-checks.json check_html.cjs Browser check of lesson-01.html

scripts/make_examples.py regenerates figures 1–7 and numerical-checks.json. Checks independently integrate the DCM current waveforms at both input endpoints, verify power balance and boundary-compatible gain, and compare the analytic sensitivity derivatives with centered finite differences.

scripts/filter_control_examples.py generates figures 8–11 and filter-control-checks.json. It compares the exact periodic switched LC solution with an independent Fourier reconstruction. It checks the resonance/output-impedance identity and verifies assigned poles against the state matrix. Two state-propagation methods are compared.

The script also checks voltage-loop output impedance against a direct nodal solution. It verifies closed-loop poles, gain crossings and settled load-step results. These are checks of the stated models. Hardware and controller validation require further evidence. lesson-01.html embeds the figures and equations for offline reading.

scripts/boundary_switching_examples.py generates figures 12–13 and boundary-switching-checks.json. It integrates pulse charge at three output voltages, checks boundary/DCM mean and RMS currents, and verifies the illustrative tail-energy integral, constant-capacitance energy and commutation-charge timing. The charge-transition figure is a constant-current capacitive screening model, not a solved resonant buck trajectory or a measured switching waveform.

scripts/parasitic_ripple_examples.py generates figures 14–16 and parasitic-ripple-checks.json. It verifies the prescribed current/charge relation, separates ESR/ESL contributions, and solves periodic operation of the explicit series-r plus parallel-RpR_p inductor model. Checks compare state-space propagation against an independently written physical KVL/KCL ODE, verify jump magnitudes, and integrate input/load/series/parallel/ESR power to confirm periodic energy balance. The constant-RpR_p example is a mechanism illustration, not a validated proximity-loss model of a real component.

scripts/saturation_transient_example.py generates figures 17–18 and saturation-transient-checks.json. It checks the inverse flux/current law, differential inductance and magnetic-energy derivative, integrates source/load/winding energy, verifies cumulative cycle volt-seconds against flux displacement, and checks the local linear sampled-loop poles. Protected and unprotected line-step peaks are repeated at tighter numerical tolerance; a zero-delay comparator run checks the origin of peak-limit overshoot.

The model uses explicit switching and diode-current clamping, not a small-signal approximation or a device failure simulation.

scripts/ripple_tradeoff.py writes data/ripple-tradeoff.json for §3.4. Run it with the same external Python environment. The comparison holds input, output, full-load current and switching frequency fixed. Independent ramp integration checks mean/RMS current, charge balance and power balance.

scripts/current_memory_example.py writes data/current-memory-example.json and figure 19 for Appendix E.8. It holds input voltage, duty, resistance and switching frequency fixed while inductance crosses the CCM/DCM boundary. Integrated current ramps check mean/RMS current, charge, energy and power balance. A numerical root independently checks the DCM operating point within the small-output-ripple model.

scripts/neutral_leg_example.py writes data/neutral-leg-example.json and figure 20 for Appendix E.9. It compares three averaged damping/feedforward paths under identical sinusoidal neutral-current disturbances. State-space phasors, an independent physical ODE and periodic energy balance check the transfer functions. Separate ideal pulse integrations check bidirectional DCM charge, timing and RMS current. A second, small balancing leg compares forced-PWM CCM ripple with DCM charge packets at the same 2 A mean. Published experimental results remain attributed to their authors.