Interruptverarbeitung

Ähnliche Dokumente
Teil 5: Interrupt. Studiengang Technische Informatik (TI) Prof. Dr.-Ing. Alfred Rożek. nur für Lehrzwecke Vervielfältigung nicht gestattet

Übung zu Betriebssystembau (Ü BS)

Betriebssystembau. 3. Übung. Michael Engel Arbeitsgruppe Eingebettete Systemsoftware. Lehrstuhl für Informatik 12 TU Dortmund

Teil 6: PIC Studiengang Technische Informatik (TI) Prof. Dr.-Ing. Alfred Rożek. nur für Lehrzwecke Vervielfältigung nicht gestattet

2

Rainbow-OS Architekturseminar Thema: Interrupt-Controller

Interrupt. Externe Interrupts 0 und 1

Datenübertragung per Direct Memory Access (DMA)

Mikrocomputertechnik. 6. Exceptionhandling ( Ausnahmebearbeitung)

Vorlesung "Struktur von Mikrorechnern" (SMR)

Lehrveranstaltung: PR Rechnerorganisation Blatt 8. Thomas Aichholzer

Konzepte von Betriebssystem- Komponenten Ausnahme- / Unterbrechungsbehandlung

Mikrocomputertechnik

PIC16 Programmierung in HITECH-C

Teil VIII Von Neumann Rechner 1

U5-2 Register beim AVR-µC

Rechnerarchitektur und Betriebssysteme (CS201): Frühe Betriebssysteme, geschützte CPU-Befehle, CPU-Modus

8. Massenspeicher und Dateisysteme

GdI2 - Systemnahe Programmierung in C Übungen Jürgen Kleinöder Universität Erlangen-Nürnberg Informatik 4, 2006 U4.fm

Ein- / Ausgabe- Ports

Installationsanleitung für das CHIPDRIVE keyboard

11. Die PC-Schnittstelle

E Mikrocontroller-Programmierung

Übung zu Betriebssysteme

Vorlesung 5: Interrupts

Unterprogramme mittels Stack (Forts.)

Hardwareaufbau der Mikrocontroller der 51er -Familie

Aufgabe 2 - Erweiterung um PIC und Interrupts

Betriebssysteme 1. Thomas Kolarz. Folie 1

2.1 Atmega-Peripherie/Interrupts

Geräteentwurf mit Mikroprozessoren 1

Betriebssystembau. 4. Übung. Michael Engel Arbeitsgruppe Eingebettete Systemsoftware. Lehrstuhl für Informatik 12 TU Dortmund

Hardwareaufbau der Mikrocontroller der 51er -Familie

Teil 1: Prozessorstrukturen

Just-In-Time-Compiler (2)

Aufgabe 2 - Erweiterung um PIC und Interrupts

Intel x86 Bootstrapping

Just-In-Time-Compiler (2)


Hardware-Komponenten. DI (FH) Levent Öztürk

5. Unterbrechungen 5.1 Sinn und Zweck von Interrupts:

Betriebssysteme Kap B: Hardwaremechanismen

Kapitel 18. Externe Komponenten

Stack, Stackpointer, Unterprogramm HP: 0 * 1 * 2 * 3 CAL UP1 4 * 5 * 6 CAL UP2 7 *... UP1: 30 * 33 RET UP2: 40 * 41 CAL UP1 42 * 43 RET

E. Fehlermeldungen von PC-Bibliotheken

Parallele Datenübertragung mit Hilfe von WinSim85. über einen reellen PC Port

Microcontroller Selbststudium Semesterwoche 9

Inhalt. Übungen zu Systemnahe Programmierung in C (SPiC) Implementierung von Interruptbehandlungen. Interrupts

Atmega Interrupts. Rachid Abdallah Gruppe 3 Betreuer : Benjamin Bös

Hardware & Kernel-Module

Sicheres C Programmieren in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester

Mikrocomputertechnik

Ein- und Ausgabegeräte

80C535-Mikrocontroller-Board im Streichholzschachtelformat

Betriebssysteme. Tutorium 2. Philipp Kirchhofer

EXF2 TF2 IEX6 IEX5 IEX4 IEX3 IEX2 IADC 0C0H T2PS I3FR I2FR T2R1 T2R0 T2CM T2I1 T2I0 0C8H. AFH AEH ADH ACH ABH AAH A9H A8H Bitdresse

Zusammenfassung der Assemblerbefehle des 8051

DHBW Stuttgart Mikrocomputertechnik Labor KEIL Entwicklungsumgebung. Projektstruktur

Grundlagen Rechnerarchitektur und Betriebssysteme

4.0 Der Atmel AT89LPx052 Mikrocontroller

ISA96 HD-Card. Technische Beschreibung

Betriebssysteme (BS) Unterbrechungen. Überblick: Vorlesungen. - Hardware - Überblick. Sinn und Zweck von Unterbrechungen. Anwendung(en) Hardware

Hardware und Gerätetreiber

EMC: Parallel-I/O Folie: 2 Prof. Dr.-Ing. Alfred Rozek TFH Berlin

PC-Komponenten. Die Bestandteile eines Computers

Arithmetische und Logische Einheit (ALU)

Mikroprozessortechnik Grundlagen 1

Busse. Dr.-Ing. Volkmar Sieh WS 2005/2006. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg

Busse. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009

Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download

U5 Fortgeschrittene AVR-Programmierung

Transkript:

Interruptverarbeitung Ein Interruptaufruf unterbricht die gerade ablaufende Befehlsfolge in der Weise, daß nach Beendigung des laufenden Befehls nicht der nächste Befehl des Hauptprogramms ausgeführt, sondern eine ISR (Service-Routine) aufgerufen wird. Als Interruptquellen sind möglich: Externe (Hardware-) Interrupts:» Nicht maskierbare (NMI) dienen zur Mitteilung von Katastrophenmeldungen (z.b. Netzausfall, Speicherparitätsfehler etc.). Sie haben höhere Priorität als die maskierbaren Interrupts.» Bei den maskierbaren Interrupts INTR (Interrupt Request) ist meist ein PIC- Baustein (Programmable-Controller), z.b. 8259A angeschlossen, der seinerseits z.b. mit 8 Interruptquellen (externer Geräte) verbunden ist. Mikro-Computer Folie: 1 Prof. Dr.-Ing. Alfred Rozek TFH Berlin Interruptverarbeitung SW-Interrupt (Befehle, auch interner Interrupt) INT21 sind synchron zur Programmausführung INT3 hat eine Sonderstellung, da keine INT-Nr. folgt HW-Interrupt (Quelle: Peripherie) asynchron zur Programmausführung NMI (Non Maskable Interrupt) führt zu einem INT2 und tritt z.b. auf» bei einem Paritätsfehler im Speicher oder» bei einer fehlerhaften Busarbitrierung IRQ (Request)» hierbei handelt es sich um maskierbare Interrupts Exceptions (Quelle: Prozessor selbst) Auswirkungen wie bei SW-Interrupt» z.b. Division durch Null oder» ungültiger OP-Code (0D6H oder 0F1H); kein Co-Prozessor vorhanden Mikro-Computer Folie: 2 Prof. Dr.-Ing. Alfred Rozek Berlin TFH

UP contra ISR HP UP HP ISR1 ISR2 ISR3 CALL IRQ RET IRET IRET IRET HP: UP: CALL: RET Hauptprogramm Unterprogramm Unterprogrammaufruf Return from Subroutine ISR: IRQ: IRET Service-Routine Interrupt Request Return from Interrupt Mikro-Computer Folie: 3 Prof. Dr.-Ing. Alfred Rozek TFH Berlin INTERRUPT-Verfahren Nested Interrupt NMI INTR 0 INTR 1 INTR 2 INTR 3 INTR 4 INTR 5 INTR 6 INTR 7 HP Daisy Chain Peripherie Peripherie Peripherie CPU Abhängigkeit von Sammelleitung (geographische Lage) Mikro-Computer Folie: 4 Prof. Dr.-Ing. Alfred Rozek TFH Berlin

Interne Interruptverarbeitung (CPU: 8086) laufender Befehl wird beendet Interner INT? NMI? INTR? TF=1? IRQ IF=1? INTA-Zyklus Einzelschrittverarbeitung PUSH Flags Lösche IF und TF PUSH CS und IP ISR aufrufen ISR POP IP und CS POP Flags nächsten Befehl ausführen Mikro-Computer Folie: 5 Prof. Dr.-Ing. Alfred Rozek TFH Berlin Interruptverarbeitung (CPU: 8086) nichtmaskierbarer Interrupt NMI 17 Logik INT Typ Befehl maskierbare externe Interrupts IR0 IR1 IR2 IR3 IR4 IR5 IR6 IR7 INTR 18 INTO Befehl DIV Fehler INT4 INT0 PIC 8259A Einzelschritt (TF=1) INT1 Interruptquellen 8086-CPU Datenbus Mikro-Computer Folie: 6 Prof. Dr.-Ing. Alfred Rozek TFH Berlin

Kaskadierung von Controllern CPU 80x86 INT Vcc INTA Controller SP/EN 8259A A0 CS CAS 0..2 Master-PIC IRQ 0 IRQ 1 IRQ 3 IRQ 4 IRQ 5 IRQ 6 IRQ 7 IRQ 2 Controller NMI 3 GND SP/EN 8259A A0 CS CAS 0..2 Slave-PIC IRQ 8 IRQ 9 IRQ 10 IRQ 11 IRQ 12 IRQ 13 IRQ 14 IRQ 15 Mikro-Computer Folie: 7 Prof. Dr.-Ing. Alfred Rozek TFH Berlin Typische Interruptverteilung in einem PC-AT (Advanced Technology) Kanal Interrupt Anwendungen (bezogen auf AT-Technik) NMI 02H Nicht maskierbarer Interrupt (Parität, Fehler auf Erweiterungskarten, Speicherauffrischung) IRQ 0 08H System-Zeitgeber (Kanal 0 des Timers 8253/54) IRQ 1 09H Tastatur IRQ 2 0AH Kaskadierung mit Interrupt 9 (vom Slave PIC) IRQ 3 0BH COM Port 2 IRQ 4 0CH COM Port 1 IRQ 5 0DH Paralleler Drucker LPT 2 (auch: Standard-Belegung durch Soundkarte (SB-Pro kompatibel)) IRQ 6 0EH Diskettenlaufwerks-Controller IRQ 7 0FH Paralleler Drucker LPT 1 IRQ 8 70H Echtzeituhr IRQ 9 71H Redirection zu IRQ 2 (ein IRQ 9 führt zu einem Aufruf des Handlers von IRQ 2) IRQ 10 72H reserviert bzw. frei (auch: PCI-Graphickarte) IRQ 11 73H reserviert bzw. frei (auch: PCI-Graphickarte) IRQ 12 74H reserviert bzw. frei (auch: PS/2 Maus) IRQ 13 75H Mathematischer Coprozessor (z.b.: 80x87) IRQ 14 76H Erste Enhanced IDE-Schnittstelle (gewöhnlich Festplatte) IRQ 15 77H Zweite Enhanced IDE-Schnittstelle (gewöhnlich CD-ROM) Mikro-Computer Folie: 8 Prof. Dr.-Ing. Alfred Rozek TFH Berlin

Port-Adressen im PC-AT Mikro-Computer Folie: 9 Prof. Dr.-Ing. Alfred Rozek TFH Berlin C-Programmbeispiel zum Maskieren und Aktivieren des NMI im PC-AT Mikro-Computer Folie: 10 Prof. Dr.-Ing. Alfred Rozek TFH Berlin

NMI und NMI-Maskierungsregister Mikro-Computer Folie: 11 Prof. Dr.-Ing. Alfred Rozek TFH Berlin Interrupts brauchen Zeit t Task Interrupt Task CPU-Kontext sichern ISR-Kernel Entry function ISR-Kernel Exitfunction Service- Routine (ISR) Latenz Dispatch Anwender-Code der Interrupt Service Routine Recovery Response Systemverhalten und -zeiten bei einem Kontextwechsel Mikro-Computer Folie: 12 Prof. Dr.-Ing. Alfred Rozek TFH Berlin