Home

Basic timing parameters for KADAK's AMX Multitasking Kernel are listed below. All timing figures are for guidance only and are not to be interpreted as product specifications.


  Measurement Interpretation

The task switch time is the time taken by AMX to suspend one task and resume execution within another. The measurement is made as follows. A high priority task waits for a signal from a low priority task. The low priority task runs, generates the signal and is immediately blocked because of the switch back to the high priority task. The task switch time is derived by averaging 100 such cycles.

Interrupt latency is the time taken by the processor to respond to an interrupt request from a device seeking service. The time is measured from the instant the external interrupt signal is generated through to the point at which the processor has decoded the request and branched to a software handler.

The worst case interrupt latency occurs when the application disables interrupts, thereby inhibiting the processor from responding to an interrupt. The interrupt latency figures quoted are the worst case scenarios possible within AMX. In all instances, the worst case occurs in a path through AMX with a very low probability of execution. Despite this, we publish it!

Handler latency time is the time taken by the AMX Interrupt Supervisor to reach an application interrupt handler coded in C. This standard C function is free to use a variety of AMX services including semaphore signalling and message passing. For RISC processors like the PowerPC and ARM which do not automatically identify each interrupt source, the measurement includes the time taken by AMX to call an application dependent interrupt identification procedure.


  Additional Materials

Be sure to read the comprehensive timing booklet. It provides an introduction to the timing issues which you will encounter using any RTOS. It discusses some of the factors which make timing measurement so difficult and helps to explain why instruction counts and cycle counts can rarely be used to measure execution times.
 
You can also download the AMX Timing Guide. Although it duplicates some of the information in the timing booklet, it also provides specific timing metrics for frequently occurring AMX operations.


  Basic AMX Timing Parameters

 
 
Kernel
Task
Switch
(µs)
Interrupt
Latency
(µs)
Handler
Latency
(µs)
 
Measured
Using
AMX for
ARM
6.0   3.0   3.0   ARM966E
at 80 MHz
AMX for
Thumb
6.4   3.5   3.0   ARM966E
at 80 MHz
AMX for
PowerPC
0.8   0  
(Note 1)  
2.2   IBM
PPC405GP
at 200 MHz
AMX for
ColdFire
0.5   3.4   1.3   Motorola
MCF5407
at 150 MHz
AMX
68000
26.6   19.2   11.9   Motorola
MC68EC040
at 25 MHz
AMX for
MIPS32
4.4   21.3   4.8   MIPS 4Kc
core
at 80 MHz
AMX
386/ET
1.4   2.2   1.4   Intel
Pentium
at 100 MHz
AMX 86 4.4   5.4   3.8   VAutomation
Turbo186
at 24 MHz
Note 1: AMX for PowerPC never disables the external interrupt system. Consequently, AMX introduces no additional latency beyond that imposed by the processor itself.


  Available Timing Data Sheets

An AMX Timing Guide is included with each AMX Reference Manual. The guide defines the AMX application task scenarios which were used to measure specific features of AMX such as clock service, task synchronization and message passing.

For each target processor for which measurements are available, the AMX Timing Guide provides a Timing Data Sheet. The data sheets define the processor, the memory configuration, the cache conditions and the C compiler features used. The data sheets summarize the timing results and provide additional explanatory notes when deemed appropriate.

Timing data sheets are available for each of the processors listed in the following tables. KADAK regrets that it cannot provide timing data for every processor operating at all possible frequencies with each of the supported toolsets.

A copy of the AMX Timing Guide containing these timing metrics is available for downloading.


Available AMX ARM / Thumb Timing Data
20 MHz   ARM7TDMI   ARM Development Board
(ARM7TDMI Version)
32 MHz AT91M42800A Atmel AT91EB42 Evaluation Board
80 MHz ARM966E ARM Integrator/AP Board
600 MHz XScale 80321 Intel IQ80321 Evaluation Platform
Available AMX PowerPC Timing Data
66 MHz   PPC403GCX   IBM 403 EVB Evaluation Board
66 MHz MPC603 Motorola Ultra 603 motherboard platform
200 MHz PPC405GP IBM PPC405GP Reference Board
Available AMX ColdFire Timing Data
54 MHz   MCF5206e   Motorola M5206EC3 board (Cadre III)
132 MHz MCF5249 Motorola M5249C3 board
66 MHz MCF5272 Motorola M5272C3 board
90 MHz MCF5307 Motorola SBC5307 board (Arnewsh)
150 MHz MCF5407 Motorola M5407C3 board
Available AMX 68000 Timing Data
25 MHz   MC68EC040   Motorola MC68EC0x0 Integrated Development Platform
16 MHz MC68332 GreenSpring Computer's Platform332
25 MHz MC68360 Motorola M68360QUADS Application Development System
Available AMX MIPS32 Timing Data
80 MHz   MIPS 4Kc   MIPS Malta 4Kc Development Board
Available AMX 386/ET Timing Data
100 MHz   Pentium   Commercial PC
50 MHz Intel486 Commercial PC
Available AMX 86 Timing Data
25 MHz   Intel486 SX   Commercial PC
40 MHz AMD Am186ES AMD Net186 Demonstration Board
24 MHz VA Turbo186 VAutomation iCON186 Evaluation Board


Copyright © 1996-2013







































RTOS
TCP/IP
File System
License
Manuals
Demos
Support
White Papers
Tools
Alliances
Dealers
Site Map
Company
Showcase
Home
FAQ
Get Info