Using a conventional ADC with Sigma DSP
Hello, I'm considering using a Sigma DSP audio processor for processing a sensor signal in the 100Hz - 10kHz range. Sigma Studio is really impressive. Is it possible to connect a precision (non-audio), simultaneous sampling ADC such as AD4680/AD4681 to the Sigma DSP? We're looking for an ADC with very good input offset/matching specs, which doesn't seem to be a key feature of the audio ADCs.
Thanks
Audio Signal Processors
adau1452
Audio Products
hardware
AD7380
SigmaDSP Audio Processors
Show More
Hello bmclaughlin,
This is something I have never tired. The SPI format on these parts at first glance look like they would work with the serial ports of the ADAU1452 family of parts. Then once the serial port is getting the data, you will have to be aware of the number format issue. The data will come in as a 16 bit number normalized to the 8.24 format. This is easily dealt with within SigmaStudio so that is just some details. The DSP will not be able to go higher than 192kSPS. Is that high enough for your application? It seems like it would be for a 10kHz range. I would just run it at the default 48kHz fs rate.
What is the type of data you are sampling? Is the sensor just data in DC form or will it be more of an audio type of data? Again, these are just details to deal with when creating the project. SigmaStudio is rather flexible.
Do you have evaluation boards for the ADCs?
Are you working with an Applications Engineer in the high speed converter group? I am an Applications Engineer for the SigmaDSP products.
I see that this post is assigned to someone in that group. jcolao, contact me about this.
Thanks,
Dave T
Hi Dave. Thanks for the advice.
We don't have an ADC selected. I'm hoping to confirm categorically whether a particular ADC serial output format can work before we spend $100s on eval boards and guess our way through the Sigma DSP settings. Sounds promising!
192kSPS should be plenty for 10kHz.
We'll be processing two channels (i.e. simultaneous stereo audio) to look for correlations in phase and amplitude. I suspect we'll also make use of the parametric EQ as a noise filter, peak detection, RMS, and other DSP functions to extract useful information from the signal. It's not inherently an audio signal, it just happens to be in the audio band and I'd rather not design discrete analog circuit to do it all. Latency doesn't matter.
What I intend to do is use the SigmaDSP to generate a square or sine output for sensor excitation then process the two sensor input signals and report the "features of interest" to our host MCU. I.e. peak, average, etc. If I recall correctly you can point a SPI-accessible register to a certain node of the DSP signal path like Peak or Average detectors and the host MCU can read that parameter. We aren't outputting the processed data stream, just looking to report those interesting signal features to the host MCU.
I'm expecting this full routine to take 100-1000ms then we would repeat at a different frequency. A few cycles of sensor excitation should be enough.
Hello bmclaughlin,
I am still trying to get my hands on one of these eval boards so I can try it myself. I am fairly confident this could be made to work. As far as the processing you outlined that would be simple and easy to do.
You would not have to run nowhere near the 192kHz rate. Running at 48kHz fs would be fine and give you four times the instructions available.
Comments about your sentence:
bmclaughlin said:
I'm expecting this full routine to take 100-1000ms then we would repeat at a different frequency. A few cycles of sensor excitation should be enough.
The SigmaDSP processors are stream based processors. They process one sample at a time and then wait for the next sample. The entire program you draw on the screen is run every sample period.
There are several objects that allow you to gather information that is over a longer time. The Envelope generators is one of the obvious ones. We also have meters that do this. Then you can also use low pass filters to integrate a signal. Of course, you can implicitly integrate as well. Our envelope generators will probably work the best and easiest for you. You can set a hold time to hold peak values to like 10ms or 1000ms. Then you can read the results at that rate and obtain the monitoring you describe. I am not 100% certain exactly what you have in mind but I am reasonably certain it can be done. Yes, you can read any of the parameters via SPI and change objects if you desire. If you are exciting at different frequencies then you can have two envelope generators that you switch between so they will start at zero each time. There are so many ways to solve problems. Myself and some others on the forum like these sort of problems to solve. The trick is to tell us exactly what the problem is so we would understand what needs to be done.
This really does seem like this part would be a good way to process the data from this sensor. It is quick and easy to program and to change if needed.
I am working on obtaining an eval board internally within the company.
Dave T
Thanks for the additional insight Dave! We're not yet sure what features of the sensor signal we wish to inspect but SigmaDSP offers flexibility to figure it out as we go, compared to the alternative which is building analog circuits to do rectification, peak detection, filtering, etc. Yuck.
We're meeting with our local distribution partner's apps engineers this week to discuss. I'll forward this thread to them and perhaps we can connect under cover of NDA. I do think this is a really exciting and novel application of SigmaDSP.
Hello ,
I did hear back from the Apps Engineer for this ADC. Here was his response:
Hi David,
We do not have evaluation board for AD4680/81 but EVAL-AD7380FMCZ can be use to evaluate this. The AD4680/81 is a lower speed version of the AD7380.
It is not an expensive board. Let's talk once we get setup for PMs.
Dave T
Please log in to reply.