4 ms·
That speed is quite enough to do audio processing - you can run Opus easily on those microcontrollers. Many other audio processing tasks are simpler. AC97 chips
by TD-Linux 10y ago
That speed is quite enough to do audio processing - you can run Opus easily on those microcontrollers. Many other audio processing tasks are simpler. AC97 chips are basically DACs/ADCs, and do no audio processing themselves, so are a bad comparison.
However, while most Cortex-M chips have an I2S peripheral to integrate with an external DAC, the HiFive1 doesn't, which might cause some difficulties. Audio out can be implemented with the PWM peripheral, though.
- mSparks 10y agoDepends what you mean by "enough". 24MHz is "enough" for 20 bits@96kHz ADC and some post processing. But 20 bits@96kHz is not decent. For reasonable SNR, you need at least 24 bits, and even then "the experts" offload to an external CPU http://www.tested.com/tech/pcs/454839-tested-why-high-end-pc-sound-card-matters/ http://www.tested.com/tech/pcs/454839-tested-why-high-end-pc... For signal (less audio are more "controller") with high precision you need micro controllers with the power of at least an early 2000s PC (several hundred MHz and single cycle mul/div). Raspberry Pi 3 is close, but it needs an external ADC/DAC.
- TD-Linux 10y agoFirstly, https://xiph.org/~xiphmont/demo/neil-young.html https://xiph.org/~xiphmont/demo/neil-young.html Secondly, even if you did want to process at 96kHz, you'd have plenty of CPU left to do so. It's only 2x as intensive as 48kHz (this is a 32 bit CPU so using 16 bit vs 32 bit math is mostly the same, sans DSP instructions) and that amount of headroom is likely available, for example: https://www.rockbox.org/wiki/CodecPerformanceComparison https://www.rockbox.org/wiki/CodecPerformanceComparison Thirdly, the article you linked talks about high end DACs but says nothing about the DSP on the card, other than that it has one, for doing... something (?)
- mSparks 10y agoSigh, Firstly, getting from uncompressed at the input to compressed is basic processing. Seriously, you don't. Non risk instructions often take Multiple cycles, so you can only do a tiny number of them between samples, usually just enough to compress it to fit the bus speed without loss. https://en.m.wikipedia.org/wiki/Cycles_per_instruction https://en.m.wikipedia.org/wiki/Cycles_per_instruction Thirdly, clearly you didn't rtfa. Fourthly, go disagree on the teensy forum. https://forum.pjrc.com/threads/27364-Teensy-3-1-and-ADC-FIR-Filtering https://forum.pjrc.com/threads/27364-Teensy-3-1-and-ADC-FIR-...
- pjc50 10y agoMost sensible people stick to 16 bits @ 48kHz, especially if it's not a pro-audio device but just something with a MEMS mic and 8ohm speaker.
- mSparks 10y agoAnd they would be interested in signal processing a 50kHz LF radio transmission why?