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.

How to use System Analyzer UIA module

Other Parts Discussed in Thread: SYSBIOS

Dears,

I am encountering issues while trying to use System Analyzer modules in my project to see CPU loads.

As the MCSA User Guide described, the code should be INSTRUMENTED after adding "ti.uia.sysbios.LoggingSetup" module.

After doing that and compile, I start a debug session and open the Tools -> System Analizer -> Live window.

In this window, every core shows a "no" in the "Instrumented" column.

I really dont know what do I missing.

Then I tried to manually create a UIA config File.

After click "Create UIA Config File" button, the "UIA Config" window shows.

There is no "Endpoint" in the table.

I added a Endpoint, then select  the .out, .uia.xml, .rta.xml  manually since the program can not automatically find them.

After doing all above, and after I starting SA live session and start running , no graph was shown in the "CPU Load: graph" or "Task Load: graph" window.

And the "UIA Transport Monitor" is empty too.

That's all my steps above. Did I miss something or do something wrong?

Lucifar

  • The Window is like this

  • Lucifar,

    If your target application is instrumented and you have this program loaded to the target in your CCS debug session then System Analyzer should automatically detect that the core is instrumented and add the endpoints.

    I will have someone else follow-up with you to verify that your target is correctly instrumented.

    Regards,

    Imtaz.

  • Hi Lucifar,

         Could you please provide the following info:

    • CCS version you are running
    • UIA version you are using
    • XDC version you are using
    • O/S your PC is running (Windows XP SP3 / Windows 7 / Ubuntu <version number> or whatever)

    Additionally, could you open a DOS command window / terminal, go to the folder that contains your project's .out file, run the following command and let me know what is output in response to this command:

    vers myProject.out

    (where myProject.out is replaced with the name of your .out file)

    Also, could you please post the .cfg file you are using?

    With that info I should be able to try to reproduce your setup and see if I can get a better understanding of what the problem is.

    Regards,

      Brian

  • Hi Brian

    CCS :5.1.0.09000

    UIA: 1.0.3.25

    XDC: 3.22.4.46

    O/S: XP sp3

    out put of vers:

    C:\Documents and Settings\Lucifar\My Documents\workspaceV5_6678_network_test\hua
    _evmc6678l\Debug>vers hua_evmc6678l.out
    hua_evmc6678l.out:
            __ASM__ = C:/Program Files/Texas Instruments/mcsdk_2_00_01_12/demos/hua/
    evmc6678l/Debug/configPkg/package/cfg/evm_pe66
            __ISA__ = 66
            __PLAT__ = custom.hpdspua.evmc6678l
            __TARG__ = ti.targets.elf.C66
            __TRDR__ = ti.targets.omf.elf.Elf32

    Best regards,

    Lucifar

  • Thanks Lucifar,

         When you installed the MCSDK, was the version of CCS 5.1 you are currently running already installed?   There's a problem that can occur if you install the MCSDK after CCSv5.1 is installed and, in the MCSDK installation, enable installation of "MCSA 1.0", an older version of System Analyzer will be installed on top of the System Analyzer that ships with CCSv5.1 and cause it to not work properly.   (See  http://processors.wiki.ti.com/index.php/BIOS_MCSDK_2.0_Getting_Started_Guide - "Installing the BIOS Multicore Software Development Kit " for a screenshot of the Setup screen with the MCSA 1.0 component unselected). 

    If this happened, then you will need to re-install CCS in order to get the correct version of System Analyzer installed.    (Sorry for the inconvenience!! )

    Please let me know if this gets you up and running or not.

    Regards,

       Brian

  • Hi Lucifar,

       I've been looking into this problem further and it appears that the problem you've reported is not consistent with what would be expected if the issue was that MCSA 1.0 was installed on top of the CCS v5.1 System Analyzer.  (if that was the problem, there would be no "System Analyzer" entry in the Tools menu...).   My apologies for any time you've spent re-installing CCS!

    • You mentioned in your earlier post that you added  ti.uia.sysbios.LoggingSetup to your .cfg file and then compiled your project
    • Could you please post the contents of the console window after you delete the .out file and rebuild the project?
    • After you compile your project, do you see any files with a .uia.xml and .rta.xml file type in  C:/Program Files/Texas Instruments/mcsdk_2_00_01_12/demos/hua/evmc6678l/Debug/configPkg/package/cfg/ ? 
    • Are you loading the .out file from it's original location in C:/Program Files/Texas Instruments/mcsdk_2_00_01_12/demos/hua/evmc6678l/Debug/ ? 
    • You also shouild do the following steps before loading your program into the target:
    • In the Debug View, select CPU 0, right-click and select Connect. Target
    • Then apply a system reset to the target (from the CCS Run menu, select Reset -> System Reset)
    • Then apply a CPU reset to CPU 0
    • Then run a GEL script to initialize the board using the CCS Scripts menu:
    • Scripts ->EVMC6678L Init Functions  -> Global Default Setup
    • Then load the program into CPU 0.  It should halt at main and the System Analyzer welcome view should automatically open.

    Also, please note that the LoggingSetup module defaults to using a JTAG Stop Mode transport - data is only uploaded to System Analyzer when the target halts.   You can add the following lines to the evm.cfg file  to configure the transport to JTAG RunMode:

    • var LoggingSetup = xdc.useModule('ti.uia.sysbios.LoggingSetup');  // you may already have this in your .cfg file
    • LoggingSetup.eventUploadMode = LoggingSetup.UploadMode_JTAGRUNMODE;

    (Once you get that working, we can go over what is needed to enable multicore event correlation over JTAG and using Ethernet as a transport).

     Regards,

      Brian

    • The output of build after delete the .obj:

    **** Build of configuration Debug for project hua_evmc6678l ****

    D:\ccsv5\ccsv5\utils\bin\gmake -k all
    'Building target: hua_evmc6678l.out'
    'Invoking: C6000 Linker'
    "D:/ccsv5/ccsv5/tools/compiler/c6000/bin/cl6x" -mv6600 -g --define=_INCLUDE_NIMU_CODE --define=C66_PLATFORMS --define=_NDK_EXTERN_CONFIG --display_error_number --diag_warning=225 --abi=eabi -z -m"hua_evmc6678l.map" --stack_size=4096 --heap_size=0x2710 --warn_sections -i"D:/ccsv5/ccsv5/tools/compiler/c6000/lib" -i"D:/ccsv5/ccsv5/tools/compiler/c6000/include" --reread_libs --rom_model -o "hua_evmc6678l.out" -l"./configPkg/linker.cmd"  "./src/benchmark/ndkloopback.obj" "./src/benchmark/ndkbenchmark.obj" "./src/system/resourcemgr.obj" "./src/system/platform_osal.obj" "./src/tcp_test.obj" "./src/hpdspua.obj" "./src/webpages/webserver.obj" "./src/webpages/webpage.obj" "./src/webpages/tasks.obj" "./src/webpages/statistics.obj" "./src/webpages/information.obj" "./src/webpages/i2cread.obj" "./src/webpages/flashwrite.obj" "./src/webpages/flashread.obj" "./src/webpages/flasherase.obj" "./src/webpages/flash.obj" "./src/webpages/diagpage.obj" "./src/webpages/diagnostic.obj" -l"libc.a"
    <Linking>
    'Finished building target: hua_evmc6678l.out'
    ' '

    **** Build Finished ****

    • There is no .uia.xml and .rta.xml at the location you mentioned. Instead, those file are located at my project folder.
    • I am loading the .out file in my project.
    • I also had changed the eventUploadMode to JATGRUNMODE

    But still, the Analyser does not work.

    Now I will re-install my CCS5.1 to see if anything changed.



  • Hi Brian,

    I am not sure if I checked the MCSA1.0 or not while installing MCSDK so I uninstalled CCS and MCSDK and re-install them again.

    But after re-installation, MCSA does still not work.

    You mentioned some further steps in your last reply.

    So what is next?

    Best Regards,

    Lucifar

  • Lucifar,

         Thanks for the update.  Could you open a command window (e.g. start / accessories / command prompt), navigate to the folder that your project is located in and do the following:

       dir *.* /s /b >filelist.txt

    and post the filelist.txt file?  I'll try to replicate your exact directory structure here and create a System Analyzer configuration file that works here that you can try.

    Regards,

      Brian

  • Lucifar,

    Will you be able to particpate and share your computer in a WebEx? If so I can arrange a time for us to have a look and hopefully isolate the issue you are seeing. What timezone are you in (we're Eastern)

    Regards,

    Imtaz.

  • Imtaz and Brian:

    These two files are listed for you to investigate.

    This is my workspace

    8078.workspaceV5_6678_network_test_hua.rar

    this is the hua in program files folder

    1537.hua.rar

    Thank you very much!

    Best regards,

    Lucifar

  • Thanks Lucifar,

       I've downloaded the files and am working on trying to reproduce the problem you are seeing with your setup on my PC. 

    Thanks

       Brian

  • Hi Lucifar,

        We've (finally) managed to identify what was causing the problem you were seeing.  It turned out to be a problem with the way the Java IO read() API reads a character on PCs configured for languages that require 16b character sets.  When System Analyzer tried to read some metadata infomation from the binary .out file on your PC, the Java IO read() API that we used mis-interpreted a binary 0x81 byte value as meaning that the value was the first byte of an extended 16b character, so the next byte was read in with this value.  This caused our string parsing software to fail to find what it was looking for, which broke the auto-discovery mechanism we use for System Analyzer. 

    We're working on a fix right now, and I'll post an update when we work out the best way to make it available.   We're also looking at how we can improve our System Testing so that this type of problem can be caught earlier.

    Thank you VERY much for your patience and help! 

    Regards,

      Brian

  • Hi Brian:

    Thank you very much for your help.

    Hope this will be fixed soon.

  • Hi Brian,

    I have encountering a problem which appears to have the exact same symptoms as what you chsed with Lucifar.

    Has there been a fix to this parsing issue ?  if so how do I pick this up ?

    Matt 

  • Matt, Lucifar,

    A patch is available for this (sorry for not posting on this thread earlier). See this thread for info install the patch: http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/166845.aspx

    Regards,

    Imtaz.

     

  • Thanks Imtaz

  • Hi Imtaz,

    Sorry for not stating this earlier, but I am running this version of ccs :-

    Version: 5.0.1.201105110900

    Build id: N201105110900

     

    I notice you state that your patch fix is not compatible with 5.0.x builds.

    Do you believe it is the same underlying issue, and if so, is it possible to deploy a patch for 5.0.x ?

     

    Thanks

    Matt

     

     

  • Matt,

    Is your PC a non-English Locale? If so then most likely it is the same issue. Unfortuately we do not have a 5.0.x patch. One way of working around is to set your Locale to English (United States) ... but not sure if this is a realistic work around for you.

    If you're on a English (United States) Locale then let me know and we can investigate further.

    Is upgrading to CCS 5.1.1 an option?

    Regards,

    Imtaz.

  • Hi,

    I have also the same problem with my environment.

    Could you please help me?

    For details, please see following link:

    http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/330841.aspx

    Thanks in advance.

    Regards,

    Cemal

  • Hi Cemal,

    By default, the Load events are logged every 0.5 seconds so you have to wait a while to see them show up in the System Analyzer views.  You can control the frequency that load events are logged with the following configuration code:

    var Load = xdc.useModule('ti.sysbios.utils.Load');

    Load.windowInMs = 100; // configure to log every 100ms instead of the default period of 500ms.

    CAUTION: logging load events at a high frequency can cause a large number of events per second to be logged, leading to dropped events and slowdowns in the handling and processing of the event data.

    For more info, please see http://processors.wiki.ti.com/index.php/System_Analyzer_Tutorial_3A

    Regards,

      Brian