Rechneraufbau und Rechnerstrukturen (eBook) - Walter Oberschelp, Gottfried Vossen
Fotogalerie Fotogalerie Fotogalerie Fotogalerie Fotogalerie
Fotogalerie Fotogalerie Fotogalerie Fotogalerie Fotogalerie
Fotogalerie

Gottfried Vossen Walter Oberschelp 

Rechneraufbau und Rechnerstrukturen (eBook)

eBook
 
Formate: OL, PDF
versandkostenfrei
innerhalb Deutschlands
35 ebmiles sammeln
Statt EUR 39,80*
EUR 34,80
Sofort per Download lieferbar
Alle Preise inkl. MwSt.
*Preis der gedruckten Ausgabe
-13 %
Bewerten Empfehlen Merken Auf Lieblingsliste


Rechneraufbau und Rechnerstrukturen (eBook)

Das erfolgreiche Standard-Lehrbuch zu den Grundbausteinen und den wichtigsten Architekturprinzipien heutiger Rechner - der ganze Weg vom logischen Bit bis zur modernen Gesamtarchitektur:

Schaltfunktionen - Spezifische Schaltnetze - Überdeckungsproblem als Optimierungsaufgabe - Schaltungen mit Delays - Darstellung von Daten im Rechner - Programmierbare Logische Arrays - VLSI-Schaltungen und -Algorithmen - Organisationsplan eines von-Neumann-Rechners - Architektur und Maschinenbefehle von RISC-Rechnern - CISC-Prozessoren und Rechnersteuerung - System-Software Grundkonzepte und -Modelle der Parallelverarbeitung - Parallelrechner-Architekturen - Rechnernetz-Technik (ISO-Referenz-Modell, Codierung von Daten, Lokale Netze, Globale Netze/Internet).

Prof. Dr. Walter Oberschelp studierte Mathematik, Physik, Astronomie, Philosophie und Mathematische Logik. Nach seiner Habilitation in Hannover lehrte er als Visiting Associate Professor an der University of Illinois (USA). Nach seiner Rückkehr aus den USA übernahm er den Lehrstuhl für Angewandte Mathematik an der RWTH Aachen, den er bis zu seiner Emeritierung im Jahr 1998 inne hatte.

Gottfried Vossen lehrt seit 1993 Informatik am Institut für Wirtschaftsinformatik der Universität Münster. Er studierte, promovierte und habilitierte sich an der RWTH Aachen und war bzw. ist Gastprofessor u.a. an der University of California in San Diego, USA, an der Karlstad Universitet in Schweden, an der University of Waikato in Hamilton, Neuseeland sowie am Hasso-Plattner-Institut für Softwaresystemtechnik in Potsdam. Er ist europäischer Herausgeber der bei Elsevier erscheinenden Fachzeitschrift Information Systems und seit Januar 2004 Vizepräsident der Gesellschaft für Informatik e.V. mit Sitz in Bonn.


Produktinformation

  • Deutsch
  • ISBN-13: 9783486578492
  • ISBN-10: 3486578499
  • Best.Nr.: 25760948
Prof. Dr. Walter Oberschelp lehrte bis zu seiner Emeritierung Angewandte Mathematik an der RWTH Aachen.

Prof. Dr. Gottfried Vossen lehrt Informatik am Institut für Wirtschaftsinformatik der Universität Münster.

Leseprobe zu "Rechneraufbau und Rechnerstrukturen (eBook)"

Kapitel 13 Grund-Konzepte und -Modelle für die Parallelverarbeitung (S. 407)

13.1 VLSI-Algorithmen. Systolische Netze

Die technischen Möglichkeiten zur Herstellung sehr großer integrierter Schaltungen forcieren die Entwicklung von Modellen für Parallelrechner. Eines der beliebtesten ist das klassische Modell der systolischen Netze. Hier wird in gewissem Sinne das Funktioneren des Blutkreislaufs, der durch den systolischen Druck gekennzeichnet ist, simuliert. Wir unterstellen hierzu (ähnlich wie in Abschnitt 5.4), dass die VLSITechnologie Schaltelemente zur Verfügung stellt, welche gewisse (einfache) Funktionen — wie Addition, Multiplikation oder Vergleich von (nicht notwendigen binären) Zahlen — ausführen können und welche auch eine gewisse Speicherkapazität besitzen.

Diese Schaltelemente, für welche wir hier auch die Bezeichnung " Prozessoren" verwenden, seien ferner billig herzustellen und, falls nötig, auch in hinreichend großer Zahl auf einem Chip verfügbar. Wie in der Einführung erwähnt, liegt der praktische Nutzen in der Möglichkeit, größere Aufgaben unter Umständen so in Teilaufgaben zerlegen zu können, dass deren Bearbeitung parallel erfolgen kann.

Dies hat in den letzten Jahrzehnten zur Entwicklung spezifischer Algorithmen für eine Reihe von Problemen (wie z. B. Suchen und Sortieren, Matrizenmultiplikation, Operationen auf Datenbanken, Pattern Matching, Polynom-Multiplikation, Bildverarbeitung) geführt, welche nicht nur schneller arbeiten als die vorher bekannten (sequentiellen) Algorithmen, viele dieser parallelen Algorithmen sind zudem auch darauf ausgelegt, direkt in geeigneter (VLSI-) Hardware ausgeführt zu werden, die softwaremäßige Realisierung (durch ein Programm) tritt dabei in den Hintergrund.

Wir stellen an die Hardware, welche zur Lösung eines bestimmten Problems zur Verfügung stehe, leicht zu erfüllende Anforderungen:

1. Es gibt Prozessoren mit je drei Ein- bzw. Ausgängen (welche an den Ausgängen über Delays verfügen, so dass jedes Ergebnis wenigstens für die Dauer eines Taktes gespeichert werden kann) der in Abbildung 13.1 gezeigten Art. (Diese Anforderung erfolgt nur exemplarisch im Hinblick auf ein von uns angestrebtes Beispiel, Varianten sind denkbar).

2. Die Arbeit eines Prozessors oder mehrerer gekoppelter Prozessoren des unter 1. beschriebenen Typs erfolgt getaktet, also unter der Synchronisation einer globalen Clock. Dies bedeutet insbesondere, dass Inputs in einem festgelegten Taktrhythmus eingelesen und Outputs im gleichen Rhythmus ausgegeben werden. Es sind verschiedene Arten der Kopplung von Prozessoren denkbar. Wir stellen einige davon hier und in den nachfolgenden Abschnitten dieses Kapitels (sowie im nächsten Kapitel) vor, wobei für das Folgende wesentlich ist, dass es zwischen einzelnen, beteiligten Prozessoren nur " lokale" Verbindungen gibt, so dass sich insgesamt eine regelmäßige Struktur ergibt:

(a) Prozessor-Reihe ( " Pipeline"): " Innere" Prozessoren haben jeweils zwei Nachbarn (vgl. Abbildung 13.2).

(b) Prozessor-Feld (Maschen-Verbindung, vgl. Kapitel 14 und dort speziell die Architektur des Rechners Illiac IV): " Innere" Prozessoren haben jeweils vier Nach- barn (vgl. Abbildung 13.3). Man erkennt, dass in diesem Feld eine Parkettierung der Ebene durch Quadrate (oder allgemeiner durch Rechtecke) zugrunde liegt. Hierdurch wird die Kopplung von inneren Prozessoren mit genau vier Nachbarn motiviert.

Inhaltsangabe

Inhaltsverzeichnis ... 5
Auszug ... ... 10
... aus dem Vorwort zur 1. Auflage (Juni 1985) ... 10
... aus dem Vorwort zur 3. Auflage (Juli 1988) ... 11
... aus dem Vorwort zur 6. Auflage (April 1994) ... 12
... aus dem Vorwort zur 7. Auflage (August 1997) ... 15
... aus dem Vorwort zur 9. Auflage(Oktober 2002) ... 16
Vorwort zur zehnten Auflage ... 17
Teil I Bausteine und Lokale Grundkonzepte ... 21
1 Schaltfunktionen und ihre Darstellung ... 25
1.1 Zahlendarstellungen ... 25
1.2 Boolesche Algebra ... 27
1.3 Schaltfunktionen und Boolesche Funktionen ... 31
1.4 Schaltnetze ... 41
1.5 Körpersummendarstellung Boolescher Funktionen ... 47
1.6 NAND- und NOR-Darstellungen ... 49
1.7 Übungen ... 54
1.8 Bibliographische Hinweise ... 58
2 Multiplexer und Addiernetze als spezifische Schaltnetze ... 59
2.1 Vorüberlegungen zur Synthese von Schaltnetzen ... 59
2.2 Multiplexer zur Realisierung Boolescher Funktionen ... 62
2.3 Demultiplexer, Decoder und Encoder ... 71
2.4 Addiernetze mit Halb- und Volladdierern ... 75
2.5 Beschleunigung der Übertragsberechnung ... 79
2.6 Übungen ... 87
2.7 Bibliographische Hinweise und Ergänzungen ... 89
3 Optimierung und Test von Schaltnetzen ... 91
3.1 Vereinfachung von Schaltnetzen ... 91
3.2 Fehlerdiagnose von Schaltnetzen ... 103
3.3 Hasards in Schaltnetzen ... 107
3.4 Übungen ... 116
3.5 Bibliographische Hinweise und Ergänzungen ... 119
4 OBDDs und Komplexität ... 121
4.1 Geordnete binäre Entscheidungs- Diagramme ... 121
4.2 Vereinfachung und Komposition von OBDDs ... 133
4.3 Überdeckungsmatrizen und Minimalüberdeckungen ... 141
4.4 NP-vollständige Probleme ... 145
4.5 Übungen ... 148
4.6 Bibliographische Hinweise ... 150
5 Schaltungen mit Delays ( Schaltwerke) ... 151
5.1 Einführung ... 151
5.2 Zur technischen Realisierung von Delays ... 158
5.3 Addierwerke ... 159
5.4 Lineare Schaltkreise und Anwendungen ... 167
5.5 Übungen ... 177
5.6 Bibliographische Hinweise ... 179
6 Darstellung von Daten im Rechner. Rechnerarithmetik ... 181
6.1 Darstellung ganzer Zahlen. Subtraktion ... 181
6.2 Darstellung von Gleitkomma-Zahlen ... 187
6.3 Rechnerarithmetik, insbesondere Multiplikation ... 193
6.4 Darstellung alphanumerischer Daten ... 198
6.5 Übungen ... 203
6.6 Bibliographische Hinweise ... 206
7 Programmierbare Logik und VLSI ... 209
7.1 Einführung ... 209
7.2 Aufbau eines PLAs ... 210
7.3 Programmierung von PLAs ... 216
7.4 Anwendungen von PLAs: ROMs und Mikroprogrammierung ... 220
7.5 Klassifikation von Logik-Designs ... 227
7.6 Einführung in VHDL ... 232
7.7 VLSI-Schaltungen: Technologie und deren Grenzen ... 236
7.8 Übungen ... 239
7.9 Bibliographische Hinweise ... 241
Teil II Rechnerarchitektur (Globale Konzepte) ... 243
8 Organisationsplan eines Von- Neumann- Rechners ... 247
8.1 Einführung ... 247
8.2 Die Arbeitsweise einer Zentraleinheit ( CPU) ... 252
8.3 Der Speicher ... 254
8.4 Die E/A-Einheit. Das Konzept des Interrupts ... 258
8.5 Busse ... 262
8.6 Klassifikation von Von-Neumann-Rechnern ... 265
8.7 Alternativen zum Von-Neumann-Konzept ... 274
8.8 Übungen ... 277
8.9 Bibliographische Hinweise ... 279
9 Architektur und Maschinenbefehle eines RISC- Prozessors ... 281
9.1 Die Architektur der PowerPC-Familie ... 282
9.2 Befehlsformate und Befehlssatz des PowerPC 601 ... 290
9.3 Assemblerprogrammierung und Beispielprogramme ... 295
9.4 PowerPC-Versionen ... 302
9.5 Übungen ... 304
9.6 Bibliographische Hinweise ... 306
10 Eine Register-Speicher- Architektur. Rechnersteuerung ... 307
10.1 Architektur und Befehle des AT&T WE32100 ... 307
10.2 Assembler, Linker und Lader ... 323
10.3 Rechnersteuerung, insbesondere durch Mikroprogrammierung ... 329
10.4 Übungen ... 338
10.5 Bibliographische Hinweise ... 340
11 Optimierung von Ressourcen- Nutzung und Prozessorleistung ... 343
11.1 Virtuelle Speicherverwaltung ... 344
11.2 Pipelining ... 362
11.3 Dynamisches Scheduling von Instruktionen nach Tomasulo ... 368
11.4 Weitere ILP-Techniken ... 375
11.5 Grenzen der Parallelarbeit: Scheduling bei zwei Prozessoren ... 376
11.6 Übungen ... 381
11.7 Bibliographische Hinweise ... 383
12 Weitere Prozessor-Beispiele ... 387
12.1 Zilog-Prozessoren ... 387
12.2 Intel-Prozessoren ... 392
12.3 Motorola-Prozessoren ... 403
12.4 SPARC-Prozessoren ... 410
12.5 Eingebettete Prozessoren und Systeme ... 415
12.6 Übungen ... 419
12.7 Bibliographische Hinweise und historische Ergänzungen ... 420
Teil III Parallelverarbeitung ( Alternative Rechnerkonzepte) ... 423
13 Grund-Konzepte und - Modelle für die Parallelverarbeitung ... 427
13.1 VLSI-Algorithmen. Systolische Netze ... 427
13.2 SIMD-Rechner. Das Speicherproblem. Die PRAM ... 437
13.3 Kommunikation bei verteiltem Speicher: Superkonzentratoren ... 441
13.4 Spezielle Permutationsnetze: Ring, Shuffle, Mesh, Hypercube ... 445
13.5 Beispiel: Matrix-Multiplikation auf dem Hypercube ... 452
13.6 Routing in programmierbaren Permutationsnetzen. Das -Netz als Bidelta-Netz ... 459
13.7 Universalität von Permutationsnetzen. Die Netze von Benes und Clos ... 464
13.8 Übungen ... 469
13.9 Bibliographische Hinweise und Ergänzungen ... 473
14 Parallelrechner-Architekturen ... 477
14.1 Übersicht ... 477
14.2 SIMD-Architekturen ... 479
14.3 MIMD-Architekturen ... 488
14.4 Netzwerk-Architekturen ... 498
14.5 Übungen ... 500
14.6 Bibliographische Hinweise und Ergänzungen ... 501
15 Grundlagen der Rechnernetz- Technik ... 505
15.1 Einführung ... 505
15.2 Das ISO-Referenz-Modell ... 508
15.3 Codierung von Daten in Netzen ... 519
15.4 Lokale Netze ... 522
15.5 Globale Netze. Das Internet ... 534
15.6 Übungen ... 548
15.7 Bibliographische Hinweise ... 549
Literaturverzeichnis ... 551
Index ... 569

Inhaltsangabe

Schaltfunktionen - Spezifische Schaltnetze - Überdeckungsproblem alsOptimierungsaufgabe - Schaltungen mit Delays - Darstellung von Daten imRechner - Programmierbare Logische Arrays - VLSI-Schaltungen und-Algorithmen - Organisationsplan eines von-Neumann-Rechners -Architektur und Maschinenbefehle von RISC-Rechnern - CISC-Prozessorenund Rechnersteuerung - System-Software Grundkonzepte und -Modelle derParallelverarbeitung - Parallelrechner-Architekturen -Rechnernetz-Technik (ISO-Referenz-Modell, Codierung von Daten, LokaleNetze, Globale Netze/Internet).