Bob Cordell's Power amplifier book

There is no dynamic compression of the waveform signal in MP3, merely loss of information about some of the subtle elements of the waveform "wriggling". If you can hear dynamic compression then there is a fault in the playback chain -- it's pretty easy to do an experiment of taking a track of extremely dynamic music, compressing it via a high quality encoder, and then decoding that version in software, and comparing the original with the encode/decode generated one. Minimal differences will be seen ...

What can happen is that the process of decoding the MP3 file at the time of playback degrades the quality, by the functioning of the circuitry doing the decoding creating electrical interference. This can be checked by doing the decoding prior to the playback, as a separate activity; I've done this experiment many times, and have always found a very marked improvement occurs
 
I also find that replaying MP3's with good dynamics to be a different set of challenges than for CD. Either is doable. Either is enjoyable. But they are different--They are not the same signal.

Psycho-acoustic based lossy compression can sound different to different people. I am personally allergic to most, but not all, MP4 types, which give me a headache. Same music from CD or MP3 doesn't cause the headache. So, there is yet more differences. Decoding and playback can be curiously more difficult with some types.
 
Last edited:
In trying to relate that to audio amplifiers. . . apparently, specs like noise floor and different harmonic distortion types, can either help or hinder the lossy codecs like MP3 and MP4. For usage data concerning harmonics, I see that small signal triodes (and some fet devices) are unusually popular when the source is a lossy codec. Perhaps that is a small clue.
 
Last edited:
AX tech editor
Joined 2002
Paid Member
It just so happens that yesterday evening I had a discussion about this with several friends from the AES. Their point was that you should listen to MP3 on a good system with flat frequency response. The MP3 coding assumes a flat replay response, with the ear then doing the nonlinear processing.

If you listen to MP3 on a crappy system you are bound to hear all kinds of artifacts that disappear on a good system.
Was news to me.

jan
 
All I hear with any MP3 is dynamic compression. I don't see how bit rate can make up for that. I'm not saying they can't sound pleasing but there is no dynamics. Anyone old enough to remember what dynamic recordings sound like I think will agree.

Who am I to debate your subjective evaluation, but I need to mention that "compression" in "dynamic compression" is not the same concept as in "MP3 compression".

Could it be that you were influenced in your evaluation by the misunderstanding of the terminology? Something like "MP3 is compressing, therefore it may lead to some loss of dynamics"? That would be like "silver wiring has a bright silvery sound".
 
MIC compensation

Hi Bob

I'm reading your book inchmeal, I'm using the MIC compensation that works very well for VAS DIFF, but by setting random values would like guidance to set the values, I know that the values ​​depend on the design, looking for something as a proportion "golden rule" for MIC.

Here where you write texts:

Paper - MOSFET power amp:

Feedback compensation is provided by C4 and R3 (RC network), which implement rolloff feedback from the output of the predriver to the inverting amplifier input, establishing a stable gain crossover frequency of about 2 MHz. Providing compensation by feedback to the input stage tends to allow improved slew rate and reduced power supply coupling, the latter because both ends of the network are ground-referenced (in contrast to Miller-effect compensation of Fig. 7). Elements C3 and R4 act to stabilize the loop formed by C4 and R13. This front-end design enables the amplifier to achieve a slew rate in excess of 300 V/us.

Book - Designing Audio Power Amplifiers, Chapter 9

Combining the Best of Input and Miller Compensation
Miller input compensation (MIC) implements input compensation by means of negative feedback to the input stage [1]. It provides many advantages analogous to those that Miller compensation provides over simple shunt lag compensation. Figure 9.7 illustrates an amplifier with Miller input compensation. Instead of routing the compensation capacitor back to the input of the VAS, it is routed all the way back to the input of the IPS. This encloses the input stage in the wideband compensation loop, reducing its
distortion and increasing its dynamic range. For this reason, it breaks the relationship between gain crossover frequency and slew rate. The 50-W amplifier in Ref. 1 achieved a slew rate of 300 V/µs using this compensation technique. The gain crossover frequency Fc in this scheme is the frequency where X(C1) = R2. This frequency is set to 500 kHz in Figure 9.7.


From what I understand and based on simulations is that RC network defines the main pole or first pole. MIC improves the rolloff for high frequency, easing some parasite pole. How I do not know to set values ​​for RC MIC, put a ideal curve 6db/8° and set RC MIC of according to the curve 6db/8°, but as you can see, can put different combinations RC and reach the same result.

My main question is how to set the Cx (pole Fc) and Rx (zero) and what are the maximum values for each?

Thanks in advance
 
My main question is how to set the Cx (pole Fc) and Rx (zero) and what are the maximum values for each?

Can only be done, as far as I am aware, by simulating the minor loop gain for different values of R and C. Set C=2.2nF and then vary R untill you locate the zero required to give adequate stability margins.
 
Last edited:
Who am I to debate your subjective evaluation, but I need to mention that "compression" in "dynamic compression" is not the same concept as in "MP3 compression".

Could it be that you were influenced in your evaluation by the misunderstanding of the terminology? Something like "MP3 is compressing, therefore it may lead to some loss of dynamics"? That would be like "silver wiring has a bright silvery sound".

Can we reproduce a 96dB dynamic range out of a 256Kb/s rate
MP3 file..?..
 
Yes that's true.
However, about 340Kb/s WavPack hybrid/lossy is a lot more neutral because of less reliance on psychoacoustic processing. That's a lot easier on the analog portion of the audio system. The WavPack file format is a lot more CPU intensive, so the demand on the digital portion is greater. There are a few portable players that are WavPack capable and almost any home PC can do it. Want 340Kb/s size files without weird harmonics? WavPack.
 
Last edited:
Can only be done, as far as I am aware, by simulating the minor loop gain for different values of R and C. Set C=2.2nF and then vary R untill you locate the zero required to give adequate stability margins.

How you determined this value 2.2n (Cx MIC) ?

I also got to "high" values for Cx MIC compared to projects the Bob Cordell I found strange the high value, but the mosfet error corretion has a crossover 2Mhz evidently the value Cx will be lower.

Would be wrong dimensioning the value of Cx MIC according to crossover? For a phase margin of + - 80 ° my project has a crossover 600Khz.

BTW: I have a design mosfet error corretion simplified, Bob Cordell put this in some post here in diyaudio, this version simplified uses MIC, you want to see? I do not know why Bob did not put in the book...


Thanks
 
Not really true , actually since some sounds are removed
what is left is a 96dB dynamic scale with compressed instantaneous
values as if from 1 to 65536 all intermediates values that are not
multiple of 4 ( for a 4/1 compression ratio) are rounded to the
most nearby multiple of 4 , hence it s a truncated dynamic scale.

What are you talking about here? 16 bit vs. 24 bit sources?

An MP3 encoding process meeting the IEC standard can accept PCM audio inputs with sample rates of 32K, 44.1K, and 48k, and can accept quantization up to 24bits per sample. There isn't any 24 to 16 bit truncation going on, the MP3 encoder takes the whole 24bit audio sample and converts it to a new, compressed audio representation. An MP3 encoder meeting the IEC standard will not simply truncate the input audio down to 16bits and then do MP3 encoding.

The same IEC standard also specifies that MP3's support output up to a 24bit PCM quantization. So if you took MP3's made from a 24bit source, and then converted those MP3's back to 16bit PCM wave files (for instance, converting the MP3's back to 16bit wav to burn onto a CDR), you might have an issue with truncation and degraded sound quality. But if you listen back to the MP3's on an MP3 player directly, truncation is not an issue.

Therefore, according to the IEC standard, MP3's can input/output at 24bits, and have 20bits of effective dynamic range. Based on this, it seems that you would get better sound from converting 24bit PCM files directly to MP3, rather than dithering to 16bits first and then encoding. Given the lossy nature of MP3, I doubt most people would hear any difference either way you did the encoding, but if you weren't planning on dithering down your 24bit PCM files to 16bit files anyway, encoding directly the 24 bit source would save you some time.

http://www.mp3-tech.org/programmer/docs/audiopaper1.pdf
 
How you determined this value 2.2n (Cx MIC) ?

I also got to "high" values for Cx MIC compared to projects the Bob Cordell I found strange the high value, but the mosfet error corretion has a crossover 2Mhz evidently the value Cx will be lower.

Would be wrong dimensioning the value of Cx MIC according to crossover? For a phase margin of + - 80 ° my project has a crossover 600Khz.

BTW: I have a design mosfet error corretion simplified, Bob Cordell put this in some post here in diyaudio, this version simplified uses MIC, you want to see? I do not know why Bob did not put in the book...


Thanks

Hi Rafael,

Sorry to be so slow in getting back to the issue of determining MIC compensation component values.

Mike is right about the MIC minor loop stability. It must be taken into account and evaluated. This can be done by breaking the loop right at the input to the LTP. At that point, the contributions from the MIC compensating capacitor and the output of the amplifier will have merged and summed.

Interestingly, the ULGFs of the major and minor loops are so far apart, perhaps a decade, that the major loop feedback contribution to the minor loop gain of the MIC is pretty much inconsequential in the frequency rangle of the minor loop ULGF.

Compensating the MIC minor loop can be tricky because there are so many possible combinations of the resistance and capacitance values. However, a simple rule-of thumb approach can be used to converge on a circuit fairly quickly. As shown in Figure 9.7 in my book, there are three R-C pieces to the design. The first is C1, the MIC dominant pole compensation capacitor against feedback resistor R2 and feedback shunt R1 (ignore R3 for now and let it be zero, as it often can be). The global ULGF is set by making C1s reactance equal to R2 at the desired global ULGF.

The second R-C piece is the IPS shunt lag-lead load consisting of C2 and R4. This is the primary compensation network for the MIC loop. For now, you can assume R4=0.

The third piece is the VAS R-C load consisting of C3 and R5. In some designs you can get away without it, but I strongly recommend it. It establishes a predictable and dampening load for the VAS at high frequencies. It also controls what proportion of the VAS signal current flows back through C1. Indeed, for most designs you can arbitrarily set C3 to 50pF. If you make it too big, you will impair the achievable slew rate of the VAS. Now, select R5 to set the time constant of C3*R5 to be the same as the time constant of C1 and the resistance it has in series with it. The division of VAS signal current between the two paths (through C1 and C3) will now be largely flat with frequency.

Now just set the value of C2 (I just do it by simulation) to achieve the desired minor-loop ULGF. I usually choose about 10MHz. Optionally add some resistance at R4 to optimize phase and gain margin of the minor loop. Resistance can be added at R3 to add some phase lead to optimize the global gain and phase margin, if desired. If resistance is added at R2, one may wish to appropriately revise the value of R5. Note that even with R3 = 0, the non-inverting amplifier structure of the MIC loop prevents its gain from going below 0dB, so a zero is created there no matter what.

Finally, note that the values in Figure 9.7 do not obey this design approach. While that design is quite stable, I don’t think it is optimal.

Cheers,
Bob
 
Bob, thanks for the detailed answer, just to be clear you call MIC the all R-Cs, R-C LTP, R-C network and eventually R-C shunt VAS. I confusion up in the previous topic calling MIC only for R-C for LTP.


Compensating the MIC minor loop can be tricky because there are so many possible combinations of the resistance and capacitance values. However, a simple rule-of thumb approach can be used to converge on a circuit fairly quickly. As shown in Figure 9.7 in my book, there are three R-C pieces to the design. The first is C1, the MIC dominant pole compensation capacitor against feedback resistor R2 and feedback shunt R1 (ignore R3 for now and let it be zero, as it often can be). The global ULGF is set by making C1s reactance equal to R2 at the desired global ULGF.

The second R-C piece is the IPS shunt lag-lead load consisting of C2 and R4. This is the primary compensation network for the MIC loop. For now, you can assume R4=0.

The third piece is the VAS R-C load consisting of C3 and R5. In some designs you can get away without it, but I strongly recommend it. It establishes a predictable and dampening load for the VAS at high frequencies. It also controls what proportion of the VAS signal current flows back through C1. Indeed, for most designs you can arbitrarily set C3 to 50pF. If you make it too big, you will impair the achievable slew rate of the VAS. Now, select R5 to set the time constant of C3*R5 to be the same as the time constant of C1 and the resistance it has in series with it. The division of VAS signal current between the two paths (through C1 and C3) will now be largely flat with frequency.

Now just set the value of C2 (I just do it by simulation) to achieve the desired minor-loop ULGF. I usually choose about 10MHz. Optionally add some resistance at R4 to optimize phase and gain margin of the minor loop. Resistance can be added at R3 to add some phase lead to optimize the global gain and phase margin, if desired. If resistance is added at R2, one may wish to appropriately revise the value of R5. Note that even with R3 = 0, the non-inverting amplifier structure of the MIC loop prevents its gain from going below 0dB, so a zero is created there no matter what.

In Figure 9.7 in its book resistor R3 of 1k creates a zero in -6dB, considering attenuation 6db/8° and crossover of 500KHz, zero = 1MHz.

I will some more simulations, based on what you wrote, only one capacitor in LTP has a very high attenuation, I always use the resistor to decrease the attenuation and improve the phase margin.

The capacitor in LTP in MIC compensation could be calculated in function of gm for one decade above the crossover?
 
Hi Bob. I figured this was a good place to put this. My 2C on this:

http://www.linearsystems.com/assets...LSK489_Application_Note_Preliminary_Draft.pdf

In figure 3c, there should be an input DC blocking cap; there is no other input configuration for which R2 is valid. Also, are the 100k resistors really helpful? It seems by the datasheet that the LSK489 has a Rds of about 30k, so 100k resistors will only improve offset by less than 1/3.

EDIT: it looks like with 1k degeneration, Rds rises to 180k, so offset is improved by almost 3 times based on my estimates.
 
Last edited:
Bob, thanks for the detailed answer, just to be clear you call MIC the all R-Cs, R-C LTP, R-C network and eventually R-C shunt VAS. I confusion up in the previous topic calling MIC only for R-C for LTP.




In Figure 9.7 in its book resistor R3 of 1k creates a zero in -6dB, considering attenuation 6db/8° and crossover of 500KHz, zero = 1MHz.

I will some more simulations, based on what you wrote, only one capacitor in LTP has a very high attenuation, I always use the resistor to decrease the attenuation and improve the phase margin.

The capacitor in LTP in MIC compensation could be calculated in function of gm for one decade above the crossover?

Hi Rafael,

One could say that all of those components are part of MIC, but keep in mind that R1 and R2 comprise the feedback network that would be there with any kind of compensation.

With R3=1k, the forward open-loop gain of the compensated amplifier cannot go below +6dB (i.e., X2) in theory. If the closed loop gain of the amplifier is 20, and ULGF is 1MHz, the zero will occur where the closed loop gain will have fallen to 6dB at 6dB/octave. This will be one decade above 1MHz, i.e., 10MHz.

I've not bothered to do the math to calculate the needed value of the LTP shunt capacitor to achieve the desired ULGF of the minor loop; I just adjust it by simulation.

Cheers,
Bob
 
Hi Bob. I figured this was a good place to put this. My 2C on this:

http://www.linearsystems.com/assets...LSK489_Application_Note_Preliminary_Draft.pdf

In figure 3c, there should be an input DC blocking cap; there is no other input configuration for which R2 is valid. Also, are the 100k resistors really helpful? It seems by the datasheet that the LSK489 has a Rds of about 30k, so 100k resistors will only improve offset by less than 1/3.

EDIT: it looks like with 1k degeneration, Rds rises to 180k, so offset is improved by almost 3 times based on my estimates.

Yes, the circuit must be fed through a blocking capacitor. I put in the 100k resistors out of concern that the unity-gain bootstrapping of the input at DC would allow an indeterminate output DC voltage under conditions of ideal JFETs. The net 50k impedance of the 100k resistors nudges the output DC value to about where it should be. I don't recall now, but I think I arrived at the approach via DC simulation.

Cheers,
Bob