Vorwort | 6 |
Inhaltsverzeichnis | 8 |
1 Einführung | 14 |
1.1 Was ist technische Informatik? | 14 |
1.2 Vom Abakus zum Supercomputer | 16 |
1.3 Wohin geht die Reise? | 33 |
2 Halbleitertechnik | 36 |
2.1 Halbleiter | 37 |
2.1.1 Atommodell von Bohr | 37 |
2.1.2 Reine Halbleiter | 40 |
2.1.3 Dotierte Halbleiter | 42 |
2.2 Integrierte Schaltelemente | 44 |
2.2.1 Halbleiterdioden | 44 |
2.2.2 Bipolartransistoren | 45 |
2.2.3 Feldeffekttransistoren | 49 |
2.3 Chip-Fertigung | 54 |
2.3.1 Produktion integrierter Schaltkreise | 54 |
2.3.2 Integrationsdichte | 60 |
2.4 Übungsaufgaben | 61 |
3 Zahlendarstellung und Codes | 62 |
3.1 Zahlensysteme | 63 |
3.2 Rechnerinterne Zahlenformate | 71 |
3.2.1 Darstellung natürlicher Zahlen | 71 |
3.2.2 Darstellung rationaler Zahlen | 77 |
3.3 Zahlencodes | 84 |
3.3.1 Tetraden-Codes | 84 |
3.3.2 Fehlererkennende Codes | 88 |
3.4 Zeichencodes | 90 |
3.4.1 ASCII-Code | 90 |
3.4.2 ISO 8859 | 92 |
3.4.3 Unicode | 93 |
3.5 Übungsaufgaben | 97 |
4 Boolesche Algebra | 102 |
4.1 Axiomatisierung nach Huntington | 103 |
4.1.1 Mengenalgebra | 104 |
4.1.2 Schaltalgebra | 106 |
4.2 Boolesche Ausdrücke und Aussagen | 108 |
4.2.1 Abgeleitete Operatoren | 110 |
4.2.2 Erfüllbarkeit und Äquivalenz | 113 |
4.2.3 Strukturelle Induktion | 115 |
4.2.4 Dualitätsprinzip | 118 |
4.3 Rechnen in booleschen Algebren | 122 |
4.3.1 Abgeleitete Umformungsregeln | 122 |
4.3.2 Vereinfachung boolescher Ausdrücke | 124 |
4.3.3 Vollständige Operatorensysteme | 130 |
4.4 Normalformdarstellungen | 132 |
4.4.1 Konjunktive und disjunktive Normalform | 132 |
4.4.2 Reed-Muller-Normalform | 135 |
4.4.3 Binäre Entscheidungsdiagramme | 137 |
4.5 Übungsaufgaben | 146 |
5 Schaltnetze | 152 |
5.1 Grundlagen der Digitaltechnik | 153 |
5.1.1 Schaltkreisfamilien | 153 |
5.1.2 MOS-Schaltungstechnik | 158 |
5.1.3 Lastfaktoren | 168 |
5.2 Schaltungssynthese | 169 |
5.2.1 Zweistufige Schaltungssynthese | 170 |
5.2.2 BDD-basierte Schaltungssynthese | 171 |
5.2.3 FDD-basierte Schaltungssynthese | 172 |
5.3 Formelsynthese | 174 |
5.3.1 Funktionale Formelsynthese | 174 |
5.3.2 Relationale Formelsynthese | 176 |
5.3.3 Definitorische Formelsynthese | 177 |
5.4 Komplexitätsanalyse | 180 |
5.5 Zeitverhalten digitaler Schaltungen | 182 |
5.5.1 Signalausbreitung und -verzögerung | 182 |
5.5.2 Störimpulse | 184 |
5.6 Übungsaufgaben | 189 |
6 Minimierung | 194 |
6.1 Minimierungsziele | 195 |
6.2 Karnaugh-Veitch-Diagramme | 199 |
6.2.1 Minimierung partiell definierter Funktionen | 203 |
6.2.2 Konstruktion Hazard-freier Schaltungen | 207 |
6.2.3 Minimierung mehrstelliger Funktionen | 209 |
6.3 Quine-McCluskey-Verfahren | 211 |
6.4 Übungsaufgaben | 216 |
7 Standardschaltnetze | 220 |
7.1 Motivation | 221 |
7.2 Multiplexer und Demultiplexer | 221 |
7.3 Komparatoren | 228 |
7.4 Präfix-Logik | 230 |
7.5 Addierer | 233 |
7.5.1 Halb- und Volladdierer | 233 |
7.5.2 Carry-ripple-Addierer | 235 |
7.5.3 Carry-look-ahead-Addierer | 236 |
7.5.4 Präfix-Addierer | 239 |
7.5.5 Carry-save-Addierer | 241 |
7.6 Inkrementierer | 244 |
7.7 Subtrahierer | 245 |
7.8 Multiplizierer | 246 |
7.8.1 Matrixmultiplizierer | 247 |
7.8.2 Carry-save-Multiplizierer | 250 |
7.8.3 Wallace-Tree-Multiplizierer | 253 |
7.8.4 Dadda-Tree-Multiplizierer | 258 |
7.9 Barrel-Shifter | 261 |
7.10 Arithmetisch-logische Einheit | 263 |
7.11 Programmierbare Logikbausteine | 265 |
7.12 Übungsaufgaben | 268 |
8 Schaltwerke | 276 |
8.1 Digitale Speicherelemente | 277 |
8.1.1 Asynchrone Speicherelemente | 278 |
8.1.2 Taktzustandsgesteuerte Speicherelemente | 282 |
8.1.3 Taktflankengesteuerte Speicherelemente | 285 |
8.1.4 Bevorrechtigte Eingänge | 292 |
8.1.5 CMOS-Implementierung | 293 |
8.2 Vom Flipflop zum Schaltwerk | 296 |
8.2.1 Endliche Automaten | 297 |
8.2.2 Schaltwerksynthese | 300 |
8.3 Übungsaufgaben | 304 |
9 Standardschaltwerke | 310 |
9.1 Register | 311 |
9.1.1 Auffangregister | 311 |
9.1.2 Schieberegister | 313 |
9.1.3 Universalregister | 315 |
9.1.4 Akkumulatoren | 316 |
9.2 Zähler | 319 |
9.2.1 Synchrone Binärzähler | 320 |
9.2.2 Asynchrone Binärzähler | 324 |
9.2.3 Mischzähler | 325 |
9.2.4 Instruktionszähler | 327 |
9.3 Hauptspeicher | 329 |
9.3.1 SRAM-Speicher | 329 |
9.3.2 DRAM-Speicher | 331 |
9.3.3 Fehlererkennung und -korrektur | 338 |
9.4 Übungsaufgaben | 341 |
10 Register-Transfer-Entwurf | 346 |
10.1 Entwurf komplexer Systeme | 347 |
10.1.1 Operationswerksynthese | 349 |
10.1.2 Steuerwerksynthese | 351 |
10.2 Mikroprogrammierung | 354 |
10.3 Übungsaufgaben | 360 |
11 Mikroprozessortechnik | 362 |
11.1 Elemente eines Mikrorechners | 363 |
11.1.1 Von-Neumann-Architektur | 363 |
11.1.2 Aufbau der CPU | 367 |
11.2 Ein einfacher Modellprozessor | 371 |
11.3 Übungsaufgaben | 385 |
12 Rechnerstrukturen | 388 |
12.1 Rechnerklassifikation nach Flynn | 389 |
12.2 Instruktionsarchitekturen | 390 |
12.2.1 CISC-Prozessoren | 391 |
12.2.2 RISC-Prozessoren | 395 |
12.3 Methoden zur Leistungssteigerung | 399 |
12.3.1 Pipelining | 399 |
12.3.2 Cache-Speicher | 404 |
12.4 Leistungsbewertung | 410 |
12.4.1 Maßzahlen zur Leistungsbewertung | 410 |
12.4.2 Benchmarks | 413 |
12.5 Übungsaufgaben | 416 |
Anhang | 422 |
A Symbolschema der DIN 40900 | 424 |
B Notationsverzeichnis | 428 |
C Gesetze der Schaltalgebra | 430 |
D Abkürzungsverzeichnis | 432 |
Literaturverzeichnis | 434 |
Namensverzeichnis | 438 |
Sachwortverzeichnis | 440 |