DC-DC current source peer review

Discussion in 'The Projects Forum' started by Obi_Kwiet, Jul 31, 2012.

  1. Obi_Kwiet

    Thread Starter New Member

    Apr 4, 2011
    Howdy folks! I've spent the last few months teaching myself power electronics, and I designed a constant current DC-DC converter to use with laser diodes. I'm running into some issues that I am at a loss to understand, so I'd really appreciate some any insight that any of you might have.

    It turns out that my design choice was not particularly novel; I discovered that several other people were using the same IC as me for a laser driver, but nevertheless, it's been pretty instructive. This is my first real full blown PCB/electronics design, so I've spent a lot of time just learning the ropes. My goal was to design something with the following specs:

    • 16-17mm diameter pcb
    • 2A output current
    • 3-4.2V Input voltage range for a single Li-I cell
    • ~2.5-5V+ output voltage capability
    • 90+% efficiency across most of the output range
    • <15$ BOM for 10+ qty

    I'm using the TPS63020 with a differential amplifier for current feedback. The resistor sitting out there all by it's lonesome is an alternative current sense resistor that can be swapped out to allow access to the driver's full current range. The .05 Ohm resistor covers 200mA to 2.5A and the .5 Ohm resistor covers 20mA to 250mA.





    Unfortunately, my I messed up the foot print of the XC61 voltage supervisor, so I had to leave that out and short EN and PS/SYNC to Vin. According to the data sheet this is ok, as long as I have the .1uF capacitor on the input.

    PCB Layout:



    Hopefully I did a decent job on the layout. It's the only layout I've ever done, and Eagle was all kinds of terrible to work with. I followed all the advice I could find on the internet, within the constrains of the package.

    Anyway, I ordered the parts, soldered the front in a griddle with some solder paste, and hand soldered the back. Did a continuity test, and everything checked out. Solder paste is magical.

    I wired it up to a dummy diode load, with a Vf of about 3V. I set my output current to about 300mA using the .05 Ohm sense resistor. (Turns out those tiny trim pots are miserable to work with. I'm going to have to come up with a better solution. Maybe a small voltage programable digi-pot?) Anyway, efficiency was horrible. I set my power supply to 4.1V, and showed an output current to the driver of about 600mA. Using the sophisticated "touch different parts of the driver to see what's getting hot" method, I determined that most of my power loss was coming from the inductor. I found this odd, because it met the specs recommended by the datasheet. I hooked up the thing to my O-scope and probed the input rails. I immediately noticed a large ~2Vp-p voltage ripple. More interesting than that, however was the fact that it has at a frequency of of ~25KHz, which is about two orders of magnitude smaller than the TPS63020's 2.4MHz switching frequency. The switching noise can still be seen on small enough time scales, and has a much more reasonable amplitude.

    I thought it might be my power supply, so I hooked it up to a battery with the same result. At some point I mixed up the polarity on the input terminals and fried the thing, so I soldered another one up, and got the exact same waveform, so it wasn't a fluke. Does anyone have any idea what could be causing this? I'd really appreciate some help, because I don't know anyone who can help me with this, and I have no idea where a frequency this low could be coming from.

    O-Scope traces:

    10us/division, 1v/division:

    1us/division, 1v/division:

    20ns/division, 1v/division:

    I'd really appreciate any light that anyone could throw on this. Thanks!
  2. mcasale


    Jul 18, 2011
    After looking over your schematic and the spec sheet for the TPS63020, I don't see how you can guarantee loop stability. It looks like you are using the LMP8645A as a current sense/limit. To do this scheme, you need to know the frequency response of this device.

    Is there a reason you cannot just buck/boost the power supply to some nominal value, and then do the current limit afterwards? I assume the diode current is more important than the actual voltage?
  3. takao21203

    Distinguished Member

    Apr 28, 2012
    1. Have you tried to connect the output from the amplifier directly to the feedback without resistor?

    2. The inductor is only rated for 1 MHz. Have you considered to use 2uH?

    My experience with high-frequency dc/dc ICs is the given value seems to be minimal value, and is often problematic. I had difficulties for instance with 4.7 uH, not starting up, or instability, then changed to 12uH or even 22uH.

    If the inductor gets hot obviously something is wrong with it's parameters.

    Have you tried to work the circuit in voltage mode? If you can get along with this inductor in voltage mode (efficiency) then something is wrong with the current amplifier/feedback.

    Maybe you can try to put two of these inductors in series for 2uH? I am not sure however if they are still good at 2.4 MHz. Try to work the circuit in voltage mode, and to isolate the problem as much as possible.

    Also in the layout you route the ground connection around the inductor, not that I think it would cause much effects, but I have not used this frequency myself.
  4. bountyhunter

    Well-Known Member

    Sep 7, 2009
    If you are using Tantalum or Aluminum electrolytic capacaitors, the design will never work. You must use ceramic caps, dielectric type X7R or X5R. I went through this before with one of our 1.6MHz switcher products. The resonant frequency of electrolytic caps is a few hundered KHz so they look inductive at any frequency above that. It will cause oscillations and ringing.

    As stated above, if the inductor is cooking either it's core material is not suitable for the operating frequency or you are saturating it.

    As mentioned, putting the LMP8645 in the feedback loop to the 63020 completely changes the loop phase/gain and it may need tweaking to stabilize. Or it may not work. I have done similar types of designs, probably can work if you knock the gain of the 8645 down enough.

    Here is an app note showing a switcher being used as a constant current driver with a diff amp feeding back:


    The diff amp has the gain knocked down to about 8 and also has frequency rolloff.
    Last edited: Jul 31, 2012
  5. THE_RB

    AAC Fanatic!

    Feb 11, 2008
    It looks like the current limiting is kicking in cyclically giving the lower freq waveform. Most likely due to the indictor choice being poor and the inductor going into saturation at your chosen current. Another symptom might be excessive inductor heat.

    It could also be because your inductor is not optimal for that high a frequency due to core issues.

    In both cases you can check the inductor datasheet for the max current and max freq specs.
  6. Obi_Kwiet

    Thread Starter New Member

    Apr 4, 2011
    Well, I LMP8645 has a significantly lower bandwidth than the switching frequency, and then I did a LPF on the output. I would have done a LPF on the inputs, but I didn't think I had room.

    An LDO on the output would result in a much nicer signal, but I don't see how I could fit that on my board.

    Do you mean short out the R in the RC filter? I can give it a shot, but it should be a very high impedance input.

    Yeah the inductor was tricky. The reference designs used a 1 or 1.5uH inductor, and my ripple calculations show that this inductance is so high at this frequency that ripple would be dominated by series resistance. Furthermore, the the control function of the TPS has a right hand zero that they say to avoid by not choosing too large an inductor value.

    I saw what you said about the rating, but the Q value at 2.4Ghz didn't seem too bad, and I couldn't find anything that would do better. However, I don't really know what constitutes a bad Q value. I went with this one because the reference inductor wasn't available at the time of purchase and this one seemed really close.

    These are the datasheets for the reference inductors.



    Yeah, but I couldn't think of a way to do it. Looking at the PCB again, I think I can see a way to try.

    That's a really good point. I won't connect the ground plane there on the next revision.

    I think THE_RB is probably right about the inductor current limit. I think the RC filter on the amplifier is causing far too slow a response on the current feedback. I'm going to try taking it out entirely, because now that I think about it, I don't feel that it is even necessary.
  7. THE_RB

    AAC Fanatic!

    Feb 11, 2008
    What I would try is a much larger inductor, larger in value and core size. Once the circuit is operating well (probably at a lower freq) I would start decreasing the inductor size and package and dealing with the issues that arise.
  8. crutschow


    Mar 14, 2008
    I would also pursue THE_RB's comment about oscillation of the current limit circuit.

    You might try changing the R2C4 time constant and see what effect that has. The ap note that bountyhunter posted shows a LP rolloff time-constant of 750μs (75kΩ, .01μF) for the current amplifier whereas your circuit has a much faster one of 2μs (20kΩ, 100pF). Try increasing the values of R2, C4 or both.