1 Lecture 11: Digital Design Today’s topics:  Evaluating a system  Intro to boolean functions.

Slides:



Advertisements
Similar presentations
1 Lecture 2: Metrics to Evaluate Performance Topics: Benchmark suites, Performance equation, Summarizing performance with AM, GM, HM Video 1: Using AM.
Advertisements

CSCE 212 Chapter 4: Assessing and Understanding Performance Instructor: Jason D. Bakos.
1 Lecture 2: System Metrics and Pipelining Today’s topics: (Sections 1.6, 1.7, 1.9, A.1)  Quantitative principles of computer design  Measuring cost.
1 Lecture 2: System Metrics and Pipelining Today’s topics: (Sections 1.6, 1.7, 1.9, A.1)  Performance summaries  Quantitative principles of computer.
1 Digital Logic
1 Introduction Background: CS 3810 or equivalent, based on Hennessy and Patterson’s Computer Organization and Design Text for CS/EE 6810: Hennessy and.
Fall 2001CS 4471 Chapter 2: Performance CS 447 Jason Bakos.
1 Introduction Background: CS 3810 or equivalent, based on Hennessy and Patterson’s Computer Organization and Design Text for CS/EE 6810: Hennessy and.
1 Lecture 10: FP, Performance Metrics Today’s topics:  IEEE 754 representations  FP arithmetic  Evaluating a system Reminder: assignment 4 due in a.
1 CHAPTER 4: PART I ARITHMETIC FOR COMPUTERS. 2 The MIPS ALU We’ll be working with the MIPS instruction set architecture –similar to other architectures.
CS 352 : Computer Organization and Design University of Wisconsin-Eau Claire Dan Ernst Elementary Digital Logic Apps O/S Arch  Arch Logic Digital Analog.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Logic Circuits I.
Lecture 17: Digital Design Today’s topic –Intro to Boolean functions Reminders –HW 4 due Wednesday 10/8/2014 (extended) –HW 5 due Wednesday 10/15/2014.
SUPLEMENTARY CHAPTER 1: An Introduction to Digital Logic The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Logic Circuits I.
Fall 2012: FCM 708 Foundation I Lecture 2 Prof. Shamik Sengupta
1 Boolean Algebra & Logic Gates. 2 Objectives Understand the relationship between Boolean logic and digital computer circuits. Learn how to design simple.
Apr. 3, 2000Systems Architecture I1 Systems Architecture I (CS ) Lecture 3: Review of Digital Circuits and Logic Design Jeremy R. Johnson Mon. Apr.
Combinational Logic 1.
CPS3340 COMPUTER ARCHITECTURE Fall Semester, /05/2013 Lecture 4: Basics of Logic Design Instructor: Ashraf Yaseen DEPARTMENT OF MATH & COMPUTER.
Logic Gates Shashidhara H S Dept. of ISE MSRIT. Basic Logic Design and Boolean Algebra GATES = basic digital building blocks which correspond to and perform.
Lecture 22: 11/19/2002CS170 Fall CS170 Computer Organization and Architecture I Ayman Abdel-Hamid Department of Computer Science Old Dominion University.
מבנה מחשב תרגול 2. 2 Boolean AND Operation Truth Table Equivalent Gate Different notations:
1 CS/COE0447 Computer Organization & Assembly Language CHAPTER 4 Assessing and Understanding Performance.
Lecture 18: Hardware for Arithmetic Today’s topic –Intro to Boolean functions (Continued) –Designing an ALU 1.
1 Lecture 10: Floating Point, Digital Design Today’s topics:  FP arithmetic  Intro to Boolean functions.
CS/COE0447 Computer Organization & Assembly Language
CBP 2006Comp 4070 Concepts and Philosophy of Computing 1 Wrestling with Complex Stuff. With the Correct Approach, even the smallest guy will succeed!
Chapter 3 Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Transistor: Building.
TEST 1 – Tuesday March 3 Lectures 1 - 8, Ch 1,2 HW Due Feb 24 –1.4.1 p.60 –1.4.4 p.60 –1.4.6 p.60 –1.5.2 p –1.5.4 p.61 –1.5.5 p.61.
Appendix C Basics of Digital Logic Part I. Florida A & M University - Department of Computer and Information Sciences Modern Computer Digital electronics.
1 Lecture 2: Performance, MIPS ISA Today’s topics:  Performance equations  MIPS instructions Reminder: canvas and class webpage:
1 Lecture: Metrics to Evaluate Performance Topics: Benchmark suites, Performance equation, Summarizing performance with AM, GM, HM  Video 1: Using AM.
LECTURE 4 Logic Design. LOGIC DESIGN We already know that the language of the machine is binary – that is, sequences of 1’s and 0’s. But why is this?
1 Lecture 11: Hardware for Arithmetic Today’s topics:  Logic for common operations  Designing an ALU  Carry-lookahead adder.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Yaohang Li.
1 Lecture: Out-of-order Processors Topics: branch predictor wrap-up, a basic out-of-order processor with issue queue, register renaming, and reorder buffer.
1 Lecture 3: Pipelining Basics Today: chapter 1 wrap-up, basic pipelining implementation (Sections C.1 - C.4) Reminders:  Sign up for the class mailing.
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Yaohang Li.
Chapter 3 Boolean Algebra and Digital Logic T103: Computer architecture, logic and information processing.
1 CS/COE0447 Computer Organization & Assembly Language Logic Design Appendix C.
1 Lecture: Benchmarks, Pipelining Intro Topics: Performance equations wrap-up, Intro to pipelining.
Appendix C Basics of Logic Design. Appendix C — Logic Basic — 2 Logic Design Basics §4.2 Logic Design Conventions Objective: To understand how to build.
Dr. ClincyLecture Slide 1 CS6020- Chapter 3 (3A and ) Dr. Clincy Professor of CS First Exam - Tuesday, September 6th Coverage: All subjects up to.
Logic gates.
Computer Architecture & Operations I
Computer Architecture & Operations I
Digital Logic.
Lecture 2: Performance Today’s topics:
Morgan Kaufmann Publishers
Lecture 2: Performance Evaluation
Lecture 3: MIPS Instruction Set
Lecture 11: Hardware for Arithmetic
מבנה מחשב תרגול 3.
Jeremy R. Johnson Wed. Sept. 29, 1999
Basics of Digital Logic Design Presentation D
CSCE 212 Chapter 4: Assessing and Understanding Performance
Lecture 10: Floating Point, Digital Design
Jeremy R. Johnson Anatole D. Ruslanov William M. Mongan
Lecture 2: Performance Today’s topics: Technology wrap-up
Digital Logic Structures Logic gates & Boolean logic
CS/COE0447 Computer Organization & Assembly Language
Performance of computer systems
Lecture 11: Hardware for Arithmetic
Part I Background and Motivation
CS Chapter 3 (3A and ) – Part 2 of 5
Lecture 3: MIPS Instruction Set
Logic Circuits I Lecture 3.
Performance of computer systems
Digital Circuits and Logic
Presentation transcript:

1 Lecture 11: Digital Design Today’s topics:  Evaluating a system  Intro to boolean functions

2 Example Execution time = clock cycle time x number of instrs x avg CPI Which of the following two systems is better? A program is converted into 4 billion MIPS instructions by a compiler ; the MIPS processor is implemented such that each instruction completes in an average of 1.5 cycles and the clock speed is 1 GHz The same program is converted into 2 billion x86 instructions; the x86 processor is implemented such that each instruction completes in an average of 6 cycles and the clock speed is 1.5 GHz

3 Benchmark Suites Measuring performance components is difficult for most users: average CPI requires simulation/hardware counters, instruction count requires profiling tools/hardware counters, OS interference is hard to quantify, etc. Each vendor announces a SPEC rating for their system  a measure of execution time for a fixed collection of programs  is a function of a specific CPU, memory system, IO system, operating system, compiler  enables easy comparison of different systems The key is coming up with a collection of relevant programs

4 SPEC CPU SPEC: System Performance Evaluation Corporation, an industry consortium that creates a collection of relevant programs The 2006 version includes 12 integer and 17 floating-point applications The SPEC rating specifies how much faster a system is, compared to a baseline machine – a system with SPEC rating 600 is 1.5 times faster than a system with SPEC rating 400 Note that this rating incorporates the behavior of all 29 programs – this may not necessarily predict performance for your favorite program!

5 Deriving a Single Performance Number How is the performance of 29 different apps compressed into a single performance number? SPEC uses geometric mean (GM) – the execution time of each program is multiplied and the N th root is derived Another popular metric is arithmetic mean (AM) – the average of each program’s execution time Weighted arithmetic mean – the execution times of some programs are weighted to balance priorities

6 Amdahl’s Law Architecture design is very bottleneck-driven – make the common case fast, do not waste resources on a component that has little impact on overall performance/power Amdahl’s Law: performance improvements through an enhancement is limited by the fraction of time the enhancement comes into play Example: a web server spends 40% of time in the CPU and 60% of time doing I/O – a new processor that is ten times faster results in a 36% reduction in execution time (speedup of 1.56) – Amdahl’s Law states that maximum execution time reduction is 40% (max speedup of 1.66)

7 Digital Design Basics Two voltage levels – high and low (1 and 0, true and false) Hence, the use of binary arithmetic/logic in all computers A transistor is a 3-terminal device that acts as a switch V V 0 0 Conducting 0 V 0 V Non-conducting

8 Logic Blocks A logic block has a number of binary inputs and produces a number of binary outputs – the simplest logic block is composed of a few transistors A logic block is termed combinational if the output is only a function of the inputs A logic block is termed sequential if the block has some internal memory (state) that also influences the output A basic logic block is termed a gate (AND, OR, NOT, etc.) We will only deal with combinational circuits today

9 Truth Table A truth table defines the outputs of a logic block for each set of inputs Consider a block with 3 inputs A, B, C and an output E that is true only if exactly 2 inputs are true A B C E

10 Truth Table A truth table defines the outputs of a logic block for each set of inputs Consider a block with 3 inputs A, B, C and an output E that is true only if exactly 2 inputs are true A B C E Can be compressed by only representing cases that have an output of 1

11 Boolean Algebra Equations involving two values and three primary operators:  OR : symbol +, X = A + B  X is true if at least one of A or B is true  AND : symbol., X = A. B  X is true if both A and B are true  NOT : symbol, X = A  X is the inverted value of A

12 Boolean Algebra Rules Identity law : A + 0 = A ; A. 1 = A Zero and One laws : A + 1 = 1 ; A. 0 = 0 Inverse laws : A. A = 0 ; A + A = 1 Commutative laws : A + B = B + A ; A. B = B. A Associative laws : A + (B + C) = (A + B) + C A. (B. C) = (A. B). C Distributive laws : A. (B + C) = (A. B) + (A. C) A + (B. C) = (A + B). (A + C)

13 DeMorgan’s Laws A + B = A. B A. B = A + B Confirm that these are indeed true

14 Pictorial Representations AND OR NOT What logic function is this?

15 Boolean Equation Consider the logic block that has an output E that is true only if exactly two of the three inputs A, B, C are true

16 Boolean Equation Consider the logic block that has an output E that is true only if exactly two of the three inputs A, B, C are true Multiple correct equations: Two must be true, but all three cannot be true: E = ((A. B) + (B. C) + (A. C)). (A. B. C) Identify the three cases where it is true: E = (A. B. C) + (A. C. B) + (C. B. A)

17 Sum of Products Can represent any logic block with the AND, OR, NOT operators  Draw the truth table  For each true output, represent the corresponding inputs as a product  The final equation is a sum of these products A B C E (A. B. C) + (A. C. B) + (C. B. A) Can also use “product of sums” Any equation can be implemented with an array of ANDs, followed by an array of ORs

18 NAND and NOR NAND : NOT of AND : A nand B = A. B NOR : NOT of OR : A nor B = A + B NAND and NOR are universal gates, i.e., they can be used to construct any complex logical function

19 Common Logic Blocks – Decoder Takes in N inputs and activates one of 2 N outputs I 0 I 1 I 2 O 0 O 1 O 2 O 3 O 4 O 5 O 6 O to-8 Decoder I 0-2 O 0-7

20 Common Logic Blocks – Multiplexor Multiplexor or selector: one of N inputs is reflected on the output depending on the value of the log 2 N selector bits 2-input mux

21 Title Bullet