Grundlagen der Rechnerarchitektur



Ähnliche Dokumente
Grundlagen der Rechnerarchitektur

Generation 5: Invisible Computers (ab 1993)

Grundlagen der Rechnerarchitektur. Einführung

N Bit Binärzahlen. Stelle: Binär-Digit:

Grundlagen der Rechnerarchitektur. Einführung

Grundbegriffe. Verarbeiten von Daten. Grundlagen der Rechnerarchitektur Einführung 19

Meilensteine der Rechnerarchitektur. Grundlagen der Rechnerarchitektur Einführung 40

SPEC Power Benchmark. Beispiel: SPECpower_ssj2008 mit 2.3GHz AMD Opteron X (Barcelona) Grundlagen der Rechnerarchitektur Einführung 37

Grundbegriffe. Verarbeiten von Daten. Grundlagen der Rechnerarchitektur Einführung 19

Grundbegriffe. Integrierte Schaltungen. Grundlagen der Rechnerarchitektur Einführung 23

Grundlagen der Rechnerarchitektur. Einführung

Grundlagen der Rechnerarchitektur. Einführung

Grundlagen der Rechnerarchitektur. Einführung

Messen von Zeit und Frequenz

Mikrocontroller Grundlagen. Markus Koch April 2011

Brückenkurs / Computer

Einführung in die Systemprogrammierung

N Bit binäre Zahlen (signed)

Die Geschichte des Computers

Einleitung. Dr.-Ing. Volkmar Sieh WS 2005/2006. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg

Allgemeine Informatik Thema 1 Informatik; Konzepte (II)

FHZ. K01 Geschichte des Computers. Lernziele. Hochschule Technik+Architektur Luzern. Inhalt

Einleitung. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2006/2007

Übersicht. Einleitung. Übersicht. Architektur. Dr.-Ing. Volkmar Sieh WS 2008/2009

Computer-Generationen

Brückenkurs / Computer

Informatik Mensch Gesellschaft. Historische Entwicklung der Informationstechnik (von Anfang bis Heute)

Wichtige Rechnerarchitekturen

Computergruppe Heimerdingen Basiskurs. Karlheinz Wanja & Richard Zeitler

Die Mikroprogrammebene eines Rechners

Die Geschichte der Betriebssysteme: Vom Mainframe zum Smartphone

HISTORISCHES INFORMATIK-MUSEUM DER UNIVERSIDAD POLITECNICA DE MADRID

Staatlich geprüfter EDV-Führerschein

Systemanforderungen (Mai 2014)

Computermuseum WSI. Prof. Dr. Herbert Klaeren

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

B Einführung. 1 Historische Entwicklung. 1 Historische Entwicklung (3) 1 Historische Entwicklung (2)

Grundlagen der Rechnerarchitektur. MIPS Assembler

Computer-Architektur Ein Überblick

Beispiele von Branch Delay Slot Schedules

TO-220 TO-202 TO-92 TO-18. Transistoren mit verschiedenen Gehäusen

Binäre Gleitkommazahlen

2. Negative Dualzahlen darstellen

4D Server v12 64-bit Version BETA VERSION

Präsentation Von Laura Baake und Janina Schwemer

Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München

Daten verarbeiten. Binärzahlen

Daten, Informationen, Kodierung. Binärkodierung

Dipl. Ing. (FH) Ehrenfried Stuhlpfarrer

1. Stellenwerte im Dualsystem

WIE ERHÖHT MAN DIE EFFIZIENZ DES BESTEHENDEN RECHENZENTRUMS UM 75% AK Data Center - eco e.v. 1. Dezember 2009

Zugriff auf OWA Auf OWA kann über folgende URLs zugegriffen werden:

Im Original veränderbare Word-Dateien

Einführung in die Welt der Microcontroller

2.2 Rechnerorganisation: Aufbau und Funktionsweise

32-Bit Microcontroller based, passive and intelligent UHF RFID Gen2 Tag. Zürcher Fachhochschule

Algorithmus, siehe (1)

MAXDATA b.drive. Externe Festplatte mit integrierter Backup Software

Eine Logikschaltung zur Addition zweier Zahlen

1 Aufgaben zu Wie funktioniert ein Computer?

Facharbeit Informatik. Thema:

Von Bits, Bytes und Raid

Smartphone - Betriebssysteme. Smartphone - Betriebssysteme

Grundlagen der Rechnerarchitektur

Teil I: Wat isse ne Mikrokontroller?

Elektromechanische Computer

Zahlensysteme: Oktal- und Hexadezimalsystem

Mikroprozessor als universeller digitaler Baustein

Aufbau und Funktionsweise eines Computers

Technische Voraussetzungen

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

Wissenswertes über binäre Felder

Kap 4. 4 Die Mikroprogrammebene eines Rechners

Installation LehrerConsole (für Version 6.2)

Systemanforderungen Verlage & Akzidenzdruck

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

CHARON-AXP Alpha Hardwarevirtualisierung

Technische Voraussetzungen

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

Computerarithmetik ( )

gibt es verschiedene Betriebssysteme die je nach Gerät und Nutzer installiert werden können.

Vom Smart Dust zum Smart Phone: Verfügbare SensingPlattformen. Adrian Friedli

Informatik - Lehrgang 2000/2001 GRUNDLAGEN

1 Proseminar: Konzepte von Betriebssystem-Komponenten. Thema: Server OS AS/400 Referend: Sand Rainer. Server OS - AS/400

Persona-SVS e-sync GUI/Client Installation

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?

Geschätzte Kundin, geschätzter Kunde

L3. Datenmanipulation

Eigene Dokumente, Fotos, Bilder etc. sichern

Assembler am Beispiel der MIPS Architektur

Programmablauf für die Batch Wlan Komplettpakete mit Windows CE

Kann ein Computer denken?

Ein mobiler Electronic Program Guide

Reporting Services und SharePoint 2010 Teil 1

Berühmte Informatiker

Ribbon- Technologie. WinLine 10.0 an der Startlinie!

Programmieren was ist das genau?

Transkript:

Grundlagen der Rechnerarchitektur Einführung

Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2

Vorlesungsinhalte Binäre Arithmetik MIPS Assembler ARM, x86 und ISA Prinzipien Querschnittsthemen Prozessor Speicher Ein Ausgabe Parallelität Grundlagen der Rechnerarchitektur Einführung 3

Übersicht dieses Vorlesungsabschnitts Grundbegriffe Performance Meilensteine der Rechnerarchitektur Trends Grundlagen der Rechnerarchitektur Einführung 4

Grundbegriffe Grundlagen der Rechnerarchitektur Einführung 5

Rechnertypen Personal Mobile Device (PMD) Mobiltelefon, Tablet Computer Schwerpunkte sind Energie Effizienz Effizienz undechtzeit Desktop Computing Schwerpunkt Preis Performance Server Schwerpunkt Verfügbarkeit, Skalierbarkeit, Durchsatz Cluster/Warehouse Scale Computer l Verwendung für Software as a Service (SaaS) Schwerpunkt Preis PerformancePerformance Subklasse: Supercomputer, Schwerpunkt: Floating Point Performance schnelle interne Netze; abarbeiten von Batch Jobs Embedded Computer d Schwerpunkt : Preis Grundlagen der Rechnerarchitektur Einführung 6

Standard Organisation eines Rechners Speichert Daten Eingabe von Daten Ausgabe von Daten Verarbeitet Daten Bildquelle: David A. Patterson und John L. Hennessy. Computer Organization And Design. 3rd Edition Grundlagen der Rechnerarchitektur Einführung 7

Computer Schichtenmodell Höhere Programmiersprachen Software Assemblersprache Betriebssystem ebssyste Grundlagen der Rechnerarchitektur hit Instruktionssatz Architektur Hardware Mikroarchitektur (Register Transfer Ebene) Logikschaltungen Grundlagen der Digitaltechnik Transistoren Geometrie Bildquelle: Vorlesung Grundlagen der Rechnernetze, Prof. Platzner, (Version 10.09.10) Grundlagen der Rechnerarchitektur Einführung 8

Grundbegriffe Darstellen und Speichern von Daten Dt Grundlagen der Rechnerarchitektur Einführung 9

Binäre Zahlendarstellung Darstellung einer Zahl zu einer beliebigen blibi Basis b: Dezimalwert dieser Zahl zur Basis b: Binärzahlen Beispiel: 1101 two. Was ist der Dezimalwert? Was ist die Binärzahl zu 11 ten? Grundlagen der Rechnerarchitektur Logik und Arithmetik 10

N Bit Binärzahlen N Bit Binärzahlen, Beispiel 16 Bit: Stelle: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Binär-Digit: 0 0 1 0 1 0 0 1 1 1 0 0 1 0 0 0 Least Significant Bit (LSB) und Most Significant Bit (MSB) Nibble (4 Bit): 1010 Byte (8 Bit): 1001 1000 Halfword (16 Bit): 1111 1100 1001 1100 Word (32 Bit): 0110 1101 0010 1010 1111 1100 1001 1100 Grundlagen der Rechnerarchitektur Logik und Arithmetik 11

Hexadezimaldarstellung Hex Bin Hex Bin Hex Bin Hex Bin 0 0000 4 0100 8 1000 c 1100 1 0001 5 0101 9 1001 d 1101 2 0010 6 0110 a 1010 e 1110 3 0011 7 0111 b 1011 f 1111 Binär nach Hexadezimal 1100 1001 0001 1111 Hexadezimal nach Binär AFFE hex Grundlagen der Rechnerarchitektur Logik und Arithmetik 12

Physikalischer Speicher Adresse Inhalt 0x00000000 : 10011001 0x00000001 : 01010111 0x00000002 : 00110011 0x00000003 : 10110100 0x00000004 : 10101111 0x00000005 : 10001000 0x0000000600000006 : 11111000 0x00000007 : 10001101......... 0xfffffffd : 10101111 0xfffffffe : 10111011 0xffffffff : 11111000 Wie viele Bytes können hier insgesamt adressiert werden? Grundlagen der Rechnerarchitektur Assembler 13

Speichergrößen Bezeichnung Anzahl Bytes Gelegentlich für Sekundärspeicher Kilobyte (KB) 2 10 Bytes Megabyte (MB) 2 20 Bytes 10 6 Bytes Gigabyte (GB) 2 30 Bytes 10 9 Bytes Terabyte (TB) 2 40 Bytes 10 12 Bytes Petabyte (PB) 2 50 Bytes 10 15 Bytes Exabyte (EB) 2 60 Bytes 10 18 Bytes Größenordnungen sind ab MB bis auf kleinen Fehler vergleichbar, z.b.: Grundlagen der Rechnerarchitektur Einführung 14

Speichern von längeren Datenblöcken Beispiel: ein Word umfasst 4 Byte Wie legt man ein Word in den Speicher ab? Word: 345455 543453 453543 22325 byte4 byte3 byte2 byte1 base+0 base+1 base+2 base+3 Little Endian Big Endian Grundlagen der Rechnerarchitektur Logik und Arithmetik 15

ASCII Zeichen Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Assembler 16

Unicode Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Assembler 17

Zeichenketten (Strings) Niedrigere Adresse Höhere Adresse Speicher H a l l o W e l t! @ + ^ a % % } } @ @ Wann ist der Text zu Ende? Beispiele: (1) Erste String Position speichert die String Länge (2) String Länge ist in einer separaten Variable gespeichert (3) String Ende wird mit einem speziellen Character markiert (z.b. \0) Grundlagen der Rechnerarchitektur Assembler 18

Grundbegriffe Verarbeiten von Dt Daten Grundlagen der Rechnerarchitektur Einführung 19

Maschinensprache Berechne 0^2 + 1^2 + 2^2 + 3^2 +... + 100^2 Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Einführung 20

Dasselbe Programm in Assembler Assembler Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Einführung 21

Instruction Set Architecture (ISA) Schnittstelle zwischen Hardware und Software ISA bestimmt Art der Speicherzugriffe Verfügbare arithmetische und logische Operationen Typ und Größe der Operanden der Berechnungen Arten von Programmsprüngen g Die Art wie ISA Instruktionen in Maschinensprache codiert werden Wesentliche Klassifikaiton CISC (Complex Instruction Set Computer) p RISC (Reduced Instruction Set Computer) ModerneProzessoren sind RISC (selbst x86 intern) Grundlagen der Rechnerarchitektur Einführung 22

Grundbegriffe Integrierte t Shlt Schaltungen Grundlagen der Rechnerarchitektur Einführung 23

Beispiel eines Mikroprozessors AMD Barcelona Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Einführung 24

Technologien zum Bau von Prozessor und Speicher Bildquellen: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012; de.wikipedia.org/wiki/relais; de.wikipedia.org/wiki/elektronenröhre; de.wikipedia.org/wiki/transistor; de.wikipedia.org/wiki/integrierte_schaltung; upload.wikimedia.org/wikipedia/commons/9/94/vlsi_chip.jp Grundlagen der Rechnerarchitektur Einführung 25

Der Chip Herstellungsprozess Grundlagen der Rechnerarchitektur Einführung 26

Beispiel: 300mm AMD Opteron Wafer Grundlagen der Rechnerarchitektur Einführung 27

Der Chip Herstellungsprozess Grundlagen der Rechnerarchitektur Einführung 28

Performance Grundlagen der Rechnerarchitektur Einführung 29

Definition von Performance Response Time (oder Execution Time) Gesamtzeit zur Abarbeitung einer Aufgabe Throughput (oder Bandwidth) AnzahlAufgaben Aufgaben prozeiteinheit Performance p eines Computers mit Execution Time x: Performance Ratio n zwischen zwei Computern mit Performance p 1 und p 2 bzw. Execution Times x 1 und x 2 : Beispiel: Computer A braucht 10 Sekunden und Computer B braucht 15 Sekunden. Die Performance Ratio n AB zwischen A und B ist: Grundlagen der Rechnerarchitektur Einführung 30

Messen von Zeit und Frequenz CPU Execution Time (oder CPU Time) Zeit die die CPU für die Aufgabe beansprucht wird System Performance Performance auf der Basis von Execution Time CPU Performance Performance auf der Basis von CPU Time Bezeichnung Millisekunde (ms) Mikrosekunde (µs) Nanosekunde (ns) Pikosekunden Anzeil einer Sekunde 10 3 Sekunden 10 6 Sekunden 10 9 Sekunden 10 12 Sekunden Bezeichnung 1/Sekunde Hz 1 KHz 10^3 MHz 10^6 GHz 10^9 Zeit Frequenz Grundlagen der Rechnerarchitektur Einführung 31

Maschinentakt zur Zeitmessung Clock Cycle C l Clock Rate [Hz] bei Clock Periode [s]: Zeit Beispiel Clock Rate bei bei 250 ps Clock Periode? Zusammenhang zwischen CPU Time, Clock Cycles für ein Programm und Clock Periode bzw. Clock Rate: Grundlagen der Rechnerarchitektur Einführung 32

Instruktionsperformance Instruktion 1 Instruktion 2 Inst 3 Instruktion 4 Zeit Clock Cycles per Instruction (CPI) Mittlere Anzahl Cycles pro Instruktion für ein gegebenes Programm oder Programmfragment. Instruction Count Anzahl benötigter Instruktionen für ein gegebenes Programm oder Programmfragment. Zusammenhang zwischen CPU Time, CPI, Instruction Count und Clock Periode bzw. Clock Rate: Grundlagen der Rechnerarchitektur Einführung 33

Zeitmessung zusammengefasst Grundlegende d Messgrößen Hardware oder Software Komponente Beeinflusst bzw. kann beeinflussen Algorithmus Instruction Count, CPI Programmiersprache Instruction Count, CPI Compiler Instruction Count, CPI Instruction Set Architektur Instruction Count, Clock Rate, CPI Einflussfaktoren Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Einführung 34

Performance Messung mittels MIPS? MIPS Millionen Instruktionen pro Sekunde Also für ein Programm mit gegebener Execution Time und Instruction Count: MIPS ist abhängig vom CPI Wert: Grundlagen der Rechnerarchitektur Einführung 35

SPEC CPU Benchmark Beispiel: SPEC CINT 2006 Benchmarks für einen AMD Opteron X4Model 2356 (Barcelona) Was ist das Geometrische Mittel g von x 1,, x n? Grundlagen der Rechnerarchitektur Einführung 36

SPEC Power Benchmark Beispiel: SPECpower_ssj2008 mit 2.3GHz AMD Opteron X4 2356 (Barcelona) und 16GB DDR2 667 und 500GB Disk Grundlagen der Rechnerarchitektur Einführung 37

Zum Abschluss: Amdahls Gesetz ohne Verbesserung mit Verbesserung Verbesserungsfaktor g von F nach F? T exe F F' Ist g gleich dem Speedup für das gesamte Programm? Sei 0 f 1 der Anteil von F an T exe, also f = F/T exe. Was ist der Speedup S? Bildquelle: Vorlesung Grundlagen der Rechnernetze, Prof. Platzner, (Version 10.09.10) Grundlagen der Rechnerarchitektur Einführung 38

Beispiel: Parallel ausführbare Programmkomponente Bildquelle: http://en.wikipedia.org/wiki/amdahl s_law Grundlagen der Rechnerarchitektur Einführung 39

Meilensteine der Rechnerarchitektur Grundlagen der Rechnerarchitektur Einführung 40

Generation 0: Mechanische Computer (1642 1945) Jahr Name Gebaut von Kommentar 1642 Blaise Pascal Addition und Subtraktion mit Mechanischen Elementen. 1673 Gottfried Wilhelm Zusätzlich Multiplikation und Division mit mechanischen Elementen von Leibniz 1834 Analytical Engine Charles Babbage, University of Cambridge Zusätzlich Multiplikation und Division mit mechanischen Elementen. Erster Versuch (mechanische Bauteile waren zu der Zeit noch nicht präzise genug) eines mechanischen Computers mit Speicher, Recheneinheit und Punch Card I/O. Erster Computer Programmierer Ada Augusta Lovelace. 1936 Z1 Konrad Zuse Erster funktionierender automatischer Rechner auf Basis von Relais. Z1 wurde1944 durch Alliierten Bombardierung auf Berlin zerstört. 1937 John Atanasoff, Iowa State College 1940 George Stibbitz, Bell Labs 1944 Mark I Howard Aiken, Harvard Erster Versuch (Idee konnte nach Stand der Technik nicht vollständig umgesetzt werden) eines automatischen Rechners auf Basis von binären Zahlen und Speicher auf Basis von Kondensatoren (DRAM funktioniert noch heute nach dem gleichen Prinzip). Weiterer funktionierender automatischer Rechner auf Basis von Relais. Erster funktionierender auf Relais basierender mechanischer Computer nach der Idee von Babbage. (72 Worte a 23 Dezimalstellen, Instruktionszeit 6 sek.) 1947 Mark II Howard Aiken, Nachfolger von Mark I, der aber durch Beginn des elektronischen Harvard Zeitalters obsolet wurde. Grundlagen der Rechnerarchitektur Einführung 41

Generation 1: Elektronenröhre (1945 1955) Jahr Name Gebaut von Kommentar 1943 COLOSSUS Britische Regierung g Der weltweit erste elektronische Computer. Geheimprojekt der Britischen Regierung, g, um während des zweiten Weltkrieges Codes der Verschlüsselungsmaschine ENIGMA zu knacken. Alan Turing war mit an der Konstruktion des Computers beteiligt. 1946 ENIAC John Mauchley und Seit 1943 vom amerikanischen Militär gefördertes Projekt für den Bau eines es elektronischen e e Computer zur J. Presper Eckert, University of Berechnung von Reichweitentabellen von schwerer Artillerie. (18.000 Röhren, 1.500 Relais, 30 Tonnen, 140 kw Verbrauch) Programmierung güber Schalter und Pennsylvania Jumper Kabel. Vorstellung des ENIAC war Inspiration für viele nachfolgende Computer Projekte. Grundlagen der Rechnerarchitektur Einführung 42

Generation 1: Elektronenröhre (1945 1955) Jahr Name Gebaut von Kommentar 1949 EDSAC Maurice Wilkes, Zum ersten mal Programm gespeichert. University of Cambridge 1951 EDVAC John Mauchley und J. Nachfolgeprojekt des ENIAC Presper Eckert, Eckert Mauchley Corporation 1951 Whirlwind I MIT Erstmals Verwendung von kurzen Wortlängen a 16 Bit. 1951 UNIVAC John Mauchley und J. Presper Eckert, Eckert Mauchley Corporation Der erste in den USA hergestellte kommerzielle Computer. 1952 ILLIAC University of Illinois Weitere Beispiele von Röhrenrechnern 1952 MANIAC Weitzmann Institue Israel seinerzeit. Viele andere wurden auch gebaut 1953 JOHNIAC Rand Coropration Grundlagen der Rechnerarchitektur Einführung 43

Generation 1: Elektronenröhre (1945 1955) Jahr Name Gebaut von Kommentar 1952 IAS John von Neumann und Herman Goldstine Princeton s Institute of Advanced Studies Als ehemaliger Beteiligter des ENIAC Projektes baut John von Neumann am Princeton s Institute of Advanced Studies seine Eigene Version des ENIAC. Der Computer verwendet binäre Arithmetik und speichert das Programm zusammen mit den Daten in einem Speicher. Dieses Konzept, bezeichnet als von Neumann Maschine, wurde von John von Neumann erstmals beschrieben. Es fand auch schon im EDSAC Verwendung. Es ist Basis heutiger Computer. Speicher Die original i von Neumann Maschine Control Unit Arithmetic Logic Unit Accumulator Input Output Grundlagen der Rechnerarchitektur Einführung 44

Generation 1: Elektronenröhre (1945 1955) Jahr Name Gebaut von Kommentar 1953 701 IBM IBM im Computer Sektor bisher mit Herstellung von Lochkarten und Mechanischem h Kartensortiermaschinen tätig. Erster Computer in einer Serie von wissenschaftlichen IBM Rechnern, welche die Industrie innerhalb eines Jahrzehnts Jh ht dominierten. i 1956 704 IBM Nachfolge des 701 mit mehr Speicher (4096 36 Bit Wörter anstatt 2048) und erstmals mit Fließkomma Hardware. 1958 709 IBM Verbesserter 704 und auch letzter von IBM produzierte Reihe von Röhren Computern. Grundlagen der Rechnerarchitektur Einführung 45

Generation 2: Transistoren (1955 1965) Jh Jahr Name Gebaut von Kommentar 1955 TX 0 MIT Lincoln Laboratory 1958 TX 2 MIT Lincoln Laboratory Erster Transistor basierter Computer (16 Bit Maschine). Nachfolger des Whirlwind I. Nachfolger des TX 0 (64K 36 bit Speicher). Rechner auf dem Ivan Sutherland sein revolutionäres Programm SketchPad realisierte. 1959 7090 IBM Transistor Version des IBM 709. Anwendung wissenschaftliches Rechnen. Preis mehrere Millionen. 1959 1401 IBM Kleine geschäftsorientierte ti t Computer. Deutlich günstiger als der 7090. 1961 PDP 1 DEC Ehemaliger TX 0/TX 2 Mitarbeiter Kenneth Olsen gründetet DEC, die mit dem PDP 1 den ersten kommerziellen Minicomputer ähnlich dem TX 0 mit einem innovativen 512x512 Display herstellte. (50 Stück verkauft; 4096 18 Bit Worte; 200.000 Instruktionen/Sek, k dh d.h. hlb halb so schnell wie der seinerzeit schnellste Computer IBM 7090; Kosten $120.000; Kosten eines IBM 7090 betrug Millionen). Studenten t des MIT implementierten t mit Spacewar das erste Video Spiel auf einem PDP 1. Grundlagen der Rechnerarchitektur Einführung 46

Generation 2: Transistoren (1955 1965) Jahr Name Gebaut von Kommentar 1962 7094 IBM Nachfolger des IBM 7090. Cycle Time von 2 Mikrosekunden. 32.536 Wörter mit 36 Bit Länge. 1963 B5000 Burroughs Erste Maschine, mit der auch die Unterstützung von High Level Sprachen (Algol 60, Vorgänger von C und Java) berücksichtigt wurde. 1964 6600 CDC Erster wissenschaftlicher Supercomputer. Fast 10 mal Schneller als der IBM 7094. Designer des 6600 war Seymour Cray. Geschwindigkeit wurde durch hoch parallel arbeitende CPU und parallele Abarbeitung von I/O etc. erreicht. Viele Ideen des 6600 finden sich in modernen Computern wieder. 1965 PDP 8 DEC 12 Bit Maschine. Nachfolger des PDP 1 aber wesentlich billiger (Kosten $16.000). Erster Massenmarkt Computer. Innovation: Single Bus Bus. CPU Speicher Console Terminal Paper Tape I/O Other I/O Der PDP 8 Omnibus Grundlagen der Rechnerarchitektur Einführung 47

Generation 3: Integrierte Schaltungen (1965 1970) Jahr Name Gebaut von Kommentar 1964 360 IBM Erste Computer Produktlinie (z.b. Model 30, 40, 50, 65) von IBM die beides wissenschaftliches (bisher 7094) und kommerzielles (bisher 1401) Rechnen vereinte. Produktlinie basiert auf ICs. Innovationen: eine Assembler Sprache für alle Geräte der Produktlinie, Multiprogramming, Emulation von 1401 und 7094. 1970 PDP 11 DEC DECs IC basierter 16 Bit Nachfolger des PDP 8. Dominierender Minicomputer in den 1970ern. Grundlagen der Rechnerarchitektur Einführung 48

Generation 4: Very Large Scale Integration (ab 1970) Jahr Name Gebaut von Kommentar 1971 Intel 4004 Intel Erster in Serie produzierter Ein Chip Mikroprozessor. (4 Bit Mikroprozessor) 1971 TMS 1000 Gary Boone und Michael Cochran, Erster Mikrocontroller (bestehend aus ROM, RAM, Prozessor, Clock). Einsatzgebiet: Texas Instruments Eingebettete Systeme. 1974 8080 Intel Erste Personal Computer werden als Bastel Kits bestehend aus loser Platine, Kabeln, Netzteil, ggf. Floppy und ICs verkauft. Ein Standard IC ist der Intel 8080. Software gab es keine. Später wurde das CP/M Betriebssystem von Gary Kindall auf 8080ern populär. Grundlagen der Rechnerarchitektur Einführung 49

Generation 4: Very Large Scale Integration (ab 1970) Jahr Name Gebaut von Kommentar 1974 CRAY 1 Cray Erster Vektor Supercomputer. Die Architektur wurde vom Team um Seymour Crayentwickelt entwickelt. Die erste Cray 1 wurde 1976 am Los Alamos National Laboratory in Betrieb genommen und kostete 8,8 Millionen US Dollar. 1976 Apple I Steve Jobs Einer der ersten Personal Computer. Wurde als fertig und Steve bestückte Platine verkauft. Wozniak, Apple 1977 Apple II Steve Jobs und Steve Einer der ersten höchst erfolgreichen massengefertigte Mikrocomputer. Wozniak, Apple 1978 VAX DEC Erster 32 Bit Super Minicomputer 1977 8084 Intel Als Antwort auf den Texas Instruments TMS 1000 Mikrocontroller entwickelt Intel ebenfalls ein Computer System auf einem Chip. Einsatzgebiet beispielsweise in Milliarden von Keyboards. Grundlagen der Rechnerarchitektur Einführung 50

Generation 4: Very Large Scale Integration (ab 1970) Jahr Name Gebaut von Kommentar 1981 IBM PC IBM, Philip Estridge Erster IBM Personal Computer, gefertigt aus kommerziellenkomponenten Komponenten. Intel 8088 alscpu. Der Computer wurde ein Best Seller. Beginn der modernen Personal Computer Ära. Ausgestattet mit MS DOS von Microsoft. 1981 Osborne 1 Osborne Erster tragbarer Personal Computer mit etwa 11 kg Gewicht. 1982 C64 Commodore Personal Computer auf Basis des 6510er 8 Bit Mikroprozessors. Mit 12.5 bis 17 Millionen verkauften Einheiten einer der erfolgreichsten Personal Computer Modelle aller Zit Zeiten. 1983 Lisa Apple Erster Personal Computer mit Maus und Betriebssystem mit grafischer Benutzeroberfläche (GUI). Verkaufte sich wegen des hohen Preises von rund 10.000 US Dollar schlecht. Produktion wurde 1984 wieder eingestellt. 1984 Macintosh Apple Deutlich preisgünstiger, g aber dem Apple Lisa technisch ähnlich. Der Mac wurde zum großen Erfolg. Grundlagen der Rechnerarchitektur Einführung 51

Generation 4: Very Large Scale Integration (ab 1970) Jahr Name Gebaut von Kommentar 1985 386 Intel Mit dem 8088 Erfolg produzierte Intel größere und bessere Versionen. Der 32 Bit Prozessor 386 ist der Vorgänger des Pentium. 1985 MIPS MIPS Erste Kommerzielle RISC Maschine 1985 Atari ST Atari Personal Computer auf Basis des Motorola 68000er. Einer der ersten Computer mit einer Color GUI. (Version des Digital Research's GEM) 1987 SPARC Sun Erste SPARC Prozessor basierte Workstation von Sun 1987 Amiga500 Amiga Personal Computer auf Basis des Motorola 68000er. Einer der besten Multimedia Home Computer seiner Zeit. 1990 RS6000 IBM Erste superskalare Maschine. 1992 Alpha DEC Erster 64 Bit Personal Computer. Grundlagen der Rechnerarchitektur Einführung 52

Generation 5: Invisible Computers (ab 1993) Jahr Name Gebaut von Kommentar 1993 PIC Microchip Technology Erster Mikrocontroller auf Basis von EEPROMs. Diese erlauben das Flashen ohne zusätzliche Hardware und erlaubt damit auch In System Programming. Bemerkung: Mikrocontroller gibt es schon seit 1971. Mikrocontroller finden sich mittlerweile sehr vielen Alltagsgegenständen. 1993 Newton Apple Erster Palmtop Computer. Vorgänger der PDAs. 1993 Simon IBM Erstes Smart Phone welches neben Telefonieren mit einfachen Programmen aufwartet. (Kalender, Email etc.) 1996 Nokia 9000 Nokia Kombination aus PDA von HP und Nokias zu der Zeit best verkauften Mobiltelefon. (unter anderem Email und textbasiertes Browsen) 1997 GS88 Ericson Der Begriff Smartphone wird erstmals von Ericson mit Einführung des GS88 geprägt. 2001 Kyocera 6035 Palm Erstes in den USA weitverbreitetes Smartphone. Limitierte Unterstützung von Web Browsing. 2002 Palm OS Treo Handspring Web Browsing, Email, etc. und Mobile Drittanbieter Applikationen. 2002 BlackBerry RIM Etwa 32 Millionen Kunden December 2009. 2007 iphone Apple Erstes Smartphone mit einem Multi Touch Interface. 2008 HTC Dream HTC Erstes Smartphone auf Basis des Android OS. 2010 Nexus One Google Google bringt das Nexus One Smartphone für Android OS heraus. 2010 Wave S8500 Samsung Bada OS basiertes Smartphone mit einer Million verkaufter Exemplare in den ersten vier Wochen auf dem Markt. Grundlagen der Rechnerarchitektur Einführung 53

Beispiel heutiger Mikrocontoller und Mikroprozessoren Mikroprozessoren Mikrocontroller Architektur Typ Ursprüngliche Spezifikation i durch x86 (beinhaltet Pentium und co.) Beispiel weiterer Hersteller CISC Intel AMD PowerPC RISC Motorola, IBM, Apple Sun SPARC RISC Sun Fujitsu, Texas Instruments MIPS RISC MIPS Technologies Hitachi SuperH RISC Hitachi ARM RISC ARM Limited 68k CISC Motorola TMS320 Texas Instruments Architektur MCS 51 H8 Z8 PIC 68HC08 AVR MSP430 Embedded Herteller Intel Renesas Technologies Zilog Microchip Technology Freescale (ehemals Motorola) Atmel Texas Instruments Grundlagen der Rechnerarchitektur Einführung 54

Trends Grundlagen der Rechnerarchitektur Einführung 55

Moore s Law Bildquelle: en.wikipedia.org/wiki/moores_law Grundlagen der Rechnerarchitektur Einführung 56

Single Prozessor Performance Move to multi-processor RISC Bildquelle: David A. Patterson und John L. Hennessy. Computer Architecture. 5th Edition, 2012 Grundlagen der Rechnerarchitektur Einführung 57

Die Power Wall Leistungsverlust P in Abhängigkeit von kapazitiver Last C, Spannung U und Taktfrequenz f: Bildquelle: David A. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 Grundlagen der Rechnerarchitektur Einführung 58

Alte Verkaufszahlen: Prozessoren Anzahl verkaufter Prozessoren (embedded, 32 bit) bzw. Systeme (desktop, server) Bildquelle: David A. Patterson und John L. Hennessy. Computer Organization And Design. 3rd Edition Grundlagen der Rechnerarchitektur Einführung 59

Alte Verkaufszahlen: ISAs Anzahl verkaufter Prozessoren ( 32 bit) ca. 80% davon für Mobiltelefone Bildquelle: David A. Patterson und John L. Hennessy. Computer Organization And Design. 3rd Edition Grundlagen der Rechnerarchitektur Einführung 60

Zusammenfassung und Literatur Grundlagen der Rechnerarchitektur Einführung 61

Zusammenfassung Computer Architektur bihl beinhaltet Instruction Set Architektur Rechnerorganisation/Mikroarchitektur Hardware ISA als Schnittstelle zwischen Hard und Software Performance ist abhängig vom Produkt der Einzelfaktoren: Instruction Count CPI Clock Cycles Leistungsverbrauch ist heute ein wesentlicher limitierender i i Faktor Ausblick: wesentliche Performanceverbesserungen durch Parallelität Caching Grundlagen der Rechnerarchitektur Einführung 62

Literatur [PattersonHennessy2012] David ida. Patterson und John L. Hennessy, Computer Organization and Design, Fourth Edition, 2012 1.1 Introduction 1.2 Below Your Program 1.3 Under the Covers 1.4 Performance 1.5 The Power Wall 1.7 Real Stuff: Manufacturing and Benchmarking the AMD Opteron X4 1.8 Fallacies and Pitfalls 1.9 Concluding Remarks [HennessyPatterson2012] John L. Hennessy und David A. Patterson, Computer Architecture, Fifth Edition, 2012 1.1 Introduction 1.2 Classes of Computers [Tanenbaum2006] Andrew S Tanenbaum, Structured t Computer Organization, Fifth Edition, 2006 1.1.2 Contemporary Multilevel Machines 1.2 Milestones in Computer Architecture Grundlagen der Rechnerarchitektur Einführung 63