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.

RTOS/AM4379: EtherCAT Slave CPU load analysis

Part Number: AM4379
Other Parts Discussed in Thread: SYSBIOS

Tool/software: TI-RTOS

I'm working with AM437x EtherCAT slave demo (full configuration) trying to add CPU Load analysis support, to detect CPU load on TI standard slave and in my current customization.

I've enabled CPU load monitoring on my RTOS configuration (both hardware and software interrupts and task) but, when I run the Load Analysis configuration I see the following error:

 

For sure I'm missing something but I cannot find any guide to enable UIA instrumentation for this kind of project. Can anybody pointing me to such a documentation?

Kind Regards and TIA


Andrea

  • The RTOS team have been notified. They will respond here.
  • Hi, could you please double check do you have UIA installed/using? Please check in your CCS project properties

    If not installed, I found this UIA download link. You have to pick an UIA version that works with your CCS version

    thank you,

    Paula

  • Thanks for the quick reply Paula.

    I've manage to install UIA package (uia_2_00_06_52, using bios_6_46_01_38 and CCS 6.1.3) and to include it into the binary (I've added UIA LoggingSetup (add logging setup to my configuration))

    It builds correctly but I get an exception at runtime:

    CortexA9: Unhandled ADP_Stopped exception 0x20023

    For sure I'm doing something wrong or missing something in my configuration.

    Any clue or example to follow for this platform?

    Kind regards and TIA,

    Andrea

  • Hi Andrea, I will reach a colleague here who might be able to help, but could you please open a thread, with this exception (and all possible details) in our CCS E2E Forum?. There, the moderators will help us to assign your post to the right person/team

    thank you,

    Paula

  • Andrea, I haven't tried it myself, but from another project (from a colleague) I see CCS configuration file needs to be changed. Below is an example of what you need to add. Of course, if for example you don't want to get graphics for HWI, or SWI and you are only interested in CPU load, then you can enable/disable variables or change size to fit your needs.. I believe for generating CPU load Graph, you need to add Task.enableIdleTask = true

    >>>>>>>> CCS Configuration file suggested additions for UIA>>>>>>>>>>>>>>>>>>>>>>>>
    var LoggingSetup = xdc.useModule('ti.uia.sysbios.LoggingSetup');
    LoggingSetup.loadLogging = true;
    LoggingSetup.loadLoggerSize = 1024;
    LoggingSetup.mainLoggerSize = 32768;
    LoggingSetup.sysbiosLoggerSize = 32768;
    LoggingSetup.sysbiosSwiLogging = true;
    LoggingSetup.sysbiosHwiLogging = true;
    LoggingSetup.sysbiosSemaphoreLogging = true;
    LoggingSetup.loadTaskLogging = true;
    LoggingSetup.loadSwiLogging = true;
    LoggingSetup.loadHwiLogging = true;
    LoggingSetup.enableTaskProfiler = true;
    LoggingSetup.sysbiosHwiLoggingRuntimeControl = true;
    LoggingSetup.sysbiosSwiLoggingRuntimeControl = true;
    LoggingSetup.eventUploadMode = LoggingSetup.UploadMode_JTAGSTOPMODE;

    thank you,
    Paula