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.

About Viewing SYSBIOS Clock Module from ROV

Guru 15520 points
Other Parts Discussed in Thread: SYSBIOS

Hi,

I'm using C6670 and have a question about SYSBIOS.

1.
I set the Timer Id for Clock Module to 7 at SYSBIOS cfg file,
but when I execute the program and check from ROV(RTOS Object View),
the Clock timerId was 0.
I tried other Timer Id but the result was same, it's always 0 in the ROV.

Is this a bug of SYSBIOS?
By the way, my SYSBIOS version is v6.33.06.50

2.
In our system SYSBIOS are running on each core.
In this case can we select same TimerId for Clock Module in each SYSBIOS cfg file?

best regards,
g.f.

  • Hi g.f,

    So you want to use a single timer for bios clock modele among the cores, right ?

    You may be able to find the solution at:


    Actually, I could use a single timer among the cores with the solution described in this thread.

    Hope this helps.

    Best Regards,
    kawada

  • Hi Kawada-san,

    Thank you for the reply and the information.

    Yes, I want to use single timer for bios clock module among the cores.
    I tried to set the single timer and it worked. Thank you.

    By the way, do I need to use clock module or can I disable it?
    SYSBIOS uses system tick which are generated by clock module, so I think it is must.
    Is my opinion correct?

    Do you have any information for my Question 1 which is about ROV?

    best regards,
    g.f.

  • Hi g.f.,

    Clock module is required to generate a tick for SYS/BIOS. I think Clock is basically mandatory in most case. 

    So you are now using the same timer id for Clock. Haven't you still get correct result in ROV ?

    Best Regards,
    kawada 

  • Hi Kawada-san,

    Thank you for the reply and sorry for the delay.

    Yes, I'm using the same timer id for Clock module now.
    I can't get correct result from ROV Clock Module view.
    But in ROV Timer Module view, I get correct result.

    I'm setting timerId=7 now and the result of ROV is as follow:
    ROV Clock Module view -> timerid is 0.
    ROV Timer Module view -> timerid is 7.

    best regards,
    g.f.

  • Hi g.f.,

    I think this is a bug in ROV.
    In Clock.xs, you will find the following script.

    ========================
    function viewInitModule(view, mod)
    {
    var Program = xdc.useModule('xdc.rov.Program');
    var Timer = xdc.useModule('ti.sysbios.hal.Timer');
    var modRaw = Program.scanRawView("ti.sysbios.knl.Clock");

    /* if skipping ticks indicate stale data */
    if (modRaw.modState.numTickSkip) {
    view.ticks = String(mod.ticks) + " (stale data)";
    }
    else {
    view.ticks = String(mod.ticks);
    }

    view.tickSource = Program.$modules['ti.sysbios.knl.Clock'].tickSource;
    view.tickMode = Program.$modules['ti.sysbios.knl.Clock'].tickMode;

    try {
    var timerRawView = Program.scanRawView('ti.sysbios.hal.Timer');
    }
    catch (e) {
    print (e);
    return;
    }

    /* Check each instance */
    for (var i in timerRawView.instStates) {
    if (Number(mod.timer) == Number(timerRawView.instStates[i].$addr)) {
    view.timerHandle = String(timerRawView.instStates[i].pi);
    view.timerId = Number(i);
    }
    }

    view.swiPriority = Program.$modules['ti.sysbios.knl.Clock'].swiPriority;
    view.tickPeriod = Program.$modules['ti.sysbios.knl.Clock'].tickPeriod;
    view.nSkip = mod.numTickSkip;
    }
    ======================== 

    This is a back-end of ROV (Module tab) and the above in red looks like getting the timer id.
    I think this is not correct. This is just getting the index of array holding Timer instance and this is not timer id actually being used in Clock module. I need to Ti's help for further explanation.

    You will find the timer id is being selected in Row tab of Clock module (You will find timerId property in this tab).

    Best Regards,
    kawada 

     

  • Hi Kawada-san,

    Thank you so much for the detail.
    I understood.

    I checked the Row tab of Clock module and it was set appropriately.

    best regards,
    g.f.