Mikrorechner-Systeme
Mikroprozessoren, Speicher, Peripherie
Mitwirkender: Dunkel, J.; Rademacher, G.
Mikrorechner-Systeme
Mikroprozessoren, Speicher, Peripherie
Mitwirkender: Dunkel, J.; Rademacher, G.
- Broschiertes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
Diese leichtverständliche Einführung behandelt Aufbau und Funktionsweise von Mikrorechner-Systemen: universell programmierbare Digitalrechner mit einem oder mehreren Mikroprozessoren als Kern. Schwerpunkte sind Architektur und Programmierung von Mikroprozessoren, Organisation und Verwaltung von Arbeits- und Hintergrundspeichern, die wichtigsten Steuer- und Schnittstellenbausteine sowie Bildschirmgeräte als die meistbenutzten Ein-/Ausgabe-Medien. In Fallstudien werden marktübliche Bausteine, z.B. von Intel und Motorola, berücksichtigt. Im Vordergrund stehen aber die allen Realisierungen…mehr
Das auch zum Selbststudium geeignete Buch richtet sich v.a. an Studierende der Informatik oder Elektrotechnik und kann auch an Fachschulen und höheren Schulen eingesetzt werden.
- Produktdetails
- Verlag: Springer Berlin
- Artikelnr. des Verlages: 978-3-540-58362-2
- 2. Aufl.
- Erscheinungstermin: 23. August 1994
- Deutsch
- Abmessung: 23.5cm x 15.5cm
- Gewicht: 985g
- ISBN-13: 9783540583622
- ISBN-10: 3540583629
- Artikelnr.: 24974958
- Verlag: Springer Berlin
- Artikelnr. des Verlages: 978-3-540-58362-2
- 2. Aufl.
- Erscheinungstermin: 23. August 1994
- Deutsch
- Abmessung: 23.5cm x 15.5cm
- Gewicht: 985g
- ISBN-13: 9783540583622
- ISBN-10: 3540583629
- Artikelnr.: 24974958
1.1 Aufbau eines Digitalrechners
1.2 Erklärung wichtiger Begriffe
1 3 Entwicklungsgeschichte der Mikroprozessor-Technik
1.4 Prinzipieller Aufbau eines Mikroprozessors
1.4.1 Gehäuse und Anschlüsse
1.4.2 Exkurs: Zur Beschreibung der Signale
1.4.2.1 Zum Begriff TTL-Pegel
1.4.2.2 Zur Bezeichnung der Signale
1.4.3 Interner Aufbau eines Mikroprozessors
1.5 Das Steuerwerk
1.5.1 Funktion und Aufbau
1.5.2 Ein-/Ausgangssignale des Steuerwerks
1.5.3 Das Steuerregister
1.5.4 Fallstudie: Das Steuerwerk des Motorola 68000
1.5.5 Fallstudie: Das Steuerwerk des Intel 80386
1.5.6 Exkurs: Open-Collector-Eigenschaft
1.6 Das Rechenwerk
1.6.1 Prinzipieller Aufbau
1.6.2 Das Statusregister
1.6.3 Der Operationsvorrat
1.7 Der Registersatz
1.7.1 Registertypen
1.7.2 Der Stack
1.7.3 Fallstudie: Das Programmiermodell des Intel 80386/80486
1.7.4 Fallstudie: Das Programmiermodell des Motorola 68020
1.7.5 Fallstudie: Das Programmiermodell des NS 3#2
1.8 Das Adreßwerk
1.8.1 Vereinfachter Aufbau
1.8.2 Skalierung
1.9 Das interne Bussystem
1.9.1 Prinzipieller Aufbau
1.9.2 Varianten
1.9.3 Fallstudie: Zur Befehlsverarbeitung verschiedener Prozessoren
1.10 Die Systembus-Schnittstelle
1.10.1 Die Register der Systembus-Schnittstelle
1.10.1.1 Der Datenbus-Puffer
1.10.1.2 Der Programmzähler
1.10.1.3 Der Adreßpuffer
1.10.2 Zeitverhalten der Systembus-Signale
1.10.2.1 Synchroner Systembus
1.10.2.2 Semi-synchroner Systembus
1.10.2.3 Asynchroner Systembus
1.10.3 Adressierung von Peripherie-Bausteinen
1.10.4 Multiplex-Bus
1.10.5 Steuerung der Datenbusbreite
1.11 Die Abarbeitung eines Befehls
1.11.1 Einteilung in Phasen
1.11.2 Beispiel zur Befehlsabarbeitung
1.12 Die Behandlung von Ausnahme-Situationen
1.12.1 Vergleich zwischen Unterprogramm und Ausnahmeroutine
1.12.2 Prozessorexterne Ursachen für Ausnahme-Situationen
1.12.3 Prozessorinterne Ursachen für Ausnahme-Situationen
1.12.4 Ermittlung der Startadresse für die Ausnahmeroutinen
1.12.5 Die Behandlung mehrerer Interruptquellen
1.12.5.1 Das Polling-Verfahren
1.12.5.2 Die Ausnahmevektor-Tabelle
1.12.6 Prioritäten bei mehrfachen Unterbrechungs-Anforderungen
1.12.7 Fallstudie: Interrupt-Kontrolle der Prozessoren 680X0
1.13 Datentypen und Datenformate
1.13.1 Datentypen und Datenformate bei 8-bit-Prozessoren
1.13.2 Datentypen und Datenformate von 16/32-bit-Prozessoren
1.13.3 Bit- und blockorientierte Datentypen und ihre Formate
1.13.4 Weitere Datentypen
1.14 Befehlssätze
1.14.1 Begriffe und Definitionen
1.14.2 Darstellung der verschiedenen Befehlsgruppen
1.15 Adressierungsarten
1.15.1 Voraussetzungen und Begriffe
1.15.2 Beschreibung der Adressierungsarten
1.16 Realisierung eines Befehlssatzes auf Maschinensprache-Ebene
1.16.1 Allgemeiner Aufbau eines Maschinenbefehls
1.16.2 Fallstudie: Der Befehlsaufbau des 80386
1.16.3 Fallstudie: Der Befehlsaufbau des 68020
1.17 Exkurs: RISC-Prozessoren
1.17.1 Motivation
1.17.2 Charakteristische Eigenschaften von RISC-Prozessoren
1.17.3 Aufbau eines RISC-Prozessors
1.17.4 Der Registersatz
1.17.5 Befehlssatz und Adressierungsarten bei RISC-Prozessoren
1.17.6 Befehlsverarbeitung in RISC-Prozessoren
2. Arithmetik-Prozessoren
2.1 Allgemeines über Hilfsprozessoren
2.1.1 Aufgabenbereiche für Hilfsprozessoren
2.1.1.1 Hilfsprozessoren zur Erweiterung der ?P-Hardware
2.1.1.2 Hilfsprozessoren zur Steuerung der Peripherie
2.1.2 Verschiedene Typen von Hilfsprozessoren
2.1.2.1 Slave-Prozessoren
2.1.2.2 Coprozessoren
2.2 Gleitpunkt-Arithmetik
2.2.1 Allgemeine Grundlagen der Gleitpunktdarstellung
2.2.2 Gleitpunktdarstellung in Arithmetik-Prozessoren
2.3 Architektur von Arithmetik-Prozessoren
2.3.1 Prinzipieller Aufbau
2.3.2 Das Steuerwerk
2.3.2.1 Kommunikation über Status- und Steuersignale
2.3.2.2 Die Register des Steuerwerks
2.3.3 Der Registersatz
2.3.4 Das Operationswerk
2.3.4.1 Prinzipieller Aufbau
2.3.4.2 Die Statusbits des Operationswerkes
2.3.5 Die Systembus-Schnittstelle
2.3.5.1 Ankopplung an den Mikroprozessor
2.3.5.2 Befehls- und Operanden-Adreßregister
2.3.5.3 Fallstudie: Die Systembus-Schnittstelle des 8087
2.4 Datentypen und Befehlssätze von Arithmetik-Prozessoren
2.4.1 Gepackte BCD-Zahlen
2.4.2 Darstellung von Arithmetikbefehlen
2.4.3 Abarbeitung von Arithmetikbefehlen
2.4.4 Die verschiedenen Befehlsgruppen
2.4.5 Die Ausführungszeiten einiger Gleitpunktoperationen
3. Aufbau und Organisation des Arbeitsspeichers
3.1 Wichtige Begriffe
3.2 Klassifizierung von Halbleiterspeichern
3.2.1 Festwertspeicher
3.2.2 Schreib-/Lese-Speicher
3.2.3 Nicht-flüchtige RAMs
3.3 Einfache Grundlagen über Halbleiter-Bauelemente
3.3.1 Die Diode
3.3.2 Der bipolare Transistor
3.3.3 Der MOS-Transistor
3.4 Aufbau von Speicherzellen
3.4.1 Festwert-Speicherzellen
3.4.1.1 Speicherzellen für maskenprogrammierte ROMs
3.4.1.2 Speicherzellen für programmierbare ROMs
3.4.1.3 EPROM-Speicherzellen
3.4.1.4 EEPROM-Speieherzellen
3.4.2 Schreib-/Lese-Speicherzellen
3.4.2.1 Statische bipolare Speicherzellen
3.4.2.2 Statische MOS-Speicherzellen
3.4.2.3 NVRAM-Speicherzellen
3.4.2.4 Dynamische MOS-Speicherzellen
3.5 Organisation von Speicherbausteinen
3.5.1 Prinzipieller Aufbau eines Speicherbausteins
3.5.2 Festwert-Speicherbausteine
3.5.2.1 ROM-Bausteine
3.5.2.2 PROM- und EPROM-Bausteine
3.5.2.3 EEPROM-Bausteine
3.5.3 Schreib-/Lese-Speicherbausteine
3.5.3.1 Statische RAM-Bausteine
3.5.3.2 NVRAM-Bausteine
3.5.3.3 Dynamische RAM-Bausteine und ihre Controller
3.5.3.4 Pseudo-statische RAMs
3.6 Organisation des Arbeitsspeichers
3.6.1 Speicher-Belegungsplan
3.6.2 Adreßauswahl
3.6.3 Modularer Speicheraufbau
3.6.4 Beispiel eines Speichermoduls
3.7 Direkter Speicherzugriff
3.7.1 Einleitung
3.7.2 Das Prinzip des direkten Speicherzugriffs
3.7.3 Der Aufbau eines DMA-Controllers
3.7.3.1 Das Steuerwerk
3.7.3.2 Die Ausführungs-Einheit
3.7.4 Verschiedene DMA-Übertragungsarten
3.7.5 Unterschiedliche Datenbreite in Target und Requester
3.7.6 Die Register des Steuerwerks
3.8 Cache-Speicher
3.8.1 Funktionsweise eines Caches
3.8.2 Aufbau eines Cache-Speichers
3.8.2.1 Der Direct Mapped Cache
3.8.2.2 Fallstudie: Der Befehls-Cache des Motorola 68020
3.8.2.3 Der n-Way Set Associative Cache
3.8.3 Anbindung des Caches an den Systembus
3.8.4 Fallstudie: Der Cache-Controller 82385 von Intel
3.8.4.1 Aufbau des Controllers
3.8.4.2 Zeitdiagramme der Cache-Zugriffe
3.8.4.3 Überwachung des Systembusses
3.8.4.4 Weitere Steuer- und Statussignale des Cache-Controllers
4. Speicher- und Prozeßverwaltung
4.1 Einleitung
4.1.1 Definitionen des Begriffs "Betriebssystem"
4.1.2 Ziele von Betriebssystemen
4.1.2.1 Benutzerfreundlichkeit
4.1.2.2 Effizienz und Zuverlässigkeit
4.1.2.3 Portabilät
4.1.3 Spezielle Aufgaben von Betriebssystemen
4.1.3.1 Auftragsverwaltung
4.1.3.2 Speicherverwaltung
4.1.3.3 Betriebsmittelverwaltung
4.2 Einführung in die Speicherverwaltung
4.2.1 Virtuelle Speicher
4.2.2 Segmentierungs- und Seitenwechsel-Verfahren
4.2.2.1 Probleme der virtuellen Speicherverwaltung
4.2.2.2 Segmentierung versus Seitenaufteilung
4.2.2.3 Virtuelle Speicherverwaltung in der ?P-Technik
4.2.2.4 Zusammenspiel zwischen Cache und MMU
4.3 Segmentorientierte Speicherverwaltung
4.3.1 Segmente
4.3.1.1 Berechnung physikalischer Adressen
4.3.1.2 Fallstudie: Speicherverwaltung beim Intel 80286
4.3.1.3 Adressierungs-Modi
4.3.2 Segment-Deskriptoren und Deskriptor-Tabellen
4.3.2.1 Segment-Deskriptoren
4.3.2.2 Deskriptor-Tabellen
4.3.2.3 Selektoren
4.4 Seitenorientierte Speicher-Verwaltung
4.4.1 Seitenverwaltungskonzept des Intel 80386
4.4.1.1 Bereehnung physikalischer Adressen aus virtuellen Adressen
4.4.1.2 Bereehnung physikalischer Adressen aus linearen Adressen
4.4.1.3 Beschleunigung der Adreßberechnung durch einen Cache
4.4.1.4 Vorgehensweise bei Seitenfehlern
4.4.2 Seitenverwaltungskonzept des MMU-Bausteins NS32382
4.4.2.1 Berechnung physikalischer Adressen aus virtuellen Adressen
4.4.2.2 Kommunikation zwischen CPU und MMU
4.4.2.3 Durch die CPU initiierte Buszyklen
4.4.2.4 Durch die MMU initiierte Buszyklen
4.4.2.5 MMU-Instruktionen
4.5 Schutzmechanismen
4.5.1 Schutzebenen
4.5.2 Zugriffsrechte
4.5.2.1 Schutzmaßnahmen bei Segmentverwaltung
4.5.2.2 Schutzmaßnahmen bei Seitenverwaltung
4.5.3 Fallstudie: Kontroll-Transfer beim Intel 80286/80386
4.5.3.1 Conforming Code Segment
4.5.3.2 Call Gates
4.6 Prozeßwechsel
4.6.1 Einleitung
4.6.2 Fallstudie: Prozeßverwaltung beim Intel 80286
4.6.2.1 Das Task State Segment
4.6.2.2 Der TSS-Deskriptor
4.6.2.3 Ursachen für einen Prozeßwechsel
4.6.2.4 Zugriffsschutz beim Prozeßwechsel
4.6.2.5 Der Dispatcher
4.7 Kommunikation zwischen Prozessen
4.7.1 Kommunikation beim Segmentierungsverfahren
4.7.2 Kommunikation beim Seitenwechselverfahren
4.8 Ausnahmebehandlung
4.8.1 Interrupt-Deskriptor-Tabelle
4.8.2 Prozeßorientierte Ausnahme-Behandlung
4.8.3 Prozedurorientierte Ausnahme-Behandlung
4.8.4 Fallstudie: Behandlung der Traps beim Intel 80386
4.8.5 Fallstudie: Fehlercode des 80386 bei einem Seitenfehler
5. System-Steuerbausteine und Schnittstellen-Bausteine
5.1 Einleitung
5.1.1 Nicht programmierbare System-Steuerbausteine
5.1.2 Programmierbare System-Steuerbausteine
5.1.3 Schnittstellen-Bausteine
5.1.4 Speicherbezogene und isolierte Adressierung
5.1.5 Anschluß der Schnittstellen-Bausteine an den ?P
5.1.6 Aufbau der Systembausteine
5.1.6.1 Die Steuerung
5.1.6.2 Die Ausführungseinheit
5.1.6.3 Die Schnittstelle zum Peripheriegerät
5.1.7 Die verschiedenen Ein-/Ausgabe-Verfahren
5.1.8 Synchronisation der Datenübertragung
5.2 Bus-Arbiter
5.2.1 Einleitung
5.2.2 Verschiedene Systembus-Zuteilungsverfahren
5.2.3 Prinzipieller Aufbau eines Bus-Arbiters
5.2.4 Weitere spezielle Arbiter-Funktionen
5.3 Interrupt-Controller
5.3.1 Einleitung
5.3.2 Prinzipieller Aufbau eines Interrupt-Controllers
5.3.3 Einsatz mehrerer Interrupt-Controller
5.3.3.1 Daisy Chaining
5.3.3.2 Kaskadierung
5.3.4 Das Programmiermodell eines Interrupt-Controllers
5.3.4.1 Die Steuerregister
5.3.4.2 Die Befehlsregister
5.3.4.3 Die Statusregister
5.4 Zeitgeber-/Zähler-Bausteine
5.4.1 Prinzipieller Aufbau eines Zeitgeber-/Zähler-Bausteins
5.4.2 Die verschiedenen Zählmodi
5.4.3 Das Programmiermodell
5.4.4 Die Timer-Funktionen
5.4.4.1 Der Timer als Impulsgenerator
5.4.4.2 Der Timer als Taktgenerator
5.4.4.3 Der Timer als Ereigniszähler
5.4.4.4 Der Timer als Zeitmesser
5.4.5 Fallstudie: Der Echtzeit-Uhren-Baustein HD146818
5.5 Bausteine für parallele Sehnittstellen
5.5.1 Prinzipieller Aufbau
5.5.2 Aufbau der Ausführungseinheit
5.5.2.1 Datenausgabe
5.5.2.2 Dateneingabe
5.5.2.3 Eine Variante
5.5.3 Fallstudie: Der PPI-Baustein 8255 von Intel
5.5.3.1 Modus 0
5.5.3.2 Modus 1
5.5.3.3 Modus 2
5.5.4 Anwendungsbeispiel: Centronics-Schnittstelle
5.6 Bausteine für asynchrone, serielle Schnittstellen
5.6.1 Einleitung
5.6.2 Synchronisations-Verfahren
5.6.3 Aufbau eines Bausteins für asynchrone Schnittstellen
5.6.3.1 Der Sender
5.6.3.2 Der Empfänger
5.6.3.3 Modem-Steuerung
5.6.4 Die V24-Schnittstelle
5.6.5 Das Programmiermodell des ACIA-Bausteins
5.7 Bausteine für synchrone, serielle Schnittstellen
5.7.1 Zeichenorientierte Übertragung
5.7.1.1 Bausteine für die zeichenorientierte Übertragung
5.7.1.2 Das Programmiermodell zeichenorientierter Bausteine
5.7.2 Bitorientierte Übertragung
5.7.2.1 Bausteine für die bitorientierte Übertragung
5.7.2.2 Das Programmiermodell bitorientierter Bausteine
5.8 Bausteine zur Analog/Digital- und Digital/Analog-Wandlung
5.8.1 Digital/Analog-Wandlung
5.8.1.1 Prinzip
5.8.1.2 Bausteine für die Digital/Analog-Wandlung
5.8.2 Analog/Digital-Wandlung
5.8.2.1 Prinzip
5.8.2.2 Bausteine für die Analog/Digital-Wandlung
5.8.2.3 Das Programmiermodell
5.8.3 Signalprozessoren
6. Plattenspeicher-Systeme
6.1 Einleitung
6.2 Format und Verwaltung einer Speicherplatte
6.2.1 Format einer Speicherplatte
6.2.2 Plattenverwaltung durch das Betriebssystem MS-DOS
6.2.3 Die verschiedenen Plattenbereiche
6.2.3.1 Der Urladerbereich
6.2.3.2 Die Dateizuordnungstabelle
6.2.3.3 Das Dateiverzeichnis
6.2.3.4 Der Datenbereich
6.2.3.5 Zusammmenfassende Darstellung der Diskettenverwaltung
6.3 Die Aufzeichnungsverfahren
6.3.1 Zum Begriff Flußwechsel
6.3.2 Beschreibung der Verfahren
6.3.2.1 NRZ-Verfahren
6.3.2.2 Frequenzmodulations-Verfahren
6.3.2.3 Modifiziertes Frequenzmodulations-Verfahren
6.3.2.4 RLL-Verfahren
6.3.3 Verbesserung der Aufzeichnungstechnik bei Festplatten-Systemen
6.4 Aufbau eines Floppy-Disk-Systems
6.4.1 Prinzipieller Aufbau einer Diskette
6.4.2 Schematischer Aufbau eines Floppy-Disk-Laufwerkes
6.4.3 Schnittstellen und Komponenten eines Floppy-Disk-Controllers
6.4.4 Registersatz und Befehlssatz eines Floppy-Disk-Controllers
6.4.4.1 Der Registersatz
6.4.4.2 Der Befehlssatz
6.4.4.3 Das Statusregister
6.5 Aufbau eines Festplatten-Speichersystems
6.5.1 Prinzipieller Aufbau einer Festplatte
6.5.1.1 Allgemeines
6.5.1.2 Aufbau eines Festplatten-Laufwerks
6.5.1.3 Verschachtelter Sektorzugriff
6.5.2 Prinzipieller Aufbau eines Festplatten-Controllers
6.5.3 Schnittstellen zum Anschluß von Festplatten-Systemen
6.5.3.1 Controller-Schnittstellen
6.5.3.2 Systembus-Schnittstellen
6.6 Fehlerbehandlung bei Plattenspeicher-Systemen
6.6.1 Zyklische Redundanzprüfung
6.6.2 Fehlererkennende und -korrigierende Codes
6.6.3 Fehlerraten
6.6.4 Verfahren zur Wiederherstellung der Daten
7. Bildschirm-Geräte
7.1 Der Bildauflbau
7.1.1 Funktionsweise des Standardbildschirms
7.1.2 Anschlußnormen für Monitore
7.2 Aufbau eines Graphiksystems
7.2.1 Allgemeines
7.2.2 Fallstudie: Der CRT-Controller SY6545
7.2.3 Bildschirmspeicher für graphische Anwendungen
7.2.4 Verfahren zum Speicherzugriff
7.2.5 Verschiedene Darstellungsmodi
7.3 Fallstudie: Der Graphik-Controller HD63484
7.3.1 Einleitung
7.3.2 Unterstützung verschiedener Bildschirmbereiche
7.3.3 Der Aufbau des HD63484
7.3.4 Das Programmiermodell des HD63484
7.3.4.1 Register mit direktem ?P-Zugriff
7.3.4.2 Register mit Zugriff über die Warteschlangen
7.3.4.3 Der Befehlssatz des HD63484
7.4 D/A-Wandler für Bildschirm-Geräte
7.5 Realisierung eines Bildschirmspeichers
7.5.1 Hochintegrierte Video-RAMs
7.5.2 Die Farb-Zuordnungs-Tabelle
- Lösungen der Selbsttestaufgaben
1.1 Aufbau eines Digitalrechners
1.2 Erklärung wichtiger Begriffe
1 3 Entwicklungsgeschichte der Mikroprozessor-Technik
1.4 Prinzipieller Aufbau eines Mikroprozessors
1.4.1 Gehäuse und Anschlüsse
1.4.2 Exkurs: Zur Beschreibung der Signale
1.4.2.1 Zum Begriff TTL-Pegel
1.4.2.2 Zur Bezeichnung der Signale
1.4.3 Interner Aufbau eines Mikroprozessors
1.5 Das Steuerwerk
1.5.1 Funktion und Aufbau
1.5.2 Ein-/Ausgangssignale des Steuerwerks
1.5.3 Das Steuerregister
1.5.4 Fallstudie: Das Steuerwerk des Motorola 68000
1.5.5 Fallstudie: Das Steuerwerk des Intel 80386
1.5.6 Exkurs: Open-Collector-Eigenschaft
1.6 Das Rechenwerk
1.6.1 Prinzipieller Aufbau
1.6.2 Das Statusregister
1.6.3 Der Operationsvorrat
1.7 Der Registersatz
1.7.1 Registertypen
1.7.2 Der Stack
1.7.3 Fallstudie: Das Programmiermodell des Intel 80386/80486
1.7.4 Fallstudie: Das Programmiermodell des Motorola 68020
1.7.5 Fallstudie: Das Programmiermodell des NS 3#2
1.8 Das Adreßwerk
1.8.1 Vereinfachter Aufbau
1.8.2 Skalierung
1.9 Das interne Bussystem
1.9.1 Prinzipieller Aufbau
1.9.2 Varianten
1.9.3 Fallstudie: Zur Befehlsverarbeitung verschiedener Prozessoren
1.10 Die Systembus-Schnittstelle
1.10.1 Die Register der Systembus-Schnittstelle
1.10.1.1 Der Datenbus-Puffer
1.10.1.2 Der Programmzähler
1.10.1.3 Der Adreßpuffer
1.10.2 Zeitverhalten der Systembus-Signale
1.10.2.1 Synchroner Systembus
1.10.2.2 Semi-synchroner Systembus
1.10.2.3 Asynchroner Systembus
1.10.3 Adressierung von Peripherie-Bausteinen
1.10.4 Multiplex-Bus
1.10.5 Steuerung der Datenbusbreite
1.11 Die Abarbeitung eines Befehls
1.11.1 Einteilung in Phasen
1.11.2 Beispiel zur Befehlsabarbeitung
1.12 Die Behandlung von Ausnahme-Situationen
1.12.1 Vergleich zwischen Unterprogramm und Ausnahmeroutine
1.12.2 Prozessorexterne Ursachen für Ausnahme-Situationen
1.12.3 Prozessorinterne Ursachen für Ausnahme-Situationen
1.12.4 Ermittlung der Startadresse für die Ausnahmeroutinen
1.12.5 Die Behandlung mehrerer Interruptquellen
1.12.5.1 Das Polling-Verfahren
1.12.5.2 Die Ausnahmevektor-Tabelle
1.12.6 Prioritäten bei mehrfachen Unterbrechungs-Anforderungen
1.12.7 Fallstudie: Interrupt-Kontrolle der Prozessoren 680X0
1.13 Datentypen und Datenformate
1.13.1 Datentypen und Datenformate bei 8-bit-Prozessoren
1.13.2 Datentypen und Datenformate von 16/32-bit-Prozessoren
1.13.3 Bit- und blockorientierte Datentypen und ihre Formate
1.13.4 Weitere Datentypen
1.14 Befehlssätze
1.14.1 Begriffe und Definitionen
1.14.2 Darstellung der verschiedenen Befehlsgruppen
1.15 Adressierungsarten
1.15.1 Voraussetzungen und Begriffe
1.15.2 Beschreibung der Adressierungsarten
1.16 Realisierung eines Befehlssatzes auf Maschinensprache-Ebene
1.16.1 Allgemeiner Aufbau eines Maschinenbefehls
1.16.2 Fallstudie: Der Befehlsaufbau des 80386
1.16.3 Fallstudie: Der Befehlsaufbau des 68020
1.17 Exkurs: RISC-Prozessoren
1.17.1 Motivation
1.17.2 Charakteristische Eigenschaften von RISC-Prozessoren
1.17.3 Aufbau eines RISC-Prozessors
1.17.4 Der Registersatz
1.17.5 Befehlssatz und Adressierungsarten bei RISC-Prozessoren
1.17.6 Befehlsverarbeitung in RISC-Prozessoren
2. Arithmetik-Prozessoren
2.1 Allgemeines über Hilfsprozessoren
2.1.1 Aufgabenbereiche für Hilfsprozessoren
2.1.1.1 Hilfsprozessoren zur Erweiterung der ?P-Hardware
2.1.1.2 Hilfsprozessoren zur Steuerung der Peripherie
2.1.2 Verschiedene Typen von Hilfsprozessoren
2.1.2.1 Slave-Prozessoren
2.1.2.2 Coprozessoren
2.2 Gleitpunkt-Arithmetik
2.2.1 Allgemeine Grundlagen der Gleitpunktdarstellung
2.2.2 Gleitpunktdarstellung in Arithmetik-Prozessoren
2.3 Architektur von Arithmetik-Prozessoren
2.3.1 Prinzipieller Aufbau
2.3.2 Das Steuerwerk
2.3.2.1 Kommunikation über Status- und Steuersignale
2.3.2.2 Die Register des Steuerwerks
2.3.3 Der Registersatz
2.3.4 Das Operationswerk
2.3.4.1 Prinzipieller Aufbau
2.3.4.2 Die Statusbits des Operationswerkes
2.3.5 Die Systembus-Schnittstelle
2.3.5.1 Ankopplung an den Mikroprozessor
2.3.5.2 Befehls- und Operanden-Adreßregister
2.3.5.3 Fallstudie: Die Systembus-Schnittstelle des 8087
2.4 Datentypen und Befehlssätze von Arithmetik-Prozessoren
2.4.1 Gepackte BCD-Zahlen
2.4.2 Darstellung von Arithmetikbefehlen
2.4.3 Abarbeitung von Arithmetikbefehlen
2.4.4 Die verschiedenen Befehlsgruppen
2.4.5 Die Ausführungszeiten einiger Gleitpunktoperationen
3. Aufbau und Organisation des Arbeitsspeichers
3.1 Wichtige Begriffe
3.2 Klassifizierung von Halbleiterspeichern
3.2.1 Festwertspeicher
3.2.2 Schreib-/Lese-Speicher
3.2.3 Nicht-flüchtige RAMs
3.3 Einfache Grundlagen über Halbleiter-Bauelemente
3.3.1 Die Diode
3.3.2 Der bipolare Transistor
3.3.3 Der MOS-Transistor
3.4 Aufbau von Speicherzellen
3.4.1 Festwert-Speicherzellen
3.4.1.1 Speicherzellen für maskenprogrammierte ROMs
3.4.1.2 Speicherzellen für programmierbare ROMs
3.4.1.3 EPROM-Speicherzellen
3.4.1.4 EEPROM-Speieherzellen
3.4.2 Schreib-/Lese-Speicherzellen
3.4.2.1 Statische bipolare Speicherzellen
3.4.2.2 Statische MOS-Speicherzellen
3.4.2.3 NVRAM-Speicherzellen
3.4.2.4 Dynamische MOS-Speicherzellen
3.5 Organisation von Speicherbausteinen
3.5.1 Prinzipieller Aufbau eines Speicherbausteins
3.5.2 Festwert-Speicherbausteine
3.5.2.1 ROM-Bausteine
3.5.2.2 PROM- und EPROM-Bausteine
3.5.2.3 EEPROM-Bausteine
3.5.3 Schreib-/Lese-Speicherbausteine
3.5.3.1 Statische RAM-Bausteine
3.5.3.2 NVRAM-Bausteine
3.5.3.3 Dynamische RAM-Bausteine und ihre Controller
3.5.3.4 Pseudo-statische RAMs
3.6 Organisation des Arbeitsspeichers
3.6.1 Speicher-Belegungsplan
3.6.2 Adreßauswahl
3.6.3 Modularer Speicheraufbau
3.6.4 Beispiel eines Speichermoduls
3.7 Direkter Speicherzugriff
3.7.1 Einleitung
3.7.2 Das Prinzip des direkten Speicherzugriffs
3.7.3 Der Aufbau eines DMA-Controllers
3.7.3.1 Das Steuerwerk
3.7.3.2 Die Ausführungs-Einheit
3.7.4 Verschiedene DMA-Übertragungsarten
3.7.5 Unterschiedliche Datenbreite in Target und Requester
3.7.6 Die Register des Steuerwerks
3.8 Cache-Speicher
3.8.1 Funktionsweise eines Caches
3.8.2 Aufbau eines Cache-Speichers
3.8.2.1 Der Direct Mapped Cache
3.8.2.2 Fallstudie: Der Befehls-Cache des Motorola 68020
3.8.2.3 Der n-Way Set Associative Cache
3.8.3 Anbindung des Caches an den Systembus
3.8.4 Fallstudie: Der Cache-Controller 82385 von Intel
3.8.4.1 Aufbau des Controllers
3.8.4.2 Zeitdiagramme der Cache-Zugriffe
3.8.4.3 Überwachung des Systembusses
3.8.4.4 Weitere Steuer- und Statussignale des Cache-Controllers
4. Speicher- und Prozeßverwaltung
4.1 Einleitung
4.1.1 Definitionen des Begriffs "Betriebssystem"
4.1.2 Ziele von Betriebssystemen
4.1.2.1 Benutzerfreundlichkeit
4.1.2.2 Effizienz und Zuverlässigkeit
4.1.2.3 Portabilät
4.1.3 Spezielle Aufgaben von Betriebssystemen
4.1.3.1 Auftragsverwaltung
4.1.3.2 Speicherverwaltung
4.1.3.3 Betriebsmittelverwaltung
4.2 Einführung in die Speicherverwaltung
4.2.1 Virtuelle Speicher
4.2.2 Segmentierungs- und Seitenwechsel-Verfahren
4.2.2.1 Probleme der virtuellen Speicherverwaltung
4.2.2.2 Segmentierung versus Seitenaufteilung
4.2.2.3 Virtuelle Speicherverwaltung in der ?P-Technik
4.2.2.4 Zusammenspiel zwischen Cache und MMU
4.3 Segmentorientierte Speicherverwaltung
4.3.1 Segmente
4.3.1.1 Berechnung physikalischer Adressen
4.3.1.2 Fallstudie: Speicherverwaltung beim Intel 80286
4.3.1.3 Adressierungs-Modi
4.3.2 Segment-Deskriptoren und Deskriptor-Tabellen
4.3.2.1 Segment-Deskriptoren
4.3.2.2 Deskriptor-Tabellen
4.3.2.3 Selektoren
4.4 Seitenorientierte Speicher-Verwaltung
4.4.1 Seitenverwaltungskonzept des Intel 80386
4.4.1.1 Bereehnung physikalischer Adressen aus virtuellen Adressen
4.4.1.2 Bereehnung physikalischer Adressen aus linearen Adressen
4.4.1.3 Beschleunigung der Adreßberechnung durch einen Cache
4.4.1.4 Vorgehensweise bei Seitenfehlern
4.4.2 Seitenverwaltungskonzept des MMU-Bausteins NS32382
4.4.2.1 Berechnung physikalischer Adressen aus virtuellen Adressen
4.4.2.2 Kommunikation zwischen CPU und MMU
4.4.2.3 Durch die CPU initiierte Buszyklen
4.4.2.4 Durch die MMU initiierte Buszyklen
4.4.2.5 MMU-Instruktionen
4.5 Schutzmechanismen
4.5.1 Schutzebenen
4.5.2 Zugriffsrechte
4.5.2.1 Schutzmaßnahmen bei Segmentverwaltung
4.5.2.2 Schutzmaßnahmen bei Seitenverwaltung
4.5.3 Fallstudie: Kontroll-Transfer beim Intel 80286/80386
4.5.3.1 Conforming Code Segment
4.5.3.2 Call Gates
4.6 Prozeßwechsel
4.6.1 Einleitung
4.6.2 Fallstudie: Prozeßverwaltung beim Intel 80286
4.6.2.1 Das Task State Segment
4.6.2.2 Der TSS-Deskriptor
4.6.2.3 Ursachen für einen Prozeßwechsel
4.6.2.4 Zugriffsschutz beim Prozeßwechsel
4.6.2.5 Der Dispatcher
4.7 Kommunikation zwischen Prozessen
4.7.1 Kommunikation beim Segmentierungsverfahren
4.7.2 Kommunikation beim Seitenwechselverfahren
4.8 Ausnahmebehandlung
4.8.1 Interrupt-Deskriptor-Tabelle
4.8.2 Prozeßorientierte Ausnahme-Behandlung
4.8.3 Prozedurorientierte Ausnahme-Behandlung
4.8.4 Fallstudie: Behandlung der Traps beim Intel 80386
4.8.5 Fallstudie: Fehlercode des 80386 bei einem Seitenfehler
5. System-Steuerbausteine und Schnittstellen-Bausteine
5.1 Einleitung
5.1.1 Nicht programmierbare System-Steuerbausteine
5.1.2 Programmierbare System-Steuerbausteine
5.1.3 Schnittstellen-Bausteine
5.1.4 Speicherbezogene und isolierte Adressierung
5.1.5 Anschluß der Schnittstellen-Bausteine an den ?P
5.1.6 Aufbau der Systembausteine
5.1.6.1 Die Steuerung
5.1.6.2 Die Ausführungseinheit
5.1.6.3 Die Schnittstelle zum Peripheriegerät
5.1.7 Die verschiedenen Ein-/Ausgabe-Verfahren
5.1.8 Synchronisation der Datenübertragung
5.2 Bus-Arbiter
5.2.1 Einleitung
5.2.2 Verschiedene Systembus-Zuteilungsverfahren
5.2.3 Prinzipieller Aufbau eines Bus-Arbiters
5.2.4 Weitere spezielle Arbiter-Funktionen
5.3 Interrupt-Controller
5.3.1 Einleitung
5.3.2 Prinzipieller Aufbau eines Interrupt-Controllers
5.3.3 Einsatz mehrerer Interrupt-Controller
5.3.3.1 Daisy Chaining
5.3.3.2 Kaskadierung
5.3.4 Das Programmiermodell eines Interrupt-Controllers
5.3.4.1 Die Steuerregister
5.3.4.2 Die Befehlsregister
5.3.4.3 Die Statusregister
5.4 Zeitgeber-/Zähler-Bausteine
5.4.1 Prinzipieller Aufbau eines Zeitgeber-/Zähler-Bausteins
5.4.2 Die verschiedenen Zählmodi
5.4.3 Das Programmiermodell
5.4.4 Die Timer-Funktionen
5.4.4.1 Der Timer als Impulsgenerator
5.4.4.2 Der Timer als Taktgenerator
5.4.4.3 Der Timer als Ereigniszähler
5.4.4.4 Der Timer als Zeitmesser
5.4.5 Fallstudie: Der Echtzeit-Uhren-Baustein HD146818
5.5 Bausteine für parallele Sehnittstellen
5.5.1 Prinzipieller Aufbau
5.5.2 Aufbau der Ausführungseinheit
5.5.2.1 Datenausgabe
5.5.2.2 Dateneingabe
5.5.2.3 Eine Variante
5.5.3 Fallstudie: Der PPI-Baustein 8255 von Intel
5.5.3.1 Modus 0
5.5.3.2 Modus 1
5.5.3.3 Modus 2
5.5.4 Anwendungsbeispiel: Centronics-Schnittstelle
5.6 Bausteine für asynchrone, serielle Schnittstellen
5.6.1 Einleitung
5.6.2 Synchronisations-Verfahren
5.6.3 Aufbau eines Bausteins für asynchrone Schnittstellen
5.6.3.1 Der Sender
5.6.3.2 Der Empfänger
5.6.3.3 Modem-Steuerung
5.6.4 Die V24-Schnittstelle
5.6.5 Das Programmiermodell des ACIA-Bausteins
5.7 Bausteine für synchrone, serielle Schnittstellen
5.7.1 Zeichenorientierte Übertragung
5.7.1.1 Bausteine für die zeichenorientierte Übertragung
5.7.1.2 Das Programmiermodell zeichenorientierter Bausteine
5.7.2 Bitorientierte Übertragung
5.7.2.1 Bausteine für die bitorientierte Übertragung
5.7.2.2 Das Programmiermodell bitorientierter Bausteine
5.8 Bausteine zur Analog/Digital- und Digital/Analog-Wandlung
5.8.1 Digital/Analog-Wandlung
5.8.1.1 Prinzip
5.8.1.2 Bausteine für die Digital/Analog-Wandlung
5.8.2 Analog/Digital-Wandlung
5.8.2.1 Prinzip
5.8.2.2 Bausteine für die Analog/Digital-Wandlung
5.8.2.3 Das Programmiermodell
5.8.3 Signalprozessoren
6. Plattenspeicher-Systeme
6.1 Einleitung
6.2 Format und Verwaltung einer Speicherplatte
6.2.1 Format einer Speicherplatte
6.2.2 Plattenverwaltung durch das Betriebssystem MS-DOS
6.2.3 Die verschiedenen Plattenbereiche
6.2.3.1 Der Urladerbereich
6.2.3.2 Die Dateizuordnungstabelle
6.2.3.3 Das Dateiverzeichnis
6.2.3.4 Der Datenbereich
6.2.3.5 Zusammmenfassende Darstellung der Diskettenverwaltung
6.3 Die Aufzeichnungsverfahren
6.3.1 Zum Begriff Flußwechsel
6.3.2 Beschreibung der Verfahren
6.3.2.1 NRZ-Verfahren
6.3.2.2 Frequenzmodulations-Verfahren
6.3.2.3 Modifiziertes Frequenzmodulations-Verfahren
6.3.2.4 RLL-Verfahren
6.3.3 Verbesserung der Aufzeichnungstechnik bei Festplatten-Systemen
6.4 Aufbau eines Floppy-Disk-Systems
6.4.1 Prinzipieller Aufbau einer Diskette
6.4.2 Schematischer Aufbau eines Floppy-Disk-Laufwerkes
6.4.3 Schnittstellen und Komponenten eines Floppy-Disk-Controllers
6.4.4 Registersatz und Befehlssatz eines Floppy-Disk-Controllers
6.4.4.1 Der Registersatz
6.4.4.2 Der Befehlssatz
6.4.4.3 Das Statusregister
6.5 Aufbau eines Festplatten-Speichersystems
6.5.1 Prinzipieller Aufbau einer Festplatte
6.5.1.1 Allgemeines
6.5.1.2 Aufbau eines Festplatten-Laufwerks
6.5.1.3 Verschachtelter Sektorzugriff
6.5.2 Prinzipieller Aufbau eines Festplatten-Controllers
6.5.3 Schnittstellen zum Anschluß von Festplatten-Systemen
6.5.3.1 Controller-Schnittstellen
6.5.3.2 Systembus-Schnittstellen
6.6 Fehlerbehandlung bei Plattenspeicher-Systemen
6.6.1 Zyklische Redundanzprüfung
6.6.2 Fehlererkennende und -korrigierende Codes
6.6.3 Fehlerraten
6.6.4 Verfahren zur Wiederherstellung der Daten
7. Bildschirm-Geräte
7.1 Der Bildauflbau
7.1.1 Funktionsweise des Standardbildschirms
7.1.2 Anschlußnormen für Monitore
7.2 Aufbau eines Graphiksystems
7.2.1 Allgemeines
7.2.2 Fallstudie: Der CRT-Controller SY6545
7.2.3 Bildschirmspeicher für graphische Anwendungen
7.2.4 Verfahren zum Speicherzugriff
7.2.5 Verschiedene Darstellungsmodi
7.3 Fallstudie: Der Graphik-Controller HD63484
7.3.1 Einleitung
7.3.2 Unterstützung verschiedener Bildschirmbereiche
7.3.3 Der Aufbau des HD63484
7.3.4 Das Programmiermodell des HD63484
7.3.4.1 Register mit direktem ?P-Zugriff
7.3.4.2 Register mit Zugriff über die Warteschlangen
7.3.4.3 Der Befehlssatz des HD63484
7.4 D/A-Wandler für Bildschirm-Geräte
7.5 Realisierung eines Bildschirmspeichers
7.5.1 Hochintegrierte Video-RAMs
7.5.2 Die Farb-Zuordnungs-Tabelle
- Lösungen der Selbsttestaufgaben