Programmable interval timer


In computing and in embedded systems, a programmable interval timer is a counter that generates an output signal when it reaches a programmed count. The output signal may trigger an interrupt.

Common features

PITs may be one-shot or periodic. One-shot timers will signal only once and then stop counting. Periodic timers signal every time they reach a specific value and then restart, thus producing a signal at periodic intervals. Periodic timers are typically used to invoke activities that must be performed at regular intervals.
Counters are usually programmed with fixed intervals that determine how long the counter will count before it signals. The interval determines how long the counter will count before it will output a signal.

IBM PC compatible

The Intel 8253 PIT was the original timing device used on IBM PC compatibles. It used a 1.193182 MHz clock signal and contains three timers. Timer 0 is used by Microsoft Windows and Linux as a system timer, timer 1 was historically used for dynamic random access memory refreshes and timer 2 for the PC speaker.
The LAPIC in newer Intel systems offers a higher-resolution timer. This is used in preference to the PIT timer in Linux kernels starting with 2.6.18.