AnsweredAssumed Answered

Sharc 21489 accelerator implementation

Question asked by constant-q on Dec 27, 2012
Latest reply on Jan 3, 2013 by Harshit.Gaharwar

Dear all

 

I encounter problems when trying to add the EE322-generated FIR (or IIR) accelerator code to the example "21489 AD1939 C Block-Based Talkthru 48 or 96 kHz". When initializing the array for the TCBs, the compiler produces the following errors:

"

----------------Configuration: 21489 AD1939 C Block-Based Talkthru 48 or 96 kHz - ReleaseNWC----------------

.\blockProcess_audio.c

".\blockProcess_audio.c", line 262: cc1080: {D} warning: Function does not

          have a full prototype

  Init_FIR();

  ^

 

.\FIR_Accelerator.C

".\FIR_Accelerator.C", line 19: cc0144: {D} warning: a value of type "int *"

          cannot be used to initialize an entity of type "int"

  FIR_CF_buff1,

  ^

 

(...some lines omitted...)

 

".\FIR_Accelerator.C", line 39: cc0513: {D} warning: a value of type "int *"

          cannot be assigned to an entity of type "int"

  FIR_TCB_CH1[0]=FIR_TCB_CH1+12;

                ^

 

".\FIR_Accelerator.C", line 57: cc0513: {D} warning: a value of type "int *"

          cannot be assigned to an entity of type "unsigned int"

  *pCPFIR=FIR_TCB_CH1+12-0x80000;

         ^

"

Nevertheless, the compiler doesn't stop.

I tryed a few things, but nothing helped...

The code is as produced by the FIR Accelerator plugin. The same issue showed also up when adding the IIR routines...

-------------------------------------------------------------------

/* Declaring the external buffers needed for FIR Accelerator*/

extern int FIR_IP_buff1[];

extern int FIR_OP_buff1[];

extern int FIR_CF_buff1[];

 

/*Adding the TCB for FIR channels*/

int FIR_TCB_CH1[13]={

                0,

                256,

                1,

                FIR_CF_buff1,

                FIR_OP_buff1,

                256,

                1,

                FIR_OP_buff1+0,

                FIR_IP_buff1,

                512,

                1,

                FIR_IP_buff1+0,

                255|(255<<14)

            };

 

The ADI published IIR accelerator example code looks quite the same and works perfect.

Does anyone have an idea how to fix this?

Thanks a lot Chris

Outcomes