Details

Rechnerarchitektur für Dummies


Rechnerarchitektur für Dummies


Für Dummies 1. Aufl.

von: Jürgen Neuschwander

24,99 €

Verlag: Wiley-VCH (D)
Format: EPUB
Veröffentl.: 20.09.2022
ISBN/EAN: 9783527833559
Sprache: deutsch
Anzahl Seiten: 560

DRM-geschütztes eBook, Sie benötigen z.B. Adobe Digital Editions und eine Adobe ID zum Lesen.

Beschreibungen

Dieses Buch bietet eine kompakte, verständliche Einführung in das Thema "Rechnerarchitektur". Alle heute essenziellen Themengebiete werden behandelt. Der Schwerpunkt des Buches liegt auf der systemtechnischen funktionalen Beschreibung von Rechnern, ihren Komponenten und Prozessen, ohne auf die unzähligen Details dedizierter Systeme einzugehen. Die funktionale Darstellung mittels geeigneter Modellierungstechniken erlaubt das grundsätzliche Verständnis dieser Systeme, unabhängig von der jeweiligen Art der Realisierung und dem aktuellen Stand der Technologie. So müssen Sie keine Sorge haben, dass Sie sich bei der Prüfungsvorbereitung in den Details verlieren.
<p>Über den Autor 7</p> <p><b>Einleitung</b> <b>19</b></p> <p>Über dieses Buch 20</p> <p>Törichte Annahmen über den Leser 21</p> <p>Was Sie nicht lesen müssen 22</p> <p>Wie dieses Buch aufgebaut ist 22</p> <p>Teil I: Grundlegendes zu Rechnerarchitekturen 22</p> <p>Teil II: Das Kernelement: Der Prozessor 22</p> <p>Teil III: Das Konzept der Speicherhierarchie 23</p> <p>Teil IV: Vom Nutzen der Parallelverarbeitung 23</p> <p>Teil V: Der Top-Ten-Teil 23</p> <p>Symbole, die in diesem Buch verwendet werden 23</p> <p>Wie es weitergeht 24</p> <p><b>Teil I: Grundlegendes zu Rechnerarchitekturen</b> <b>25</b></p> <p><b>Kapitel 1 Blick aus der Vogelperspektive</b> <b>27</b></p> <p>Das Zeitalter der Computer 27</p> <p>Embedded Systems und Ubiquitous Computing 28</p> <p>Klassen von Rechnern 30</p> <p>Der Begriff »Rechnerarchitektur« 33</p> <p>Die Instruction Set Architecture (ISA) 34</p> <p>Die Mikro-Architekturebene 38</p> <p>Die Definition der Rechnerarchitektur aus meiner Sicht 38</p> <p>Höchstintegration und die Grenzen des Wachstums 39</p> <p>Steigerung der Anzahl der Transistoren auf einem Chip 39</p> <p>Der Performance-Gap 42</p> <p>Alternativen zur Steigerung der Taktrate 44</p> <p>Fortschritte beim automatisierten Entwurf solcher Chips 45</p> <p>Modellierungstechnik 47</p> <p>Aufbaupläne (Instanzennetze) 48</p> <p>Ablaufpläne (Petri-Netze) 51</p> <p><b>Kapitel 2 Leistungsbewertung von Rechnern</b> <b>55</b></p> <p>Überblick über Leistungsmaße 56</p> <p>MIPS und MFLOPS 57</p> <p>Die Prozessorausführungszeit 58</p> <p>Vereinfachung durch den CPI-Wert 61</p> <p>Benchmarkprogramme 63</p> <p>Das Gesetz von Amdahl 67</p> <p><b>Teil II: Das Kernelement: Der Prozessor</b> <b>71</b></p> <p><b>Kapitel 3 Die von Neumann-Maschine</b> <b>73</b></p> <p>Die Komponenten eines von Neumann-Rechners 76</p> <p>Der Prozessor 76</p> <p>Die Ein-/Ausgabeeinheit 77</p> <p>Der Hauptspeicher 78</p> <p>Der Systembus 79</p> <p>Charakteristika der von Neumann-Maschine 80</p> <p>Interpretation der Informationskomponenten 80</p> <p>Befehlszählerprinzip und die Abwicklung eines Programms 84</p> <p>Prozesse und Strukturelemente in einem Rechner 87</p> <p>Komponenten des Operationswerks 94</p> <p>Speicherorganisation 104</p> <p>Klassen von Prozessorarchitekturen 118</p> <p>Das Steuerwerk 124</p> <p><b>Kapitel 4 Programmiermodell und Assemblerprogrammierung</b> <b>139</b></p> <p>Charakteristische Merkmale der Hochsprachen-Programmierung 140</p> <p>Charakteristische Merkmale der maschinennahen Programmierung 140</p> <p>Das Programmiermodell 141</p> <p>Assemblerprogrammierung 143</p> <p>Der Befehlssatz des Prozessors 144</p> <p>Adressierungsarten 150</p> <p>Assemblerprogrammierung am Beispiel 158</p> <p>Ablauf der Assemblierung 166</p> <p>Unterprogrammtechnik 179</p> <p><b>Kapitel 5 Kommunikation und Ausnahmeverarbeitung</b> <b>193</b></p> <p>Datenaustausch über den Systembus 193</p> <p>Zeitverhalten am Systembus 194</p> <p>Synchroner Bus 194</p> <p>Semi-synchroner Systembus 197</p> <p>Asynchroner Systembus 198</p> <p>Bussysteme in der heutigen Praxis 202</p> <p>Bus-Arbitration 203</p> <p>Lokale Bus-Arbitration 203</p> <p>Globale Bus-Arbitration 206</p> <p>Priorisierung mehrerer Master 207</p> <p>Zentrales Verfahren zur Busvergabe 207</p> <p>Dezentrales Verfahren zur Busvergabe 208</p> <p>Erweiterung des Prozessormodells 209</p> <p>Ausnahmeverarbeitung 210</p> <p>Einführung des Abwicklerverwalters 211</p> <p>Klassifizierung von Unterbrechungen und Ausnahmeverarbeitungen 213</p> <p>Priorisierung in einer Interruptebene 222</p> <p>Modellierung des Hardware-Dispatchers 228</p> <p>Ein-/Ausgabe-Interfaces und Synchronisation 234</p> <p>Ein-/ Ausgabe-Interfaces 234</p> <p>Informationelle Struktur eines Interface-Bausteins 235</p> <p>Synchronisation mit peripheren Instanzen 236</p> <p>Synchronisation durch Busy-Waiting 238</p> <p>Synchronisation durch Programmunterbrechung 241</p> <p>Synchronisation durch Handshake-Betrieb 241</p> <p>Direkter Speicherzugriff DMA (Direct Memory Access) 243</p> <p>Der DMA-Controller 246</p> <p>Aufbau eines DMA-Controllers 247</p> <p>Das Kommunikations-Interface PCI-Express 251</p> <p><b>Teil III: Das Konzept der Speicherhierarchie</b> <b>253</b></p> <p><b>Kapitel 6 Speichersysteme im Rechner</b> <b>255</b></p> <p>Der optimale Rechner 255</p> <p>Die Speicherhierarchie 257</p> <p>Inhomogenität und Organisation der Speicherhierarchie 259</p> <p>Lokalitätseigenschaften von Programmen 262</p> <p>Prinzipieller Aufbau von Halbleiter-Speicherbausteinen 263</p> <p>Festwertspeicher 264</p> <p>Schreib-/Lesespeicher 265</p> <p>Speicherzugriffe mittels Blockbuszyklen 271</p> <p>Verschränkung von Speicherbänken (Interleaving) 272</p> <p>Modularer Speicheraufbau 275</p> <p>Organisation des Hauptspeichers 276</p> <p>Praktische Ausprägung des Hauptspeicherzugriffs 278</p> <p>Eine Lösung durch spezielle Chipsätze 280</p> <p>Weitere Bausteintypen für Schreib-/Lesespeicher 283</p> <p>Sekundärspeicher 285</p> <p>Festplatten 286</p> <p>Redundant Array of Inexpensive Disks (RAID) 288</p> <p>Solid State Disks (SSD) 290</p> <p>Unternehmensweite Speichersysteme (NAS und SAN) 290</p> <p>Archivspeicher 292</p> <p>Optische Plattenspeicher 292</p> <p>Magnetbandspeicher 293</p> <p><b>Kapitel 7 Cachespeicher</b> <b>295</b></p> <p>Das Problem der Zykluszeit 296</p> <p>Die Idee des Cachings 296</p> <p>Systemstrukturen für Caches 299</p> <p>Look-aside-Cache 299</p> <p>Look-through-Cache 300</p> <p>Zugriff auf den Cachespeicher 301</p> <p>Lesezugriffe 301</p> <p>Schreibzugriffe 303</p> <p>Die Idee des Assoziativspeichers 306</p> <p>Verdrängungsstrategie und Alterungsinformation 308</p> <p>Arbeitsweise des Cachespeichers 309</p> <p>Trefferrate und Zugriffszeiten 309</p> <p>Cache-Kohärenzproblem 310</p> <p>Kohärenzproblem bei einem Cache-Hit 312</p> <p>Kohärenzproblem bei Copy-back-Verfahren 312</p> <p>Lösung des Kohärenzproblems 313</p> <p>Strukturen von Cachespeichern 315</p> <p>Der voll-assoziative Cachespeicher 316</p> <p>Direkt zuordnender Cache (Direct-mapped Cache) 319</p> <p>Mehrwege-Satz-assoziativer Cache (n-way Set-associative Cache) 322</p> <p>Das MESI-Protokoll 325</p> <p>Cachespeicher-Hierarchie 331</p> <p><b>Kapitel 8 Virtuelle Speicherverwaltung</b> <b>337</b></p> <p>Die Idee des virtuellen Speichers 337</p> <p>Das Problem der Speicherzuweisung 339</p> <p>Die Memory Management Unit (MMU) 343</p> <p>Zusammenfassung: Das Prinzip der virtuellen Speicherverwaltung 344</p> <p>Segmentverwaltung 346</p> <p>Das Seitenverfahren 356</p> <p>Die zweistufige Adressumsetzung 365</p> <p>Virtuelle und reale Cache-Adressierung 368</p> <p>Virtuelle Cache-Adressierung 368</p> <p>Reale Cache-Adressierung 370</p> <p><b>Teil IV: Vom Nutzen der Parallelverarbeitung</b> <b>373</b></p> <p><b>Kapitel 9 Die Idee der Parallelisierung</b> <b>375</b></p> <p>Der Einfluss der Parallelisierung auf die Rechnerarchitektur 376</p> <p>Charakteristika für eine Parallelisierung auf Hardwareebene 377</p> <p>Mikroskopische oder makroskopische Parallelität 378</p> <p>Symmetrische oder asymmetrische Strukturen 379</p> <p>Feinkörnige oder grobkörnige Parallelität 380</p> <p>Implizite oder explizite Parallelität 381</p> <p>Typen paralleler Architekturen – die Taxonomie von Flynn 381</p> <p>Single Instruction Single Data (SISD) 383</p> <p>Single Instruction Multiple Data (SIMD) 383</p> <p>Multiple Instruction Single Data (MISD) 384</p> <p>Multiple Instruction Multiple Data (MIMD) 384</p> <p>Performance von Multiprozessorsystemen und von Multicore-Prozessoren 386</p> <p>Die Harvard-Architektur 389</p> <p>CISC-Rechner und deren Probleme 389</p> <p>Die Idee der RISC-Maschinen 390</p> <p>Die Architektur eines RISC-Prozessors 391</p> <p>Erweiterung der ALU um einen Bypass 395</p> <p>Zusammenfassung 397</p> <p>Synchronisation von Prozessen 398</p> <p>Sequenzielle und parallele Prozesse 398</p> <p>Gegenseitiger Ausschluss von Prozessen 400</p> <p>Binäre Semaphore zur Synchronisation 402</p> <p>Der Test-and-Set- Befehl für Semaphorvariablen 404</p> <p><b>Kapitel 10 Fließbandverarbeitung</b> <b>409</b></p> <p>Die DLX-Pipeline 412</p> <p>Leistungssteigerung durch Pipelining 415</p> <p>Hardwarestruktur einer k-stufigen Pipeline 419</p> <p>Pipeline-Hemmnisse 422</p> <p>Datenabhängigkeiten 423</p> <p>Lösung der Datenkonflikte 429</p> <p>Strukturkonflikte 433</p> <p>Lösungen von Strukturkonflikten 434</p> <p>Steuerflusskonflikte 435</p> <p><b>Kapitel 11 Parallele Pipelines und Superskalarität 441</b></p> <p>Parallelisierung der Programmabwicklung 441</p> <p>Pipelines mit mehreren Ausführungseinheiten 442</p> <p>VLIW-Prozessoren 446</p> <p>Superskalare Prozessoren 449</p> <p>Prinzipielle Architektur einer superskalaren Pipeline 450</p> <p>Sprungzielvorhersage 457</p> <p>Statische Sprungzielvorhersage 459</p> <p>Dynamische Sprungzielvorhersage 459</p> <p>Superskalare Pipeline – eine Verbesserung 464</p> <p>Core-Architektur 466</p> <p>Leistungssteigerung durch Multithreading 468</p> <p>Prozesse 468</p> <p>Threads 469</p> <p>Vorteile des Multithreading 470</p> <p>Simultaneous Multithreading bei superskalaren Pipelines 474</p> <p>Nachteile der auf Performance optimierten Prozessor-Hardware 475</p> <p><b>Kapitel 12 Vom Prozessor zu Rechnersystemen</b> <b>479</b></p> <p>Cluster 480</p> <p>Supercomputer 481</p> <p>Grid Computing 482</p> <p>Virtuelle Maschinen 484</p> <p>Cloud Computing 486</p> <p>Liefermodelle 487</p> <p>Dienstleistungsmodelle 488</p> <p><b>Kapitel 13 Die zukünftige Entwicklung</b> <b>491</b></p> <p>Taktfrequenzen und Miniaturisierung 491</p> <p>Ein neuer Hoffnungsträger – Graphen 493</p> <p>Nanotubes als Speichertechnologie 493</p> <p>Optische Prozessoren 494</p> <p>Architektur und Mikroarchitektur 495</p> <p>Processing-in-Memory 496</p> <p>Neuromorphe Hardware 497</p> <p>Memristor 499</p> <p>Quantencomputer 500</p> <p>Qubits und Quantengatter 500</p> <p>Superposition und Quantenparallelismus 501</p> <p>Quantenverschränkung 503</p> <p>Einsatzgebiete für Quantencomputer 505</p> <p>Ein kurzes Resümee 506</p> <p><b>Teil V: Der Top-Ten-Teil</b><b> 507</b></p> <p><b>Kapitel 14 Zehn Kernthemen zur Rechnerarchitektur</b> <b>509</b></p> <p>Höchstintegration für Rechnerchips 509</p> <p>Die von Neumann-Architektur 510</p> <p>Die Harvard-Architektur und die RISC-Maschinen 511</p> <p>Die Instruction Set Architecture (ISA) 511</p> <p>Die Speicherhierarchie 512</p> <p>Cachespeicher 513</p> <p>Virtueller Speicher 514</p> <p>Fließbandverarbeitung 514</p> <p>Superskalare Prozessoren 516</p> <p>Quantencomputer 516</p> <p><b>Kapitel 15 Mögliche Trugschlüsse</b> <b>519</b></p> <p>Assemblerprogrammierung ist immer schneller 519</p> <p>Die übertragenen Daten pro Zeiteinheit 520</p> <p>Lange Pipelines ergeben eine bessere Performance 520</p> <p>Höhere Cache-Kapazität ergibt bessere Performance 521</p> <p>Von Neumann-Architektur als Auslaufmodell 522</p> <p>Multi-Prozessorsysteme sind stets performanter als Mono-Prozessorsysteme 522</p> <p>Amdahls Gesetz bei parallelen Rechnern 523</p> <p>Flash-Speicher statt Hauptspeicher 523</p> <p>Multicore-Prozessoren in der Taxonomie von Flynn 524</p> <p>Hoher Parallelitätsgrad bei Anwendungssoftware 524</p> <p><b>Kapitel 16 Zehn Selbsttests zum Fachgebiet</b> <b>527</b></p> <p>Selbsttest zu Kapitel 1 527</p> <p>Selbsttest zu Kapitel 2 und 3 528</p> <p>Selbsttest zu Kapitel 4 529</p> <p>Selbsttest zu Kapitel 4 und 5 529</p> <p>Selbsttest zu Kapitel 3 und 6 530</p> <p>Selbsttest zu Kapitel 9 und 10 531</p> <p>Selbsttest zu Kapitel 10 und 11 531</p> <p>Selbsttest zu Kapitel 7 und 11 532</p> <p>Selbsttest zu Kapitel 8 533</p> <p>Selbsttest zu Kapitel 13 533</p> <p>Lösungen zu den Selbsttests 534</p> <p>Wichtige Literatur 535</p> <p>Abbildungsverzeichnis 537</p> <p>Stichwortverzeichnis 545</p>
Jürgen Neuschwander ist Professor für Informatik mit dem Schwerpunkt "Technik der Informations- und Kommunikationssysteme". Er lehrt an der Hochschule für Technik, Wirtschaft und Gestaltung in Konstanz.

Diese Produkte könnten Sie auch interessieren:

Datenbanksysteme für Dummies
Datenbanksysteme für Dummies
von: Wolfgang Gerken
EPUB ebook
20,99 €
IT-Sicherheit für Dummies
IT-Sicherheit für Dummies
von: Rainer W. Gerling, Sebastian R. Gerling
EPUB ebook
20,99 €