This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C64xplus MPEG4 Encoder Migration to DM648 Problem



We have been unsuccessful in migrating the MPEG4 encoder(02.02.04) from C64xplus to DM648 EVM board.

We had changed all the params mentioned in "Running a TMS320C64x+ Codec Across TMS320C64x+ Based DSP Platform" app notes. We were able to compile/link the TestAppEncoder.pjt but it hangs in algActivate call during run time.

*******************************************
Read Configuration Set 1
*******************************************
Running in Compliance Mode
Creating Algorithm Instance...
Algorithm Instance Creation Done...
  Total number of Byte Read          = 6336

 algActivate... 

Note: Bold lines are debug prinf added by us.

We suspect dma base address is not config properly. We did change the define statement in TestAppEncoder.c from

#define  QDMA_BASE   0x01C00000  to
#define  QDMA_BASE   0x02A00000.
and
#define EXT_MEM_BASE (0x80000000) to
#define EXT_MEM_BASE (0xE0000000)   

The C64xplus JPEG encoder(02.00.01) which doesn't use dma calls has been successfully migrated to DM648.

Other changes in mp4vencApp.cmd:
MEMORY
{
   
//    L1DRam    : o = 0x11F04000,  l = 0x00010000
    L1DRam    : o = 0x00F00000,  l = 0x000010000        //changed for dm648 -DC
    /*GEM UMAP0(L2 Cache) Memory Map */
    /* 64KB of SRAM/Cache            */
//    L2        : o = 0x11800000,   l = 0x00010000
    L2        : o = 0x00A00000,   l = 0x00010000    //changed for dm648 -DC  
    /*GEM L1P RAM Memory Map SIZE 32 KB*/
//    L1PCache    : o = 0x11E08000, l = 0x00008000 
//    ERAM        : o = 0x80000000, l = 0x00090000
//    UERAM       : o = 0x80090000, l = 0x01800000
    L1PCache    : o = 0x00E00000, l = 0x00008000    //changed for dm648 -DC 
    ERAM        : o = 0xE0000000, l = 0x00090000    //changed for dm648 -DC
    UERAM       : o = 0xE0090000, l = 0x01800000    //changed for dm648 -DC
}


According to the app note, it actually implied we can't do the migration to DM648 by ourselves. In section 3.3(EDMA features: TC’s and QDMA Base Address) on page 5, I quote "At present, the QDMA base address is chosen during build time, so if there is a change in the config base address (e.g., DM6446 to DM648) then the codec library needs to be rebuilt."

We obviously can't rebuild the codec library and only TI can do that. So, the questions are

1. Is rebuilding the codec library the only way to migrate this codec to DM648 platform? If so, how can we get it done?
2. If not, what steps are need to migrate?

Thanks,

Dan