Peripherie Bausteine und Anschlüsse

Fast jedes Motherboard hat einen freien Sockel zur Aufnahme des mathematischen Coprozessors vom Typ 8087. Weil aber nur sehr wenige Programme diesen wirklich unterstützen, bleibt die schnelle Arithmetikprozessor den Assembler- und Mathematik-Nutzern vorbehalten.
Der Arithmetikprozessor 8087 wurde von Intel zur Unterstützung des 8086/8088-Prozessors bei mathematischen Operationen entwickelt. So sind im Arithmetikprozessor 8087 viele mathematische Funktionen (Grundrechenarten, Wurzelberechnung, Winkelfunktionen, Logarithmen) fest integriert und werden in einem einzigen Programmschritt ausgeführt. Zudem rechnet der Arithmetikprozessor prinzipiell mit 80 Bit breiten numerischen Werten. Genauigkeit und ein großer Wertebereich sind dadurch garantiert. Die Programmierung des Arithmetikprozessors 8087 erfolgt vom 8086/8088-Prozessor aus über Befehlsfolgen, denen der Assemblerbefehl ESC vorangestellt ist. Der Registersatz des Arithmetikprozessors 8087 besteht im wesentlichen aus einem Registerstapel von acht 80-Bit-Registern und einem Statusregister, das die Flags zur Kennzeichnung von Spezialfällen enthält. Alle numerischen Werte legt der Arithmetikprozessor in den Registern des Registerstapels als temporäre Fließkommazahlen ab. Sollten die Werte noch nicht in diesem Format vorliegen, dann wandelt er sie automatisch um.

  40 pol DIP Gehäuse  
Masse 8087 +5V
Adress/Data 14 Adress/Data 15
Adress/Data 13 Adress/Data 16/Status 3
Adress/Data 12 Adress/Data 17/Status 4
Adress/Data 11 Adress/Data 18/Status 5
Adress/Data 10 Adress/Data 19/Status 6
Adress/Data 9 -Bus High Enable/Status 7
Adress/Data 8 -Request 1/-Grant 1
Adress/Data 7 Interrupt
Adress/Data 6 -Request 0/-Grant 0
Adress/Data 5 Kein Anschluss
Adress/Data 4 Kein Anschluss
Adress/Data 3 -Status 2
Adress/Data 2 -Status 1
Adress/Data 1 -Status 0
Adress/Data 0 Queue Status 0
Kein Anschluss Queue Status 1
Kein Anschluss Busy
Clock Ready
Masse Reset

Der DMA-Controller 8237 ist ein Baustein, der mit allen Mikrocontrollern und Prozssoren der 80XX-Reihe zusammenarbeiten kann. Er wird mit demselben Signal getaktet, mit dem die CPU getaktet wird. Damit er seine Aufgabe im System erfüllen kann, muss er initialisiert und bei Bedarf neu programmiert werden. Zum Beschreiben und Lesen dienen die Anschlüsse Data Bus 0 bis 7, über sie fließen die Daten. Ein Schreibimpuls wird dem Pin -IO/Write zugeführt. Der Leseimpuls an Anschluss -IO/Read. Die Wahl des gewünschten internen Registers erfolgt zusammen mit -Chip Select über die Register-Select-Inputs Adress Bus 0 bis 3, mit der ein I/0-Baustein beschrieben oder gelesen wird. Die genannten Pins besitzen diese Funktion nur, wenn der Baustein einen DMA ausführt.

  40 pol DIP Gehäuse  
-IO/Read 8237 Adress Bus 7
-IO/Write Adress Bus 6
-Memory Read Adress Bus 5
-Memory Write Adress Bus 4
Kein Kontakt -End of Process
Ready Adress Bus 3
Hold Acknowledge Adress Bus 2
Adress Strobe Adress Bus 1
Adress Enable Adress Bus 0
Hold Request +5V
-Chip Select Data Bus 0
Clock Data Bus 1
Reset Data Bus 2
DMA Acknowledge 2 Data Bus 3
DMA Acknowledge 3 Data Bus 4
DMA Request 3 DMA Acknowledge 0
DMA Request 2 DMA Acknowledge 1
DMA Request 1 Data Bus 5
DMA Request 0 Data Bus 6
Masse Data Bus 7

Der 8250 besitzt in seinem Innern einen universellen, asynchronen Receiver/Transmitter (UART) und einen Baudratengenerator (BRG). Beide können mit einer Frequenz von 0 bis 10 MHz getaktet werden, wodurch sich nach der internen Frequenzteilung eine Übertragungsgeschwindigkeit von 0 bis 625 Kilo-Baud ergibt. Der 8250 besitzt zur Erzeugung von Standard-Baudraten einen eigenen Oszillator, der nur noch extern mit einem Quarz zu beschalten ist. Er ist aber auch in der Lage, externe Frequenzen zur Datenübertragung zu benutzen. In beiden Fällen ist die Baudrate programmierbar. Zur Erleichterung der Zusammenarbeit mit der CPU besitzt der 8250 eine Interrupt-Struktur mit internen Prioritätsstufen. Spezielle Kontrollleitungen gestatten ein einfaches Anbinden an ein Modem. Das Bild zeigt, dass der 8250 in einem 40 pol. Gehäuse untergebracht ist, obwohl für die serielle Datenübertragung nur zwei Pins benötigt werden.

  40 pol DIP Gehäuse  
Data Bus 0 8250 +5V
Data Bus 1 -Ring Indecator
Data Bus 2 -RLSD
Data Bus 3 -Data Set Ready
Data Bus 4 -Clear to Send
Data Bus 5 MR
Data Bus 6 -Out 1
Data Bus 7 -Data Terminal Ready
RCLK -Ready to Send
Serial In -Out 2
Serial Out Interrupt
Chip Select 0 Kein Anschluss
Chip Select 1 Adress 0
Chip Select 2 Adress 1
-Boud Out Adress 2
Crystal 1 -Adress Select
Crystal 2 CS Out
-Data Out Strobe DDIS
Data Out Strobe Data in Strobe
Masse -Data in Strobe

Der 8255 besitzt drei 8-bit-Ports (Port A, Port B, Port C). Diese Ports können in drei verschiedenen Modi betrieben werden, die durch bestimmte Steuerwörter vom Prozessor selektiert werden können. In allen drei Modi werden die Ports Port A und Port B als bidirektionale Ein-/Ausgangsleitungen betrieben, wobei hier aber die Richtung für alle Leitungen eines Ports einheitlich vorgegeben wird. Der dritte Port wird stets in zwei Teilports (Port CH , Port CL ) unterteilt, die jeweils einem der Ports Port A bzw. Port B zugeordnet sind und mit diesen die Leitungs-"Gruppen" A bzw. B bilden. In Abhängigkeit vom ausgewählten Betriebsmodus dienen sie ebenfalls als Ein-/Ausgabe-Leitungen oder als Steuerleitungen.

  40 pol DIP Gehäuse  
Port A Bit 3 8255 Port A Bit 4
Port A Bit 2 Port A Bit 5
Port A Bit 1 Port A Bit 6
Port A Bit 0 Port A Bit 7
-Read Input -Write Input
-Chip Select Reset
Masse Data Bus 0
Port Adresse 1 Data Bus 1
Port Adresse 2 Data Bus 2
Port C Bit 7 Data Bus 3
Port C Bit 6 Data Bus 4
Port C Bit 5 Data Bus 5
Port C Bit 4 Data Bus 6
Port C Bit 0 Data Bus 7
Port C Bit 1 +5V
Port C Bit 2 Port B Bit 7
Port C Bit 3 Port B Bit 6
Port B Bit 0 Port B Bit 5
Port B Bit 1 Port B Bit 4
Port B Bit 2 Port B Bit 3

Anzeigen: