Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Help me capture analog output of PC via audio jack and feed it to the ADC of Spartan3

Status
Not open for further replies.

rsrinivas

Advanced Member level 1
Joined
Oct 10, 2006
Messages
411
Helped
50
Reputation
100
Reaction score
11
Trophy points
1,298
Location
bengalooru
Activity points
3,689
Hi guys,
I have a small appliaction to be done.
kindly put in ur comments.

I need to capture an analog signal output through the audio jack from a pc(say from the headphones port) and feed it to the ADC of the spartan 3e board. i will capture the samples in a ram and read them back to route it to a DAC and feed it to a speaker.
will i get the data back which i intended to get?(loss of quality doesnt matter if i am atleast able to hear it )
wat are the things tat are to be taken care of?

Regards
 

Need ur help on this

That could be a straightforward project, but exactly which Spartan-3E board are you using? If it's the Xilinx/Digilent Spartan-3E Starter Kit, and if you need to store more than a short sound, then you will need to use the external DDR memory which is somewhat complicated to talk to.
 

Need ur help on this

I felt i need to get some basic confidence before is start to implement my Audio processing core in the fpga that sits inbetween the ADC and the DAC.
This is the initial set up which i need to make up and running....
Its a HW-SPAR3E-SK Xilinx kit
**broken link removed**

Thanks and Regards
 

Need ur help on this

Yes, that's the popular Spartan-3E Starter Kit.

It's pretty easy to talk to that board's ADC and DAC, but the DDR RAM storage could be quite a bit of work, unless you can use an IP core from somewhere. How about eliminating the large external RAM storage, and do your audio processing on-the-fly in real-time, using only the FPGA's internal Block RAMs? Or are you planning to do your audio processing with EDK and MicroBlaze, which probably includes support for the board's DDR RAM?
 

Need ur help on this

Ya tat sounds gud but as i havent touched the board which i have got long back, i need to get the basic setup working.
i need to measure the output quality without my processing unit and compare the output with my processing unit.
Ideally i should have some improvement.

can i use the blockram from coregen and use it???
how efficient will it be???

I havent worked on EDK and microblaze so have no idea about it.

Regards
 

Need ur help on this

Your FPGA is probably an XC3S500E. It contains 20 Block RAMs, for a total of about 40 kilobytes. That will store only a short sound, depending on your sample rate. That's why I suggested on-the-fly processing instead of storing and replaying the entire sound. Also, you will probably need to use some Block RAMs for your audio processing algorithms, so that leaves less room for storage.

You could use coregen to build a Block RAM core, but I think it's easier and more natural to simply use a big HDL register array. Both methods give similar results.

I'm not sure what you mean by "efficient". A Block RAM has two ports and runs up to a couple hundred MHz. That's pretty nice.

Some projects require EDK and MicroBlaze. The learning curve is steep and sometimes frustrating. I don't recommend it unless you need it.

If you really need to use the external DDR memory, try exploring coregen's Memory Interface Generator (MiG). I haven't used it.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top