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.

not able to print values on console using System_printf()

Other Parts Discussed in Thread: SYSBIOS

Hi,

I am using CCS v5.0.1 and i am trying to get the outputs on console using System_printf().

The SYS/BIOS configuration i am using is

var SysMin 						= xdc.useModule('xdc.runtime.SysMin');
SysMin.bufSize = 4096;
SysMin.flushAtExit = true;
xdc_runtime_System.SupportProxy = SysMin;
By using the above configuration i am getting the outputs after System_flush() at the console, but i want the outputs at the console during runtime. 
I am using Swi and Hwi repeatedly in the system.
I have also tried the configuration
var SysStd 						= xdc.useModule('xdc.runtime.SysStd');
xdc_runtime_System.SupportProxy =SysStd;
Using this configuration, my system crashes.
Is there any way out to print the outputs on console during runtime environment ?
  • Hi Deepain Nayyar ,

    Which hardware platform are you using?  Also, which version of BIOS and XDC tools do you have?

    Thanks,

    Steve

  • Hi Steve,

    I am using multicore DSP EVM 6670.

    BIOS version is 6.32.01.38.

    XDC tools is 3.22.01.21

    Thanks,

    Deepain

  • Deepain Nayyar said:
    Is there any way out to print the outputs on console during runtime environment ?

    You need to use RTA (Real Time Analysis) tools to do this.  Or, you could use UIA and System Analyzer.

    Have you seen section "8.6 RTA Tools in CCS" of the SYS/BIOS User's Guide?

    This section explains how to configure your application and use the RTA tools to view real time log data in SYS/BiOS 6.32.

    Steve

  • Hi Steven 

    I am facing a similiar problem. I am using C66xx and including RTDX module gives an error of unsupported with c66x.

    As  i understand RTA (Real Time Analysis) tools further require RTDX to send output to the host from target buffers. 

    Does that mean RTA functionality is not supported on my DSP ?

    Thanx in advance

    Regards

    Rahul Sharma

     

  • Rahul Sharma,

    Which version of BIOS are you using?  Unfortunately, RTDX is no longer supported...

    Another option is to use SysMin.  Please refer to the following thread which is closely related to this discussion:

    http://e2e.ti.com/support/embedded/bios/f/355/t/112423.aspx#398393

    Steve

  • Steven ,

    Sorry for the late reply !!

    I am using SYS/Bios version 06.32.01.38.

    I observe that UIA has na option to show prints in the runtime through JTAG transport and  i also found on profiling that it takes quite less cycles.

    what do u think which would be better to use -SysMin or UIA ?

    regards

    Rahul Sharma

  • Rahul,

    There are a several ways to get the Log output with UIA.

    1. Via ROV

    2. System Analyzer and halting the target

    3. For 66xx, there is a runmode option for UIA that System Analyzer supports (this does not require you halt the target)

    4. You can use a non-JTAG transport (e.g. Ethernet) to get the Log event off during runtime.

    Which version of CCS and UIA do you have? Which method would be most beneficial to you? Are you interesting in SYS/BIOS logging or not? (SYS/BIOS logging enables execution graph in System Analyzer).

    Note: UIA/System Analyzer is for Log data, not System_printf data. As you noted, Log calls have a lower overhead than System_printf calls.

    Todd

  • Todd,

    Thanks for the reply.

    1. I am using CCS version 5.1.1.00031 and UIA version 1.0.3.25.

    2.  I think  runmode option for UIA would be more beneficial.

    Rahul 

  • Rahul,

    First make sure that you have UIA included in your project.

    Next, add the following lines into your .cfg file

    var LoggingSetup = xdc.useModule('ti.uia.sysbios.LoggingSetup');
    LoggingSetup.eventUploadMode = LoggingSetup.UploadMode_JTAGRUNMODE;

    This will create loggers for SYS/BIOS, Load and Main (your code). There are more setting in LoggingSetup (e.g. disable SYS/BIOS logging, size of the buffer for the Load's logger, etc.), but let's get this working first. Remove any LoggerBuf configuration you have.

    Rebuild your app and then load/run it. You can now open Tools->System Analyzer->Live. It should auto-detect that your app is setup for runmode. You probably want to change one setting on this page. Instead of collect for 5 seconds, change it to collect until halted.

    Once you run System Analyzer, you should start getting Log events in the Log view. Please refer to the UIA Getting Started Guide or User Guide for more details about the features in System Analyzer.

    If you want to do stopmode, use UploadMode_JTAGSTOPMODE instead. The records will be read from the target when the target is halted. With the version of CCS, you probably have to close and restart System Analyzer each time you reload you application.

    Todd