Crosstalk / distortion / layout issues with NXP TDA8920CTH - diyAudio
Go Back   Home > Forums > Amplifiers > Class D

Class D Switching Power Amplifiers and Power D/A conversion

Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 8th May 2015, 02:05 AM   #1
diyAudio Member
 
pulexirritans's Avatar
 
Join Date: Nov 2007
Default Crosstalk / distortion / layout issues with NXP TDA8920CTH

I'm working on a powered speaker with an active crossover and 2 TDA8920CTH ICs. The PCB I made works pretty well, but there is some distortion audible when playing certain types of music like piano.

When I drive one channel of the IC directly with a 100hz sine wave I get distortion in the 2nd channel on the same IC, with both differential inputs of the 2nd channel connected to ground. The spectrum of the distortion looks like a comb and shifts upward in frequency as the amplitude of the test tone is increased. The distortion is in the audible spectrum when the amp is putting out ~3-10 VRMS. Above 10VRMS it shifts out of the audible spectrum.

Because the frequency of the distortion is amplitude dependent, the noise sweeps downward in frequency as notes decay, making it more audible. On most types of music I do not notice the distortion.

Some things i've tried that have worked:

-Adding a differential RC lowpass filter (7.8k, 220pf) to the input of the amp reduces the distortion 15db
-Removing the output RC filter and snubber makes the distortion inaudible (while slowly cooking the tweeter).
-Using the inductor only on the output filter sounds fine
-I tried the same test on a tda8922 pcb from ebay and the distortion was present but much less, almost inaudible with test tones.

Some things that did not work:

-Adding another pole to the RC input filter
-Replacing the X7R cap in the output filter with a film cap makes the distortion worse.
-Strapping the groundplane across the bottom of the IC makes the distortion worse.
-Contacting NXP has not yet worked (my request for assistance has been pending for a week and a half)
-Changing the inductor to a 7 amp toroid (from a bourns SRR1210-470M)
-Using two inductors in parallel (with an appropriate change in capacitance)
-Adjusting the Q of the RC filter
-Changing the clock from 333khz to 375khz
-Moving the ground connection of the capacitor of the RC output filter, moving the snubbers around;

Anyway, the layout is below with some markups for clarity. The circuit is essentially the same as the on the datasheet. On the left side is the crossover.

Any and all ideas are welcome, this as been driving me nuts for the last couple weeks.

Click the image to open in full size.

Last edited by pulexirritans; 8th May 2015 at 02:09 AM.
  Reply With Quote
Old 10th May 2015, 05:27 PM   #2
diyAudio Member
 
Join Date: Dec 2003
Location: Randers, Denmark
There is a lot of people who would love to get rid of that piano fuzz - including me. I have only heard of one cheap chinese board, that did not suffer from this. Also the cross over distortion is a known issue.

I can get it down somewhat, but I can't get rid of it. I have from YJ and Connex. The Connex modules are the best and tolerable, but it's still audible. My advce would be to find another chip - maybe the good old TA2022
__________________
http://kjeldsensforbindelser.dk
  Reply With Quote
Old 17th May 2015, 07:34 AM   #3
diyAudio Member
 
pulexirritans's Avatar
 
Join Date: Nov 2007
Quote:
Originally Posted by Kjeldsen View Post
There is a lot of people who would love to get rid of that piano fuzz - including me. I have only heard of one cheap chinese board, that did not suffer from this. Also the cross over distortion is a known issue.

I can get it down somewhat, but I can't get rid of it. I have from YJ and Connex. The Connex modules are the best and tolerable, but it's still audible. My advce would be to find another chip - maybe the good old TA2022
Thanks for the reply, piano fuzz is a good word for it. I'm not sure I'm ready to try something else at this point, as I've made some progress.

Because I could isolate the amplifier from the rest of my circuitry and produce the offending noise with test tones, I was convinced the layout of the amp was the culprit. It turns out the front end is exacerbating the effect somewhat.

I also had difficulty taking measurements near the inputs because of the heatsink and all the switching noise. I now have made a narrow heatsink so I can probe around with a really short ground wire on the scope.

I've found 2 problems so far:

1. Noise on the clock line was getting in through the crossover and enhancing the fuzz. Moving the clock line rectified that.

2. Crossover components between the last stage of the crossover and the amp (bad decision). The single ended treble signal ran through a voltage divider then to one differential input of the amp. The other input was grounded and I'm guessing an impedance imbalance was making things worse.

With both tweeter inputs connected to ground adding a low pass input filter improved things, but with the crossover attached it made things worse.
  Reply With Quote
Old 17th May 2015, 09:30 AM   #4
diyAudio Member
 
pulexirritans's Avatar
 
Join Date: Nov 2007
So I think part of my problem may be impedance matching issues on the differential inputs from adding filter components, possibly making the inputs more susceptible to common mode switching noise or noise from ground. Again, any suggestions are much appreciated. Some configurations I've tried:

The original setup was like this. Piano fuzz was obvious but not overwhelming on actual piano music, with test tones it sounded pretty bad:

Click the image to open in full size.

Then I borrowed a signal generator and drove the bass channel with 100hz sine, and connected treble inputs to ground. Again, audible fuzz, although probably not as loud in retrospect:

Click the image to open in full size.

Adding a 220pf cap across the input reduces the fuzz by 10db:

Click the image to open in full size.

Adding resistors to form a low pass filter (~~70khz) reduces the fuzz another 5db. Oddly the noise started out just as high, but lowered 5db ~1 min after the turning the amp on, so something could be oscillating/heating up. This treble input circuit is the same as on the TDA8922BTH datasheet, a slightly different IC from the same family.

Click the image to open in full size.

Hooked the amp back up to the crossover and the sound was not any better. Probing with the scope revealed an oscillation between the crossover and amp. On every switching transition of the amp there was a brief ~100ghz oscillation for 5-10 cycles, not seen elsewhere in the crossover. amplitude was >100mV. Tried several different opamps, some were a little better, some were much worse.

Click the image to open in full size.

Then I ditched the voltage divider and things got much better. Piano fuzz is still there but you have to listen hard to hear it. A 200hz sine wave still produces obvious harmonics at higher gain, other frequencies less so. Adding/removing the 220pf cap does not seem to change things. ~10mV switching noise spikes can be measured between the treble input and ground with the offending test tone cranked up.

Click the image to open in full size.

Next I want to try turning my low pass bass filter into a differential filter again in an effort to make the woofer input balanced. This configuration oscillates (sine wave, 60 khz) with the random TSH84 opamp thats on the board right now, but is believe its stable with tl074.

Click the image to open in full size.

Last edited by pulexirritans; 17th May 2015 at 09:34 AM.
  Reply With Quote
Old 20th May 2015, 02:58 PM   #5
BWRX is offline BWRX  United States
diyAudio Moderator Emeritus
 
Join Date: Jan 2005
Location: Pennsylvania
What type of input coupling caps are you using? Surface mount ceramic caps are pretty poor for this. Ceramics with C0G/NP0 dielectric might be fine but film types would be better.

Are the coupling caps even needed? NXP doesn't give any details about the analog input circuitry, but you might not need them unless the inputs have a DC bias. If you get rid of them you'll need to make sure your preamp/crossover has a very low output offset voltage. The TL074 op amp isn't great in this regard.
__________________
Brian
  Reply With Quote
Old 21st May 2015, 12:36 AM   #6
diyAudio Member
 
doctormord's Avatar
 
Join Date: Oct 2007
Could you try to get the output scoped (Using some chained TP to recover most of the sound) and run this through an FFT? This would greatly help to chase the problem down.

Btw. Did you setup the system in "anti-phase"?

Edit: Okay, you did.

From the DS:

Quote:
The audio inputs are fully differential ensuring a high common mode rejection ratio and maximum flexibility in the application.

Stereo operation: to avoid acoustical phase differences, the inputs should be in antiphase and the speakers should be connected in antiphase. This configuration:
– minimizes power supply peak current
– minimizes supply pumping effects, especially at low audio frequencies
You may also monitor your VDDA/VSSA by a scope to see any artifacts from the output conducting back into the analog supply. Consider to change the RC at the VDDA/VSSA from 10R+220n to 10R+1u+1n (or greater).

If there's some oscillation at the opamps output, put some 50R on the output within the feedback and check again. You may also try some 100k directly at the amp-ICs input.

(Putting 5k in line with the coupling-caps normally isnt a good idea as it rises startup-coupling-caps start time alot and can result in some inbalance due to additional feedback from the opamp.


Quote:
Originally Posted by BWRX View Post
What type of input coupling caps are you using? Surface mount ceramic caps are pretty poor for this. Ceramics with C0G/NP0 dielectric might be fine but film types would be better.
Never had issues with X7R in the past. (Of course, the bigger the package the bigger the microphonics. We did some measurements in the past to sort out the right caps, Murata X7R did best, noise pickup was like -80-90dB in the test system when stimulated with a 12" bass-chassis and pcb on top [50x50mm 0.8mm FR4]
__________________
http://www.360customs.de

Last edited by doctormord; 21st May 2015 at 12:49 AM.
  Reply With Quote
Old 21st May 2015, 04:38 AM   #7
diyAudio Member
 
pulexirritans's Avatar
 
Join Date: Nov 2007
Quote:
Originally Posted by doctormord View Post
Could you try to get the output scoped (Using some chained TP to recover most of the sound) and run this through an FFT? This would greatly help to chase the problem down.
Thank you for the detailed, thoughtful response.

I'm not sure what "chained TP" is but I have access to a scope with FFT function. If you can describe a setup that will recover more audio that would be very helpful.

When I fft the output of the woofer I only see the test tone with some ripples on it (far left). There is also the 333khz clock (not shown) and a mysterious 4.6khz spike that is visible, but not audible, when the amp is switching. The test tone is 200hz (blue). FFT bandwidth is 20khz with a 10khz center frequency.

Click the image to open in full size.

333khz output of the left bass channel (lower IC on layout), followed by the output between the amp and LC filter. No test tone. Flat spots line up with the switching transition.

Click the image to open in full size.
Click the image to open in full size.

Same for right channel, ripples are probably picked up from the ground loop:

Click the image to open in full size.
Click the image to open in full size.


Quote:
Originally Posted by doctormord View Post

Btw. Did you setup the system in "anti-phase"?

Edit: Okay, you did.
Yep. I also tried putting two bass channels on one IC and the treble channels on the other IC.

Quote:
Originally Posted by doctormord View Post

From the DS:

You may also monitor your VDDA/VSSA by a scope to see any artifacts from the output conducting back into the analog supply. Consider to change the RC at the VDDA/VSSA from 10R+220n to 10R+1u+1n (or greater).
I'll check that with the scope tomorrow, excellent idea.

Quote:
Originally Posted by doctormord View Post


If there's some oscillation at the opamps output, put some 50R on the output within the feedback and check again.
I'll give it a try.

Quote:
Originally Posted by doctormord View Post

You may also try some 100k directly at the amp-ICs input.

(Putting 5k in line with the coupling-caps normally isnt a good idea as it rises startup-coupling-caps start time alot and can result in some inbalance due to additional feedback from the opamp.
Good to know. I will give the 100k resistors a try.

Quote:
Originally Posted by doctormord View Post

Never had issues with X7R in the past. (Of course, the bigger the package the bigger the microphonics. We did some measurements in the past to sort out the right caps, Murata X7R did best, noise pickup was like -80-90dB in the test system when stimulated with a 12" bass-chassis and pcb on top [50x50mm 0.8mm FR4]
Interesting that the Murata are better than others. All the caps I'm using are X7R or C0G.
  Reply With Quote
Old 21st May 2015, 04:45 AM   #8
diyAudio Member
 
pulexirritans's Avatar
 
Join Date: Nov 2007
Quote:
Originally Posted by BWRX View Post
What type of input coupling caps are you using? Surface mount ceramic caps are pretty poor for this. Ceramics with C0G/NP0 dielectric might be fine but film types would be better.

Are the coupling caps even needed? NXP doesn't give any details about the analog input circuitry, but you might not need them unless the inputs have a DC bias. If you get rid of them you'll need to make sure your preamp/crossover has a very low output offset voltage. The TL074 op amp isn't great in this regard.
I'm using the lowly X7R.

I can replace the TL074, but I made the dumb mistake of using a TSSOP package, which has poor availability for other ICs. If you can suggest a quad opamp with low offset in tssop-14 I'll give it a whirl.

If I had to do it over again I would use dual soic package in a heartbeat.
  Reply With Quote
Old 21st May 2015, 12:03 PM   #9
diyAudio Member
 
doctormord's Avatar
 
Join Date: Oct 2007
Hmm, there's some crossoverover distortion at the output waveform. Not sure if from the NXP or your opamp.

The 100k is meant to be connected (signal-to-gnd, parallel to the input) to GND, not in series (like the shown 5k). You may "harden" the inputs by using ~<=1k direct at the inputs (or ferrites). I use them at my TPA3132D2 board to help preventing pickup of mobile phones noise.

Have you considered any phase-change/delay coming from your opamp filters? (Which interferes with the antiphase layout)

A TL074 replacement might be the MAX4478:

MAX4478 SOT23, Low-Noise, Low-Distortion, Wide-Band, Rail-to-Rail Op Amps - Maxim

(But limited to 2.7-5.5V single supply)

Quote:
I'm not sure what "chained TP"
Oh sorry, i meant LP (low-pass), but have a peek into this:

http://www.ti.com/lit/an/sloa107/sloa107.pdf

Regards,

Christian
__________________
http://www.360customs.de
  Reply With Quote
Old 21st May 2015, 10:50 PM   #10
diyAudio Member
 
pulexirritans's Avatar
 
Join Date: Nov 2007
Quote:
Originally Posted by doctormord View Post
Hmm, there's some crossoverover distortion at the output waveform. Not sure if from the NXP or your opamp.
I can check.

Quote:
Originally Posted by doctormord View Post

The 100k is meant to be connected (signal-to-gnd, parallel to the input) to GND, not in series (like the shown 5k). You may "harden" the inputs by using ~<=1k direct at the inputs (or ferrites). I use them at my TPA3132D2 board to help preventing pickup of mobile phones noise.
I have some ferrites I can try. Will place the 100k to ground when I get a chance.

Quote:
Originally Posted by doctormord View Post

Have you considered any phase-change/delay coming from your opamp filters? (Which interferes with the antiphase layout)
The filter is 3rd order and the phase is very close to 180 degrees out, which does sort of defeat the purpose of the antiphase at the amp IC.

The problem I see is that I'm driving only one channel of each IC with the test tone anyway, so it shouldn't matter what the phase of the other channel is of the same IC is, right? Also, the antiphase is designed to prevent supply pumping, and the bass channels on the separate ICs are in antiphase.

I did try connecting both bass channels to one IC and both treble channels to the other, but there was no difference.



Quote:
Originally Posted by doctormord View Post

A TL074 replacement might be the MAX4478:

MAX4478 SOT23, Low-Noise, Low-Distortion, Wide-Band, Rail-to-Rail Op Amps - Maxim

(But limited to 2.7-5.5V single supply)
Supplies are +/- 5V, I can find an opamp later....

Quote:
Originally Posted by doctormord View Post



Oh sorry, i meant LP (low-pass), but have a peek into this:

http://www.ti.com/lit/an/sloa107/sloa107.pdf

Regards,

Christian

Last edited by pulexirritans; 21st May 2015 at 11:18 PM. Reason: didn't enter any text!
  Reply With Quote

Reply


Hide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
tda8920cth question wsk36789 Class D 0 21st January 2015 04:51 AM
Please help me solve my ground loop issues - Pics and layout attached. Fusion916 Solid State 14 23rd April 2013 09:17 PM
First distortion pedal issues supermoose2011 Instruments and Amps 7 22nd March 2011 02:31 PM
UM10155 from NXP monaural Class D 13 3rd November 2009 02:28 AM
Distortion issues Snickers-is Class D 30 20th June 2006 03:49 AM


New To Site? Need Help?

All times are GMT. The time now is 01:34 AM.


vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2015 DragonByte Technologies Ltd.
Copyright 1999-2015 diyAudio

Content Relevant URLs by vBSEO 3.3.2