AC'97 to I2S

Status
Not open for further replies.
Is it possible to use some kind of low power DSP to convert AC'97 to multiple I2S outputs? I'd like to get decent sound out of a Yamaha XG processor soundcard, but a lot, if not all AC'97 codecs don't have very good DACs. Do you think that I would get better sound using a SPDIF output on the card? Then the problem is that some card processors only have AC97 outputs.
 
rfbrw said:
A DSP would not be much help. Demultiplexing AC-Link frames is a routing problem more suited to programmable logic.

AC-Link operates at a frame rate of 48KHz; running 44.1 across this bus involves doing tag deinterleaving which complicates logic. 96KHz audio also adds to the ugliness by throwing 2 samples per frame into a single AC-link frame.. this is the domain of shift registers, FIFOs and other ugliness. You might be able to fit it in a big (expensive) CPLD, but you'll probably end up with a FPGA if you're doing the programmable logic route.

My choice would be a microcontroller or DSP which has a pair of I2S/AC97 capable serial ports.

Personally, I'd cram a cheap Analog BF531 DSP onto the bus; you'll also need a LDO and a SPI EEPROM to boot from. Set SPORT0 for AC'97 multichannel operation, select the L/R frames as inputs and autobuffering DMA into internal memory. Configure SPORT1 for I2S output, autoDMA from the same memory buffer. Then power down the DSP core while the peripherals do all the work. 😀
 
Nice! It's possible!

I just got the $7 YMF740 XG soundcard I ordered 2 weeks ago, and found out that there's no SPDIF output (IIRC, it's only available on some other YMF7xx-series chips) so I'll probably have to choose the DSP route. Do you know if the Blackfin could work with multiple stereo I2S DACs(I'd like 4 channels here) or I should get a 4-channel DAC?

Do you think that I should get a YMF754 soundcard, with SPDIF inputs and outputs, and (principal reason) 64 notes polyphony instead of 32 notes. It even has an I2S input, "Zoomed Video Port" they call.

Between AC97 to I2S and SPDIF to I2S, which one would be the best? Also, I guess I'm still stuck with the 44.1 to 48kHz problem? The SRC is in the Yamaha chip.

I think that the sound card isn't too bad as it is temporarly, it runs a sigmatel codec, and I find that they sound pretty decent compared to some other codecs I heard - especially Realtek/Avance Logic. (I've already done some A/B between two Creative/Ensoniq and prefered the Sigmatel to the other, before I saw the codec that was in there)


Also, two last questions,
1. Some I2S DACs got hardware volume control, will the DSP send the AC97 info to the DAC?
2. If I get a Blackfin with more SPORTs, will I be able to record?
 
Status
Not open for further replies.