Jump to content
  • 0

Digilent AD2 as ASIO interface for wide bandwidth audio I/O


Niick

Question

Is there any way to access the AD2 from professional audio analysis apps like Smaart or SysTune Pro?

I'd like to use the AD2 for both input and output 

These apps are able to communicate with basically any wave, ASIO, or directsound drivers. 

I think it would be awesome to be able to use an ADC like the AD2, there's no HPF, and (practically) no bandwidth limitation. The only potential downside is the dynamic range, but I'm OK with it. 

Link to comment
Share on other sites

10 answers to this question

Recommended Posts

Hi @Niick,

I have never worked with Smaart or sys tune Pro but to get the PmodAd2 to to work you would need to facilitate an I2C communication along with initial configuration and then gathering data. We have demo's doing this using microcontrollers and or FPGA's. Once you have gotten the data from the PmodAD2 and into either a microcontroller or an FPGA then you can ship the data through the usb-uart to a computer or laptop or something like the PmodBT2 to either a computer, tablet or mobile device. Here is the resource page for the PmodAD2 which has microcontroller and fpga projects working with the PmodAD2.

cheers,

Jon

Link to comment
Share on other sites

Nick,

Just curious....

Why do you believe that the AD2 has no HP filter, or "(practically) no bandwidth limitation" ? Why would you want to use an A/D converter without an anti-aliasing filter? What's you application? You indicate that you want to use it for audio. I don't know what you mean by "wide-bandwidth" audio. Why would you use a 1 Msps 12-bit A/D in deference to a high quality codec available on most Digilent FPGA boards? Have you done you due diligence and worked out how many 12-bit samples/sec of data you can get out of the AD7991 I2C interface per channel?

 

Link to comment
Share on other sites

Niick,

Before someone else points out my faux pas I want to say that, in general, anti-aliasing filters are low pass... though sometimes you need  to remove content above and below the signal of interest in which case a band-pass filter is required.

Link to comment
Share on other sites

On Monday, April 17, 2017 at 2:25 PM, zygot said:

Nick,

Just curious....

Why do you believe that the AD2 has no HP filter, or "(practically) no bandwidth limitation" ? Why would you want to use an A/D converter without an anti-aliasing filter? What's you application? You indicate that you want to use it for audio. I don't know what you mean by "wide-bandwidth" audio. Why would you use a 1 Msps 12-bit A/D in deference to a high quality codec available on most Digilent FPGA boards? Have you done you due diligence and worked out how many 12-bit samples/sec of data you can get out of the AD7991 I2C interface per channel?

 

My belief that there is no HP filter stems from the fact that with the AD2, one can measure DC, with a soundcard, or external audio interface , one cannot. "Practically no bandwidth limitation" was probably a poor choice of wording, what I meant was, as far as audio is concerned, the ability to sample fast enough to acquire data in the upper hundreds of kilohertz and lower megahertz range, with the analog input bandwidth to match, is far beyond my current needs, so, for what I do, I'm not in any way limited by bandwidth. I am however limited by bandwidth when using a 96kHz soundcard, as the time resolution in impulse response measurements is course. Now, not all of these impulse response measurements I'm referring to are acoustic measurements, some are taken entirely in the electrical domain. 

Finally, as I stated earlier, the vast majority of the discussions on this forum are way over my head. I have not checked out the Digilent FPGA boards, but I will now! Thank you for your response and questions!

 

Link to comment
Share on other sites

Niick,

We're all neophytes at something. I really am interested in what your application is. One thing that I am fairly competent in doing is knowing what to look for in a data sheet for a device like an A/D. IC vendors make it easy to select the wrong device for an application and hard to determine if a device is good for a particular application. So what are your requirements: bandwidth, samples/second, dynamic range, number of channels etc? I don't know if the AD7991 is inappropriate... but I'd be surprised if it is.

Link to comment
Share on other sites

I'm not getting much indication that you want my help so I'll just make this pitch.

While I'm a big fan of playing around as a learning exercise, depending on how you do it, playing around can be just a waste of time and money. As I don't have an abundance of either I've found it to be a good idea to do some homework before spending my time and money.


Before plunking down your hard-earned cash for any product, like a PMOD, you ought to at least read the data sheet for the integrated circuit (IC) and review the schematic ( I wouldn't buy anything for which there isn't a schematic). Even after doing what I think is due diligence I sometimes end up with wasted time and money after getting into the nitty-gritty of using a product and discovering the limitations of the product support.

Let's look at the data sheet for the AD7991.

The first things that we see is that there are 4 channels of 12-bit ADC with a fast 1us (typical) conversion time. Does that mean that we can get 1 Msps out of the device?

Well, looking at the data interface can help answer that question. In the I2C timing specification we see that we can clock the data interface at 1.7 MHz or 3.4 MHZ, depending on the capacitive loading of the bus line. Let's assume that we can use the maximum 3.4 MHz data rate. In the Serial Interface section of the data sheet we see that data transfer is in the form of 9-bit frames. Once we initiate a conversion with the first frame we can repeatedly start new conversions with 2 frames per conversion.
At a data rate of 3.4 Mbps we need to read 18 bits per data sample. But later on we learn that when using the 3.4 MHz data rate we need to stretch the ACK bit to 2 us which is about 7 bit periods. So in reality we need 16+(2*7) bit periods to read a data sample. This works out to about 121,429 samples per second per channel. If we want to do the typical 2 audio channels the best that we can expect is less than 61 Ksps. We should also note that the diagrams for the A/D performance all use the lower 1.7 MHz data rate. What data sheets don't mention is often as important as what they do.

If this was helpful you can induce me to go on... otherwise I'll stop here.
 

Link to comment
Share on other sites

D@n,

Well actually, I was relying on his revisiting the thread to indicate his interest.... Your suggestion is noted. I guess that my working assumption is that not only the originator of posts here might be interested responses to a topic but that there are people who casually read threads of interest to them. So, even when responding to a specific post I am really responding to a wider audience. My hope is that this would include Digilent since they profit from selling the products under discussion. In Niick's case I would certainly respond to any question he puts to me but his interest is not my main motivation.... While spitting into the wind is generally an unwise thing to do, talking to no one in particular may have unexpected results and isn't always as useless and one might suspect.

But I do appreciate the email the Forum moderator sends me indicating that someone has referenced a topic of interest in a post. So, thanks for the advice.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...