ΣSigmaStudio Ask AI Русский Log in

Advanced 'mux' application problem

SigmaDSP & SigmaStudio eden-chen2012 Oct 31, 2012 00:00 6 replies Original on forum ↗
Subscribe
eden-chen2012 Question
Oct 31, 2012 00:00

Hi All,
There is a problem in my ADAU1701 project. It paining me for several days.Please help me out...
My project is working in selfboot mode. ADC_RES connect to GND by a 18Kohm resistor.
As the hardware schematic attached,there is only 1 signal come to ADC0 & scaling down the same signal

xdB to ADC1. In this way we can improve the SNR and dynamic range.That is why our design like this.
My problem is, I can't find a good way to switch from one ADC to another.
Please allow me to describe my problem in detail.
Let me assume the experiment condition below.
1)Input a sine tone(1KHz) from the hardware input path.
2)When the input level raised to 0dBV,the distortion immediately raise to 1% or higher in ADC0.
But the signal in ADC1 won't distort untill the input level raise to 20dBV.
3)The input signal level is -10dBV(small signal) & 5dBV(big signal). The signal input to hardware

path jump from one to another(-10dBV <--> 5dBV).

If this system switch the signal from one ADC to another automatically,maybe I can get a good

performance result. Right,if I could find a good way to switch them!
I have did experiment.In the end I can't find a best way.
The experiment was.
Please take a look at the Sigma code attached,there are 3 ways to switch the path in the code.
1)Using 'Slew Mux' cell. It is too slow to switch the signal. We can hear a heavy distorted signal

for a short time(about 1 second). That is come from ADC0 before switching to ADC1 complitely when

signal jump from -10dBV to 5dBV.
2)Using 'MX'(no software slew action). This cell can switch immediately,no distored signal come out.
But 'POP' noise come out clearly when switching.
3)Using 'Slew Mux'&'Mux' together. This is the better way till now I found. Please take a look at the

attached code. In this way, there is no distorted signal come out and the 'POP' noise reduce to next

to nothing to my ears. I was very happy that day. A bad feedback from our acoustic engineer the next

morning. The acoustic guy said he heard a very very little 'POP' noise when playing music. We moved a

wave sweeping equipment to do the testing. Too bad, this problem was enlarged in this equipment. I

tried to modify the parameters of RMS Table3,in the pic attached is the best ones in my experiment.
We can't accept the noise.
What can I do? There is a way to solve this problem in SigmaStudio?
Looking forware to your response.
Thank you very much!

By the way,when I use signal detection cell,it doesn't work(no any status indicating from the output

PIN) in the newest version SigmaStudio 3.7.
There is no problem in version 3.6.
Why?

Audio Signal Processors

SigmaDSP Audio Processors

adau1701

4f7177502a6377a55472dcf174fc567e.jpg
4f7177502a6377a55472dcf174fc567e.jpg
4f7177502a6377a55472dcf174fc567e.jpg-450x369.jpg
4f7177502a6377a55472dcf174fc567e.jpg-450x369.jpg
bd355bd0f5935b391b4fd9780db9f490.jpg
bd355bd0f5935b391b4fd9780db9f490.jpg
bd355bd0f5935b391b4fd9780db9f490.jpg-450x205.jpg
bd355bd0f5935b391b4fd9780db9f490.jpg-450x205.jpg
KJBob Reply
Oct 31, 2012 00:00

Hello,

If your application can tolerate a small delay in the signal path, the idea shown below might work. The RMS detector sees the audio ahead of the mux, allowing the mux to complete slewing before the distortion gets there. Adjust the delay and the mux's slew time accordingly. I show a 10mS delay, but that's a bit much if your purpose is live sound (where 5mS is about the max). Set the mux for a shorter slew time than the default "12"; you may need it as low as "6".

As for your read-back cell not responding -- the blocks in SigmaStudio only respond to screen input if the zoom is exactly 100%, see https://ez.analog.com/message/2866#2866. Version 3.6 and before reverts zoom to normal upon opening projects, while Version 3.7 saves the last zoom setting. Your project may have accumulated a zoom accidentally (easy if you're using a wheel mouse or zoom track-pad). Try pressing Ctrl-Shift-F6 to revert to normal zoom (see the bottom of https://ez.analog.com/thread/16225).

Best regards,

Bob

7532.3d4ca3be5460bed39d99d1309c01d126.jpg
7532.3d4ca3be5460bed39d99d1309c01d126.jpg
7532.3d4ca3be5460bed39d99d1309c01d126.jpg-535x292.jpg
7532.3d4ca3be5460bed39d99d1309c01d126.jpg-535x292.jpg
ADIApproved Reply
Oct 31, 2012 00:00

I think the pop sound is likely coming from the non-slew mux. It looks like you have 3 muxes, and one of them does not use slew. This means that the signal will change instantaneously, which causes a discontinuity, resulting in a pop sound. If you use slew muxes for all of the signals, that should help. You can also slow down the slew time by changing the value in the slew mux control, which is 12 by default. A larger value like 13 or 14 will result in a slower slew time.

Bob's suggestion with the look-ahead detection is also a good idea, if your application can tolerate a delay.

I responded to your question about the readback cell in the other thread you started.

Thanks

Brett

KJBob Reply
Nov 3, 2012 00:00

Hi, Eden-Chen2012,

The ADC inputs bias themselves at about 1.6V. Thus in usual (stereo) applications, a blocking cap is needed at each ADC input. You've included a blocking cap which is good, but the load of the second op-amp's input resistor R46 may pull a small DC current from the top ADC input only. Thus you may have nonidentical DC currents at each ADC input. This in turn may cause a click when switching without slew between the ADCs. To prevent this, place a DC block filter (under Filters, Misc.) at the ADCs in your signal flow (see the schematic in my previous post). This filter removes any residual DC.

As Brett recommended, if you can't use a look-ahead delay, replace the non-slew mux with a slew mux. Since that mux is the one that switches away from the distorted samples, set its slew to "6" (as fast as it will go). This may be sufficient to hide the click, while allowing an interval of distortion too short for anyone's ears to notice. The ear's insensitivity to momentary artifacts is legendary, allowing for MP3 compression and such. Keep the other mux at "12" or even increase it, as Brett suggested.

Hope this helps,

Bob

eden-chen2012 Reply
Nov 5, 2012 00:00

Hi Robert&BrettG,

Thank you very much!

I had taken 2 days off from my work. And sorry for my laptop,it fell down to floor and can't work now. I will try your proposal when my laptop repaired.

My speaker project is live sound speaker. 3-5ms delay is acceptable.

I will update my project status right after my laptop work.

Thank you very much.

KJBob Reply
Jan 3, 2013 00:00

Hi, Eden-chen2012,

Were you able to get your computer working? Did either of our ideas work out for you?

Bob

EZAdministrator Reply
Aug 2, 2018 00:00

This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.

Thank you,
EZ Admin