Real-Time Priority System Response Times
Many platforms have different response times, depending on factors such as microprocessor type, clock speed, bus speed, and so on. Aside from hardware performance, the IST start times vary from one interrupt event to the next due to unpredictable factors, such as the state of the processor cache and whether the IST happens to be the currently running thread.
If your platform is not meeting your real-time performance requirements, you have the following options:
- Adjust the priorities of the system's ISTs. Proper tuning of ISTs can have a large impact on the overall performance of any real time system.
- Put more processing into the ISR. This is discouraged because when an ISR is running, no other threads are scheduled, and lower priority interrupts are masked. You might experience poor device performance or missed input if an ISR takes too long.
- Add buffering hardware that can store data relevant to several interrupt events and modify the IST so that it gathers the data generated by multiple interrupt events from the buffering hardware. This enables the IST to process interrupts in batches, resulting in increased real-time performance.
- Use a higher clock frequency on the microprocessor, on the data bus, or on both.
- Investigate your ISR and IST latency with ILTiming.exe.
Peripherals that connect to a platform through a serial port can do so at the maximum speed of the serial port. Most serial ports are buffered internally by 16550-class universal asynchronous receiver-transmitters (UARTs) capable of relaying 115 kilobits per second. Consult the manufacturer for specific information. PC Card socket speeds vary also; again, the authoritative source of information is the manufacturer.
See Also
Real-Time Priority System | Real-Time Priority System Levels
Last updated on Tuesday, May 18, 2004
© 1992-2003 Microsoft Corporation. All rights reserved.