Hi:
After hours tryng to find some explanation or commentary throughout the documentation, wiki and forum, I resort to this forum to ask for it.
We have a time critical application running on the TMS320F28335, which we develop and debug with the CCS.
We measure the execution time of one of the most time-critical functions, both with timer1 and with chronometer measurement of a led toggling every 1000 executions of the function, and find that, without CSM password lock, it executes in about 0.7 ms. However, if we "Program Password" (from the CCS On-Chip flash button and "Lock", and we launch the stand-alone execution, we measure (with the led toggling) that the execution time rises to about 3 ms.
I suppose it won't have any influence on this, but, on top of the same "On-Chip Flash (TMS320C28XX) titled form, the Clock Configuration square has its default values of OSCCLK (MHz) , CLKINDIV and PLLCR Value fields filled to 30, 2 and 10, respectively. (In fact, the clock configuration I beleive is done in the following main called function:
void InitSysCtrl(void)
{
// Disable the watchdog
DisableDog();
// Initialize the PLL control: PLLCR and DIVSEL
// DSP28_PLLCR and DSP28_DIVSEL are defined in DSP2833x_Examples.h
InitPll(DSP28_PLLCR,DSP28_DIVSEL);
// Initialize the peripheral clocks
InitPeripheralClocks();
}
, where DSP28_PLLCR and DSP28_DIVSEL are defined in DSP2833x_Examples.h as:
#define DSP28_DIVSEL 2 // Enable /2 for SYSCLKOUT
#define CPU_RATE 6.667L // for a 150MHz CPU clock speed (SYSCLKOUT)
Could anybody, please, give us any explanation about it?
Thanks and regards,
Jose