Digital Audio Player - Digital
| Table of Contents |
|---|
| Home |
| Digital |
| Analog |
| Power |
Digital
Digital-to-Analog Converters (DACs)
Requirements
- Looking for > 18 bit (equal or better to the VS1053b)
- 2 channels for stereo audio
- Low power consumption for better battery life
- Low unit price
I confess that I don’t know enough to set constraints for performance and characteristics beyong bit-depth, such as dynamic range, total harmonic distortion, noise, integral/derivative nonlinearity. (2) provides a very good reference for understanding DAC performance metrics. I’ll be using this space to take notes from that document.
Architecture
DAC Architectures consist of three main types: R-2R, delta-sigma, and string. According to (2), delta-sigma (aka noise shaping or one-bit) DACs are used in lower cost-applications compared to R-2R.
R-2R have a higher theoretical noise limit compared to
Summary Table
See Appendix for extended notes on parts |DAC |Bit-depth (bits)|Sampling Rate (kHz)|Dynamic Range (dB)|THD+N (dB)|Supply Voltage (V)|Power (mW)|Price (USD)|Package| |——– |–|—-|——–|——-|——-|——-|—– |——-| |CS4348 |24|192 |105 |-90 |3.3 |52.8 |1.78 |10TSSOP| |CS4340 |24|96 |101 |-91 |3.0 |33 |2.26 |10TSSOP| |PCM1754* |24|192 |106 |-94|5 |125 |1.74 |16SSOP| |WM8524* |24|192 |104 |-89 |3.3+3.3|46.2 |2.28 |10TSSOP| |PCM1771PWR|24|50 |98 |-94|2.4 |12 |3.67 |16TSSOP| |PCM1748KE |24|96 |106 |-94|3.3+5 |87.9 |4.59 |16SSOP | |PCM1748E* |24|96 |100 |-90 |3.3+5 |87.9 |4.59 |16SSOP | |PCM1789* |24|192 |113 |-94|3.3+5 |167.6 |5.09 |10TSSOP|
* is to denote parts that are in stock @ Digikey or Mouser.
Thoughts
Thanks to part availability, I will likely choose the PCM1754 or the WM8524. The PCM1754 provides high performance at a low price but at the cost of high power consumption (can be lowered by decreasing sampling frequency). The WM8524 offers decent performance at a much lower power consumption, with slightly higher price. I think I might make different versions of the board for both, perhaps even a third for the PCM1771PWR for the lowest power consumption.
Analog-to-Digital Converters (ADCs)
I am debating whether or not to include an analog or digital mixer for the 1/4” TRS passthrough for my bass. With digital, I would need a preamp and an ADC to convert the signal from my bass to digital audio, then the DSP can perform mixing and perhaps even apply effects to the bass. This seems overly ambitious, perhaps I should make it an optional module: a separate board with a 1/4” TRS jack, preamp, voltage regulators, and voltage reference, which can be connected to the MCU with SPI communication. To reduce future work, I’ll go through selecting an ADC now (just in case).
Requirements
- Bit-depth > 16 bit
- Low Latency (not sure what to set this as, for now < 7ms?)
Architectures
TODO: Come back and write notes on SAR and Delta-Sigma ADC topologies.
Summary Table
See Appendix for extended notes on parts |ADC |Bit-depth (bits)|Sampling Rate (kHz)|Dynamic Range (dB)|SNR (dB)|THD+N (dB)|Supply Voltage (V)|Power (mW)|Price (USD)|Package| |———–|–|——–|——-|——-|——-|———-|——–|——–|——-| |PCM1808 |24|96 |99 |99 |-93 |3.3+5 |76.7|1.47|14TSSOP| |PCM1860 |24|192 |- |103|-93 |3.3+3.3 |80 |3.42 |14TSSOP| |CS5346 |24|192 |103|- |-95|3.3+5 |281 |6.84 |48-LQFP|
Thoughts
Despite falling behind in terms of audio characteristics such as sampling rate, dynamic range/ SNR, and THD+N, the PCM1808 is likely good enough for my purposes. I don’t intend on using the device for recording audio, just for processing audio from my bass and mixing with my music.
MCU/Dev Boards
I will most likely choose to integrate an MCU directly or use an existing dev board (e.g. RP Pico 1&2, ESP32, STM32 Blue pill). Using the dev boards allows me to directly utilize their existing bluetooth/WiFi capabilities. This saves me both the headache of designing my own board for the MCU and lets me get away with not having to solder QFN packages.
I may want to design my board with an integrated MCU or and MCU + coprocessor (taking inspiration from the Tangara). I may also want to familiarize myself with STM32 processors, however, due to availability and the abundance/accessibility of learning materials for the RP2040 and RP2350, I will likely stick to those MCUs.
Raspberry Pi Pico 1 W (RP2040)
I’ll be doing my first version with a RPi Pico 1W because that’s what I already have. I will be programming it using C/C++. I am completely unsure whether the RP2040 is fully capable of everything I need it for, since I will need use to for receiving inputs from the buttons, controlling the LEDs and buttons, decode FLAC and other audio filetypes, AND perform digital signal processing, applying EQ profiles, and applying effects to the audio input (if present).
From prior examples (4), the RP2040 appears fully capable of everything I need it to, since the RP2040 possess two ARM Cortex-M0+ cores capable of running separate threads at 133 MHz (or 200 MHz).
Appendix
Other DACs considered
Cirrus Logic CS433(4/8)
Price: $1.95 - 2.51
- 24 bit, 96 kHz
- 2 channel
- 5V analog & digital supply, 75 mW
- 96 dB Dynamic Range
- -88 dB THD+N
Cirrus Logic CS43L41
Price: $2.00
- 24 bit, 96 kHz
- 2 channel
- 2.4V-5V analog & digital supply, 24 mW @ 2.4V
- 101 dB Dynamic Range
- -89 dB THD+N
Cirrus Logic CS4329
Price: $5.98 Specs:
- 20 bit, 32, 44.1, and 48 kHz sampling rate
- Delta Sigma Architecture
- 2 channels
- 5V analog & digital supply, 22.5 mW
- 106 dB Dynamic Range
- 115 dB SNR
- -97 dB THD+N
Cirrus Logic CS4360
Price: $5.14 Specs:
- 24 bit, 192 kHz
- Delta Sigma Architecture
- 6 channel
- 3.3V analog & digital supply, 116 mW
- 102 dB Dynamic Range
- 115 dB SNR
- -91 dB THD+N
Analog Devices AD1934 (WBSTZ)
Price: $8.86 Specs:
- 24 bit, 192 kHz
- Delta Sigma Architecture
- 8 channel
- 3.3V analog & digital supply, 429 mW
- 108 dB Dynamic Range
- 108 dB SNR
- -94 dB THD+N
Analog Devices AD5680 nanoDAC
Price $10.74 Specs:
- 18 bit (12 bit accuracy guaranteed???)
- Single 5V supply @ 1.6 mW
- -80 dB THD
Other ADCs Considered
Cirrus Logic CS5346
- Features 6:1 input mux
- Programmable Gain Amp (PGA) +- 12 dB w/ zero-crossing transition
- 32dB Gain Stage for Stereo Microphone inputs
- 281 mW power consumption
Citations
- “A DAC for all precision occasions” (https://www.ti.com/lit/an/slyt300/slyt300.pdf)
- “DYNAMIC PERFORMANCE TESTING OF DIGITAL AUDIO D/A CONVERTERS” (https://www.ti.com/lit/an/sbaa055/sbaa055.pdf)
- “Analog-to-Digital Converter Architectures and Choices for System Design” (https://www.analog.com/en/resources/analog-dialogue/articles/analog-to-digital-converter-architectures-and-choices.html)
- “Cornell University ECE4760 DSP Pi Pico RP2040” (https://people.ece.cornell.edu/land/courses/ece4760/RP2040/C_SDK_DSP/index_vga_dsp.html)
- “Tangara” (https://cooltech.zone/tangara/)
- “Line Level” (https://en.wikipedia.org/wiki/Line_level)