ΗΜΥ 312 -- ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΔΙΑΛΕΞΗ 01: ΕΙΣΑΓΩΓΗ Χάρης Θεοχαρίδης Επ. Καθηγητής, ΗΜΜΥ (ttheocharides@ucy.ac.cy) [Προσαρμογή από Computer Architecture, Hennessy & Patterson, 2005, UCB]
ΔΙΑΔΙΚΑΣΤΙΚΑ Διδάσκων: Χάρης Θεοχαρίδης Γραφείο: Green Park, #110 και ΚΙΟΣ #101Η. Τηλέφωνο: 22892259 Ώρες Γραφείου: Δευτέρα13:00-15:00 (ΚΙΟΣ) και Παρασκευή 12:00-2:00 (ΚΙΟΣ), ή με ραντεβού emai: ttheocharides@ucy.ac.cy Βοηθός: Γιώργος Πλαστήρας Γραφείο: Ερ. Κέντρο ΚΟΙΟΣ emai: gpast01@ucy.ac.cy ΗΜΥ312 Δ01 Εισαγωγή.2
ΔΙΑΔΙΚΑΣΤΙΚΑ (συν.) Διαλέξεις: Δευτέρα και Πέμπτη, 15:00 16:30 Αίθουσα: Πανεπιστημιούπολη, ΧΩΔ02, 012 Φροντιστήριο/Διαλέξεις: Τετάρτη, 16:00 17:00 Αίθουσα: Πανεπιστημιούπολη, ΧΩΔ02, 114 Ιστοσελίδα: http://www.eng.ucy.ac.cy/ttheocharides/courses/ece312 Σύγγραμμα: Computer Architecture, A Quantitive Approach 4 th or 5 th Edition, Hennessy and Patterson Σημειώσεις: pdf στην ιστοσελίδα πριν ή/και μετά τις διαλέξεις ΗΜΥ312 Δ01 Εισαγωγή.3
ΒΑΘΜΟΛΟΓΙΑ Κατ οίκον εργασίες και συμμετοχή στο μάθημα 10% Ενδιάμεση Εξέταση 40% Πέμπτη, 19 Οκτωβρίου, 2017 (Είτε ΕΝΤΟΣ ΤΑΞΗΣ είτε το βράδυ) Τελική Εξέταση (εφ όλης της ύλης) 50% Εβδομάδες Εξετάσεων ΗΜΥ312 Δ01 Εισαγωγή.4
Το Εργαστήριο + Το Φροντιστήριο Το εργαστηριακό μέρος διδάσκεται ως ξεχωριστό μάθημα (ΗΜΥ 314, Τετάρτες @ ΛΑ130) Τα 2 μαθήματα (ΗΜΥ312 και ΗΜΥ 314) είναι συναπαιτούμενα Φροντιστήριο/Διαλέξεις: Τετάρτη, 16:00 17:00 Αίθουσα: Πανεπιστημιούπολη, ΧΩΔ02, 114 Το φροντιστήριο θα διδάσκεται από τον Γιώργο. Θα είναι ευκαιρία για απαντήσεις αποριών, λύσεις στις κατ οίκον εργασίες, και οτιδήποτε άλλο χρειαστείτε. ΗΜΥ312 Δ01 Εισαγωγή.5
ΣΤΟΧΟΙ ΜΑΘΗΜΑΤΟΣ Εισαγωγή στην αρχιτεκτονική ηλεκτρονικών υπολογιστών. Εις βάθος κατανόηση των διαφόρων συνιστωσών που απαρτίζουν τον ηλεκτρονικό υπολογιστή. Ανάλυση απόδοσης και εκτίμηση διαφόρων αρχιτεκτονικών μεθόδων για επεξεργαστή, μνήμη, συστήματα εισόδου/εξόδου δεδομένων, ειδικών εφαρμογών, και παράλληλης επεξεργασίας δεδομένων. ΗΜΥ312 Δ01 Εισαγωγή.6
ΤΙ ΠΡΕΠΕΙ ΝΑ ΞΕΡΕΤΕ (ΗΜΥ 212 και ΗΜΥ 213 ) Προαπαιτούμενα: ΗΜΥ 212 και ΗΜΥ 213 ΚΑΙ αποδεδειγμένη γνώση σε όλα από τα ακόλουθα: o Βασικός Προγραμματισμός Υπολογιστών o Αριθμητικά Συστήματα o Δυαδική Άλγεβρα o Συνδυαστικά και Ακολουθιακά Κυκλώματα o Οργάνωση και βασικά στοιχεία ηλεκτρονικών υπολογιστών ΗΜΥ312 Δ01 Εισαγωγή.7
ΕΝΟΤΗΤΕΣ ΜΑΘΗΜΑΤΟΣ Διαλέξεις: o o o o o 1 βδομάδα για επιρροή της Τεχνολογίας στην Αρχιτεκτονική. 4 βδομάδες μνήμη και χειρισμός δεδομένων, είσοδος/έξοδος. 4 βδομάδες σχεδίαση επεξεργαστών ΙSA, μονάδα λογικής και αριθμητικής, διασωλήνωση, συχνότητα, 3 βδομάδες εισαγωγή στα θέματα παραλληλισμού εντολών, πολυεπεξεργαστών, και επεξεργαστών πολλαπλών νημάτων και πολλαπλών πυρήνων. 1 βδομάδα για επίκαιρα-καυτά θέματα αρχιτεκτονικής. ΗΜΥ312 Δ01 Εισαγωγή.8
ΠΩΣ ΟΡΓΑΝΩΝΕΤΑΙ Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ Η/Υ Επίπεδα περιγραφής Η/Υ Appication Compier Operating System Firmware Memory system Instr. Set Proc. I/O system Instruction Set Architecture Datapath & Contro Digita Design Circuit Design Πολλαπλά επίπεδα περιγραφής/αφαιρετικότητας (eves of abstraction) Συχνές αλλαγές Σχεδίαση, Μέτρηση, και Ανάλυση / Εκτίμηση ΗΜΥ312 Δ01 Εισαγωγή.9
Αρχιτεκτονική By the architecture of a system, I mean the compete and detaied specification of the user interface. As Baauw has said, Where architecture tes what happens, impementation tes how it is made to happen. The Mythica Man-Month, Fred Brooks, pg 45 Αναφερόμενοι στην αρχιτεκτονική ενός συστήματος, εννοούμε την πλήρη και λεπτομερή περιγραφή της διεπαφής με τον χρήστη Δηλαδή, η αρχιτεκτονική μας εξηγεί ΤΙ γίνεται, ενώ η υλοποίηση μας εξηγεί το ΠΩΣ γίνεται. ΗΜΥ312 Δ01 Εισαγωγή.10
Instruction Set Architecture (ISA) Σετ Εντολών ISA: An abstract interface between the hardware and the owest eve software of a machine that encompasses a the information necessary to write a machine anguage program that wi run correcty, incuding instructions, registers, memory access, I/O, and so on.... the attributes of a [computing] system as seen by the programmer, i.e., the conceptua structure and functiona behavior, as distinct from the organization of the data fows and contros, the ogic design, and the physica impementation. Amdah, Baauw, and Brooks, 1964 Enabes impementations of varying cost and performance to run identica software ABI (appication binary interface): The user portion of the instruction set pus the operating system interfaces used by appication programmers. Defines a standard for binary portabiity across computers. ΗΜΥ312 Δ01 Εισαγωγή.11
ISA Type Saes Περιγράφει τους Επεξεργαστές Miions of Processor 1400 1200 1000 800 600 400 200 Other SPARC Hitachi SH PowerPC Motoroa 68K MIPS IA-32 ARM 0 1998 1999 2000 2001 2002 PowerPoint comic bar chart με προσεγγιστικά αποτελέσματα. ΗΜΥ312 Δ01 Εισαγωγή.12
What is Computer Architecture? Appication ΗΜΥ312 Δ01 Εισαγωγή.13 Physics Gap too arge to bridge in one step (but there are exceptions, e.g. magnetic compass) In its broadest definition, computer architecture is the design of the abstraction ayers that aow us to impement information processing appications efficienty using avaiabe manufacturing technoogies.
Abstraction Layers in Modern Systems Origina domain of the computer architect ( 50s- 80s) Appication Agorithm Programming Language Operating System/Virtua Machines Instruction Set Architecture (ISA) Microarchitecture Gates/Register-Transfer Leve (RTL) Circuits Devices Physics Domain of recent computer architecture ( 90s) ΗΜΥ312 Δ01 Εισαγωγή.14
Computing Devices Then ΗΜΥ312 Δ01 Εισαγωγή.15 EDSAC, University of Cambridge, UK, 1949
Computing Devices Now Sensor Nets Smart phones Media Payers Set-top boxes Servers Laptops Games Routers Robots Automobies ΗΜΥ312 Δ01 Εισαγωγή.16 Cameras Supercomputers
Ο Νόμος του Moore Το 1965, ο Gordon Moore προέβλεψε ότι ο αριθμός των transistor που θα μπορούν να υλοποιηθούν σε ένα ολοκληρωμένο κύκλωμα θα διπλασιαζόταν κάθε 18 με 24 μήνες (δηλ., τα transistors αυξάνονται με εκθετικό ρυθμό). Ήταν σωστός!!! το εμπόδιο του ενος εκατομμυρίου transistor/chip ξεπεράστηκε το1980. 2300 transistors, 1 MHz cock (Inte 4004) - 1971 16 Miion transistors (Utra Sparc III) 42 Miion transistors, 2 GHz cock (Inte Xeon) 2001 55 Miion transistors, 3 GHz, 130nm technoogy, 250mm 2 die (Inte Pentium 4) - 2004 140 Miion transistor (HP PA-8500) ΗΜΥ312 Δ01 Εισαγωγή.17
Ο Νόμος του Moore ΗΜΥ312 Δ01 Εισαγωγή.18
ΒΕΛΤΙΩΣΗ ΣΤΗΝ ΑΠΟΔΟΣΗ Performance (SPEC Int) 10000 1000 100 10 MIPS M2000 SUN-4/260 MIPS M/120 1 DEC Apha 4/266 DEC AXP/500 IBM POWER 100 HP 9000/750 IBM RS6000 Inte Pentium 4/3000 DEC Apha 21264A/667 DEC Apha 21264/600 Inte Xeon/2000 DEC Apha 5/500 DEC Apha 5/300 Ρυθμός αύξησης απόδοσης ~ 1.5-1.6 ανά έτος 1987 1989 1991 1993 1995 1997 1999 2001 2003 Year ΗΜΥ312 Δ01 Εισαγωγή.19
ΜΕΓΕΘΟΣ ΜΝΗΜΗΣ DRAM Kbit capacity 1000000 100000 10000 1000 100 10 16K 64K 256K 1M 4M 16M 1976 1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000 2002 Year of introduction 512M 64M 128M 256M Ρυθμός αύξησης χωριτικότητας ~ 4Χ ανά 3 έτη μέχρι 1996 ~ 2Χ ανά 2 έτη μετά 1996 ΗΜΥ312 Δ01 Εισαγωγή.20
ΑΠΟΤΕΛΕΣΜΑΤΑ ΒΕΛΤΙΩΣΗΣ ΤΕΧΝΟΛΟΓΙΑΣ Processor ogic capacity: increases about 30% per year performance: 2x every 1.5 years CockCyce = 1/CockRate 500 MHz CockRate = 2 nsec CockCyce 1 GHz CockRate = 1 nsec CockCyce Memory Disk 4 GHz CockRate = 250 psec CockCyce DRAM capacity: 4x every 3 years, now 2x every 2 years memory speed: 1.5x every 10 years cost per bit: decreases about 25% per year capacity: increases about 60% per year ΗΜΥ312 Δ01 Εισαγωγή.21
Uniprocessor Performance From Hennessy and Patterson, Computer Architecture: A Quantitative Approach, 4th edition, October, 2006 ΗΜΥ312 Δ01 Εισαγωγή.22 VAX : 25%/year 1978 to 1986 RISC + x86: 52%/year 1986 to 2002 RISC + x86:??%/year 2002 to present
The End of the Uniprocessor Era Singe biggest change in the history of computing systems ΗΜΥ312 Δ01 Εισαγωγή.23
Conventiona Wisdom in Computer Architecture Od Conventiona Wisdom: Power is free, Transistors expensive New Conventiona Wisdom: Power wa Power expensive, Transistors free (Can put more on chip than can afford to turn on) Od CW: Sufficient increasing Instruction-Leve Paraeism via compiers, innovation (pipeining, superscaar, out-of-order, specuation, VLIW, ) New CW: ILP wa aw of diminishing returns on more HW for ILP Od CW: Mutipies are sow, Memory access is fast New CW: Memory wa Memory sow, mutipies fast (200 cock cyces to DRAM memory, 4 cocks for mutipy) Od CW: Uniprocessor performance 2X / 1.5 yrs New CW: Power Wa + ILP Wa + Memory Wa = Brick Wa Uniprocessor performance now 2X / 5(?) yrs Sea change in chip design: mutipe cores (2X processors per chip / ~ 2 years) - More, simper processors are more power efficient ΗΜΥ312 Δ01 Εισαγωγή.24
Sea Change in Chip Design Inte 4004 (1971): 4-bit processor, 2312 transistors, 0.4 MHz, 10 micron PMOS, 11 mm 2 chip RISC II (1983): 32-bit, 5 stage pipeine, 40,760 transistors, 3 MHz, 3 micron NMOS, 60 mm 2 chip 125 mm 2 chip, 0.065 micron CMOS = 2312 RISC II+FPU+Icache+Dcache o RISC II shrinks to ~ 0.02 mm 2 at 65 nm o Caches via DRAM or 1 transistor SRAM? Is Processor the new transistor? ΗΜΥ312 Δ01 Εισαγωγή.25
Déjà vu a over again? Mutiprocessors imminent in 1970s, 80s, 90s, today s processors are nearing an impasse as technoogies approach the speed of ight.. David Mitche, The Transputer: The Time Is Now (1989) Transputer was premature Custom mutiprocessors tried to beat uniprocessors Procrastination rewarded: 2X seq. perf. / 1.5 years We are dedicating a of our future product deveopment to muticore designs. This is a sea change in computing Pau Oteini, President, Inte (2004) Difference is a microprocessor companies have switched to mutiprocessors (AMD, Inte, IBM, Sun; a new Appes 2+ CPUs) Procrastination penaized: 2X sequentia perf. / 5 yrs Biggest programming chaenge: from 1 to 2 CPUs ΗΜΥ312 Δ01 Εισαγωγή.26
Probems with Sea Change Agorithms, Programming Languages, Compiers, Operating Systems, Architectures, Libraries, not ready to suppy Thread-Leve Paraeism or Data-Leve Paraeism for 1000 CPUs / chip Architectures not ready for 1000 CPUs / chip Unike Instruction-Leve Paraeism, cannot be soved by computer architects and compier writers aone, but aso cannot be soved without participation of architects Need a reworking of a the abstraction ayers in the computing system stack ΗΜΥ312 Δ01 Εισαγωγή.27
Abstraction Layers in Modern Systems Origina domain of the computer architect ( 50s- 80s) Appication Agorithm Programming Language Operating System/Virtua Machines Instruction Set Architecture (ISA) Microarchitecture Gates/Register-Transfer Leve (RTL) Circuits Devices Physics Parae computing, security, Domain of recent computer architecture ( 90s) Reiabiity, power, Reinvigoration of computer architecture, mid-2000s onward. ΗΜΥ312 Δ01 Εισαγωγή.28
Sea of Change is aso Appication Driven Τι είναι σήμερα ο Ὑπολογιστής; ΗΜΥ312 Δ01 Εισαγωγή.29
ΚΑΤΑΝΟΜΗ ΑΓΟΡΑΣ Miions of Computers 1200 1000 800 600 400 200 0 290 93 3 488 114 3 892 135 4 862 129 4 1122 131 5 1998 1999 2000 2001 2002 Embedded Desktop Servers ΗΜΥ312 Δ01 Εισαγωγή.30
ΠΑΡΑΔΕΙΓΜΑ ΟΡΓΑΝΩΣΗΣ ΣΥΣΤΗΜΑΤΟΣ Σχεδιαστικοί στόχοι, π.χ. 25% κόστος επεξεργαστή 25% κόστος μνήμης Υπόλοιπο σε I/O συστήματα, τροφοδοσία ενέργειας (και cooing), κάσα. Computer CPU Memory Devices Contro Input Datapath Output ΗΜΥ312 Δ01 Εισαγωγή.31
ΠΑΡΑΔΕΙΓΜΑ ΟΡΓΑΝΩΣΗΣ TI SuperSPARC tm TMS390Z50 in Sun SPARCstation20 SuperSPARC MBus Modue Foating-point Unit Integer Unit L2 $ CC MBus DRAM Controer Inst Cache Ref MMU Bus Interface Data Cache Store Buffer L64852 SBus SBus DMA SBus Cards MBus contro M-S Adapter SCSI Ethernet STDIO seria kbd mouse audio RTC Boot PROM Foppy ΗΜΥ312 Δ01 Εισαγωγή.32
MIPS R3000 Instruction Set Architecture Instruction Categories Load/Store Computationa Jump and Branch Foating Point - coprocessor Memory Management Specia Registers R0 - R31 PC HI LO 3 Instruction Formats: a 32 bits wide OP OP OP rs rt rd sa funct rs rt immediate jump target ΗΜΥ312 Δ01 Εισαγωγή.33 Q: Πόσοι γνωρίζετε το MIPS ISA?
ΕΝΑ ΣΗΜΑΝΤΙΚΟ ΘΕΜΑ Program Counter PC (Μετρητής Προγράμματος) Ένα register το οποίο κρατάει την διεύθυνση της επόμενης εντολής που θα εκτελεστεί. Instruction Register (IR) Το register που κρατάει την ίδια την εντολή. ΗΜΥ312 Δ01 Εισαγωγή.34
(vonneumann) Οργάνωση Επεξεργαστή Contro (Μονάδα Ελέγχου) χρειάζεται CPU Memory Devices o Να λάβει εντολές από την Μνήμη Contro Input o Να εκδώσει τα σήματα που χρειάζονται για μεταφορά δεδομένων μεταξύ συστημάτων του επεξεργαστή και οδηγιών ελέγχου Datapath Fetch Output o Να διατηρεί την σωστή σειρά οδηγιών ελέγχου. Exec Datapath (Πλοήγηση Δεδομένων) χρειάζεται Decode o Τα συστήματα τα εκτελεστικά και αριθμητικά συστήματα καθώς και την απαιτούμενη μνήμη για να εκτελεί εντολές o Το σύστημα επικοινωνίας ώστε τα δεδομένα να μπορούν να ταξιδεύουν μεταξύ εκτελεστικών συστημάτων και μνήμης ΗΜΥ312 Δ01 Εισαγωγή.35
RISC - Reduced Instruction Set Computer RISC φιλοσοφία ΗΜΥ312 Δ01 Εισαγωγή.36 fixed instruction engths oad-store instruction sets imited addressing modes imited operations MIPS, Sun SPARC, HP PA-RISC, IBM PowerPC, Inte (Compaq) Apha, Το Instruction Set μετριέται με το πόσο καλά οι μεταγλωττιστές (Compiers) χρησιμοποιούν τις εντολές, παρά κατά πόσο οι προγραμματιστές γλώσσας assemby τις χρησιμοποιούν. Design goas: speed, cost (design, fabrication, test, packaging), size, power consumption, reiabiity, memory space (embedded systems)
CISC - Compex Instruction Set Computer Compex Instruction Set Αυξημένες ικανότητες κάθε οδηγίας εξυπακούουν πιο πολύπλοκο σύστημα διευθύνσεων Motoroa 68000 ----> 14 addressing modes Motoroa 68020 ----> 25 addressing modes Οι Εντολές έχουν διαφορετικό μήκος Ο χρόνος εκτελέσεως τους είναι διαφορετικός Τεχνικές Βελτίωσης Απόδοσης Prefetching Pipeining Super-scaar operation ΗΜΥ312 Δ01 Εισαγωγή.37
ΕΠΟΜΕΝΗ ΔΙΑΛΕΞΗ ΚΑΙ ΚΑΤ ΟΙΚΟΝ ΜΕΛΕΤΗ ΕΠΟΜΕΝΗ ΔΙΑΛΕΞΗ ΙΣΤΟΡΙΚΗ ΑΝΑΔΡΟΜΗ! ΚΑΤ ΟΙΚΟΝ ΜΕΛΕΤΗ o Εισαγωγή - Επανάληψη (οργάνωσης Η/Υ) o Κεφάλαιο 1 o Ιστορική Αναδρομή o Παράρτημα Κ (στο CD) ΠΑΡΑΡΤΗΜΑΤΑ Α, Β, & C (στο βιβλίο) o Επανάληψη οργάνωσης και βασικών αρχών αρχιτεκτονικής Η/Υ (ΗΜΥ212) o Pipeining (Α) o ISA Design (Β) o Memory Hierarchy (C) ΗΜΥ312 Δ01 Εισαγωγή.38