Grundlagen der Rechnerarchitektur
EinführungEinführung
U t A t h dlUnsere erste Amtshandlung:Wir schrauben einen Rechner auf
Grundlagen der Rechnerarchitektur ‐ Einführung 2
Vorlesungsinhalte• Binäre Arithmetik
• MIPS AssemblerMIPS Assembler
• ARM, x86 und ISA‐Prinzipien
• Querschnittsthemen
• Prozessor• Prozessor
• Speicher
• Ein‐Ausgabe
• Parallelität• Parallelität
Grundlagen der Rechnerarchitektur ‐ Einführung 3
Übersicht dieses Vorlesungsabschnitts• Grundbegriffe
• PerformancePerformance
• 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 und EchtzeitSchwerpunkte sind Energie Effizienz und Echtzeit
• Desktop‐Computing– Schwerpunkt Preis‐Performance
• Server– Schwerpunkt Verfügbarkeit, Skalierbarkeit, Durchsatz
l / h l• Cluster/Warehouse‐Scale‐Computer– Verwendung für “Software as a Service (SaaS)”– Schwerpunkt Preis‐PerformanceSchwerpunkt Preis Performance– Subklasse: Supercomputer, Schwerpunkt: Floating‐Point‐Performance
schnelle interne Netze; abarbeiten von Batch‐Jobs
E b dd d C t• Embedded‐Computer– Schwerpunkt : Preis
Grundlagen der Rechnerarchitektur ‐ Einführung 6
Standard‐Organisation eines Rechners
Speichert Daten Eingabe von Daten
Ausgabe von Daten
Grundlagen der Rechnerarchitektur ‐ Einführung 7Bildquelle: David A. Patterson und John L. Hennessy. “Computer Organization And Design”. 3rd Edition
Verarbeitet Daten
Computer‐SchichtenmodellHöhere Programmiersprachen
Betriebssystem
AssemblerspracheSoftware
Grundlagen derR h hit kt
Instruktionssatz‐Architektur
et ebssyste Rechnerarchitektur
Mikroarchitektur(Register‐Transfer Ebene)
LogikschaltungenHardware
Grundlagen der Digitaltechnik
Geometrie
Transistoren
Geometrie
Grundlagen der Rechnerarchitektur ‐ EinführungBildquelle: Vorlesung „Grundlagen der Rechnernetze“, Prof. Platzner, (Version 10.09.10)
8
GrundbegriffeD t ll d S i h D tDarstellen und Speichern von Daten
Grundlagen der Rechnerarchitektur ‐ Einführung 9
Binäre Zahlendarstellungll i hl i b li bi i bDarstellung einer Zahl zu einer beliebigen Basis b:
Dezimalwert dieser Zahl zur Basis b:
Binärzahlen‐Beispiel: 1101two. Was ist der Dezimalwert?
i di i hl ?Was ist die Binärzahl zu 11ten?
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 0Binä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)Nibble (4‐Bit):1010Byte (8‐Bit):Byte (8‐Bit):1001 1000Halfword (16‐Bit):Halfword (16 Bit):1111 1100 1001 1100Word (32‐Bit):
Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 11
0110 1101 0010 1010 1111 1100 1001 1100
HexadezimaldarstellungHex 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
1100 1001 0001 1111Binär nachHexadezimal
AFFEhexHexadezimalnach Binär
AFFEhex
Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 12
Physikalischer SpeicherAd I h ltAdresse Inhalt 0x00000000 : 100110010x00000001 : 01010111
Wie viele Bytes können hier insgesamt adressiert werden?
0x00000001 : 010101110x00000002 : 001100110x00000003 : 101101000x00000004 : 101011110x00000005 : 100010000 00000006 111110000x00000006 : 111110000x00000007 : 10001101............0xfffffffd : 101011110xfffffffe : 101110110 ffffffff 11111000
Grundlagen der Rechnerarchitektur ‐ Assembler 13
0xffffffff : 11111000
Speichergrößen
Bezeichnung Anzahl Bytes Gelegentlich für SekundärspeicherSekundärspeicher
Kilobyte (KB) 210 Bytes
Megabyte (MB) 220 Bytes 106 Bytes
Gigabyte (GB) 230 Bytes 109 Bytes
Terabyte (TB) 240 Bytes 1012 Bytes
Petabyte (PB) 250 Bytes 1015 Bytes
Exabyte (EB) 260 Bytes 1018 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?Wie legt man ein Word in den Speicher ab?
Word:345455 543453 453543 22325345455 543453 453543 22325byte4 byte3 byte2 byte1
base+0 base+1 base+2 base+3 Little‐EndianBig‐Endian
Grundlagen der Rechnerarchitektur ‐ Logik und Arithmetik 15
ASCII‐Zeichen
Grundlagen der Rechnerarchitektur ‐ Assembler 16Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012
Unicode
Grundlagen der Rechnerarchitektur ‐ Assembler 17Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012
Zeichenketten (Strings)
H a l l o W e l t ! @ + ^ a ° % % | } } @ @ Speicher
Niedrigere Adresse Höhere Adresse
p
Wann ist der Text zu Ende? Beispiele:(1) Erste String‐Position speichert die String‐Länge(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
GrundbegriffeV b it D tVerarbeiten von Daten
Grundlagen der Rechnerarchitektur ‐ Einführung 19
Maschinensprache
Grundlagen der Rechnerarchitektur ‐ Einführung 20
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
Dasselbe Programm in Assembler
Assembler
Grundlagen der Rechnerarchitektur ‐ Einführung 21Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012
Instruction‐Set‐Architecture (ISA)• Schnittstelle zwischen Hardware und Software• ISA bestimmt
– Art der Speicherzugriffe– Verfügbare arithmetische und logische Operationen g g p– Typ und Größe der Operanden der Berechnungen– Arten von Programmsprüngeng p g– Die Art wie ISA‐Instruktionen in Maschinensprache codiert werden
• Wesentliche Klassifikaiton– CISC (Complex‐Instruction‐Set‐Computer)( p p )– RISC (Reduced‐Instruction‐Set‐Computer)
• Moderne Prozessoren sind RISC (selbst x86 intern)Moderne Prozessoren sind RISC (selbst x86 intern)
Grundlagen der Rechnerarchitektur ‐ Einführung 22
GrundbegriffeI t i t S h ltIntegrierte Schaltungen
Grundlagen der Rechnerarchitektur ‐ Einführung 23
Beispiel eines Mikroprozessors
AMD Barcelona
Grundlagen der Rechnerarchitektur ‐ Einführung 24Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012
Technologien zum Bau von Prozessor und Speicher
Grundlagen der Rechnerarchitektur ‐ Einführung 25
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
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 PerformanceResponse‐Time (oder Execution‐Time) – Gesamtzeit zur Abarbeitung einer Aufgabe
Throughput (oder Bandwidth) – Anzahl Aufgaben pro ZeiteinheitThroughput (oder Bandwidth) Anzahl Aufgaben pro Zeiteinheit
Performance p eines Computers mit Execution‐Time x:
Performance‐Ratio n zwischen zwei Computern mit Performance p1 und p2 bzw. Execution‐Times x1 und x2:
Beispiel: Computer A braucht 10 Sekunden und Computer B braucht 15 Sekunden DieBeispiel: Computer A braucht 10 Sekunden und Computer B braucht 15 Sekunden. Die Performance‐Ratio nAB 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 Anzeil einer Sekunde
Millisekunde (ms) 10‐3 Sekunden
Bezeichnung 1/Sekunde
Hz 1
Mikrosekunde (µs) 10‐6 Sekunden
Nanosekunde (ns) 10‐9 Sekunden
Pikosekunden 10‐12 Sekunden
KHz 10^3
MHz 10^6
GHz 10^9Pikosekunden 10 12 Sekunden
Zeit Frequenz
GHz 10^9
Grundlagen der Rechnerarchitektur ‐ Einführung 31
Maschinentakt zur Zeitmessung
ZeitCl k C lClock‐Cycle
Clock‐Rate [Hz] bei Clock‐Periode [s]: Beispiel Clock‐Rate bei bei 250 ps Clock‐Periode?Periode?
Zusammenhang zwischen CPU‐Time, Clock‐Cycles für ein Programm und Clock‐Periode g , y gbzw. Clock‐Rate:
Grundlagen der Rechnerarchitektur ‐ Einführung 32
Instruktionsperformance
ZeitInstruktion 1 Instruktion 2 Inst 3 Instruktion 4 …Instruktion 1 Instruktion 2 Inst 3 Instruktion 4
Clock Cycles per Instruction (CPI) – Mittlere Anzahl Cycles pro Instruktion für ein b P d P f tgegebenes Programm oder Programmfragment.
Instruction‐Count – Anzahl benötigter Instruktionen für ein gegebenes Programm oder ProgrammfragmentProgrammfragment.
Zusammenhang zwischen CPU‐Time, CPI, Instruction‐Count und Clock‐Periode bzw. Clock‐Rate:
Grundlagen der Rechnerarchitektur ‐ Einführung 33
Zeitmessung zusammengefasst
G dl d M öß
Hardware‐ oder Software‐Komponente Beeinflusst bzw. kann beeinflussen
Grundlegende Messgrößen
Algorithmus Instruction‐Count, CPI
Programmiersprache Instruction‐Count, CPI
Compiler Instruction Count CPICompiler Instruction‐Count, CPI
Instruction‐Set‐Architektur Instruction‐Count, Clock‐Rate, CPI
Einflussfaktoren
Grundlagen der Rechnerarchitektur ‐ Einführung 34Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012
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 X4 Model 2356 (Barcelona)
Was ist das Geometrische Mittel g von x1, …, xn?
Beispiel: SPEC CINT 2006 Benchmarks für einen AMD Opteron X4 Model 2356 (Barcelona)
Grundlagen der Rechnerarchitektur ‐ Einführung 36
SPEC Power Benchmark
Beispiel: SPECpower_ssj2008 mit 2.3GHz AMD Opteron X4 2356 (Barcelona)
Grundlagen der Rechnerarchitektur ‐ Einführung 37
p p _ j p ( )und 16GB DDR2‐667 und 500GB Disk
Zum Abschluss: Amdahls Gesetzohne Verbesserung mit Verbesserung
Verbesserungsfaktor g von F nach F‘?
F'FTexe
Ist g gleich dem Speedup für das gesamte Programm?
Sei 0 · f · 1 der Anteil von F an Texe, also f = F/Texe. Was ist der Speedup S?
Grundlagen der Rechnerarchitektur ‐ Einführung 38Bildquelle: Vorlesung „Grundlagen der Rechnernetze“, Prof. Platzner, (Version 10.09.10)
Beispiel: Parallel ausführbare Programmkomponente
Grundlagen der Rechnerarchitektur ‐ Einführung 39Bildquelle: http://en.wikipedia.org/wiki/Amdahl‘s_law
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 Elementen1673 Gottfried Wilhelm von Leibniz
Zusätzlich Multiplikation und Division mit mechanischen Elementen.
1834 AnalyticalEngine
Charles Babbage, University of
Erster Versuch (mechanische Bauteile waren zu der Zeit noch nicht präzise genug) eines mechanischen Computers mit Speicher, Engine University of
Cambridge 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 wurde 1944 durch Alliierten Bombardierung auf Berlin zerstörtwurde 1944 durch Alliierten Bombardierung auf Berlin zerstört.
1937 John Atanasoff, Iowa State College
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).
1940 George Stibbitz, Bell Labs
Weiterer funktionierender automatischer Rechner auf Basis von Relais.
1944 Mark I Howard Aiken, Harvard
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
Grundlagen der Rechnerarchitektur ‐ Einführung 41
1947 Mark II Howard Aiken, Harvard
Nachfolger von Mark I, der aber durch Beginn des elektronischen Zeitalters obsolet wurde.
Generation 1: Elektronenröhre (1945‐1955)Jahr Name Gebaut von Kommentar
1943 COLOSSUS Britische Regierung
Der weltweit erste elektronische Computer. Geheimprojekt der Britischen Regierung, um während g g p j g g,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 elektronischen Computer zur auc ey u d
J. PresperEckert, University of
oje t ü de au e es e e t o sc e Co pute uBerechnung von Reichweitentabellen von schwererArtillerie. (18.000 Röhren, 1.500 Relais, 30 Tonnen, 140 kW Verbrauch) Programmierung über Schalter und y
Pennsylvania) g g
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. Presper Eckert, Eckert‐
Nachfolgeprojekt des ENIAC
Mauchley Corporation
1951 Whirlwind I MIT Erstmals Verwendung von kurzen Wortlängen a 16 Bit.Wortlängen a 16 Bit.
1951 UNIVAC John Mauchley und J. Presper Eckert, Eckert‐Mauchley Corporation
Der erste in den USA hergestellte kommerzielle Computer.
Mauchley Corporation
1952 ILLIAC University of Illinois Weitere Beispiele von Röhrenrechnern seinerzeit. Viele andere wurden auch b t
1952 MANIAC Weitzmann Institue Israelgebaut
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
Als ehemaliger Beteiligter des ENIAC‐Projektes baut John von Neumann am Princeton‘s Institute of Advanced
und Herman GoldstinePrinceton‘s
Studies seine Eigene Version des ENIAC. Der Computer verwendet binäre Arithmetik und speichert das Programm zusammen mit den Daten in einem Speicher.
Institute ofAdvancedStudies
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.
Di i i lSpeicher Die original von Neumann Maschine
ControlUnit
ArithmeticLogic Unit
Input
Grundlagen der Rechnerarchitektur ‐ Einführung 44
UnitAccumulator Output
Generation 1: Elektronenröhre (1945‐1955)
Jahr Name Gebaut von Kommentar
1953 701 IBM IBM im Computer‐Sektor bisher mit Herstellung von hk d h h hLochkarten und Mechanischem Kartensortiermaschinen
tätig. Erster Computer in einer Serie von wissenschaftlichen IBM‐Rechnern, welche die Industrie i h lb i J h h t d i i tinnerhalb eines Jahrzehnts dominierten.
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)J h N G b KJahr Name Gebaut von Kommentar
1955 TX‐0 MIT Lincoln Laboratory
Erster Transistor‐basierter Computer (16‐Bit‐Maschine). Nachfolger des Whirlwind I.
1958 TX‐2 MIT Lincoln Laboratory
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. Anwendungwissenschaftliches Rechnen. Preis mehrere Millionen.
1959 1401 IBM Kl i häft i ti t C t D tli h ü ti1959 1401 IBM Kleine geschäftsorientierte 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
k / k d h h lb h llWorte; 200.000 Instruktionen/Sek, d.h. halb so schnell wie der seinerzeit schnellste Computer IBM 7090; Kosten $120.000; Kosten eines IBM 7090 betrug Millionen). St d t d MIT i l ti t it S d
Grundlagen der Rechnerarchitektur ‐ Einführung 46
Studenten des MIT implementierten mit Spacewar das erste Video‐Spiel auf einem PDP‐1.
Generation 2: Transistoren (1955‐1965)Jahr Name Gebaut von KommentarJahr 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 parallelSeymour 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.p
1965 PDP‐8 DEC 12‐Bit Maschine. Nachfolger des PDP‐1 aber wesentlich billiger (Kosten $16.000). Erster Massenmarkt‐Computer. Innovation: Single‐BusInnovation: Single Bus.
CPU Speicher ConsoleTerminal
Paper Tape I/O
Other I/O Der PDP‐8Omnibus
Grundlagen der Rechnerarchitektur ‐ Einführung 47
Generation 3: Integrierte Schaltungen (1965‐1970)h bJahr 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.p
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,
ErsterMikrocontroller (bestehend aus ROM, RAM, Prozessor, Clock). Einsatzgebiet: ,
Texas Instruments, , ) g
Eingebettete Systeme.
1974 8080 Intel Erste Personal‐Computer werden als Bastel‐Kits bestehend aus loser Platine Kabeln Netzteil ggfbestehend 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 / y y8080ern 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 Cray entwickelt Die erste Cray‐1Team um Seymour Cray entwickelt. Die erste Cray‐1 wurde 1976 am Los Alamos National Laboratory in Betrieb genommen und kostete 8,8 Millionen US‐Dollar.
1976 A l I St J b Ei d t P l C t W d l f ti1976 Apple I Steve Jobs und Steve Wozniak, Apple
Einer der ersten Personal‐Computer. Wurde als fertig bestückte Platine verkauft.
Apple
1977 Apple II Steve Jobs und Steve W i k
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
Grundlagen der Rechnerarchitektur ‐ Einführung 50
y p g pMilliarden von Keyboards.
Generation 4: Very Large Scale Integration (ab 1970)
Jahr Name Gebaut von Kommentar
1981 IBM PC IBM, PhilipEstridge
Erster IBM Personal Computer, gefertigt aus kommerziellen Komponenten Intel 8088 als CPU DerEstridge kommerziellen Komponenten. Intel 8088 als CPU. Der Computer wurde ein Best‐Seller. Beginn der modernen Personal‐Computer‐Ära. Ausgestattet mit MS‐DOS von Microsoft.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‐M d ll ll Z itModelle aller 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‐Dollarschlecht. Produktion wurde 1984 wieder eingestellt.
1984 Macintosh Apple Deutlich preisgünstiger, aber dem Apple Lisa technisch
Grundlagen der Rechnerarchitektur ‐ Einführung 51
pp p g g ppähnlich. Der Mac wurde zum großen Erfolg.
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 derbessere 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 seinerEiner 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
Jahr Name Gebaut von Kommentar
Generation 5: „Invisible‐Computers“ (ab 1993)1993 PIC Microchip
TechnologyErster 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ändenMikrocontroller 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 )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 GS881997 GS88 Ericson Der Begriff Smartphone wird erstmals von Ericson mit Einführung des GS88geprä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.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.
Grundlagen der Rechnerarchitektur ‐ Einführung 53
2010 Wave S8500 Samsung Bada‐OS‐basiertes Smartphone mit einer Million verkaufter Exemplare in den ersten vier Wochen auf dem Markt.
Beispiel heutiger Mikrocontoller und Mikroprozessoren
Mikroprozessoren Mikrocontroller
Architektur Typ Ursprüngliche S ifik i
Beispiel i
Architektur Herteller
Spezifikationdurch
weiterer Hersteller
x86 (beinhaltet Pentium und
CISC Intel AMD
MCS‐51 Intel
H8 RenesasTechnologies
Pentium und co.)
PowerPC RISC Motorola, IBM Apple
Z8 Zilog
PIC MicrochipTechnology
IBM, Apple
Sun SPARC RISC Sun Fujitsu, Texas Instruments
MIPS RISC MIPS
68HC08 Freescale(ehemals Motorola)
MIPS RISC MIPS Technologies
Hitachi SuperH RISC Hitachi
AVR Atmel
MSP430 Texas Instruments
ARM RISC ARM Limited
68k CISC Motorola
TMS320 Texas
Embedded
Grundlagen der Rechnerarchitektur ‐ Einführung 54
Instruments
Trends
Grundlagen der Rechnerarchitektur ‐ Einführung 55
Moore‘s Law
Grundlagen der Rechnerarchitektur ‐ Einführung 56Bildquelle: en.wikipedia.org/wiki/Moores_law
Single‐Prozessor‐PerformanceMove to multi-processor
RISCRISC
Grundlagen der Rechnerarchitektur ‐ Einführung 57Bildquelle: David A. Patterson und John L. Hennessy. “Computer Architecture”. 5th Edition, 2012
Die Power‐Wall
Leistungsverlust P in Abhängigkeit von kapazitiver Last C, Spannung U und Taktfrequenz f:
Grundlagen der Rechnerarchitektur ‐ Einführung 58Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012
Alte Verkaufszahlen: Prozessoren
Anzahl verkaufter Prozessoren (embedded ≥ 32 bit) bzw Systeme (desktop server)
Grundlagen der Rechnerarchitektur ‐ Einführung 59
Anzahl verkaufter Prozessoren (embedded, ≥ 32 bit) bzw. Systeme (desktop, server)
Bildquelle: David A. Patterson und John L. Hennessy. “Computer Organization And Design”. 3rd Edition
Alte Verkaufszahlen: ISAsAnzahl verkaufter Prozessoren (≥ 32 bit)
ca. 80% davonfür Mobiltelefone
Grundlagen der Rechnerarchitektur ‐ Einführung 60Bildquelle: David A. Patterson und John L. Hennessy. “Computer Organization And Design”. 3rd Edition
Zusammenfassung und Literatur
Grundlagen der Rechnerarchitektur ‐ Einführung 61
Zusammenfassunghi k b i h l• Computer‐Architektur beinhaltet
– Instruction‐Set‐ArchitekturRechnerorganisation/Mikroarchitektur– Rechnerorganisation/Mikroarchitektur
– Hardware• ISA als Schnittstelle zwischen Hard‐ und SoftwareISA als Schnittstelle zwischen Hard und Software• Performance ist abhängig vom Produkt der Einzelfaktoren:
– Instruction‐Count– CPI– Clock‐Cyclesi b h i h i li h li i i d• Leistungsverbrauch ist heute ein wesentlicher limitierender
Faktor• Ausblick: wesentliche Performanceverbesserungen durch• Ausblick: wesentliche Performanceverbesserungen durch
– Parallelität– Cachingg
Grundlagen der Rechnerarchitektur ‐ Einführung 62
Literatur[P H 2012] D id A P d J h L H[PattersonHennessy2012] David A. Patterson und John L. Hennessy,
„Computer Organization and Design“, Fourth Edition, 20121.1 Introduction1.2 Below Your Program1.3 Under the Covers1.4 Performance1.5 The Power Wall1.7 Real Stuff: Manufacturing and Benchmarking the AMD Opteron X41.8 Fallacies and Pitfalls1.8 Fallacies and Pitfalls1.9 Concluding Remarks
[HennessyPatterson2012] John L. Hennessy und David A. Patterson, Computer Architecture“ Fifth Edition 2012„Computer Architecture , Fifth Edition, 20121.1 Introduction1.2 Classes of Computers
[T b 2006] A d S T b St t d C t[Tanenbaum2006] Andrew S Tanenbaum, „Structured Computer Organization“, Fifth Edition, 20061.1.2 Contemporary Multilevel Machines
l h1.2 Milestones in Computer Architecture
Grundlagen der Rechnerarchitektur ‐ Einführung 63