6.823 Computer System Architecture

1y ago
3 Views
1 Downloads
844.02 KB
38 Pages
Last View : 1m ago
Last Download : 3m ago
Upload by : Rafael Ruffin
Transcription

6.823 Computer System ArchitectureInstructors: Daniel Sanchez and Joel EmerTA:Hyun Ryong (Ryan) LeeWhat you’llunderstand aftertaking 6.823The processor youbuilt in 6.004September 8, 2021MIT 6.823 Fall 2021L01-1

Computing devices then September 8, 2021MIT 6.823 Fall 2021L01-2

Computing devices nowSeptember 8, 2021MIT 6.823 Fall 2021L01-3

A journey through this space What do computer architects actually do? Illustrate via historical examples––––––Early days: ENIAC, EDVAC, and EDSACArrival of IBM 650 and then IBM 360Seymour Cray – CDC 6600, Cray 1Microprocessors and PCsMulticoresCell phones Focus on ideas, mechanisms, and principles,especially those that have withstood the test oftimeSeptember 8, 2021MIT 6.823 Fall 2021L01-4

Abstraction layersApplicationAlgorithmProgramming LanguageOriginaldomain ofthecomputerarchitect(‘50s-‘80s)Operating System/Virtual MachineInstruction Set Architecture (ISA)MicroarchitectureRegister-Transfer Level (RTL)CircuitsParallel computing,specialization,security, Domain ofcomputerarchitecture (‘90s)Reliability, powerDevicesPhysicsSeptember 8, 2021MIT 6.823 Fall 2021Expansion ofcomputerarchitecture, mid2000s onward.L01-5

Computer Architecture is the designof abstraction layers What do abstraction layers provide?– Environmental stability within generation– Environmental stability across generations– Consistency across a large number of units What are the consequences?– Encouragement to create reusable foundations: Toolchains, operating systems, libraries– Enticement for application innovationSeptember 8, 2021MIT 6.823 Fall 2021L01-6

Technology is the dominant factorin computer designTechnologyTransistorsIntegrated circuitsVLSI (initially)Flash memories, ComputersTechnologyCore memoriesMagnetic tapesDisksComputersTechnologyROMs, RAMsVLSIPackagingLow PowerSeptember 8, 2021ComputersMIT 6.823 Fall 2021L01-7

But Software.As people write programs and use computers,our understanding of programming andprogram behavior improves.This has profound though slower impacton computer architectureModern architects must pay attention tosoftware and compilation issues.TechnologyComputersSoftwareSeptember 8, 2021MIT 6.823 Fall 2021L01-8

Architecture is engineering designunder constraintsFactors to consider: Performance of whole system on target applications– Average case & worst case Cost of manufacturing chips and supporting system Power to run system– Peak power & energy per operation Reliability of system– Soft errors & hard errors Cost to design chips (engineers, computers, CAD tools)– Becoming a limiting factor in many situations, fewer unique chips can bejustified Cost to develop applications and system software– Often the dominant constraint for any programmable deviceAt different times, and for different applications at thesame point in time, the relative balance of these factorscan result in widely varying architectural choicesSeptember 8, 2021MIT 6.823 Fall 2021L01-9

Course InformationAll info kept up to date on the r 8, 2021MIT 6.823 Fall 2021L01-10

Contact times Lectures on Monday and Wednesday– 1:00pm to 2:30pm in room 32-141 Tutorial on Friday– 1:00pm to 2:00pm in room 32-141– Attendance is optional– Additional tutorials will be held in evenings before quizzes Quizzes on Friday (except last quiz)– 1:00pm to 2:30pm in room 32-141– Attendance is NOT optional Instructor office hours– After class or by email appointment TA office hours– Thursday 4-5:30pm @ Stata 32G-725September 8, 2021MIT 6.823 Fall 2021L01-11

“New normal” policies We’re excited to return to the classroom, but wanteveryone to be and feel safe We’ll record videos of lectures and tutorials forstudents who need to miss lecture– Due to isolation/quarantine, visa issues, case spikes, etc.– However, these videos will be best-effort and more basic than foronline classes (e.g., no webcam feed, audio may be worse)– Please do not use these to take 6.823 as an online course When asking questions, please keep your mask on If you feel uncomfortable with any aspect of our inperson interactions, please let us knowSeptember 8, 2021MIT 6.823 Fall 2021L01-12

Online resources & help We use Piazza extensively– Fastest way to get your questions answered– All course announcements are made on Piazza This is not a normal term; if you need help,let us know!– We can be accommodatingSeptember 8, 2021MIT 6.823 Fall 2021L01-13

The course has three modulesModule 1– ISA and Simple In-Order Pipelines– Caches and Virtual Memory– Complex Pipelining and Out-of-Order Execution– Branch Prediction and Speculative ExecutionModule 2– Multithreading and Multiprocessors– Coherence and consistency– On-chip networksModule 3– Microcoding and VLIW– Vector machines and GPUs– Hardware acceleratorsNew– Hardware securitySeptember 8, 2021MIT 6.823 Fall 2021this termL01-14

Textbook and readings “Computer Architecture: A QuantitativeApproach”, Hennessy & Patterson, 5th / 6th ed.– 5th edition available online through MIT Libraries– Recommended, but not necessary Course website lists H&P reading material foreach lecture, and optional readings that providemore in-depth coverageSeptember 8, 2021MIT 6.823 Fall 2021L01-15

Grading Grades are not assigned based on apredetermined curve– Most of you are capable of getting an A 75% of the grade is based on three closed book1.5 hour quizzes– The first two quizzes will be held during the tutorials; the lastone during the last lecture (dates on web syllabus)– We’ll have makeups if needed 25% of the grade is based on four laboratoryexercises No final exam No final projectSeptember 8, 2021MIT 6.823 Fall 2021L01-16

Problem sets & labs Problem sets– One problem set per module, not graded– Intended for private study and for tutorials to help preparefor quizzes– Quizzes assume you are very familiar with the content ofproblem sets Labs– Four graded labs– Based on widely-used PIN tool– Labs 2 and 4 are open-ended challenges You must complete labs & quizzes individually– Please review the collaboration & academic honesty policySeptember 8, 2021MIT 6.823 Fall 2021L01-17

Self evaluation take-home quiz Goal is to help you judge for yourself whether youhave prerequisites for this class, and to helprefresh your memory We assume that you understand digital logic, asimple 5-stage pipeline, and simple caches Please work by yourself on this quiz – not in groups Remember to complete self-evaluation section atend of the quiz Due by Friday (on recitation or send answers to TAmailing list)Please email us if you have concernsabout your ability to take the classSeptember 8, 2021MIT 6.823 Fall 2021L01-18

Early Developments:From ENIAC to the mid 50’sSeptember 8, 2021MIT 6.823 Fall 2021L01-19

Prehistory 1800s: Charles Babbage– Difference Engine (conceived in 1823, first implemented in 1855by Scheutz)– Analytic Engine, the first conception of a general purposecomputer (1833, never implemented) 1890: Tabulating machines Early 1900s: Analog computers 1930s: Early electronic (fixed-function) digitalcomputersSeptember 8, 2021MIT 6.823 Fall 2021L01-20

Electronic Numerical Integratorand Computer (ENIAC) Designed and built by Eckert and Mauchly at theUniversity of Pennsylvania during 1943-45 The first, completely electronic, operational, generalpurpose analytical calculator!– 30 tons, 72 square meters, 200KW Performance– Read in 120 cards per minute– Addition took 200 ms, Division 6 ms Not very reliable!Application:WW-2 EffortBallistic calculationsangle f (location, tail wind, cross wind,air density, temperature, weight of shell,propellant charge, . )September 8, 2021MIT 6.823 Fall 2021L01-21

Electronic Discrete VariableAutomatic Computer (EDVAC) ENIAC’s programming system was external– Sequences of instructions were executed independently of theresults of the calculation– Human intervention required to take instructions “out of order” EDVAC was designed by Eckert, Mauchly, and von Neumannin 1944 to solve this problem– Solution was the stored program computer “program can be manipulated as data” First Draft of a report on EDVAC was published in 1945, butjust had von Neumann’s signature!– Without a doubt the most influential paper in computerarchitectureSeptember 8, 2021MIT 6.823 Fall 2021L01-22

Stored Program ComputerProgram A sequence of instructionsHow to control instruction sequencing?manual controlcalculatorsautomatic controlexternal (paper tape)internalplug boardread-only memoryread-write memoryHarvard Mark I, 1944Zuse’s Z1, WW2ENIACENIACEDVAC194619481947 (concept)– The same storage can be used to store programand dataEDSACSeptember 8, 20211950MIT 6.823 Fall 2021Maurice WilkesL01-23

The Spread of IdeasENIAC & EDVAC had immediate impactbrilliant engineering: Eckert & Mauchlylucid paper: Burks, Goldstein & von bridgeLos AlamosRandIllinoisArgonneUCLA-NBS46-52 Bigelow46-50 Wilkes49-52 Metropolis50-5349-5249-53UNIVAC - the first commercial computer, 1951Alan Turing’s direct influence on these developmentsis often debated by historians.September 8, 2021MIT 6.823 Fall 2021L01-24

Dominant Technology Issue:ReliabilityENIAC18,000 tubes20 10-digit numbers EDVAC4,000 tubes2000 word storagemercury delay linesMean time between failures (MTBF)MIT’s Whirlwind with an MTBF of 20 min. was perhapsthe most reliable machine!Reasons for unreliability:1. Vacuum tubesCOREJ. Forrester19542. Storage mediumAcoustic delay linesMercury delay linesWilliams tubesSelectionsSeptember 8, 2021MIT 6.823 Fall 2021L01-25

Computers in the mid 50’s Hardware was expensive Stores were small (1000 words) No resident system-software! Memory access time was 10 to 50 times slowerthan the processor cycle Instruction execution time was totally dominated by thememory reference time The ability to design complex control circuits toexecute an instruction was the central designconcern as opposed to the speed of decoding or anALU operation Programmer’s view of the machine was inseparablefrom the actual hardware implementationSeptember 8, 2021MIT 6.823 Fall 2021L01-26

Accumulator-based computing Single Accumulator– Calculator designcarried over tocomputersWhy?Registers expensiveSeptember 8, 2021MIT 6.823 Fall 2021L01-27

The Earliest Instruction SetsBurks, Goldstein & von Neumann 1946LOADSTORExxAC M[x]M[x] (AC)ADDSUBxxAC (AC) M[x]MULDIVxxInvolved a quotient registerAC 2 (AC)SHIFT LEFTSHIFT RIGHTJUMPJGExxPC xif (AC) 0 then PC xLOAD ADRSTORE ADRxxAC Extract address field(M[x])Typically less than 2 dozen instructions!September 8, 2021MIT 6.823 Fall 2021L01-28

Programming:Single Accumulator MachineCi Ai Bi, 1 i DONEONENABCLOOPABCNONE-n1codeProblem?How to modify the addresses A, B and C ?September 8, 2021MIT 6.823 Fall 2021L01-29

Self-Modifying CodeLOOPLOADJGEADDSTOREF1LOADF2ADDF3STOREJUMP ADRLOADDONE ADDHLTSTORE ADRmodify theLOAD ADRprogramADDfor the nextSTORE ADRiterationLOAD ADRADDSTORE ADRJUMPDONE HLTSeptember 8, 2021NDONEONENABCLOOPF1ONEF1F2ONEF2F3ONEF3LOOPCi Ai Bi, 1 i nMIT 6.823 Fall 2021Each iteration involvestotal res10854Most of the executedinstructions are forbookkeeping!L01-30

Processor-Memory Bottleneck:Early Solutions Indexing capability– to reduce bookkeeping instructionsMemory Fast local storage in the processor– 8-16 registers as opposed to one accumulator– to reduce loads/storesProcessor Complex instructions– to reduce instruction fetches Compact instructions– implicit address bits for operands– to reduce instruction fetch costSeptember 8, 2021MIT 6.823 Fall 2021L01-31

Index RegistersTom Kilburn, Manchester University, mid 50’sOne or more specialized registers to simplifyaddress calculationModify existing instructionsLOADADD.x, IXx, IXAC M[x (IX)]AC (AC) M[x (IX)]Add new instructions to manipulate index registersJZix, IXLOADi.x, IXif (IX) 0 then PC xelse IX (IX) 1IX M[x] (truncated to fit IX)Index registers have accumulator-likecharacteristicsSeptember 8, 2021MIT 6.823 Fall 2021L01-32

Using Index RegistersCi Ai Bi, 1 i nLOOPDONELOADiJZiLOADADDSTOREJUMPHALTN, IXDONE, IXLASTA, IXLASTB, IXLASTC, IXLOOPAN starts with -nLASTA Program does not modify itself Efficiency has improved dramatically (ops / iter) with index regs without index regsinstruction fetch17 (14)5(2)operand fetch10 (8)2store5 (4)1Costs?- Complex control- Index register computations (ALU-like circuitry)- Instructions 1 to 2 bits longerSeptember 8, 2021MIT 6.823 Fall 2021L01-33

Operations on Index RegistersTo increment index register by kAC (IX)AC (AC) kIX (AC)new instructionnew instructionalso the AC must be saved and restoredIt may be better to increment IX directlyINCik, IXIX (IX) kMore instructions to manipulate index registerSTOREi.x, IXM[x] (IX) (extended to fit a word)IX begins to look like an accumulator several index registersseveral accumulators General Purpose RegistersSeptember 8, 2021MIT 6.823 Fall 2021L01-34

Evolution of Addressing Modes1. Single accumulator, absolute addressLOADx2. Single accumulator, index registersLOADx, IXLOAD(x)3. Indirection4. Multiple accumulators, index registers, indirectionorLOADR, IX, xLOADR, IX, (x)the meaning?R M[M[x] (IX)]or R M[M[x (IX)]]5. Indirect through registersLOADRI, (RJ)LOADRI, RJ, (RK)6. The worksSeptember 8, 2021MIT 6.823 Fall 2021RJ index, RK base addrL01-35

Variety of Instruction Formats Three address formats: One destination and up totwo operand sources per instruction(Reg op Reg) to Reg(Reg op Mem) to RegRI (RJ) op (RK)RI (RJ) op M[x]– x can be specified directly or via a register– effective address calculation for x could includeindirection, .indexing, Two address formats: the destination is same asone of the operand sources(Reg op Reg) to Reg(Reg op Mem) to RegSeptember 8, 2021RI (RI) op (RJ)RI (RI) op M[x]MIT 6.823 Fall 2021L01-36

More Instruction Formats One address formats: Accumulatormachines– Accumulator is always other implicit operand Zero address formats: operands on a stackaddloadM[sp-1] M[sp] M[sp-1]M[sp] M[M[sp]]RegisterSP– Stack can be in registers or in memory– usually top of stack cached in registersABCMemoryMany different formats are possible!September 8, 2021MIT 6.823 Fall 2021L01-37

Instruction sets in the mid 50’s Great variety of instruction sets, but all intimatelytied to implementation details Programmer’s view of the machine was inseparablefrom the actual hardware implementation!Next Lecture:Instruction Set Architectures:Decoupling Interface andImplementationSeptember 8, 2021MIT 6.823 Fall 2021L01-38

Computer Architecture is the design of abstraction layers What do abstraction layers provide? Environmental stability within generation Environmental stability across generations Consistency across a large number of units What are the consequences? Encouragement to create reusable foundations: Toolchains, operating systems, libraries

Related Documents:

What is Computer Architecture? “Computer Architecture is the science and art of selecting and interconnecting hardware components to create computers that meet functional, performance and cost goals.” - WWW Computer Architecture Page An analogy to architecture of File Size: 1MBPage Count: 12Explore further(PDF) Lecture Notes on Computer Architecturewww.researchgate.netComputer Architecture - an overview ScienceDirect Topicswww.sciencedirect.comWhat is Computer Architecture? - Definition from Techopediawww.techopedia.com1. An Introduction to Computer Architecture - Designing .www.oreilly.comWhat is Computer Architecture? - University of Washingtoncourses.cs.washington.eduRecommended to you b

Introduction to PIN Hyun Ryong(Ryan) Lee 6823-tas@csail.mit.edu Adapted from: Prior 6.823 offerings, and Intel’s Tutorial at CGO 2010 2/19/2021 6.823 Spring 2021 1 6.823:

VSX-1023/VSX-823 only WAN 3 2 1 LAN LAN cable (sold separately) Modem Router PC Internet HDMI IN HDMI OUT VIDEO IN DIGITAL AUDIO OUT OPTICAL B A HDMI/DVI-compatible TV VSX-823 VSX-523 only: Composite video cable (A) connection is necessary in order to see the OSD of the unit on the TV. VSX-1023/VSX-823 only: The OSD will only be output from

Betty Geary, MT (AMT) AMT American Medical Technologist Certifying Excellence in Allied Health 10700 West Higgins Road Suite 150 10700 West Higgins Road Rosemont, IL 60018 Suite 150 (847) 823-5169 FAX (847) 823-0458 (847) 823 Email: mail@americanmedtech.org FAX (847) 823 Website: www.americanmedtech.org AMT Southern District Councillor

Other UCF Offices Career Services (CSEL Bldg, 1st floor) 407-823-2361 . career.ucf.edu Experiential Learning (CSEL Bldg, 3rd floor) 407-823-2667 . www.explearning.ucf.edu Health Services (Health Center, 101) 407-823-2701 . shs.sdes.ucf.edu UCF Global- (UCF Global Bldg) 407-823-2337

Paper Name: Computer Organization and Architecture SYLLABUS 1. Introduction to Computers Basic of Computer, Von Neumann Architecture, Generation of Computer, . “Computer System Architecture”, John. P. Hayes. 2. “Computer Architecture and parallel Processing “, Hwang K. Briggs. 3. “Computer System Architecture”, M.Morris Mano.

Convert a) 45 C into Kelvin, b) 823 K into degrees Celsius a) 45 C 45 273 318 K b) 823 K 823 – 273 550 C . Sec 2 Science - Physics The thermometer is an instrument used to measure temperature accurately. It makes use of the physica

818.602 HAL I suck at girls / Justin Halpern. 2012 . 823 DUB The garden of last days / Andre Dubus III. 2008 823 GRA The sheikh's prize / Lynne Graham. 2013 823 GRA The wanderer, or, Th