Other Parts Discussed in Thread: OMAPL138
PSP: 01_30_01 BIOS: 5_31_10_06 EDMA3_lld_01_11_03_01 CCS: 4.2.5
Logic PD L138 experimeters kit.
I am trying to use the 6748 portion of a L138 for a project. The design objective is to run the Audio Codecs at 96000, downsample to 8KHz, and run a control algorithm at the 8KHz sample rate.
I have used the audio example from the PSP (C:\Program Files\Texas Instruments\pspdrivers_01_30_01\packages\ti\pspiom\examples\evm6748\audio) as a starting point for this project, changing the sample rate to 96000 and the framesize to 12, to achieve the 8Khz sample rate (96000/12 = 8Khz).
I've added several sts objects within the project and have determined that the device driver/bios overhead is about 30,000 dsp cycles. In other words, from the time the 12 samples are ready to the time the for loop within Audio_Echo_Task( ) is called again, about 30,000 cycles have been exhausted. With a 300Mhz c6748, and a frame rate of 8Khz, there are 300Mhz/8Khz = 37,500 dsp cycles available to process the i/o. With the overhead using up 30,000 of those cycles, (80% of CPU), that does not leave enough CPU left over for the control algorithm.
(Note: The above metric was taken using the debug versions of the psp libraries)
Does TI (or anyone for that matter) have any other audio echo shell examples that don't use the PSP that perhaps are a leaner and more effecient? I'm looking for a simple example that can take a frame size of 12, use the DMA with a simple ping pong buffer and maybe just post a SWI when the 12 samples are ready.
Any Suggestions?
-S