Essentials of Computer Organization

Essentials of Computer Organization

Essentials Of Computer Organization Douglas Comer Computer Science Department Purdue University http://www.cs.purdue.edu/people/comer Copyright 2009. All rights reserved. This document may not be reproduced by any means without written consent of the author. I Course Introduction And Overview Computer Architecture -- Chapt. 1 1 Fall, 2009 Questions To Consider Computer Architecture -- Chapt. 1 2 Fall, 2009 Questions To Consider d Most CS programs require an architecture course Computer Architecture -- Chapt. 1 2 Fall, 2009 Questions To Consider d Most CS programs require an architecture course d But is architecture useful? Computer Architecture -- Chapt. 1 2 Fall, 2009 Questions To Consider d Most CS programs require an architecture course d But is architecture useful? Is a knowledge of computer organization and the underlying hardware relevant for someone who intends to write software ? d In other words: Why should you take this course seriously? Computer Architecture -- Chapt. 1 2 Fall, 2009 The Answers Computer Architecture -- Chapt. 1 3 Fall, 2009 The Answers d The best programmers understand how programs affect the underlying hardware ± Instructions ± Memory accesses ± I/O and timing Computer Architecture -- Chapt. 1 3 Fall, 2009 The Answers d The best programmers understand how programs affect the underlying hardware ± Instructions ± Memory accesses ± I/O and timing d Knowledge of computer architecture is needed for later courses Ð it will help you understand topics like compilers and operating systems Computer Architecture -- Chapt. 1 3 Fall, 2009 The Answers d The best programmers understand how programs affect the underlying hardware ± Instructions ± Memory accesses ± I/O and timing d Knowledge of computer architecture is needed for later courses Ð it will help you understand topics like compilers and operating systems d Knowing about architecture can help you land and retain a good job Computer Architecture -- Chapt. 1 3 Fall, 2009 How This Course Helps Computer Architecture -- Chapt. 1 4 Fall, 2009 How This Course Helps d Allows a programmer to write computer programs that are: ± Faster ± Smaller ± Less prone to errors Computer Architecture -- Chapt. 1 4 Fall, 2009 How This Course Helps d Allows a programmer to write computer programs that are: ± Faster ± Smaller ± Less prone to errors d Is key for programming embedded systems ± Cell phones ± Video games ± MP3 players ± Set-top boxes Computer Architecture -- Chapt. 1 4 Fall, 2009 The Bad News Computer Architecture -- Chapt. 1 5 Fall, 2009 The Bad News d Hardware is ugly ± Many details ± Can be counter-intuitive Computer Architecture -- Chapt. 1 5 Fall, 2009 The Bad News d Hardware is ugly ± Many details ± Can be counter-intuitive d The subject is extensive ± Cannot be mastered in one course ± Requires background in electricity and electronics ± Complexity is non-linear Ð small increases in size can produce large increases in hardware complexity Computer Architecture -- Chapt. 1 5 Fall, 2009 The Good News Computer Architecture -- Chapt. 1 6 Fall, 2009 The Good News d It is possible to understand architectural components without knowing all low-level technical details Computer Architecture -- Chapt. 1 6 Fall, 2009 The Good News d It is possible to understand architectural components without knowing all low-level technical details d Programmers only need to know the essentials ± Characteristics of major components ± Role in overall system ± Consequences for software Computer Architecture -- Chapt. 1 6 Fall, 2009 Goals Of The Course d Explore basics of digital hardware d Build simple circuits d Learn about functional units in a computer d Understand ± How processors work ± How memories are organized ± How I/O operates d Become better programmers Computer Architecture -- Chapt. 1 7 Fall, 2009 Organization Of The Course Computer Architecture -- Chapt. 1 8 Fall, 2009 Organization Of The Course d Basics ± A taste of digital logic ± Data representations Computer Architecture -- Chapt. 1 8 Fall, 2009 Organization Of The Course d Basics ± A taste of digital logic ± Data representations d Processors ± Types of processors ± Instruction sets and operands ± Assembly languages and programming Computer Architecture -- Chapt. 1 8 Fall, 2009 Organization Of The Course (continued) d Memory ± Storage mechanisms ± Physical and virtual memories and addressing ± Caching Computer Architecture -- Chapt. 1 9 Fall, 2009 Organization Of The Course (continued) d Memory ± Storage mechanisms ± Physical and virtual memories and addressing ± Caching d Input/Output ± Devices and interfaces ± Buses and bus address spaces ± Role of device drivers Computer Architecture -- Chapt. 1 9 Fall, 2009 Organization Of The Course (continued) d Advanced topics ± Parallelism and parallel computers ± Pipelining ± Performance and performance assessment ± Architectural hierarchy Computer Architecture -- Chapt. 1 10 Fall, 2009 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) ± Quantitative analysis that engineers use to design hardware circuits ± Design rules that specify how logic gates may be interconnected ± VLSI chip design and tools (e.g., Verilog) Computer Architecture -- Chapt. 1 11 Fall, 2009 Terminology d Three basic aspects of computer hardware ± Architecture ± Design ± Implementation Computer Architecture -- Chapt. 1 12 Fall, 2009 Computer Architecture d Refers to overall organization of computer system d Analogous to a blueprint d Speci®es: ± Functionality of major components ± Interconnections among components d Abstracts away details Computer Architecture -- Chapt. 1 13 Fall, 2009 Design d Needed before a computer 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 Note: many designs can satisfy a given architecture Computer Architecture -- Chapt. 1 14 Fall, 2009 Implementation d All details necessary to build a system d Includes the following: ± Mechanical speci®cations of chassis and cases ± Layout of components on boards ± Power supplies and power distribution ± Signal wiring and connectors ± Part numbers to be used Computer Architecture -- Chapt. 1 15 Fall, 2009 Summary d Understanding computer hardware is needed for programming excellence d Course covers essentials of computer architecture ± Digital logic ± Processors, memory, I / O ± Advanced topics such as parallelism and pipelining d We will omit details and focus on concepts d Labs form a key part of the course Computer Architecture -- Chapt. 1 16 Fall, 2009 Questions? II Fundamentals Of Digital Logic Computer Architecture -- Chapt. 2 1 Fall, 2009 Our Goals d Understand ± Fundamentals and basics ± Concepts ± How computers work at the lowest level d Avoid whenever possible ± Device physics ± Engineering design rules ± Implementation details Computer Architecture -- Chapt. 2 2 Fall, 2009 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 -- Chapt. 2 3 Fall, 2009 Analog For Electricity 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 -- Chapt. 2 4 Fall, 2009 Voltage d Device used to measure called voltmeter d Can only be measured as difference between two points d To measure voltage ± Assume one point represents zero volts (known as ground) ± Express voltage of second point wrt ground Computer Architecture -- Chapt. 2 5 Fall, 2009 In Practice d Typical digital circuit operates on ®ve volts d Two wires connect each chip to power supply ± Ground (zero volts) ± Power (®ve volts) d Digital logic diagrams do not usually show power and ground connections Computer Architecture -- Chapt. 2 6 Fall, 2009 Transistor d Basic building block of digital circuits d Operates on electrical current d Acts like a miniature switch Ð small input current controls ¯ow of large current d Three external connections ± Emitter ± Base (control) ± Collector d Current between base and emitter controls current between collector and emitter Computer Architecture -- Chapt. 2 7 Fall, 2009 Illustration Of A Transistor C large current flows B from point C to point E small current flows from point B to E E d Important concept: large current is proportional to small current (ampli®cation) Computer Architecture -- Chapt. 2 8 Fall, 2009 Field-Effect Transistors d Used on digital chips (CMOS) d Con®gured to act as a switch S turns on current flowing G from point S to point D non-zero current flowing from point G to D D Computer Architecture -- Chapt. 2 9 Fall, 2009 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 -- Chapt. 2 10 Fall, 2009 Digital Logic d Can implement Boolean functions with transistors d Five volts represents Boolean 1 d Zero volts represents Boolean 0 Computer Architecture -- Chapt. 2 11 Fall, 2009 Transistor Implementing Boolean Not +5 volts resistor output input 0 volts d When input is zero volts, output is ®ve volts d When input is ®ve volts, output is zero volts Computer Architecture -- Chapt. 2 12 Fall, 2009 Logic Gate d Hardware component d Consists of integrated circuit d Implements an individual Boolean function d To reduce complexity, provide inverse of Boolean functions ± Nand gate implements not and ± Nor gate implements not or ± Inverter implements not Computer Architecture -- Chapt. 2 13 Fall, 2009 Truth Tables For Nand and Nor Gates A B A nand B A B A nor B 0 0 1 0 0 1 0 1 1 0 1 0 1 0 1 1 0 0 1 1 0 1 1 0 Computer Architecture -- Chapt. 2 14 Fall, 2009 Symbols Used In Schematic Diagrams nand gate nor gate inverter Computer Architecture -- Chapt.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    876 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us