Programmable Interval Timer
aus Wikipedia, der freien Enzyklopädie
Der Programmable Interval Timer (PIT) war ursprünglich ein spezieller Baustein (Chip) im IBM-PC, der für die zeitliche Steuerung von Prozessen sorgte. Die am häufigsten verwendeten Timer-Chips waren Typ 8253 und 8254 von Intel mit drei 16-Bit breiten Zählern. Der PIT wird mit einem eigenen Quarz im Takt von 1,193182 MHz betrieben, er ist also prozessorunabhängig. In heutigen PCs ist die Funktionalität im Chipsatz des Mainboards untergebracht.
Der PIT wird für
- Periodische Unterbrechungen auf IRQ0 (Kanal 0),
- Speicher-Refresh (Kanal 1),
- als Frequenzgenerator für den PC-Speaker (Kanal 2) und als
- Fail-Safe-Timer (NMI)
genützt. Für diese Funktionen existieren die Ports 40h bis 43h (bzw. 64 bis 67 dezimal), über welche der PIT programmiert werden kann. Er kann in verschiedenen Betriebsarten arbeiten. Dabei kann grob zwischen sich immer wiederholenden und einmaligen Abläufen unterschieden werden. Einmalige Abläufe werden in der Praxis jedoch nur sehr selten verwendet und sind nur Vollständigkeitshalber aufgeführt.
Im Standard-Modus zählt der Timer von 65535 auf 0 hinunter und fängt beim folgenden Überlauf wieder von vorne an. Bei jedem solchen Überlauf sendet er ein Signal, den Timer-Interrupt (IRQ0), an den Prozessor. Wenn man die Taktfrequenz durch die Takte bis zum erneuten Überlauf dividiert erhält man die Frequenz, mit der der IRQ0 erzeugt wird: 1193182 Hz / 65536 = 18,2065 Hz. Es kommt auf diese Art ein Intervall von ca. 55ms zwischen den Aufrufen des IRQ0 zustande.
Allgemein gibt es folgende Bausteine für die zeitliche Steuerung von Prozessen, zu jenen auch der PIT gehört:
- Real Time Clock (RTC)
- Programmable Interval Timer (PIT)
- Power Management Timer (PMTMR)
- Time Stamp Counter (TSC)
- APIC Timer (LAPIC)
- High Precision Event Timer (HPET)