Turing Weizenbaum von Neumann Die John von Neumann Rechnerarchitektur Rechnerhardware: Mainboard CPU und Cache-Speicher Systembus BIOS und Bootvorgang Arbeitsspeicher North- und Southbridge PCI-Bus AGP / PCI-Express, IDE (ATA / ATAPI), S-ATA (Serial ATA), USB Themenüberblick „Rechnertechnologie I“
hätte, würde ein Flugzeug 500 Dollar kosten und könnte die Erde in 20 Minuten mit 5 Gallonen Treibstoff umrunden. Allerdings hätte es die Größe eines Schuhkartons.“ (Gordon Moore, zitiert nach: Tanenbaum, Andrew S.: Computerarchitektur, S. 43.) Kostenreduzierung Performanz bzw. Performance Ressourcenverbrauch Strukturreduzierung Rechner-/Computerentwicklung
polynominaler Fkt. [Addition] Analytical Engine (Entwurf) Sollte von Dampfmaschine betrieben werden Wäre mehr als 30 Meter lang und 10 Meter breit gewesen Deutet zahlreiche Innovationen und Konzepte an, u.a.: Eingabe (Befehle u. Daten) über Lochkarten Ausgabe über Lochkartenstanzer Speicherwerk Rechenwerk Rechner-/Computerentwicklung Bildnachweis: Detailaufnahme Difference Engine: Carsten Ullrich
in die USA nach Detroit. Studium der Mathematik in Detroit 1963 wechselte er als Associate Professor an das Massachusetts Institute of Technology (MIT), an dem er schließlich von 1970 bis 1988 Professor für Computer Science war. Berühmt wurde Weizenbaum 1966 durch sein Spracherkennungsprogramm ELIZA, das als Meilenstein in der Entwicklung der künstlichen Intelligenz gefeiert wurde und als Prototyp der Chatbots gilt. 1975: „Computer Power and Human Reason“ („Die Macht der Computer und die Ohnmacht der Vernunft“) Intention: Verantwortungsvoller Umgang mit Wissenschaft und Technik Weizenbaum starb im März 2008. Joseph Weizenbaum
ELIZA: „Warum, sagen Sie, haben Sie ein Problem mit Ihrem Auto?“ ----- Benutzer: „Ich habe ein Problem mit meinem Vater.“ ELIZA: „Erzählen Sie mir mehr über Ihre Familie!“ ----- Benutzer: „Krieg ist der Vater aller Dinge.“ ELIZA: „Erzählen Sie mir mehr über Ihre Familie!“ ELIZA
18.000 Vakuumröhren 1500 Relais Gewicht: 30t > 150 kW Programmeingabe von Hand durch Schalter und Kabelstecker an Schalttafeln Verwendungszweck ursprünglich: Berechnung der Flugbahnen von Geschossen Verwendungszweck: Berechnungen über Realisierbarkeit der Wasserstoffbombe John von Neumann Rechner-/Computerentwicklung
Neumann zu Margitta, † 1957 (Washington D.C.) U.a. Arbeiten zur Quantenmechanik, Spieltheorie, Manhattan-Projekt (mit Oppenheimer) Informatik: Von-Neumann-Architektur bzw. Von- Neumann-Rechner: Rechner, in dem Daten und Programm binär codiert in einem Speicher liegen. John von Neumann
Interne Datenwege (Bus-System) Speicherwerk Ein- /Ausgabewerk Steuerwerk Rechenwerk Arbeitsspeicher / Speicherwerk Ein-/Ausgabewerk Interne Datenwege Funktionsweise & Eigenschaften Zahlen werden im Rechner binär dargestellt Universalrechner Programme und Daten werden in einem gemeinsamen Speicher abgelegt Befehle geben nur die Speicheradresse an, wo die Daten abgelegt sind, nicht die Daten selbst Von-Neumann-Architektur
Daten in ein und denselben Speicher, danach Ausführung. Vor von Neumanns Ansatz war das Programm hardwareseitig verschaltet / repräsentiert oder wurde über Lochstreifenkarten schrittweise eingelesen und sofort (sequentiell) verarbeitet. Nun möglich: Sprünge auf vorhergehende und spätere Programmsequenzen Modifikation des Programmcodes während des Programmablaufes Paradigmenwechsel: Übergang vom starren Programmablauf zur flexiblen Programmsteuerung bzw. von der Rechenmaschine zur Datenverarbeitungsmaschine Von-Neumann-Architektur
wird die Verbindung und Datenübertragung zwischen CPU und Speicher über den Systembus zum Von- Neumann-Flaschenhals: Jeglicher Datenverkehr von und zur CPU wird über den internen Bus abgewickelt, dessen Transfergeschwindigkeit langsamer ist, als die Verarbeitungsgeschwindigkeit der CPU. Dieses Problem versucht man in modernen PC's durch die Verwendung von schnellem Cache-Speicher abzuschwächen, der meist in die CPU integriert ist. Von-Neumann-Architektur
Form von Bitfolgen / Bytes im RAM befinden CPU-Bestandteile: Register: Hilfsspeicherzellen, mit ALU verknüpft Breite: z.B. 32 oder 64 Bit ALU: Erwartet Daten / Argumente in Registern, legt Ergebnisse in Registern ab
(in Auszügen) vorgehalten werden, die möglicherweise als nächstes von der CPU benötigt werden. Intention / Ziele: Verringerung der Zugriffszeit bzw. Verringerung der Anzahl der Zugriffe auf den zu cachenden Speicher Von-Neumann Flaschenhals Vorteil: Durch Umgehung des Von-Neumann Flaschenhalses: Steigerung der Ausführungs- und Verarbeitungsgeschwindigkeit von Programmen Nachteil: Schwer vorhersehbar, welche Teile des Hauptspeichers von der CPU im nächsten Schritt benötigt werden Cache-Misses Teuer CPU-Cache
Cache stehen, um das Problem des von-Neumann-Flaschenhalses zu mindern. Funktionsprinzip des Cache: Die CPU fordert ein gesuchtes Datum oder eine gesuchte Instruktion im Cache an. Bei einem Cache-Hit befindet sich das Datum/Instruktion im Cache. Bei einem Cache-Miss (die gewünschte Information befindet sich nicht im Cache) wird ein bestimmter Bereich, der das gesuchte Datum bzw. die gesuchte Instruktion enthält, aus dem Hauptspeicher in den Cache geladen (in der Hoffnung, dass folgende Zugriffe sich auf diesen aktualisierten Bereich beziehen!). CPU-Cache
mehrerer Caches in einer Cache-Hierarchie: Durchnummerierung vom Cache mit der niedrigsten Zugriffszeit (L1) bis zum langsamsten Cache (Ln), z.B. L1 Cache, L2 Cache, etc. Arbeitsweise: Zunächst wird der schnellste Cache durchsucht; enthält der L1 Cache die benötigten Daten nicht, wird der nächste (zumeist langsamere und größere) Cache durchsucht. Cache Hierarchie
ist allgemeines Prinzip Beispiele im Alltag: Buffering: Video-Dateien aus dem Web (z.B. bei youtube) werden gepuffert und anschließend wiedergegeben, um die – im Vergleich zur Festplatte - niedrige Übertragungsrate des Internets auszugleichen Stichw. „Von-Neumann- Flaschenhals“ Cache kann überall da sinnvoll eingesetzt werden, wo Speichermedien unterschiedlicher Geschwindigkeit miteinander kommunizieren. Auch wenn sich in den kommenden Jahren die aktuelle Technik völlig verändert, wird es immer Speicher geben, der schneller ist als anderer. Cache als allgemeines Prinzip
nach unten gehen. Faktum II: Die Speicherkapazität vergrößert sich, je weiter wir nach unten gehen. Faktum III: Die Anzahl der „Bits pro Dollar“ vergrößert sich, je weiter wir nach unten gehen, i.e.: Die Preise für die Speichermedien sinken, je weiter wir uns nach unten bewegen. Speicherhierarchie
der Transistoren, die auf einen Chip (IC, Integrated Circuit) gepackt werden können, alle ~2 Jahre verdoppelt. Die spannende Frage: Wie lange wird Moore‘s Law noch gelten? Moore (2007): 10 – 15 Jahre Strukturgrößen: Intel Core i7 45 bis 32nm nm Nanometer, 10-9 (ein Millionstel Millimeter) Moore‘s Law
Datenleitungen zur Übertragung von Daten zwischen CPU und Peripheriegeräten Leistungsfähigkeit von Systembussen gemessen in Anzahl Bytes, die pro Sekunde übertragen werden können. Systembus-Standards: ISA (Industry Standard Architecture) / EISA (Extended ISA) PCI (Peripheral Component Interconnect) AGP (Accelerated Graphics Port) PCI-E (PCI Express) Rechnerkomponenten: Systembus Bildnachweis: Bus: Les Chatfield, http://commons.wikimedia.org/wiki/File:Brighton_and_Hove_Buses_bus.jpg
Daten und Programme Flüchtige, nicht permanente Speicherung von Daten Z.B. DDR3-1600 SDRAM (Double Data Rate Synchronous Dynamic Random Access Memory) mit 12,8 GB/s Arbeitsspeicher Bildnachweis: RAM-Baustein: http://commons.wikimedia.org/wiki/File:RAM_module_SDRAM_1GiB.jpg http://de.wikipedia.org/w/index.php?title=Datei:Arbeitsspeicher.JPG&filetimestamp=20101009183652
PC-Systemen u.a. den Speichercontroller, der den Datentransfer zwischen CPU und Hauptspeicher verwaltet. Speichercontroller ist über den Frontsidebus (FSB) an die CPU gekoppelt. Synchronisiert den Datentransfer und die Datensteuerung zwischen CPU und AGP- und/oder PCI-Express Grafikkarte. Gemeinsam mit Southbridge bildet die Northbridge den Chipsatz ~2000: Integration der Bestandteile in CPU Chipsatz I: Northbridge
dar, ist die Southbridge zuständig für den Datentransfer und die Datensteuerung zwischen peripheren Geräten (PCI-Steckkarten, IDE- Laufwerke wie Festplatten und DVD-ROM). Kontrolliert neben den angeschlossenen Laufwerken auch die Maus und die Tastatur, sowie verschiedene über USB angeschlossene Geräte, wie z.B. Drucker. Häufig in die Southbridge integriert: Peripheriegeräte wie z.B. OnBoard-Soundlösungen und LAN- Schnittstellen. In moderneren Systemen kann die Southbridge sogar direkt in die Northbridge integriert sein, so z.B. bei nVidia's nForce4 Chipsatz. Chipsatz II: Southbridge Bildnachweis: Southbridge VIA VT82C686B: MOS6502, http://commons.wikimedia.org/wiki/File:Southbridge_VIA_VT82C686B.jpg
Aufgabe 2 Aus welchen Komponenten setzt sich ein von Neumann-Rechner zusammen? Welche Aufgaben haben die einzelnen Komponenten? Aufgabe 3 Welche Problematik wird als der von Neumann-Flaschenhals bezeichnet? Aufgabe 4 Was ist Cache-Speicher? Erörtern Sie bitte „Cache“ als Bestandteil der CPU und „Cache“ / „Caching“ als allgemeines Prinzip. Hausaufgaben