I'm doing tests with hardware "ADSP-21262 EZ-KIT LITE" and the software as
"Block Based TalkThru (C)".
I put in the function "BlockProcess" my algorithm. But I see that output from
the algorithm introduced me take effect only on 2 / 3 of the output signal. I
also annoying peak (spurious effect) between a block and another.
Can not understand where is the anomaly.
Can you help
Maurizio
TalkThru
Started by ●March 5, 2009
Reply by ●March 5, 20092009-03-05
Hi,
I fixed this bug three years ago - thus don't remember exactly where it
was. The reason is related to incorrect block switching A->B->C. Please
compare the code segment from InitSport() function you have with the one
I send below.
void InitSPORT()
{
TCB_Block_C[0] = (int) TCB_Block_A + 3 - OFFSET + PCI ;
TCB_Block_A[3] = (unsigned int) Block_A - OFFSET; //adress pointer
to next TCB cpsp
//Proceed from Block B to Block A
TCB_Block_A[0] = (int) TCB_Block_B + 3 - OFFSET + PCI ;
TCB_Block_B[3] = (unsigned int) Block_B - OFFSET;
//Proceed from Block C to Block B
TCB_Block_B[0] = (int) TCB_Block_C + 3 - OFFSET + PCI ;
TCB_Block_C[3] = (unsigned int) Block_C - OFFSET;
....
Good luck,
Maciej Kulesza
I fixed this bug three years ago - thus don't remember exactly where it
was. The reason is related to incorrect block switching A->B->C. Please
compare the code segment from InitSport() function you have with the one
I send below.
void InitSPORT()
{
TCB_Block_C[0] = (int) TCB_Block_A + 3 - OFFSET + PCI ;
TCB_Block_A[3] = (unsigned int) Block_A - OFFSET; //adress pointer
to next TCB cpsp
//Proceed from Block B to Block A
TCB_Block_A[0] = (int) TCB_Block_B + 3 - OFFSET + PCI ;
TCB_Block_B[3] = (unsigned int) Block_B - OFFSET;
//Proceed from Block C to Block B
TCB_Block_B[0] = (int) TCB_Block_C + 3 - OFFSET + PCI ;
TCB_Block_C[3] = (unsigned int) Block_C - OFFSET;
....
Good luck,
Maciej Kulesza