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.

DSP/BIOS context switching



Hi,

I have a customer question that I would appreciate any help with:

During DSP comparison between TI DSP and Freescale, one question was raised.  On the MSC8156, there's a tool that provides error information when the processor is stopped/dead due to wrong memory access etc.  It provide the PC value, memory access value, .etc at the point of certain thread's dead/stop.

In TCI6482 using CCS v3.3, for example,

1)Is there any DSP/BIOS API that provides PC(program counter) and other information during a context switch (of a thread)?

2)Per thread (i.e., task, SWI, HWI), where the task context(especially the PC value) is saved?

3)Is there any way to use BIOS analysis tool/API to get context content when a certain task is dead?.

Thanks,

Zihong

  • Zihong,

    BIOS provides a "Task Hooks" functionality that allows users to attach functions to various task-related events, including task context switches.  A single set of hook functions can be specified by configuring the task module, and additional hook functions can be specified by configuring the hook module. 

    In addition, BIOS provides Real Time Analysis (RTA) functionality, which includes support in the APIs as well as host-side tooling.  This is applicable to your question in a couple ways:

    1) A developer could use the LOG function to capture task context information in real time with minimal extra overhead so that it can be examined later, either in a memory buffer or directly from the RTA tooling running on a PC host.

    2) RTA tools can be used to monitor thread execution and display that information on the PC host.  This would not only indicate when a task has "died", but also give good visibility on the events that led up to that failure.

     

  • Thank you David!

    Zhihong