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.

DM8168上DSP端主频修改失败

开发板:SEED-DVS8168

仿真器:SEED-XDS560v2

CCS:Version: 6.1.0.00104 

53 /* Main PLL */
54 #define MAIN_N                      56
55 #define MAIN_P                      0x1
56
57 /* DSP -> 1000 MHz*/
58 #define MAIN_INTFREQ1           0xC
59 #define MAIN_FRACFREQ1          0x189374
60 #define MAIN_MDIV1                  0x1
61
62 /* ARM -> 987 MHz*/
63 #ifdef ARM_PLL_987
64 #define MAIN_INTFREQ2           0xC
65 #define MAIN_FRACFREQ2          0x400000
66 #endif
67 #ifdef ARM_PLL_1200
68 #define MAIN_INTFREQ2           0xA
69 #define MAIN_FRACFREQ2          0x147AE1
70 #endi

 

根据上面的宏定义在evm816x.gel中修改如下:

/* ------------------------------------------------------------------------ *
 *                                                                          *
 *  Setup_MainPLL()                                                         *
 *                                                                          *
 * ------------------------------------------------------------------------ */
Setup_MainPLL()
{
    GEL_TextOut("\tMain PLL Init is in Progress, Please wait ..... \n","Output",1,1,1);                                         
    /* mainPLL( MAIN_N,  MAIN_P, MAIN_INTFREQ1, MAIN_FRACFREQ1, MAIN_MDIV1, 
                MAIN_INTFREQ2, MAIN_FRACFREQ2, MAIN_MDIV2, 
                MAIN_INTFREQ3, MAIN_FRACFREQ3, MAIN_MDIV3, 
                MAIN_INTFREQ4, MAIN_FRACFREQ4, MAIN_MDIV4, 
                MAIN_INTFREQ5, MAIN_FRACFREQ5, MAIN_MDIV5, 
                MAIN_MDIV6, MAIN_MDIV7)*/
    /* mainPLL(64, 0x1, 0x8, 0x800000, 0x2, */  // 800 MHz GEM
	mainPLL(64, 0x1, 0xC, 0x189374, 0x1,      // 1000 MHz GEM
            0xE, 0x0, 0x1,               // 987 MHz A8, SGX derives from this
            0x8, 0xAAAAB0, 0x3,          // 530 MHz IVA
            0x9, 0x55554F, 0x3,          // 493 MHz L3
            0x9, 0x374BC6, 0xC,          // 125 MHz CPGMAC
            0x48, 0x4);                  // 24 MHz USB, 432 MHz for Audio PLL
    GEL_TextOut("\tMain PLL Init is Done ..... \n","Output",1,1,1);                                           
}

 


GEL文件做上述修改,由800 MHz GEM到1000 MHz GEM。

使用下面代码测试发现:
#include <xdc/std.h>
#include <xdc/runtime/System.h>
#include <xdc/runtime/Timestamp.h>
#include <xdc/runtime/Types.h>
/* ======== main ======== */
Int main(Int argc, String argv[]){
    Types_FreqHz freq;
 
    Timestamp_getFreq(&freq);
    System_printf("freq = {0x%x : 0x%x}\n", freq.hi, freq.lo);
 
    System_printf("time = 0x%x\n", Timestamp_get32());
    System_printf("time = 0x%x\n", Timestamp_get32());
 
    return (0);
}
freq = {0x0 : 0x2faf0800}  
0x2faf0800换算成十进制:800000000
DSP主频修改为1000 MHz失败。

请问,是否还有其它地方需要设置?我是在DM8168的DSP端单独开发。