Phase lead
Published tools do the forward pass only: give them an L and they return a time. This one goes in whichever direction you need: inductance, angle and time are the same fact once the frequency and the burden are known. It also adds the thing that actually bites. The circuit holds a constant angle, while the switch needs a time. The frequency falls across the ramp, so the lead in nanoseconds drifts with it. That time is not constant either: half of it is the electronics, which is fixed, and half is the ZVS floor, which rises as the frequency falls and quietly consumes most of the drift.
The delay chain, in nanoseconds. The defaults are a datasheet estimate for an IPW65R080CFD, not a measurement. The CT line is the odd one out: it is subtracted, because a current transformer contributes lead rather than delay.
Or measure the chain instead of adding it up. One probe on the burden, which is what the comparator sees, one on the switch; trigger on the burden crossing and read the gap to the actual turn-off. That is the whole chain with your own layout in it. Filling this overrides every field above.
The bridge, for the ZVS floor. This used to be one field holding 80 ns, which nobody could check and nobody could move. These are what the charge criterion actually eats: the node has to finish recharging inside the dead time, and whether it does depends on your devices, not on a chosen number. It is solved at every frequency in the table. Snubber capacitance belongs in the node figure, so count it there. The last field is the one that bites. The switch is slower warm, turns off later and therefore breaks less current, so a lead set on a cold bridge lets ZVS go under load. The working point is computed hot.
Ramp end puts the node exactly on the criterion where the arc is longest and the current highest, and accepts a small shortfall at the top of the ramp, where a transition carries little energy. Ramp start covers the whole ramp and pays for it at the far end, breaking the current early where it is largest. The table below prints what each choice costs at the other end.
wind this1.28 µHexpected case, 1.58 µH total less 0.30 of layout
zone1.04 … 2.03 µHoptimistic to pessimistic reading of the inputs
works on every readingno such bandthe pessimistic case needs the 60° ceiling of 2.03 µH
must break at turn-off44 Awarm, at 490 kHz
T_lead(f) = ΣT_delay − T_CT + T_ZVS(f) T_ZVS(f) = smallest Δt with I_pk/ω · [cos(ω(Δt − t_dead)) − cos(ω·Δt)] ≥ C_node·V_bus ω = 2πf, C_node = n_dev · C_o(tr) at the design frequency f_d (start or end of the ramp) φ = 360° · f_d · T_lead(f_d) L = R · tan(φ) / (2πf_d) then across the ramp, L and R fixed φ(f) = arctan(2πfL / R) t(f) = φ(f) / (360°·f) margin(f) = t(f) − T_lead(f) swing = |Z| / R = 1/cos φ, |Z| = √(R² + (2πfL)²) in-phase fraction = R / |Z| = cos φ
Why this and not just a scope. They answer different questions. A scope tells you what is, that T_d is 210 ns. It does not tell you what to fit; between the two sits the conversion this page does. And you cannot measure until the bridge runs, which needs the lead to be roughly right already, so something has to break that circle. This does: wind the value it gives, power up, then trim on the screen.
Two more things a waveform will not give you. A scope shows one frequency while a ramp crosses hundreds, and the drift table turns a single measurement into the whole sweep. And when the lead is wrong the screen shows a symptom, while the numbers here show the trade: |Z|, the swing, the in-phase share, and the point past 60° where inductance stops buying angle. That is the difference between knowing something is off and knowing what to change. None of which displaces the measurement: the final L1 is set on the scope, never by its nominal value.
The three inputs are one quantity. Give any of the inductance, the angle or the time and the other two follow from the frequency and the burden. The page converts to a lead time first and works from there, so every mode reaches the same arithmetic.
The signal is taken across L + R, not across the burden alone. It has to be: with the CT behaving as a current source, the voltage across a burden on its own is I·R whatever the inductor does, and there would be no lead at all. So the swing at the sense point grows as 1/cos φ, it does not shrink. What falls is R/|Z|, the in-phase share: how much of the signal is still about the current rather than about dI/dt.
60° is a limit of diminishing returns, not of amplitude. Going 45→60° costs 1.73× the inductance, 60→75° another 1.73×, and 70→85° costs 3.06×; 90° would need an infinite coil. In davekni's words, further inductance increases generate diminishing increases in phase lead.
How to know your own T_d. These defaults are added up from datasheets, and the largest term is not even read off one directly: the IPW65R080CFD is quoted at 85 ns for t_d(off) with a 1.8 Ω gate resistor on a 13 V unipolar drive, and at 10.75 Ω on ±15 V the plateau current falls, which scales it to about 110 ns. Every link has a caveat of that kind, and that term is also the one that grows as the die heats, which is what the hot column is about.
So measure the chain rather than trusting the sum, and put the result in the field above. Probe the burden, not the comparator output: the burden is what the comparator sees, and triggering on its output would leave the comparator's own 7 ns outside the measurement. The CT stays outside it either way, which is why it is still subtracted separately. Measure after the current transformer is final, because the CT supplies part of the lead and rewinding it moves the number.
The CT enters with a minus. Magnetising current shunts the burden, so the burden signal leads the primary current; the transformer gives lead, not delay. At the 51 Ω stock burden getting that sign wrong would be 11 ns out of 270, or 4 %; at 3.9 Ω the term is 0.44 ns and the sign no longer matters.
The model treats the chain as a pure series L + R. The 150 pF sitting across the burden is 2165 Ω at 490 kHz against 3.9 Ω of burden, which moves the angle by under 0.1°; that is neglected deliberately, not overlooked.
T_ZVS has no optimum value. It has a floor. It is the residual current the bridge needs to recharge its own node during the dead time, and the criterion is that the node finishes, not that a margin hits a target. Turning off exactly at the zero crossing is the failure case: nothing is left to recharge with, and the opposite switch turns on into the full bus. ZCS and ZVS trade against each other, and this is which side you are buying. Below the floor a transition costs about 440 µJ per device at 440 V, which is kilowatts at 490 kHz; above it the switch breaks the current early and the overshoot grows.
What sets the floor is the node capacitance, so it moves with your snubbers, and it does not move with the ramp amplitude: charge wanted scales with V_bus and charge available with I_pk, so raising both together leaves it where it was. Checked at 30, 60 and 100 % of the working point, 80.3 ns each time, which is why one operating point is enough and only frequency sweeps. On the notes' own bridge the floor is 80 ns with no snubber, 90 at 100 pF, 105 at 235 and 125 at 470; the page solves that criterion rather than quoting it and reproduces those four as 80.3, 90.5, 99.0 and 124.5 ns.
Where the ramp is tightest is a property of the bridge. Two curves race down it, the floor rising and what an arctan gives back also rising, and either can win. On this coil the top of the ramp is the tight point; on a fast bridge with a short dead time it moves to the bottom, and in between the curve can dip and come back. So the page scans the ramp and prints the frequency it fitted, rather than assuming an end. Reading the start instead of the extremum was a real error here, worth 1.4 % on a bridge whose two ends agree to four digits.
Corrections this page has had to make. It said the swing at the sense point shrinks with the angle; it grows, as 1/cos φ, and what shrinks is the in-phase share. It printed the growth in lead down the ramp as though all of it were spare margin, overstating it about fivefold. It sized L1 at the ramp start rather than at the worst point of the ramp. And it told a reader with a starved bridge to fit a faster driver when the floor, not the chain, was spending the angle. They are recorded rather than quietly fixed, because a reader who acted on any of them would have trimmed something that had nothing to give.
Trimming it on the bridge output. Too little L1 and the edge rings, with overshoot on every transition and no triple transition at all. In the right place there is a small bump at the end of the edge and clean after it: that is the optimum, not a defect. Too much and the bump grows into a long triple transition with the overshoot climbing again. The sharper form of the same test is that Vce on the lower switch should fall almost to zero before its Vge crosses about 5 V.
Turn from small to large, because falling short is the more dangerous side, and repeat it warm: a hot bridge asks for more, so the setting moves. The nominal value is not what you set. The coil is trimmed to the screen, and the zone above only says where to start and when to stop.