This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LMZ10504 compensation App Note (SNVA417D)

Other Parts Discussed in Thread: LMZ10503, LMZ10504

When trying to calculate compensation values by following App Note SNVA417D, I believe there is an error in Equation 6.

In the denominator, the highlighted term shows a minus sign; I think this should be plus. fx/flc will almost certainly be > 1 for most typical output caps such as those shown in the App Note. This will make the first term in the radical negative and lead to an imaginary value.

Also, after Equation 13, the App Note states that Eqn 11 and 13 can be combined and simplified to Eqn 6.  I did this and again the operation in the denominator comes out as plus instead of minus.

Please confirm.

  • Thank you; we will look into this

  • Mark,
    You are right. We will push the correction out as soon as possible.
    Thanks and Regards,
    Akshay
  • Sorry, this could be offtopic to your question but I haven't found how to send PM to you.
    I'm trying to calculate compensation loop with same app note. It's good that I found your message about error. But still I can't calculate Rfbt as I can't find value for Rcint and Rout (last one is used to calculate Q). Where are you getting this in your calculation? I'm using LMZ10503, not LMZ10504 but in general it's same thing.
  • Ah! It looks like some data got dropped upon release of the document. The RCINT and CCINT are internal compensation components. Their values are 105.8kohms and 90pF respectively. The ROUT is simply the output resistance and is calculated as VOUT/IOUT. I hope this helps.

  • Thank you for your reply! Is IOUT nominal current, specified for IC? I.e. 3A for LMZ10503? By the way - does it means that VOUT influences compensation components values? It's strange since recommended values for compensation loop in datasheet do not takes into account VOUT.
  • IOUT could be your max current. The LMZ1050x devices are based on the voltage mode architecture. The VOUT doesn't directly influence the compensation. It does have an effect on the calculation of the gain component. What does largely influence is VIN. Hence, in the tables, you will notice that the component values are set for different VIN conditions.

    EDIT:

    Remember to consider all the capacitors hanging at the output node. We have seen customers connect multiple electrolytic and tantalum capacitors at the output node and close to the load. If these were not considered during the calculation of the compensation components, then you could potentially have an unstable system.

  • Take a note: In Rev.D of SNVA417D there is no value for L - it's also missing. Got value for L (2.2uH for LMZ10503) from rev.B of document.

    Also I haven't found any influency of Ccint. Is this correct?
  • L value was originally in the datasheet and hence not duplicated. But it will be added for a more ready reference. The equations work out to not have any dependency on CCINT.
  • Are you sure that ROUT is defined as VOUT/IOUT? It looks like as definiton for RLoad. As I can understand ROUT is sum of internal Switch's MOSFETs resistance and DC resistance of inductance. And Q of LC loop is depending exactly on this resistance, not on Rload. And wrong ROUT could affect stability. In theory Q higher than 1.2 leads to oscillations.

    So is there another information about ROUT for LMZ10503?

  • What kind of information are you looking for ROUT?
    The entire model for the plant transfer function ideally contains MOSFET Rdson, DCR of inductor, ESR of capacitor and the output resistance/impedance. But with all of that in, the model becomes complicated. When you work out the equations (for simplicity without any parasitics but with only include ROUT which is VOUT/IOUT), you will get to the value of Q being equal to ROUT*square-root(COUT/L). The denominator in equation 8 (for Q) has the term ROUT*RESR*COUT. Assuming the output caps are of ceramic make (negligible ESR), the value of that term in comparison to L becomes much smaller and thus negligible. That would bring the equation to the simple form. The addition of ESR was brought about in the equation to account for tantalum caps used in certain applications which skewed the value of ESR. Different write ups will refer to the output resistance with different terms. You will often see RLOAD being used instead of ROUT. In the application note, ROUT refers to output resistance. I have attached a PDF for the calculation of Q for the buck topology.

    As an alternative you could download the spice model and run it in TINA to verify any results you want. Or you could use Webench. Is there a reason there are two threads being kept open for the same discussion? I am of the thought that one could be closed and discussion could be continued on just one.

    Q_Buck.pdf

  • Unfortunately I'm also struggling with the LMZ1050x documentation.

    The Datasheet link to the app note is wrong, then after finding the app note the formulas are incomplete (Rout definition? Cint, Rcint?)

    In addition the webench can't calculate the loop components (some other bug), which makes it difficult to confirm any values

  • Hello,

    I apologize for the delay involved in getting the fixes out. As far as the parameter values go, I have mentioned them in the previous messages in this thread. Maybe I can be of assistance for the other issues you are facing. Please tell me your design requirements.

    Regards,
    Akshay

  • Hello - thank you.
    I am unable to get the calculation results to agree with any of the suggested component values:

    Using the LMZ10503 and a python script:
    ###########################################
    Cout = 150e-6
    Resr = 15e-3
    Vin = 5.0
    Cint = 90e-12 #given in forum
    Rcint = 105e3 #given in forum
    Vout = 3.3
    Iout = 0.15

    L = 2.2e-6 #from datasheet
    fLC = 1/(2*pi*sqrt(L*Cout))
    fesr = 1/(2*pi*Resr*Cout) # from somewhere else
    #fco = 100e3 #chosen
    fco = 1e6/10 #100e3 #chosen

    print("fesr: %.1fkHz, fLC: %.1fkHz" % (fesr/1e3, fLC/1e3))
    if fesr > 200e3:
    fpole = fesr
    else:
    fpole = 200e3 #2*fco?

    #fLC = 1/(2*pi*Ccomp*(Rfbt + Rcomp))
    #fpole = 1/(2*pi*Rcomp*Ccomp)

    print("fpole: %.1fkHz, fLC: %.1fkHz" % (fpole/1e3, fLC/1e3))
    Rout = Vout/Iout #see forum
    Rfbt = Rcint * (1+fco/fLC)*Vin*sqrt(1+(fco/fesr)**2)/((sqrt(1+(fco/fLC)**2+(fco/(Q*fLC))**2)*(1+fco/fpole))) #changedfirst '-' in denominator to '+' see forum
    Q = Rout* sqrt(L* Cout) / ( Resr* Rout* Cout + L)
    Rcomp = Rfbt / (fpole/ fLC - 1)
    Ccomp = 1/(2* pi* fLC* (Rfbt+ Rcomp))
    print("Rfbt: %.1fkOhm, Ccomp: %.1fpF, Rcomp: %.1fkOhm, Q: %.1f" %(Rfbt /1e3, Ccomp*1e12, Rcomp/1e3, Q))

    ###########################################

    I get the following outputs:
    fesr: 70.7kHz, fLC: 8.8kHz
    fpole: 200.0kHz
    Rfbt: 642.5kOhm, Ccomp: 27.0pF, Rcomp: 29.4kOhm, Q: 7.7

    Compared to suggested values: Rfbt: 100k, Ccomp = 180pF, Rcomp = 3.5k...

    Thus I am unable to get the formulas and the suggested values to agree at all - it maybe a error in my script of course, but it could also be another issue with the app note - would be grateful if you have any input.
  • There is an additional parenthesis and a square term missing in the Rfbt equation #6. Please use the following equation while we are updating the application note:
    Rfbt = Rcint * (1+fco/fLC)*Vin*sqrt(1+(fco/fesr)^2)/((sqrt((1+(fco/fLC)^2)^2+(fco/(Q*fLC))^2)*(1+fco/fpole))).

    The result should be about 57kohms for your requirement. This is still different than the table and the reason is that the values chosen for the table are satisfying a range of COUT and ESR. The equations will result in values for a particular value of COUT and ESR.

    I apologize for the difficulties faced. We will get the equation corrected asap.

    Regards,
    Akshay