- 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)
The Univers Debugger for A2P
Introduction to the Univers Debugger for ThreadXAdveda “Univers” The ThreadX RTOSystem application simulation. The ThreadX RTOSystem can be simulated and debugged in Adveda’s united software and hardware environment “Univers”. All information for studying a full ThreadX RTOSystem application is available and accessible by using features offered by Adveda’s Univers. A lot of different breakpoint types can be set on all registers, every memory location and variable in each thread and/or function. From the whole application the cycle accurate code flow is registered and the numbers of executions of each code memory location and/or subroutine are shown (Code-coverage feature.) ThreadX applications of different processor-types like A2P, Cortex (ARM7, 9, 11) and others are available. Each ThreadX RTOSystem application can be connected to peripherals and/or other processor simulators which all are running simultaneously. Even multiple ThreadX RTOSystem applications with different speeds can be simulated simultaneously in one single environment. Together with the ThreadX also applications using FileX, Netx and USBX can be simulated.
The Thread List TabThis is arguably the single most important window of the RTOS plugin.
This window shows a list of all threads created by the current application (by calls to tx_thread_create) and some items pertaining to their current state. The currently active thread is indicated by an arrow in the first column (and typically by a state of RUNNING in the State column). The order of the threads is that of the _tx_thread_created_ptr.
You can examine a particular thread by double-clicking on the corresponding row in the window. All debugger windows (Watch, Locals, Register, Call Stack, Source, Diassembly etc) will then show the state of the program from the point of view of the thread in question. A thread selected in this way is indicated in the Thread window by a different color (for the moment, a subdued blue color).
The last row of the Thread window is always NO TASK. Double-clicking on this row makes the debugger show the state of the program as it currently is (that is, as it would be shown without an RTOS plugin), in effect always following the active task.
Note that if a task has been selected by double-clicking, the debugger will show the state of that particular task until another task (or NO TASK) is selected, even if execution is performed by or in another task. For example, if task A is currently active (RUNNING) and you double-click on task B, which is READY, you will see information about the suspended task B. If you now perform a single-step by pressing F10, the active task (A) will perform a single-step, but since you are focused on task B, not much will actually visibly change.
The disassembly window presents a detailed view of the various jumps in the code
The profile view window shows a graphical representation of the accesses to various memory locations (address on the horizontal axis, number of cycles on the vertical axis.) It allows for quick identification of code that is not used, or areas in memory where high speed memory will improve overall performance of the application.
The profile tabs window shows information per function, the function's location in memory, function size, how many times the function has been called and how many CPU cycles have been spent in a particular function, with an overall overview in percentages.
Inspector WindowsThe seven other windows display RTOS status information of various types. These windows are formatted but passive displays of various internal RTOS data structures. Timers