Hi Peter, That's great work. Does the development board have audio I/O for mic/spkr and possibly connection to a HF radio?
Perhaps we could look into a Makefile target for that platform to automatically configure the build system and #ifdef or patch in the changes. Just curious - why couldn't you use malloc? Thanks, David On Wed, 2011-11-02 at 13:37 -0400, Peter Lawrence wrote: > STMicro recently started selling a $20 (US) development board using > their 168MHz STM32F407 microcontroller (an ARM Cortex-M4F). > > I have one, so I ported the Codec2 code to it. > > The Cortex-M4 already has some DSP instructions, but the "F" in M4F > indicates a floating-point unit, and that makes all the difference in > comfortably running Codec2. > > As a result, the changes made to the Codec2 code (2500bps version) > were pretty minimal: > > 1) replace the malloc calls with static variables > 2) replace the KISS FFT routines with ARM's optimized CMSIS DSPLIB > 3) change the FFT sizes from 512 to 256 > > Also, whilst not a change to the Codec2 per se, I had to allocate > really large (by embedded standards) stack and heap sizes. (Fail to > do this, and one will waste lots of time chasing one's tail trying to > debug memory corruption issues.) However, the CPU has 128kBytes of > SRAM, so this isn't an issue. > > The FFT implementation in CMSIS DSPLIB: > > http://www.onarm.com/cmsis/download/ > > only supports complex FFT lengths of 16, 64, 256, and 1024. > > I initially tried using 1024, but ran into some headroom issues. > Using 256, the entire encode and decode process seems to take about > 7-10 mS for each 20mS audio block. > > STMicro certainly isn't the only Cortex-M4F licensee. TI, Freescale, > Atmel, and quite possible others have (or will have) products on > offer, so that provides some price competition. > > What I like about this is that it means that one could offer a single > chip Codec2 solution, ala DVSI's AMBE-2020. Plus, since Codec2 is > open-source, it should be practical to run additional simple custom > software onboard, rather than pay for and design in yet another micro > as one would with the AMBE-2020. > > ------------------------------------------------------------------------------ > RSA® Conference 2012 > Save $700 by Nov 18 > Register now! > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Freetel-codec2 mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/freetel-codec2 ------------------------------------------------------------------------------ RSA(R) Conference 2012 Save $700 by Nov 18 Register now http://p.sf.net/sfu/rsa-sfdev2dev1 _______________________________________________ Freetel-codec2 mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freetel-codec2
