Sigma delta audio dacs

Jan 08, 2016 13 Replies

I'd like to drive 6 channels of 16 bit, 44.1 kHz audio out of an ARM Cortex M4 processor, using i2c I guess.



There are so many DACS out there...so this is another one of those "so what is cheap and worked good for you" kind of questions.


----Android NewsGroup Reader---- http://usenet.sinaapp.com/

I2C isn't going to cut it. You're going to want to use some variant of I2S (probably TDM-8). Atmel ARMs have two (one in, one out) I2S ports.

I use the Cirrus Logic CS4385A. It's 8-channel but you can just throw two away. It's the cheapest DAC I've been able to find and it's pretty good. Differential outputs (which I like), though.

Thanks!

----Android NewsGroup Reader---- http://usenet.sinaapp.com/

AKM is another vendor with decent audio chips. I don't know a part number for a DAC only part. I use the AK4556 stereo CODEC in a design and it works well. Sample rates up to 192 kHz. I run it at 8 kHz and

48 kHz. It does I2S in master or slave mode and will do slave mode SPI.
Rick

8 channels of 24 bit 192 kHz for under $5 in small quantities - we really have come a long way since I got my first PC and a Sound Blaster audio card back in 1994...
----Android NewsGroup Reader---- http://usenet.sinaapp.com/

I had a Gravis Ultrasound (classic) card in late 1992, quite expensive hardware solution to offload wavetable based synthesis from the central processor. It could almost play MIDI files by itself.

Nice! I was around 15 at that time and couldn't afford such luxury. IIRC the SB Pro could stream PCM audio (don't know if it was CD quality); it could also play MIDI files but I think the output was limited to 8 channels and synthesiszed by some Yamaha 4 operator FM synthesizer IC. It was pretty bad. To get decent sounding audio you had to use something called a "mod tracker" which used small samples streamed from main memory.

It could do text to speech as well, there was a DOS program that was an ELIZA variant called DR. SBAITZO which would speak its responses. Good for hours of fun.

Around that time I also had a Yamaha portable keyboard called the VSS-30 which could record short samples. It had a line out which I patched into the phone, and used the pitch shift to prank call my friends with a "demon voice".

----Android NewsGroup Reader---- http://usenet.sinaapp.com/

The Gravis Ultrasound had onboard memory where the samples were stored by the driver, and a dedicated chip that counted through the samples at the specified rate (32 channels I believe) and sent the output through a D/A.

It was good at that, but not at outputting generic digital data from e.g. an MP3 decoder. However, in those days that was not really available anyway.

I assembled that system from a mix of surplus and new components obtained on a computer fair, it was a 486DX/33 with 16MB RAM, Adaptec 1542B busmaster SCSI controller, 800MB SCSI harddisk with 2.5 MB/s transfer rate, 250MB tape streamer, the Gravis Ultrasound, 10 Mbit network card, an ET4000 video controller, and I had a 17" VGA monitor, keyboard and mouse. All this set me back about the equivalent of $4000.

However, it ran Linux! (0.96 kernel) With X window system. This was quite something to have at home in those days, the performance and capability was comparable to workstations one would normally have only at work. And a true 32-bit OS with demand paged virtual memory.

Remember Windows back then was a DOS program... and the big next thing was OS/2 which was only 16-bit segmented 286 code.

Agreed. AKM audio chips are just EXTRAORDINARY !

Hab.

I think my first real PC was around 1991 - it was a 386SX at 16MHz. It originally came with a meg of RAM, and I installed a second meg at some point (that really hurt my pockets!) I think two was the max the mobo supported. I don't think I ever invested in the FPU coprocessor option. 44 megabyte hard drive.

It ran Sim Earth, Shuttle Simulator, and Wolfenstein 3D really well. Sometimes I had to mess with the HIMEM settings and such to free up enough extended memory for certain programs to run.

Unfortunately, I couldn't run Doom, as it needed a minimum of 4 megs to work. And the 16MHz 386 likely wasn't gutsy enough to run it at any decent resolution, even though the code was written with PCs that didn't have FPUs in mind. 386s with more ram and a 40 Mhz clock can pull it off IIRC.

The fast inverse sqrt algorithm used in the follow up game to compute dot products between lighting vectors and surface normals is pretty cool.

----Android NewsGroup Reader---- http://usenet.sinaapp.com/

Ok... but I did not want to invest money in a system that would not be able to run a real OS. I already had an Atari ST since 1985 and it was similarly speced like the above, but like a DOS machine it was not really suitable for multitasking, networking, etc.

Linux changed all that. Before it would be possible to run XENIX or SCO UNIX on 386/486 hardware, but the OS and tools alone would cost a similar amount to what I spent on the hardware. And Linux was (and is) free.

Consumer Linux really has come a long way. I have a Celeron netbook - running win 8.1 on it is painful, but Xubuntu flies and is a pleasure. It makes it into like, an actual useful computer.

I run Windows 7 on my desktop (actually a rackmount) because there are some audio production applications I need that simply will not run under WINE. That one is a 4 core AMD of some variety.

I'd like to dual boot Ubuntu on that one, but the main disk is RAID0 and I've been having a lot of trouble setting up GRUB and the MBR etc. properly to make it work.

----Android NewsGroup Reader---- http://usenet.sinaapp.com/

Given our current environment, I commend to your attention the Qubes OS,

formatting link
Nation-state capabilities such as firmware attacks on USB and hard drives have leaked into the criminal sector, so you don't have to be a dissident/whistleblower/traitor/criminal to need that sort of protection.

Cheers

Phil Hobbs

You don't have to be a dissident, but it sure helps.

----Android NewsGroup Reader---- http://usenet.sinaapp.com/

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required