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.

Statistic data failure Bios CCSv5

Hello

I'm using Bios 5.41 in a CCSv5 project with an SWI called from a HWI.

It works ok, and I can use BIOS capabilities to analyze CPU load.

However there is a problem with SWIs statitistics data (both mine and KNL_SWI). Total, max and average of these processes are stuck at 0 even though counting is increasing.

STS and IDL on the other hand are getting updated in a normal way.

Do you know why is this stuck at 0 even if the tasks are being executed and counting updated?

In CCSv3.3 I've never had a problem with this.

Thanks a lot.

  • Alex,

    Is CLK enabled for the application?

    Please see this forum post: http://e2e.ti.com/support/embedded/bios/f/355/t/48450.aspx

    Scott

  • Thanks. 

    I had the CLK enabled with all high resolution stuff ticked.

    Two details that could be a clue to help me:

    1) STS measures are working properly with max and average getting updated. It is just the SWIs max/average that are stuck at 0 and It is 100% that this SWIs are being posted and executed.

    2) However, this STS measures yield to the same value if I use tick units or if I switch to time units. No change at all.

    From my CCS3.3 experience, this should,t behave in this way.

    Thanks!

  • I attach a jpg capture just in case it is going to help us.

    I've disabled TSK MANAGER since I only use HWI and SWI so now we only have these tasks.

    STS0 and STS1 are working properly giving me the exact amount of cycles that are being used. As I said in the previous post, I can't change this cycle measure to time measure even though I switch it in RTA control panel.

    Actually STS1 is the time spent inside the function called from the SWI which approximately the value I expect for fastTaskSWI measure. 25000 cycles at 375MHZ = 70% of our 10KHz real time interrupt-

    In CLK manager I use Timer1, high res enabled.

    Any idea? Everything else seems to work but I'd like to figure out what is happenning.

    Thanks again

    PS: Main() is already dropped and fully executed. So it is not stuck there.

  • Alex,

    I’ve looked at this for a while and can’t determine what would be going wrong.  Tomorrow I will try a test to see if I can recreate what you are seeing.

    Can you tell me which version of DSP/BIOS you had been using on CCS3.3?

    Thanks,
    Scott

  • Hello

    Bios version we use in CCSv3.3 is 5.31.02.

    Thanks for your help.

  • Alex,

    I ran some basic tests with CCS 5.2 and DSP/BIOS 5.41 on a C6748 and see updates to the total, max, and average fields for a few SWIs. 

    But as you describe, I don’t see any changes to the values if I select RTA time units of “Ticks” or “Time”.  I just filed a bug report for this (ID = SDOCM00093867).

    Given that CLK is enabled, the only reason I can think of for counts to update but the other fields to not update is if the SWIs are being posted but not actually executing.  But it seems you are sure they are indeed executing.

    Is it possible for you to send me your application to try?

    Thanks,
    Scott

  • Hello

    I'm pretty sure that SWI task is being executed:

    1) Code does what is supposed to do and the main routine is in the routine called by this SWI.

    2) STS1 is set/reset at the beggining / end of the routine called by SWI giving the exact number of cycles that our CPU load reflects.

    3) Breakpoints are reachable.

    I've updated to CCS5.2 since our previous tests were with 5.1 version with no success at all. Exactly the same behaviour.

    DSP BIOS is now 5.41.13.42 and CCS is 5.2.0.00069

    I sent you the .out file. I'm not sure if you could run it since it is adapted to our memory map (mDDR). Please, tell me if you need something else.

     

    Thanks a lot.

  • Alex,

    I don’t see any .out file.  Can you please try re-posting it?

    Thanks,
    Scott

  • Maybe is it also interesting the bios tcf file...

  • Alex,

    I can load and run your .out file on a standard EVM board, but I can’t tell what it is doing.  I set a breakpoint on SWI_F_post but it is not activating, which it would need to in order to collect SWI statistics.  I don’t see any other RTA data either.  You mentioned mDDR setup, so I wonder if there is something going wrong based upon that.  Also, there is no .tcf file posted on the forum, so I can’t look at that. 

    Is it possible to modify the test to use only internal memory?  Better yet, can you zip up the whole CCS project and send that?  Then I’ll be able to rebuild it if I need to make some changes to see what is going on.

    Is this possible?

    Thanks,
    Scott

  • I'll try again with the tcf. The uploading tool is so confusing (at least with Chrome)

    If you can have a look there... Sending the full code is a little mess because there are a lot of inlcudes to local files and getting the project compiled in another PC won't be easy. We can do it, anyway if there is no other chance. 

  • Alex,

    I looked thru the .tcf file but didn’t see any obvious issues.  I’m assuming the function “MdlOutputs” is the one that you verify is actually running?

    Can you set a breakpoint on SWI_F_post to see if it is being called?

    Otherwise, since the test case I created works as expected, I think I’ll need you to zip up and send me the whole project.  Then I can hopefully remove some references, change the memory configuration and build and try it out.  If you don’t want to post the project to the whole forum you can hover the mouse pointer over my name, select ‘add as a friend’, and then when I accept you should be able to send the file to me directly.

    Thanks,
    Scott