- Industry Leader
- Over 5.4 Billion Deployments
- 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
- Supports most popular tools
- ARM7, ARM9, ARM11
- Cortex-M, Cortex-R, Cortex-A
- Cortex-Axx 64-bit
- Analog Devices
- Blackfin BF5xx, BF6xx, BF7xx
- ARM (LPC, i.MX, Kinetis)
- MIPS32 4Kx, 24Kx, 34Kx, 1004K
- microAptiv, interAptiv, proAptiv
- ARM (Cyclone SOC, Arria 10 SOC)
- ARM (SAM)
- ARM (Synergy, RZ)
- Silicon Labs
- ARC 600, 700
- ARC EM, ARC HS
- Texas Instruments
- ARM (Tiva-C, Sitara, OMAP)
- ARM (Zynq)
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.
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.
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.
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.
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.
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 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.