Quantcast
Channel: Forums - Recent Threads
Viewing all articles
Browse latest Browse all 262198

How to configure DM8168 DSP to run at 1.0GHz or 1.125GHz?

$
0
0

This is a repost from BIOS forum. In essence, I want to know how to configure DSP clock speed from the DSP side or from the ARM side if DSP side is not an option.

Thanks.

Hi,

I am using components from ti-ezsdk_dm816x-evm_5_03_01_15 to build message passing communication path between ARM and DSP cores. The problem I am having is that I configured the DSP to run at 1000MHz in the platform file (where the DSP CPU clock, memory and cache are configured), but when I use CLK_gethtime() to measure clock speed, it shows that the CPU is actually running at about 813MHz!!

The interesting thing is that CLK_getltime() and Task_sleep() works fine no matter what CPU clock speed i configure in the platform configuration file. It is because of this that I figured out that my DSP CPU is actually running at around 813MHz by looking at the CLK_gethtime() results.

Please see my code section and measurement results below. The LogTime(t1), LogLowTime(t1_low) just calls either CLK_gethtime() or CLK_getltime() and CLK_countspms() to figure out the time elapsed and to display it to the console ( as you see in the Measurement Results section below ).

Can some experts please help tell me how to configure the DSP clock to a specified value? This is a repost from BIOS forum, some one there suggested that the U-Boot/Linux configures DSP frequency as well. Is this true? Is there any correlation between ARM and DSP clock frequencies?

Thank you!

Zhao

*******Begin Code Section********

void SendStatus(DspMsg_s* rxMsg, short msgId)

{

      unsignedint t1, t1_low;

    System_sprintf( rxMsg->d.status.status.versStr, "%s.%02d", "V_00", msgId );

     // Test code to find out the CPU clock speed

    t1 = CLK_gethtime();

    Task_sleep(100);// 100 ms

    LogTime(t1);

  t1_low = CLK_getltime();

    Task_sleep(10000);// 10 s

    LogLowTime(t1_low);

}

*******End Code Section********

*********Begin Measurement Results***********

[C674X_0] Sending a message #1 to 3

[C674X_0] elapsed time: ms[81] us[715]

[C674X_0] elapsed time: ms[10000] us[0]

[C674X_0] Sending a message #2 to 3

[C674X_0] elapsed time: ms[81] us[340]

[C674X_0] elapsed time: ms[10000] us[0]

[C674X_0] Sending a message #3 to 3

[C674X_0] elapsed time: ms[81] us[315]

[C674X_0] elapsed time: ms[10000] us[0]

*********End Measurement Results***********

*********Begin ARM Side Debug TimeStamps**********

Jun 26 23:48:18 WCS MeasRcv: Sending message #1 to DSP

Jun 26 23:48:28 WCS MeasRcv: Received DSP msg #1, response #1, Version is V_00.01

Jun 26 23:48:28 WCS MeasRcv: Sending message #2 to DSP

Jun 26 23:48:38 WCS MeasRcv: Received DSP msg #2, response #2, Version is V_00.02

Jun 26 23:48:38 WCS MeasRcv: Sending message #3 to DSP

Jun 26 23:48:49 WCS MeasRcv: Received DSP msg #3, response #3, Version is V_00.03

Jun 26 23:48:49 WCS MeasRcv: Successfully completed DSP message test, 3 loops

*********End ARM Side Debug TimeStamps**********

 


Viewing all articles
Browse latest Browse all 262198

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>