- Small-footprint (small as 2KB, automatic scaling)
- Fast execution (sub microsecond context switch)
- Supports all popular processors and tools (see below)
- TraceX system analysis support
- Advanced Technology:
- Preemption-Threshold™
- Event Chaining™
- Performance Metrics
- Execution Profiling
- Run-time and Static Stack Analysis
- Multicore Support (SMP and AMP)
- Downloadable Application Modules
- Memory Protection for Downloadable Application Modules
- Extensive ThreadX ecosystem
- Safety Certifications (DO-178B, FDA510(k), IEC61508, etc)
- Deployed in over 1,000,000,000 devices
- Full Source Code
- Royalty-Free
- A2P
- ARM
- Atmel ARM
- Atmel AVR32
- BlackFin
- CEVA-TeakLite-III
- ColdFire/68K
- Energy Micro EFM32
- Freescale ARM
- Fujitsu FM3
- G-Series
- Hitachi H8/300H
- Infineon XMC-4000
- Leon3
- M-CORE
- MicroBlaze
- Microchip PIC24/dsPIC
- Microchip PIC32
- MIPS
- Nios II
- NXP
- Power Architecture
- Renesas RX
- Renesas SH
- Renesas V8xx
- SHARC
- ST Microelectronics STM32
- StarCore
- StrongARM
- Synopsys ARC
- TI ARM
- TI MSP430
- TMS320C54x
- TMS320C6x
- Win32
- x86/x386
- Xilinx ARM
- XScale
- Xtensa/Diamond
XScale
ThreadX for XScale Highlights
Complete XScale processor support Complete XScale Development Tool Choices - ARM RealView, IAR, Green Hills MULTI, Lauterbach, Metrowerks, MetaWare, EPI, and GNU Reasonable pricing No Royalties Complete ANSI C source code Easy to use and powerful services Responsive Technical Support Unlimited Threads, Queues, Event Flags, Timers, Semaphores, Mutexes, Block Pools, and Byte Pools Flexible memory usage Timeout available on all thread suspension Advanced preemption-threshold technique Low-overhead Application Timers Size scales automatically Picokernel architecture for size and speed Small footprint (as low as 4 Kbytes)
Improve Your XScale Development
Let our extensive experience with the XScale family of microprocessors help your product development. ThreadX, our high-performance real-time kernel, helps improve your product's quality and its time-to-market. In addition, using ThreadX makes it easier to enhance your product in the future.
XScale Optimizations
ThreadX optimizes context switching on the XScale. When context switching occurs inside of a ThreadX service call, only the registers preserved across function calls are saved as part of the thread's context, i.e. registers v1-v7, fp, and lr.
A similar technique is used in interrupt handling. On the front end of interrupt service routines, only the compiler's scratch registers are saved initially (registers a1-a4). The full register set is saved only if thread preemption is required.
Easy Mixed-Mode Programming
ThreadX fully supports the 16-bit Thumb extensions of the ARM architecture. Using ThreadX, developers can freely build their applications in Thumb and/or traditional 32-bit mode.
Flexible FIQ Interrupt Handling
By default, ThreadX leaves FIQ interrupts alone. This results in zero FIQ interrupt latency. However, in this configuration application FIQ processing is not allowed to call ThreadX services. ThreadX can also be configured to provide complete FIQ-support, which provides the application FIQ handler access to ThreadX services.
Nested Interrupt Handling
ThreadX can also be configured to support nested interrupt handling - for both IRQ and FIQ interrupt sources.
Evaluation Board Support
ThreadX demonstrations are available for all major evaluation platforms.
Development Tool Choices
ThreadX is integrated with all the major ARM development tools, including ARM RealView, IAR, GNU, Lauterbach, Metrowerks, MetaWare, EPI, and Green Hill's MULTI. Additional ThreadX-aware debugging is available with ARM's RealView, IAR's C-SPY, Lauterbach's TRACE32, and Green Hills MULTI. Please visit the following links for more information on ThreadX-aware integration with these products:
ARM's RealView for ThreadX
IAR's C-SPY for ThreadX
Green Hills MULTI for ThreadX
Lauterbach's TRACE32 for ThreadX

