Essentials of Computer Architecture
Total Page:16
File Type:pdf, Size:1020Kb
Essentials Of Computer Architecture Prof. Douglas Comer Computer Science And ECE Purdue University http://www.cs.purdue.edu/people/comer Copyright 2017 by Douglas Comer. All rights reserved Module I Course Introduction And Overview Computer Architecture ± Module 1 1 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved The Big Questions d Most CS programs require an architecture course, but you might ask: Is knowledge of computer organization and the underlying hardware relevant these days? Should we take this course seriously? Computer Architecture ± Module 1 2 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved The Answers d Companies (such as Google, IBM, Microsoft, Apple, Cisco,...) look for knowledge of architecture when hiring (i.e., understanding computer architecture can help you land a job) d The most successful software engineers understand the underlying hardware (i.e., knowing about architecture can help you earn promotions) d As a practical matter: knowledge of computer architecture is needed for later courses, such as systems programming, compilers, operating systems, and embedded systems Computer Architecture ± Module 1 3 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved A Word About Future Employment d Traditional software engineering jobs are saturated d The future lies in embedded systems ± Cell phones ± Video games ± MP3 players ± Set-top boxes ± Smart sensor systems d Understanding architecture is key for programming embedded systems Computer Architecture ± Module 1 4 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Some Bad News About Architecture d Hardware is ugly ± Lots of low-level details ± Can be counterintuitive d Hardware is tricky ± Timing is important ± A small addition in functionality can require many pieces of hardware d The subject is so large that we cannot hope to cover it in one course d You will need to think in new ways Computer Architecture ± Module 1 5 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Some Good News About Architecture d You will learn to think in new ways d It is possible to understand basics without knowing all low-level technical details d Programmers only need to learn the essentials ± Characteristics of major components ± Role in overall system ± Consequences for software Computer Architecture ± Module 1 6 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved The Four Main Topics d Basics of digital hardware ± You will build a few simple circuits d Processors ± You will program RISC and CISC processors in lab d Memories ± You will learn about memory organization and caching d I/O operates ± You will explore buffering and learn about interrupts Computer Architecture ± Module 1 7 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Organization Of The Course d Basics ± A taste of digital logic ± Data paths and execution ± Data representations d Processors ± Instruction sets and operands ± Assembly languages and programming d Memories ± Physical and virtual memories ± Addressing and caching Computer Architecture ± Module 1 8 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Organization Of The Course (continued) d Input/Output ± Devices and interfaces ± Buses and bus address spaces ± Role of device drivers d Advanced topics ± Parallelism and data pipelining ± Power and energy ± Performance and performance assessment ± Architectural hierarchies Computer Architecture ± Module 1 9 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved What We Will Not Cover d The course emphasizes breadth over depth d Omissions ± Most low-level details (e.g., discussion of electrical properties of resistance, voltage, current and semiconductor physics) ± Quantitative analysis that engineers use to design hardware circuits ± Design rules that specify how logic gates may be interconnected ± Circuit design and design tools ± VLSI chip design and languages such as Verilog Computer Architecture ± Module 1 10 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Terminology Used With Digital Systems d Three key ideas ± Architecture ± Design ± Implementation Computer Architecture ± Module 1 11 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Architecture d Refers to the overall organization of a computer system d Analogous to a blueprint d Speci®es ± Functionality of major components ± Interconnections among components d Abstracts away details Computer Architecture ± Module 1 12 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Design d Needed before a digital system can be built d Translates architecture into components d Fills in details that the architectural speci®cation omits d Speci®es items such as ± How components are grouped onto boards ± How power is distributed to boards d Many designs can satisfy a given architecture Computer Architecture ± Module 1 13 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Implementation d All details necessary to build a system d Includes ± Speci®c part numbers to be used ± Mechanical speci®cations of chassis and cases ± Layout of components on boards ± Power supplies and power distribution ± Signal wiring and connectors Computer Architecture ± Module 1 14 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Summary d Architecture is required because understanding computer organization leads to programming excellence d This course covers the four essential aspects of computer architecture ± Digital logic ± Processors ± Memory ± I / O d You will have fun with hardware in the lab Computer Architecture ± Module 1 15 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Module II Fundamentals Of Digital Logic Computer Architecture ± Module 2 1 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Our Goals d Understand the basics ± Concepts ± How computers work at the lowest level d Avoid whenever possible ± Device physics ± Engineering design rules ± Implementation details Computer Architecture ± Module 2 2 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Electrical Terminology d Voltage ± Quanti®able property of electricity ± Measure of potential force ± Unit of measure: volt d Current ± Quanti®able property of electricity ± Measure of electron ¯ow along a path ± Unit of measure: ampere (amp) Computer Architecture ± Module 2 3 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Analogy d Voltage is analogous to water pressure d Current is analogous to ¯owing water d Can have ± High pressure with little ¯ow ± Large ¯ow with little pressure Computer Architecture ± Module 2 4 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Measuring Voltage d Device used is called voltmeter d Note: can only be measured as difference between two points d We will ± Assume one point represents zero volts (known as ground) ± Express voltage of second point with respect to ground Computer Architecture ± Module 2 5 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved In Practice d In lab, chips will operate on ®ve volts d Two wires connect each chip to power supply ± Ground (zero volts) ± Power (®ve volts) d Every chip needs power and ground connections d Notes ± Logic diagrams do not show power and ground ± Raspberry Pi operates on 3.3 volts, so conversion is required to connect the Pi to other chips Computer Architecture ± Module 2 6 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Transistor d Basic building block of electronic circuits d Operates on electrical current d Traditional transistor ± Has three external connections * Emitter * Base (control) * Collector ± Acts like an amplifier Ð a small current between base and emitter controls large current between collector and emitter Computer Architecture ± Module 2 7 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Illustration Of A Traditional Transistor C large current flows B from point C to point E small current flows from point B to E E d Amplification means the large output current varies exactly like the small input current Computer Architecture ± Module 2 8 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Field Effect Transistor d Called a Metal Oxide Semiconductor FET (MOSFET) when used on a CMOS chip d Three external connections ± Source ± Gate ± Drain d Designed to act as a switch (on or off) ± When the input reaches a threshold (i.e., becomes logic 1), the transistor turns on and passes full current ± When the input falls below a threshold (i.e., becomes logic 0), the transistor turns off and passes no current Computer Architecture ± Module 2 9 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Illustration Of A Field Effect Transistor (Used For Switching) source gate turns on current flowing from point S to point D non-zero current flowing from point G to D drain d Input arrives at the gate d Logic zero (zero volts) means the transistor is off; logic 1 (positive voltage) turns the transistor on Computer Architecture ± Module 2 10 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Alternative Field Effect Transistor (Also Used For Switching) source gate turns on current flowing from point S to point D no current flowing from point G to D drain d Circle on the gate indicates an inversion d Logic 0 (zero volts) turns the transistor on, and logic 1 (positive voltage) turns the transistor off Computer Architecture ± Module 2 11 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Boolean Logic d Mathematical basis for digital circuits d Three basic functions: and, or, and not A B A and B A B A or B A not A 0 0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 1 1 1 1 1 1 Computer Architecture ± Module 2 12 Fall, 2016 Copyright 2016 by Douglas Comer. All rights reserved Digital Logic d Can implement Boolean functions with transistors d Five volts represents Boolean 1 (true) d Zero volts represents Boolean 0 (false) Computer Architecture ± Module 2 13 Fall, 2016 Copyright 2016 by Douglas Comer.