Skip to main content

1999 | Buch | 3. Auflage

Technische Informatik 2

Grundlagen der Computertechnik

verfasst von: PD Dr.-Ing. Wolfram Schiffmann, Dipl.-Phys. Robert Schmitz

Verlag: Springer Berlin Heidelberg

Buchreihe : Springer-Lehrbuch

insite
SUCHEN

Über dieses Buch

Die beiden Bände Technische Informatik bieten einen verständlichen Einstieg in dieses wichtige Teilgebiet der Informatik. Leser mit unterschiedlichen Vorkenntnissen gewinnen schrittweise einen Überblick über die benötigten elektrotechnischen und elektronischen Grundlagen. Auf dieser Basis werden die Komponenten und Strukturen von heutigen Computersystemen eingeführt. Aufgrund des großen Erfolges des Werkes liegt nun auch der Band 2 in dritter, überarbeiteter Auflage vor. Er schließt mit den komplexen Schaltwerken an den Band 1, Grundlagen der digitalen Elektronik, an. Ausgehend vom Operationsprinzip des von-Neumann-Rechners werden sowohl CISC- als auch RISC-Architekturen, Kommunikationskanäle, Speicherorganisation und Peripheriegeräte behandelt.

Inhaltsverzeichnis

Frontmatter
1. Komplexe Schaltwerke
Zusammenfassung
Im ersten Kapitel werden wir zunächst den Aufbau eines Schaltwerks wiederholen (siehe auch Band 1, Kapitel 6) und darauf aufbauend das Zeitverhalten von Schaltwerken untersuchen. Damit soll verdeutlicht werden, weshalb die maximale Taktfrequenz bei einem Schaltwerk begrenzt ist und von welchen dynamischen Kenngrößen seiner Komponenten diese Begrenzung abhängt. Wenn ein Schaltwerk für eine komplexere Problemstellung entworfen werden soll, z.B. ein Schaltwerk zur Berechnung eines Polynoms, steigt die Zahl der internen Zustände sehr stark an. Die im Kapitel 6 von Band 1 beschriebene klassische Methode ein Schaltwerk mit Hilfe einer Übergangstabelle zu entwerfen, kann dann nicht mehr angewandt werden. Um einen übersichtlichen Entwurf zu ermöglichen, verwendet man ein komplexes Schaltwerk, das aus zwei kooperierenden Teilschaltwerken besteht. Ausgehend von einem Lösungsalgorithmus für die gestellte Aufgabe, kann eine funktionale Trennung in Steuer- und Operationswerk vorgenommen werden. Während das Steuerwerk stets eine reguläre Struktur aufweist, gibt es für das Operationswerk verschiedene Lösungsmöglichkeiten. Wir werden Konstruktionsregeln für den Entwurf von Operationswerken angeben und anhand eines konkreten Beispiels drei verschiedene Entwürfe vorstellen. Am Ende des Kapitels wird ein Simulationsprogramm für ein „universelles“ Operationswerk beschrieben und es werden Steueralgorithmen für drei Beispielprobleme angegeben.
Wolfram Schiffmann, Robert Schmitz
2. von NEUMANN-Rechner
Zusammenfassung
Der von NEUMANN-Rechner ergibt sich als Verallgemeinerung eines komplexen Schaltwerkes. Im letzten Kapitel haben wir gesehen, daß beim komplexen Schaltwerk (nach der Eingabe der Operanden) immer nur ein einziger Steueralgorithmus aktiviert wird. Angenommen wir hätten Steueralgorithmen für die vier Grundrechenarten auf einem universellen Operationswerk entwickelt, das lediglich über einen Dualaddierer verfügt. Durch eine Verkettung der einzelnen Steueralgorithmen könnten wir nun einen übergeordneten Algorithmus realisieren, der die Grundrechenarten als Operatoren benötigt. Die über Steueralgorithmen realisierten Rechenoperationen können durch Opcodes, z.B. die Ziffern 1–4, ausgewählt werden und stellen dem Programmierer Maschinenbefehle bereit, die er nacheinander aktiviert. Die zentrale Idee von NEUMANN’s bestand nun darin, die Opcodes in einem Speicher abzulegen und sie vor der Ausführung durch das Steuerwerk selbst holen zu lassen. Ein solches Steuerwerk benötigt ein Befehlsregister für den Opcode und einen Befehlszeiger für die Adressierung der Befehle im Speicher. Man bezeichnet ein solches Steuerwerk als Leitwerk. Ein universelles Operationswerk, das neben einer ALU auch mehrere Register enthält bezeichnet man als Rechenwerk. Leitwerk und Rechenwerk bilden den Prozessor oder die CPU (für Central Processing Unit). Damit der Prozessor nicht nur interne Berechungen ausführen kann, sondern daß auch von außen (Benutzer) Daten einbzw. ausgegeben werden können, benötigt der von NEUMANN-Rechner eine Schnittstelle zur Umgebung, die als Ein-/Ausgabewerk bezeichnet wird. Im folgenden wird zunächst das Grundkonzept der vier Funktionseinheiten beschrieben und dann werden Maßnahmen vorgestellt, die sowohl die Implementierung als auch die Programmierung vereinfachen. Dann wird ausführlich auf den Aufbau von Rechen- und Leitwerk eingegangen. Am Ende dieses Kapitels wird ein Simulationsprogramm für ein einfaches Rechenwerk vorgestellt, mit dem die Mikroprogrammierung von Maschinenbefehlen erarbeitet werden kann.
Wolfram Schiffmann, Robert Schmitz
3. Hardware-Parallelität
Zusammenfassung
Wie wir in Kapitel 1 und Kapitel 2 gesehen haben kann durch parallelgeschaltete Operations-Schaltnetze oder durch verdrahtete Algorithmen die Zahl der Verarbeitungsschritte zur Lösung einer bestimmten Aufgabe verringert werden. Alle modernen Computer nutzen diese Hardware-Parallelität in irgendeiner Form. Wir können vier Operationen angeben, die durch zusätzliche Hardware an verschiedenen Stellen in einem Rechnersystem beschleunigt werden können:
1.
Ein-/Ausgabe Operationen
 
2.
Operanden verknüpfen
 
3.
Daten lesen oder schreiben
 
4.
Befehle holen
 
Wolfram Schiffmann, Robert Schmitz
4. Prozessorarchitektur
Zusammenfassung
Im Kapitel 2 haben wir den Aufbau des von Neumann Rechners kennengelernt. Er besteht aus Prozessor (Rechen- und Leitwerk), Speicher und der Ein-/Ausgabe. In den folgenden Kapiteln werden wir uns dem Entwurf von Prozessoren zuwenden, die als komplexes Schaltwerk den Kern eines von NEUMANN-Rechners bilden. Wir haben bereits gesehen, daß das Rechenwerk im wesentlichen durch die Datenpfade bestimmt ist. Das Leitwerk steuert diese Datenpfade und die Operationen der ALU. Maschinenbefehle werden also durch die Prozessorhardware interpretiert.
Wolfram Schiffmann, Robert Schmitz
5. CISC-Prozessoren
Zusammenfassung
Die Computer der 1. Generation (1945–1955) benutzten die Röhrentechnik und wurden ausschließlich in Maschinensprache programmiert. Die Einführung problemorientierter Programmiersprachen (High Level Language HLL) vereinfachte die Programmierung und führte zu einer weiten Verbreitung der elektronischen Datenverarbeitung. Da HLL-Programme Gleitkommazahlen und zusammengesetzte Datentypen enthalten, werden auf Maschinenebene umfangreiche Unterprogramme benötigt. Diese Unterprogramme wurden aus Geschwindigkeitsgründen meist in Assembler programmiert und dann in einer Programmbibliothek abgelegt. Trotzdem war das Laufzeitverhalten der compilierten und gebundenen Maschinenprogramme schlecht.
Wolfram Schiffmann, Robert Schmitz
6. RISC-Prozessoren
Zusammenfassung
Seit der Entwicklung der ersten digitalen Rechner wuchs der Umfang und die Komplexität der Befehlssätze stetig an. So hatte 1948 der MARK I nur sieben Maschinenbefehle geringer Komplexität wie z.B. Additions- und Sprungbefehle. Nachfolgende Prozessorarchitekturen versuchten, die semantische Lücke (semantic Gap) zwischen höheren, problemorientierten Sprachen und der Maschinensprache zu schließen. Man versprach sich davon eine Vereinfachung des Compilerbaus, kompakteren Opcode und eine höhere Rechenleistung. Die Entwicklung von CISC-Prozessoren wurde durch die Mikroprogrammierung und immer höhere Integrationsdichten bei der Chipherstellung unterstützt.
Wolfram Schiffmann, Robert Schmitz
7. Leistungsbewertung
Zusammenfassung
Um Computer miteinander vergleichen zu können, braucht man Methoden zur Leistungsbewertung. Es ist verständlich, daß man dabei versucht, die Leistungsfähigkeit durch eine einzige Zahl auszudrücken. Diese Vorgehensweise erleichtert zwar den Vergleich zweier Computer, ist aber äußerst problematisch, weil das resultierende Leistungsmaß sowohl von rechnerspezifischen Größen als auch von der verwendeten Software bestimmt wird. Die Leistung eines Systems, die vom Zusammenspiel von Hardware- und Softwarekomponenten abhängt, läßt sich nicht durch eine einzige Zahl ausdrücken. Es müssen alle Randbedingungen (Cache-Größe, Größe des Hauptspeichers, verwendeter Compiler, usw.), die bei der Ermittlung dieses Leistungsmaßes vorlagen, angegeben werden. Da in der Regel nie die gleichen Randbedingungen vorzufinden sind, ist ein Vergleich anhand skalarer Leistungsmaße mit Vorsicht zu genießen. Dies gilt insbesondere dann, wenn nur die Leistung des Prozessors angegeben wird.
Wolfram Schiffmann, Robert Schmitz
8. Kommunikation
Zusammenfassung
Kommunikation stellt einen wichtigen Aspekt innerhalb der Computertechnik bzw. Rechnerarchitektur dar. Die Tendenz zu verteilten Systemen und Parallelverarbeitung erfordert leistungsfähige Kanäle und Verbindungstopologien. Bevor die Information verarbeitet werden kann, muß sie zu den einzelnen Teilkomponenten (Prozessoren) transportiert werden. Aufgrund der Entfernung der Teilkomponenten kann eine grobe Unterteilung in Intrasystem- und Intersystem-Kommunikation vorgenommen werden. Intrasystem-Kommunikation ist auf Entfernungen bis zu 1m beschränkt. Die miteinander verbundenen Teilkomponenten befinden sich in einem Gehäuse wie z.B. bei einem Personalcomputer. Durch Intersystem-Kommunikation werden zwei oder mehrere räumlich voneinander getrennte Computersysteme miteinander verbunden. Je nach Entfernung unterscheidet man LANs und WANs (Local/Wide Area Networks). LANs erstrecken sich im allgemeinen nur über einige Gebäude (z.B. Universitätscampus); ihre maximale Ausdehnung ist auf einige Kilometer beschränkt. Dagegen können WANs Computersysteme miteinander verbinden, die auf der ganzen Erde verteilt sind (vgl. z.B. [Stallings, 1988], [Tanenbaum, 1996]).
Wolfram Schiffmann, Robert Schmitz
9. Speicher
Zusammenfassung
Jeder Computer enthält verschiedenartige Speicher, um Befehle und Daten für den Prozessor bereitzuhalten. Diese Speicher unterscheiden sich bezüglich Speicherkapazität, Zugriffszeit und Kosten. Es wäre wünschenswert, daß der Prozessor immer mit seiner maximalen Taktrate arbeitet. Leider sind entsprechend schnelle Speicher teuer und haben eine vergleichsweise geringe Speicherkapazität. Deshalb verwendet man in Computersystemen verschiedene Speicher, die nach unterschiedlichen physikalischen Prinzipien arbeiten.
Wolfram Schiffmann, Robert Schmitz
10. Ein-/Ausgabe und Peripheriegeräte
Zusammenfassung
Die Ein-/Ausgabe ist notwendig, um eine Verbindung zwischen einem Computer und seiner Umwelt herzustellen. Zur Umwelt zählen Massenspeicher, andere Computer, Produktionsprozesse und natürlich der Mensch. Zum Anschluß von Peripheriegeräten müssen Schnittstellen am Computer vorgesehen werden. Hierbei kann man zwischen digitalen und analogen Schnittstellen unterscheiden. Wir werden im folgenden die grundlegenden Prinzipien paralleler und serieller Ein-/Ausgabe Bausteine als Vertreter digitaler Schnittstellen behandeln. Da bei der Ein-/Ausgabe oft genaue Zeitbedingungen eingehalten werden müssen, wird auch kurz auf die Zeitgeber (Timer) eingegangen. Bei den analogen Schnittstellen beschränken wir uns auf direkte Umsetzverfahren, die (ohne weitere Zwischengrößen) digital dargestellte Zahlen in entsprechende Spannungen umsetzen (Digital-/Analog Umsetzer) bzw. in der umgekehrten Richtung arbeiten (Analog-/Digital Umsetzer). An Peripheriegeräten wurden diejenigen ausgewählt, mit denen ein Anwender eines Arbeitsplatzrechners am häufigsten konfrontiert wird: Maus, Monitor und Drucker. Die Funktionsprinzipien dieser Peripheriegeräte werden erläutert und anhand von Abbildungen verdeutlicht.
Wolfram Schiffmann, Robert Schmitz
Backmatter
Metadaten
Titel
Technische Informatik 2
verfasst von
PD Dr.-Ing. Wolfram Schiffmann
Dipl.-Phys. Robert Schmitz
Copyright-Jahr
1999
Verlag
Springer Berlin Heidelberg
Electronic ISBN
978-3-662-10241-1
Print ISBN
978-3-540-63404-1
DOI
https://doi.org/10.1007/978-3-662-10241-1