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/AM3357: Timestamp issue

Part Number: AM3357
Other Parts Discussed in Thread: SYSBIOS,

Tool/software: TI-RTOS

Hi all,

My customer seems to have a difference in system time to get with Timestamp_get64() function, with or without setting as below.

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

I'd like to know why this function's acquisition time differs.

My customer's environment as follows:

  • device : am3357
  • CCS6.2.0.00050
  • SYSBIOS 6.35.4.50

Best regards,

Sasaki

  • The RTOS team have been notified. They will respond here.
  • Hi,

    I am not sure what issue you get for the SYSBIOS timestamp? It is not loaded with
    var LoggingSetup = xdc.useModule('ti.uia.sysbios.LoggingSetup')
    but with: var Timestamp = xdc.useModule('xdc.runtime.Timestamp');
    There is an E2E for A15 about timestamp usage: e2e.ti.com/.../694962 This also applies to A8.

    "I'd like to know why this function's acquisition time differs."==========> Can you elaborate? UIA timestamp differs from what? How different?

    Regards, Eric
  • Hi Eric-san,

    Thank you for your reply.

    My customers are using timestamps to get system time after boot.

    That is, after booting, the customer executes the following code and confirms the t1 value.

    t1 = Timestamp_get32();

    The customer says that the acquisition time of this "t1" will change with the presence or absence of the following code.

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

    When the customer executes the following code, the time is two to three times longer than when the customer is not executing.

    Best regards,

    Sasaki

  • Hi,

    Can you clarify if the test is loaded through CCS (possible halt at main , then manually start) or some bootable media? Where in the code the timestamp is taken? Like the beginning of the main?

    Regards, Eric
  • Hi Eric-san,

    Thank you for your reply.

    lding said:


    Can you clarify if the test is loaded through CCS (possible halt at main , then manually start) or some bootable media?

    My customer doesn't load programs  with CCS and tests it by writing programs in ROM.

    lding said:


    Where in the code the timestamp is taken? Like the beginning of the main?

    My customer is getting a timestamp inside the function that gets the system time of the device.
    This function is called in various places when necessary.

    By the way, does LoggingSetup initialize ticktime? If LoggingSetup is initializing, I think that is a problem.

    Best regards,

    Sasaki

  • Hi,

    Let me check the RTOS team for help.

    Regards, Eric
  • Sasaki,

    Does the application appear to run slower or are the timestamp values completely incorrect/nonsensical?

    From what I understand from the documentation, UIA LoggingSetup brings in a lot of functionality that is done during real-time execution.
  • Hi Williams-san,

    The application does not appear to run slower.

    That is when my customer does or does not perform Logging Setup,
    only the time stamp acquisition value changes.
    The difference is about 2 to 3 times.

    They executes the following code and confirms the t1 value.

    t1 = Timestamp_get64();

    Best regards,
    Sasaki
  • Sasaki,

    Can you clarify. Are you saying that the very first value returned by Timestamp_get64() is 2 to 3 time larger when using Logging Setup?

    Can you provide some timestamps from each use case?

    Thanks,
    Derrick
  • S. Sasaki,

    Did this get resolved?

    Todd
  • Hi Derrick-san,

    Thank you for your reply.

    I confirmed with my customer.

    Derrick Williams said:


    Can you clarify. Are you saying that the very first value returned by Timestamp_get64() is 2 to 3 time larger when using Logging Setup?

    Can you provide some timestamps from each use case?

    If the customer does not use Logging Setup the value will be less than half.

    When my customer is not using Logging Setup :0000086485.255 ms
    When my customer uses Logging Setup : 0000038098.566 ms

    Do you know something from these?

    Best regards,

    Sasaki

  • Hi Derrick-san,

    Could you please tell me about the following?

    Derrick Williams said:

    From what I understand from the documentation, UIA LoggingSetup brings in a lot of functionality that is done during real-time execution.

    What kind of function is "a lot of functionality that is done during real-time execution" above?

    Please let me know if there is any material.

    Best regards,

    Sasaki

  • Sasaki,

    The numerous functionalities the UIA pulls in are documented here.

    From what I can tell:

    With Logging Setup: It appears your customer's first call to Timestamp_get64() returns ~38,000.
    Without Logging Setup: It appears your customer's first call to Timestamp_get64() returns ~86,000.

    It could be possible that as part of the Logging Setup process, it re-configures the timestamp and it is being reset to 0. I therefore imply there is a difference of (86,000-38,000) 48,000 from when 'xdc.runtime.Timestamp' configures the timestamp to when 'ti.uia.sysbios.LoggingSetup' reconfigures it. I can only speculate because I only know what I can glean from the UIA documentation.

    I will consult with another TI employee who may know more.

    Derrick

  • Hi Derrick-san,

    Thank you for your support.
    I will tell this information to my customers.

    My customer wants to measure the activation time of the device.
    Please let me know if there is any other idea for measuring this time.

    Best regards,
    Sasaki
  • Sasaki,

    A measurement of activation time of the device will differ due to run-time initialization done by UIA before main().

    Is UIA only being used in a debug build?

    Derrick
  • Hi derric-san

    Thank you for your support.
    I could not recreate the customer's problem with EVM.
    I will investigate a little more, so please let this thread close once.

    Best regards,
    Sasaki