threadx Snapshot
  • Industry Leader
  • Over 5.4 Billion Deployments
  • Small-footprint
  • Fast, deterministic execution
  • Simple, easy-to-use
  • Advanced technology
  • Multicore support (AMP & SMP)
  • Memory Protection via ThreadX Modules
  • Fastest Time-To-Market
  • Royalty Free
  • Full, highest-quality source code
  • Pre-certified by TUV and UL to IEC 61508 SIL 4, IEC 62304 Class C, ISO 26262 ASIL D, UL/IEC 60730, UL/IEC 60335, UL 1998, and EN 50128 SW-SIL 4
  • MISRA-C:2004 and MISRA C:2012 Compliant
  • Supports most popular architectures
    (see below)
  • Supports most popular tools
ThreadX Architecture Support
  • ARM
    • ARM7, ARM9, ARM11
    • Cortex-M, Cortex-R, Cortex-A
    • Cortex-Axx 64-bit
  • AndesCore
  • Analog Devices
    • Blackfin BF5xx, BF6xx, BF7xx
    • SHARC
  • Cadence
    • Xtensa
    • Diamond
  • CEVA
    • TeakLite-III
  • EnSilica
    • eSi-RISC
  • NXP
    • ARM (LPC, i.MX, Kinetis)
    • 68K
    • Coldfire
    • PowerPC
  • Imagination
    • MIPS32 4Kx, 24Kx, 34Kx, 1004K
    • microAptiv, interAptiv, proAptiv
    • M-Class
  • Intel
    • ARM (Cyclone SOC, Arria 10 SOC)
    • NIOSII
    • x86PM
  • Microchip
    • ARM (SAM)
    • AVR32
    • PIC24
    • PIC32
  • Renesas
    • ARM (Synergy, RZ)
    • H8/300H
    • RX
    • SH
    • V850
  • Silicon Labs
    • EFM32
  • ST
    • STM32
  • Synopsys
    • ARC 600, 700
    • ARC EM, ARC HS
  • Texas Instruments
    • ARM (Tiva-C, Sitara, OMAP)
    • C5xx
    • C6xx
  • Xilinx
    • ARM (Zynq)
    • MicroBlaze
    • PowerPC

Lauterbach

Lauterbach's TRACE32 Debugging for ThreadX

RTOS Debugger for ThreadX

  • Real time, non-intrusive display of ThreadX system resources
  • ThreadX specific display of analyzer listing
  • Statistic evaluation and graphic display of thread run times
  • Thread related evaluation of function run times
  • Statistic evaluation and graphic display of thread states
  • Thread stack coverage
  • Thread Context display
  • PRACTICE functions for OS data

The TRACE32 System includes a configurable multitask debugger to provide symbolic debugging in real time operating systems. Our software package contains a ready-to-run configuration for the ThreadX Real Time Kernel from Express Logic.

In close cooperation with Express Logic, we built a high sophisticated ThreadX awareness, which enables you to do a most effective debugging with the TRACE32 systems on targets running ThreadX.

Multitask Debugging on TRACE32 with ThreadX

Real time, non-intrusive display of ThreadX system resources

The TRACE32 multitask debugger for ThreadX provides display functions for all ThreadX resources. The system resources threads, application timers, queues, semaphores, events, block pools and byte pools can be displayed. In addition, by using the emulators dual-port memory, the display of all these regions can be viewed non-intrusively in real time. The tables are updated permanently (“On The Fly”), without affecting the application at all.

Thread Status list window and detailed window of one specific thread

Thread Status list window and detailed window of one specific thread:

Detailed window of a queue and a semaphore

Detailed window of a queue and a semaphore

ThreadX specific display of analyzer listing

The data recorded in the analyzer can be displayed and interpreted specific to the operating system. The thread switches can be displayed symbolically.

Analyzer listing, display of task switches and source lines

Analyzer listing, display of task switches and source lines

Statistic evaluation and graphic display of thread run times

The analyzer can calculate statistic tables of thread run times and thread switches. A graphical diagram shows which thread was active at a specific time, giving a clear view of the behaviour of the system.

Statistics and flow of tasks

Statistics and flow of tasks

Thread related evaluation of function run times

The statistic and graphic evaluation of function calls and function run times can be done dependant to the actual running thread. This is necessary, if different threads call one single function at the same time, or if a thread switch occurs in between the function.

Statistics and flow of thread dependent function run times

Statistics and flow of thread dependent funtion run times

Statistic evaluation and graphic display of thread states

These tabular and graphical analyses of the status of threads show the various states (i.e. running, ready, waiting, suspended and undefined) and times each thread spent in each state. A graphical view of the data can help to highlight prioritisation problems, critical paths etc.

Statistics and flow of thread states

Statistics and flow of thread states

Thread Stack Coverage

In real time systems it is quite important to know, how much stack space each thread consumes. For this purpose a special window shows the current and the maximum usage of each seperate thread.

Thread stack coverage window

Thread stack coverage window

Thread Context Display

The TRACE32 Multitask debugger provides an easy way to to switch the current displayed context to another thread. Normally all register related windows (e.g. listing at current PC, local variables or function call stack) are displayed related to the actual context (i.e. current executed thread). You can switch to the context of another thread to see all this information at the time this thread was scheduled.

PRACTICE functions for OS data

The support includes extended PRACTICE functions for ThreadX specific data. E.g. the function “TASK.CONFIG (magic)” returns the address of the so called magic value, which corresponds to the id of the current executed thread.

ThreadX related pull-down menu

Because the menu bar of the TRACE32 user interface can be fully customized, you can create a new pull down menu, including operating system specific commands. We deliver ThreadX support with an example for such specific menues, which provides fast access to the ThreadX features.

TRACE32 with ThreadX menu

TRACE32 with ThreadX menu