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.

TMDEVM6678L 测试代码执行时间问题



大家好!

刚刚买的TMDEVM6678L开发板,请教一下把程序烧进去运行时执行时间或者说执行的指令周期是怎么获得的?我用了两种方法,一个是enable CCS的CPU Execute Cycle,读取所测代码的CPU执行周期,然后除以时钟频率1.25GHz得到执行时间;另一个是读取TSCL寄存器的值以确定CPU执行的周期,然后同样除以时钟频率1.25GHz得到执行时间。这两种方法得到的结果差不多,但是明显与实际的执行时间不同,比实际时间要小很多。我测得的CPU周期数是千万级的,除以10^9就是10^-2秒,但是实际时间应该要1分钟左右。想请教一下原因。

谢谢

 

  • 您好,

    在测试时间时,首先确认相关的PLL配置好,EVM上可以使用CCS安装目录下自带的gel文件,其中配置主频为1GHz,可以根据需要进行修改。然后可以读取TSCL寄存器取差获得运行时间。

  • Andy你好!

    谢谢你的回复。我刚开始接触DSP,很多东西不是很清楚,请问如何配置PLL以及如何修改gel里的主频?我用了CCS安装目录下自带的gel文件,在执行Scripts选项卡中的EVMC6678L Init Functions选项中Global_Default_Setup后,关于PLL有如下一段显示:

    C66xx_0: GEL Output: Main PLL (PLL1) Setup ...

    C66xx_0: GEL Output: PLL in Bypass ...

    C66xx_0: GEL Output: PLL1 Setup for DSP @ 1000.0 MHz.

    C66xx_0: GEL Output:            SYSCLK2 = 333.3333 MHz, SYSCLK5 = 200.0 MHz.

    C66xx_0: GEL Output:            SYSCLK8 = 15.625 MHz.

    C66xx_0: GEL Output: PLL1 Setup... Done.

    C66xx_0: GEL Output: Power on all PSC modules and DSP domains...

    C66xx_0: GEL Output: Security Accelerator disabled!

    C66xx_0: GEL Output: Power on all PSC modules and DSP domains... Done.

    C66xx_0: GEL Output: PA PLL (PLL3) Setup ...

    C66xx_0: GEL Output: PA PLL Setup... Done.

    C66xx_0: GEL Output: DDR3 PLL (PLL2) Setup ...

    C66xx_0: GEL Output: DDR3 PLL Setup... Done.

    C66xx_0: GEL Output: DDR begin (1333 auto)

    C66xx_0: GEL Output: XMC Setup ... Done

    请问这里面的几个频率都是什么意思?其中PLL1 Setup for DSP @ 1000.0 MHz 这个是代表CPU的主频吗?

    非常感谢!

  • 您好!

    你说得对, PLL1 Setup for DSP @ 1000.0 MHz 是 DSP的频率

    PLL 起到倍频的功能且PLL相对其他倍频方式更稳定

  • Bruce你好!

    非常感谢你的回复,这个问题已经解决了。我还想请教一下8个核怎么能够并行用起来?是否可以只写一个整个的程序,然后load到每个核中,DSP自己(或者通过一些设置)决定哪个核执行程序的哪个部分,从而做到8核合作处理一个程序。还是需要先把程序分块,不同的块load到不同的核中,每个核实现相应块的功能,然后再用一个核做协调通讯,以使得其他执行子程序的各核可以交换信息,也就是8个核形成一个主从结构。

    期待回复。非常感谢!

  • 您好!

    你的理解是对的。

    2种方法都可以,通常由核0完成系统的初始化、协调等工作。