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.

CPU Load jumps to 56% from the 2%-3% range with the addition of just one SWI_post on ADC interrupt on 28335

3806.Effects_of_LedBlink_and_ADCswi on_CPU_LOAD .docx

Hello DSP BIOS Champs!!

CCS Version: CCSV4  (  Version: 4.2.1.00004 )

Target:  TMS320F28335 (eZDSP from Spectrum Digital)

Emulators: XDS510 USB and XDS100v2

Software Package: spra958i.zip (from TI)

Application: \spra958i\spra958i\CCSv4\F28335_examples_CCSv4_2010Aug10\F28335_example_BIOS_flash

Step to Reproduce:   See screen shots in attached file

 

1. Run the app (stated above) without modifications...observe the CPU load via RTA raw logs.  It is 56%...this does not appear to be realistic!!

2. Remove all loading...update the TCF file and remove the PRD function LedBlink, as well as the ADC_swi (NOTE: you have to remove the SWI_post from the interrupt handler as well).  Compile and run the app.  Note that the CPU load has dropped down to 2%.  Makes sense?

3. Now add LedBlink back in...and note that CPU Load is barely effected...It is still loaded to 2% and jumps to 3% occasionally

4. Now add ADC_swi back in (Note: ADC_swi needs to be added as the SWI_post argument)...and note that the CPU load jumps to 56%.  This does not make sense!

Could this be a bug in DSP BIOS   or is there a logical explanation?  Please advice...

Thanks,

Krishna

  • Krishna,

    I don't understand what the AdcSwi function is doing to determine whether "the 56% is realistic or not" but what I did notice is that the instruction to "Reset SEQ1 to CONVOO State" and "Clear ADC SEQ1 interrupt flag" seems to be the culprit of the 56%.  In my case, I ran it on RAM and it was 33% so about 1/2 of what is in FLASH.

    If you simply comment out the first two instructions in the AdcSwi(), you should notice that the CPU load goes to 2% or 3%, therefore I don't think this is related to the SWI_post().

    Do you know how often the AdcSwi function getting triggered?  What's your reasoning why this cannot be 56%?

    Judah

  • Hi Judah,

    Thanks for following up on this...please go ahead and close this post.  I am able to work without the ADC, which is preferable since I did not author that...If it becomes a problem I will re-visit this in the future.

    Thanks, Krishna