Hi I am trying to port the MAD library for the TI-54X DSP and running into tight timing issues. When analysed, I found out that the 54X DSP takes more instructions to perform LONG calculations at the SYNTHESIS FILTER Bank stage as it is a 16 bit processor [but with a 40 bit accumulator]. As it is required to perform 72 times the DCT32 and the remaining MATRIX calculations at the SYNTH stage, I like to optimize the synthesis filter bank. I am not sure about using the Q28.4 format being used by MAD. Is there anyway we can use the Q15.1 format for the calculations? I like to know is there any hints or clues for the LONG calculations that I can make use of during my 54X porting phase. Also any thought about using the NORM instruction to round the final samples to 16 bit will be helpful.
Regards Balaji Shanmugam
_________________________________________________________________ Marriage? http://www.bharatmatrimony.com/cgi-bin/bmclicks1.cgi?74 Join BharatMatrimony.com for free.
Hi Balaji!
I have ported MAD to TI-55xx. I used Q1.15 format and 16 bits arithmetics for all calculation. As result of this is:
limited accuracy ISO/IEC 11172-3 audio decoder
according to http://www.underbit.com/resources/mpeg/audio/compliance/
Yes - synthesis step of decoding is most calculation intensive part. I've used a little different method to port MAD to TI-55xx DSP - instead of providing "arithmetics macro" for given platform I've rewrite on DSP asm all calculation intensive functions (8 or 9 ?). So I think this is a better way in case if someone need close to optimal implementation for given hardware platform. Only you need to do is to rewrite these asm functions for your platform.
I can send you my implementation of decoder. And maybe it is better to put it to MAD site? Because I've sent it several times before to other people and this question is arisen again and again :). In additional I have same style implementation of MAD for sp3R5m DSP (www.3dsp.com) this one is 32 DSP core and in this case "fully compliant" decoder is obtained.
Tuesday, July 20, 2004, 11:25:28 PM, you wrote:
bs> Hi bs> I am trying to port the MAD library for the TI-54X DSP and running into bs> tight timing issues. When analysed, I found out that the 54X DSP takes more bs> instructions to perform LONG calculations at the SYNTHESIS FILTER Bank stage bs> as it is a 16 bit processor [but with a 40 bit accumulator]. As it is bs> required to perform 72 times the DCT32 and the remaining MATRIX calculations bs> at the SYNTH stage, I like to optimize the synthesis filter bank. bs> I am not sure about using the Q28.4 format being used by MAD. Is there bs> anyway we can use the Q15.1 format for the calculations? bs> I like to know is there any hints or clues for the LONG calculations that I bs> can make use of during my 54X porting phase. Also any thought about using bs> the NORM instruction to round the final samples to 16 bit will be helpful.
bs> Regards bs> Balaji Shanmugam
bs> _________________________________________________________________ bs> Marriage? bs> http://www.bharatmatrimony.com/cgi-bin/bmclicks1.cgi?74 Join bs> BharatMatrimony.com for free.