Is building a DC-DC PSU PWM controller from discrete components a terrible idea?

I am building a 1kW PSU that is controlled with DSP MCU. It requires a lot of features such as synchronous rectification, bidirectionality, current regulation. Those features make the PSU very exotic and I was unable to find any suitable PWM control IC. My current problem is that the PSU is unable to regulate current quickly enough and I need to find a solution for that.

It is quite easy to build an analog CMC PWM controller model using ideal analog components and switches. But I've never seen anyone do that in practice and that suggests me that it might be a terrible idea. There might be complicated problems such as noise pickup or timings mismatches.

Does anyone knows if it is a useful practice to build a PWM controller from discrete components or not and why?

• Twenty years ago, most of the cell-phone chargers were made of discrete components (1 or 2 bipolar transistors) for different reasons but two were cost and delivery: when you build hundred of millions boards, you want to secure your supply chain and BC547 are available from any manufacturer in big quantity. This is ok for low-performance designs but as soon as you need reliability, production stability (controlled spread), ease of maintenance and safety compliance, it is difficult or even impossible to resort to a discrete solution. Unless you are chasing every cent which I doubt for 1-kW PSU. – Verbal Kint Feb 13 at 11:39
• What is your technical definition of a PWM controller? – Andy aka Feb 13 at 11:49
• @Andyaka A circuit that changes the duty cycle of a constant frequency pulse wave outputs in response to analog inputs. – Sergio Feb 13 at 12:26
• By all means, build one from discretes as an excellent learning experience. But for practical use, why not use a tested and proven PWM IC? – rdtsc Feb 13 at 13:05
• @rdtsc All PWM ICs I found are either too expensive or require a lot of modifications with external components in order to make them suitable. I still consider that an option, but at this point it seems that discrete control might be a better idea, assuming that nothing goes terribly wrong – Sergio Feb 13 at 13:24

What is your technical definition of a PWM controller? – Andy aka


@Andyaka A circuit that changes the duty cycle of a constant frequency pulse wave outputs in response to analog inputs

OK, just like an LTC6992 then.

Does anyone knows if it is a useful practice to build a PWM controller from discrete components or not and why?

I'd say it's not great practice because there are such devices available. The LTC6992: -

• I simply have no budget for it + it is impossible to sync multiple LTC6992. My only option now is UC3842 which are sold under 0.07\$ and using them seems dodgy -so I look for other possibilities – Sergio Feb 13 at 13:03
• Well @Sergio, the chip is available and, because of that, I have to conclude that to many engineers looking for this type of solution, it is viable (I've even used it myself in a switcher). Your question didn't mention cost or syncing up with other converters of course - you just asked if it is a useful practice to build a PWM controller from discrete components and I think you have concluded two reasons (cost and multiple sync capability). – Andy aka Feb 13 at 13:22

You can control the noise pickup by using the usual copper-foil of planes, to be magnetic shields. And the planes are of course fine electric-field shields, as long as you tie the E_field collection regions to the larger Ground system to prevent radical upsets of the pieces of metal by "displacement currents".

I suggest you design your discrete analog sense/detect/controller inside a 4-layer PCB, the outside layer being the ground plane. use steel to mitigate the slower magnetic fluxes that will penetrate the copper foil.

In using discretes, you have the opportunity to place sensing_circuits some distance away from extreme dI/dT aggressors. whereas with an IC, you are at the mercy of the thoughtfulness of the IC marketing/design folk.

be aware

Vinduce = [MU0 * MUr * Area / ( 2 PI * Distance) ] * dI/dT

which for copper and air and FR-4 reduces to

Vinduce = 2e-7 * Area/Distance * dI/dT

What does thus mean?

If you have dI/dT of 100 amps switching in 100 nanoseconds, 0.1 meter away fron a sensitive/sensing circuit of size 0.1meter by 0.1 meter, the Vinduce will be

Vinduce = 2e-7 * 0.1 * 0.1/0.1 * 1Billion amps/second

Vinduce = 2e-7 * 0.1 * Billion = 2e(-7 -1+9) = 20 volts

Thus your PCB layout, the use of planes, the use of shields, the use of twisted-pairs or high-power coaxes ---- are part of your design tasks.