Intel 8255 PPI: Betriebsmodi, Steuerwort und E/A-Techniken

InformatikAktualisiert am 5,43 KB

Zusammenfassung

Das Dokument erklärt den programmierbaren Peripherie-Interface-Baustein Intel 8255 (PPI), seine 24 E/A-Leitungen, das Steuerwortformat und die Betriebsmodi 0 und 1. Außerdem werden E/A-Techniken wie programmierter E/A, interruptgesteuerter E/A und DMA sowie der Ablauf eines Interrupts beim Intel 8086 behandelt.

Kernpunkte

  • Der Intel 8255 hat 40 Pins, davon 24 konfigurierbare E/A-Leitungen, aufgeteilt in zwei Gruppen zu je 12 Leitungen.
  • Er besitzt drei 8-Bit-Ports (A, B, C) und ein Steuerwortregister zur Konfiguration.
  • Bit D7 des Steuerworts ist das Modus-Set-Flag und muss für Modus-Set-Operationen auf '1' gesetzt sein.
  • Modus 0 ist einfacher E/A-Betrieb ohne Handshake; Modus 1 nutzt Handshake-Signale über Leitungen von Port C.
  • Beim programmierten E/A blockiert der Prozessor während des gesamten Vorgangs, beim interruptgesteuerten E/A kann er andere Anweisungen ausführen.
  • Beim DMA werden Daten direkt zwischen Peripheriegerät und Speicher übertragen, ohne den Prozessor zu belasten.
  • Beim Interrupt sichert der 8086 PSW und Rücksprungadresse auf dem Stack und springt zur Interrupt-Service-Routine (ISR).

Stellen Sie sich auf die Probe

Intel 8255: Programmierbarer Peripherie-Interface (PPI)

Der Intel 8255 ist ein programmierbarer Peripherie-Interface (PPI) für allgemeine Zwecke. Er verfügt über 40 Pins, wovon 24 als konfigurierbare Eingabe-/Ausgabe-Leitungen (E/A) dienen. Diese 24 E/A-Leitungen können individuell in zwei Gruppen zu je 12 Leitungen programmiert werden. Der 8255 unterstützt drei Betriebsmodi. Er enthält drei parallel programmierbare 8-Bit-Ports (Port A, Port B, Port C). Jeder Port verfügt über ein Datenregister, und ein Steuerwortregister dient zur Konfiguration der Ports.

Das Steuerwortformat des Intel 8255

Das Steuerwort wird verwendet, um die beiden Gruppen des 8255 zu konfigurieren. Die ersten drei Bits (D0-D2) definieren den Betriebsmodus und die Konfiguration von Gruppe B (bestehend aus Port B und der unteren Hälfte von Port C). Die folgenden vier Bits (D3-D6) bestimmen den Betriebsmodus und die Konfiguration von Gruppe A (bestehend aus Port A und der oberen Hälfte von Port C). Bit D7 ist das Modus-Set-Flag und muss für Modus-Set-Operationen immer auf '1' gesetzt sein.

Betriebsmodi des Intel 8255 PPI

Modus 0: Einfacher E/A-Betrieb

Dieser Modus ist für grundlegende E/A-Operationen vorgesehen. Es wird kein Handshake-Protokoll für den Datenaustausch verwendet. Daten werden direkt in die Ports geschrieben oder von ihnen gelesen. Ausgangsdaten werden in Latches gespeichert.

Grundlegende Merkmale von Modus 0
  • Zwei 8-Bit-Ports (A und B) und zwei 4-Bit-Ports (obere und untere Hälfte von Port C).
  • Jeder E/A-Port verfügt über Latch-Ausgänge, aber keine Latch-Eingänge.

Modus 1: Handshake-E/A-Betrieb

Der Datentransfer erfolgt über Handshake-Steuersignale. Port A und Port B nutzen Leitungen von Port C, um Handshake-Signale zu generieren oder zu empfangen.

Grundlegende Funktionen von Modus 1
  • Jede Gruppe (A und B) hat einen 8-Bit-Datenport.
  • Zusätzlich werden 4-Bit-Steuerleitungen von Port C für Handshake-Signale verwendet.
  • Die E/A-Ports sind gelatcht.

Funktionen von E/A-Modulen

E/A-Module übernehmen wichtige Aufgaben:

  • Steuerung der Kommunikation mit dem Prozessor.
  • Kommunikation mit Peripheriegeräten.
  • Temporäre Datenspeicherung.
  • Fehlererkennung.

E/A-Techniken für die Datenübertragung

Programmierter E/A (Programmed I/O)

Bei dieser Technik werden Daten direkt zwischen Prozessor und E/A-Modul ausgetauscht. Der Prozessor führt ein Programm aus, das den E/A-Betrieb direkt steuert, einschließlich der Statusabfrage, des Sendens von Lese-/Schreibbefehlen und der Datenübertragung. Der Prozessor ist während des gesamten E/A-Vorgangs blockiert.

Interrupt-gesteuerter E/A (Interrupt-driven I/O)

Bei dieser Technik initiiert der Prozessor den E/A-Vorgang und kann dann andere Anweisungen ausführen. Das E/A-Modul unterbricht den Prozessor, sobald der Vorgang abgeschlossen ist oder eine Aktion erforderlich ist.

Direkter Speicherzugriff (DMA)

Daten werden direkt vom Peripheriegerät in den Speicher übertragen, ohne den Prozessor zu belasten. Dies geschieht mithilfe eines speziellen DMA-Controllers.

Hardware-Interrupts beim Intel 8086

Wenn ein Peripheriegerät einen Interrupt an den 8086 sendet, reagiert der Prozessor mit einem Interrupt-Acknowledge-Signal. Das unterbrechende Gerät legt eine 8-Bit-Interrupt-Typnummer auf den Datenbus. Diese Nummer identifiziert die spezifische Interrupt-Service-Routine (ISR). Der 8086 speichert das Program Status Word (PSW) und die Rücksprungadresse (Program Counter/Instruction Pointer) auf dem Stack. Anschließend springt der Prozessor zur entsprechenden ISR. Der Prozess des Austauschs von Steuersignalen wird als Handshaking bezeichnet (hier im Kontext der Interrupt-Anerkennung). Ein "N-Interrupt" tritt auf, wenn ein Gerät die Interrupt-Nummer N verwendet, um den 8086 zu unterbrechen. Die Übertragung zu einer Interrupt-Routine ist vergleichbar mit einem Prozeduraufruf, wobei der 8086 wichtige Registerinhalte auf dem Stack sichert.

Ablauf eines Interrupts

  1. Das Gerät sendet ein Interrupt-Signal an den Prozessor.
  2. Der Prozessor beendet die aktuelle Instruktion.
  3. Der Prozessor prüft auf ausstehende Interrupts, bestimmt deren Priorität und sendet ein Acknowledge-Signal an das Gerät, das den Interrupt ausgelöst hat. Dieses Signal deaktiviert die Interrupt-Anforderung des Geräts.
  4. Der Mikroprozessor speichert das Program Status Word (PSW) und die Adresse der nächsten Instruktion (Program Counter/Instruction Pointer) auf dem Stack.
  5. Der Prozessor lädt die Startadresse der Interrupt-Service-Routine (ISR).
  6. Der Prozessor sichert weitere wichtige Registerinhalte (Prozessorstatus) auf dem Stack.
  7. Die Interrupt-Service-Routine wird ausgeführt.
  8. Der Prozessor stellt die gesicherten Registerinhalte wieder her.
  9. Das PSW und der Program Counter/Instruction Pointer werden vom Stack wiederhergestellt, und die Ausführung des unterbrochenen Programms wird fortgesetzt.

Techniken zur Interrupt-Identifizierung

  • Mehrere Interrupt-Leitungen
  • Software-Polling (Daisy Chain)
  • Vektorisierte Interrupts (Hardware-Polling)
  • Bus-Arbitrierung

Herunterladen

PDF Word HTML

Häufige Fragen

Wie viele E/A-Leitungen hat der Intel 8255?

Der Intel 8255 hat 24 konfigurierbare Eingabe-/Ausgabe-Leitungen. Diese können in zwei Gruppen zu je 12 Leitungen programmiert werden.

Was bedeutet Bit D7 im Steuerwort des 8255?

Bit D7 ist das Modus-Set-Flag. Für Modus-Set-Operationen muss es immer auf '1' gesetzt sein.

Was ist der Unterschied zwischen Modus 0 und Modus 1 beim 8255?

Modus 0 ist einfacher E/A-Betrieb ohne Handshake-Protokoll. Modus 1 nutzt Handshake-Steuersignale, die über Leitungen von Port C übertragen werden.

Stellen Sie sich auf die Probe

Lernkarten

Tippen Sie auf eine Karte, um die Antwort zu sehen.

Test

1. Wie viele konfigurierbare E/A-Leitungen besitzt der Intel 8255?
2. Welches Bit des Steuerworts ist das Modus-Set-Flag?
3. Welcher Betriebsmodus des 8255 verwendet kein Handshake-Protokoll?
4. Bei welcher E/A-Technik ist der Prozessor während des gesamten Vorgangs blockiert?
5. Was legt der Interrupt-Ablauf beim 8086 als Erstes auf den Stack?

Mit KI aus dem Dokument erstellte Fragen: Prüfen Sie die Antworten anhand des Textes.