I would like to build a high side current source that can source 0-5A with a 1mA resolution. The voltage source feeding into this current source is a variable 0-50V that is always ~3V above the required voltage for that current[1].

My initial thought on doing this was to use a current sense amplifier as the inverting input to an op amp (the non-inverting input is the reference voltage) that controls a p channel MOSFET which controls the current going into the load. Unfortunately, this means that the current sense amplifier is inside the feedback loop of the op amp, which seems to be a problem (I'm getting lots of oscillations).

However, This note from analog shows a low side current sink using a difference amplifier to measure the current through a current sense resistor. It is using (a small amount of) positive feedback, which I don't understand.

This note from linear shows a low voltage, lower current (2A vs the 5A I want), current source. I'm worried about the integrator causing the transient response of the current source to be too slow, and thus too inaccurate.

This note from TI talks about separating the unity gain bandwidths of two amplifiers by a "factor of 5" when using an amplifier inside a feedback loop of another amplifier. (They mention this as a rule of thumb, but don't talk much about how to make it more concrete). However this seems really hand wavy, and it doesn't go into more detail.

My questions:

What is the positive feedback for in the analog note?

Does this change the unity gain bandwidth of the op amp so the factor of 5 is obeyed? And does the amplifier INSIDE the feedback loop have to have a unity gain bandwidth greater than the one being fed-back?

What are other topologies for accurate current sources that can handle 5A?

[1]: For example, if I have a 1A current into 10Ω, the adjustable power supply will be at 13V, and 2A current into 10Ω will give me a power supply of 23V, etc. The transient response of this response is a problem for another day...

  • \$\begingroup\$ is the supply voltage stable?, at what level? how much compliance do you need on the output? \$\endgroup\$ Dec 1, 2015 at 20:08
  • \$\begingroup\$ The supply voltage is out of an adjustable switchmode power supply, and the compliance should be almost as high as the supply. The current source should do at least a little regulation (removing what is left of the adjustable supply ripply). \$\endgroup\$ Dec 1, 2015 at 20:12
  • \$\begingroup\$ Most MOSFETs are rated for saturated switching, rather than linear dissipating duty. They go into thermal runaway if operated at more than a small fraction of their max pdiss when operated in the linear region. You can buy FETs, hard to find, expensive, rated for continuous linear dissipation. Best to stick to bipolars if you want to source 5A with a 50v supply, 250watts from the heatsink! \$\endgroup\$
    – Neil_UK
    Dec 1, 2015 at 20:41
  • \$\begingroup\$ Is thermal runaway a problem if you are in feedback? Also, it would only be 250W if the adjustable supply is at 50, and I'm driving a 1 ohm load. (At which point it would be better to adjust the supply to something lower) \$\endgroup\$ Dec 1, 2015 at 20:50
  • \$\begingroup\$ 250W will be a lot of work to dissipate... Why not use a switching mode supply? At 5A you are sort of near the edge of a monolithic IC solution, but if you are willing to use external power devices you shouldn't have any trouble finding a solution. Look for an LED driver IC with so-called "analog dimming" functionality - these provide a pin that scales the output curent. Check out the LT3791, for example... \$\endgroup\$
    – user49628
    Dec 1, 2015 at 22:47

2 Answers 2


You say you want to have 1mA resolution. I take this to include settability as well as controlling ripple (e.g. from PWM) to less than 1mA.
For controlling a set point, there are numerous implementations to consider: single turn pots (with vernier upon vernier), multi-turn pots, digital thumbwheels or rotary switches, toggle switches with a ladder network, etc. I think you were favoring a micro controller with a D/A converter. Any of these options could be used to implement a 5000 interval setpoint.
As far as ripple current, depending on your application you may not want it to span a whole 1mA interval. I was able to achieve ripple of less than 1ma in simulation using as little as 500mH smoothing inductor, by using another 500mH downstream of the current monitor as an output filter. It is self-clocked at about 7kHz using an error integrator followed by a comparator with hysteresis. (Don't try to clock it with an external clock or the output will be erratic.) With the filter inductor ripple was ~500ua; without it ripple was ~2.7ma, but increasing the smoothing inductor to 800uH was enough to be able to eliminate the filter inductor. These are kind of BIG inductors, but not unreasonable. The switching frequency can also be increased, limited by the speed of your components (MOSFET, gate driver, comparators, op amps, etc.), and thermal considerations.


Can you approach this using digital circuits ?

What about using a microcontroller. The ADC will read voltage level and current sense. Then It will correct and use PWM to switch mosfet. But you might not achieve 1mA resolution due to noise problems and resolution. Because if you divide 5A to 1mA steps you will get 5000 step. Hence you will need more than 12bit of ADC resolution.

However if you can decrease the precision to 10mA , it can be done.

Hope the helps

  • 1
    \$\begingroup\$ This doesn't look like an answer. You should have posted it in comments. You should also use proper punctuation and capital letters where required. \$\endgroup\$
    – Transistor
    Dec 18, 2015 at 15:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.