Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patternson and Hennessy Text.

Slides:



Advertisements
Similar presentations
EET 1131 Unit 5 Boolean Algebra and Reduction Techniques
Advertisements

CSE 20 Lecture 9 Boolean Algebra: Theorems and Proofs CK Cheng April 26, 2011 Lecture notes 1.
Logical Systems Synthesis.
Chapter 2 Logic Circuits.
Boolean Algebra and Reduction Techniques
Boolean rules for simplification Dr. Ahmed Telba.
Logic Gate Level Part 2. Constructing Boolean expression from truth table First method: write nonparenthesized OR of ANDs Each AND is a 1 in the result.
EET 1131 Unit 5 Boolean Algebra and Reduction Techniques
CSCE 211: Digital Logic Design
Logic Gates Circuits to manipulate 0’s and 1’s. 0’s and 1’s used for numbers Also to make decisions within the computer. In that context, 1 corresponds.
Boolean Algebra and Logic Simplification. Boolean Addition & Multiplication Boolean Addition performed by OR gate Sum Term describes Boolean Addition.
Digital Logic Design Adil Waheed. BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION AND gate F = A.B OR gate F = A + B NOT gate F = A NAND gate F = A.B NOR gate.
Chapter 2: Boolean Algebra and Logic Functions
Boolean Algebra Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2009.
Computer Organization
CHAPTER 2 Boolean Algebra
Data Manipulation CSCI130 Instructor: Dr. Imad Rahal.
BOOLEAN ALGEBRA Saras M. Srivastava PGT (Computer Science)
Logic Design A Review. Binary numbers Binary numbers to decimal  Binary 2 decimal  Decimal 2 binary.
Boolean Algebra & Logic Prepared by Dr P Marais (Modified by D Burford)
+ CS 325: CS Hardware and Software Organization and Architecture Gates and Boolean Algebra Part 2.
Boolean Logic and Circuits ELEC 311 Digital Logic and Circuits Dr. Ron Hayne Images Courtesy of Cengage Learning.
Unit 1 Minimization Techniques and Logic Gates. Introduction to Digital Systems Analog devices and systems process time-varying signals that can take.
Boolean Algebra AND gate A B | AB 0 0 | | | | 1 OR gate A B | A + B 0 0 | | | | 1 NOT gate _ A | A or A’ 0 | 1 1 |
CHAPTER 1 INTRODUCTION TO DIGITAL LOGIC
6 - 1 Simplification Theorems Useful for simplification of expressions & therefore simplification of the logic network which results. XY + XY' = ( X +
1 BOOLEAN ALGEBRA Basic mathematics for the study of logic design is Boolean Algebra Basic laws of Boolean Algebra will be implemented as switching devices.
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patterson and Hennessy Text.
1 EENG 2710 Chapter 2 Algebraic Methods For The Analysis and Synthesis of Logic circuits.
1 Lect # 2 Boolean Algebra and Logic Gates Boolean algebra defines rules for manipulating symbolic binary logic expressions. –a symbolic binary logic expression.
© BYU 03 BA1 Page 1 ECEn 224 Boolean Algebra – Part 1.
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patternson and Hennessy Text.
5 - Digital Logic with Boolean Algebra
Chapter 2 Boolean Algebra and Minimization Techniques.
DKT 122/3 - DIGITAL SYSTEM I Chapter 4A:Boolean Algebra and Logic Simplification) Mohd ridzuan mohd nor
BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Logic Design Dr. Oliver Faust.
BOOLEAN ALGEBRA LOGIC GATES. Introduction British mathematician George Boole( ) was successful in finding the link between logic and mathematics.
Boolean Algebra. BOOLEAN ALGEBRA Formal logic: In formal logic, a statement (proposition) is a declarative sentence that is either true(1) or false (0).
Boolean Algebra ELEC 311 Digital Logic and Circuits Dr. Ron Hayne Images Courtesy of Cengage Learning.
DE MORGAN’S THEOREM. De Morgan’s Theorem De Morgan’s Theorem.
1 CS 352 Introduction to Logic Design Lecture 4 Ahmed Ezzat Multi-level Gate Circuits and Combinational Circuit Design Ch-7 + Ch-8.
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patternson and Hennessy Text.
Hoda Roodaki Boolean Algebra Hoda Roodaki
Morgan Kaufmann Publishers
Department of Preparatory Year, Umm Al Qura University
Logic Gates and Boolean Algebra
De Morgan’s Theorem,.
Chapter 2: Boolean Algebra and Logic Functions
Boolean Algebra.
Digital Technology.
Logic Gates and Boolean Algebra
CHAPTER 2 Boolean Algebra
CHAPTER 1 : INTRODUCTION
CHAPTER 2 Boolean Algebra This chapter in the book includes:
Boolean Algebra.
Princess Sumaya University
IB Computer Science Computer Organization
Boolean Algebra.
Basic Logic Gates 1.
BASIC & COMBINATIONAL LOGIC CIRCUIT
Boolean Algebra.
CSE 370 – Winter Combinational Logic - 1
Boolean Algebra.
BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION Part (a)
Boolean Algebra How gates get picked.
Chapter 5 Combinational Logic Analysis
Laws & Rules of Boolean Algebra
Lecture 2: Combinational Logic Design
ECE 120 Midterm 2 HKN Review Session.
Presentation transcript:

Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patternson and Hennessy Text

Review Last time we began coverage of Boolean Algebra.

Boolean Laws We have been using ~ to represent NOT, * to represent AND, and + to represent OR. We covered the following laws from Boolean Algebra: – NULL Laws: A*0 = 0A+1 = 1 – Idempotency: A*A = AA+A = A (Doesn't change result) – Complement Laws: A + ~A=1A*~A = 0 – Identity Laws: A+0 = AA*1 = A – Involution: ~~A = A (Double negation) – Commutative Laws: A+B = B+AA*B = B*A – Associative Laws: A+(B+C) = (A+B)+CA*(B*C) + (A*B)*C – Distributive Laws: A*(B+C) = A*B + A*CA+(B*C) = (A+B) * (A+C) – Covering Law: B*(B+C) = B + B*C = B – Combining: B*C + B * ~C = B(B+C) * (B + ~C) = B

Understanding LittleFe LittleFe's head node controls the child nodes when running distributed programs – those that may be broken up into multiple tasks and sent to many computers. Some distributed programs require much network communication while others don't. Let's consider the N-Body problem. This is a problem where we have N entities (we'll pretend they are stars) that all exert forces on each other. To figure out how these stars will move, we need to determine all the forces each star exerts on every other star. Physics tells us that if we sum up all the forces on each of the stars, we can determine the acceleration of the stars, as long as we know their masses. So, the N-Body problem is a O(n^2) problem (read as big Oh of n squared).

LittleFe Contd. If we have lots of processors, we can speed up the program significantly, but communication is required if we divide the problem between different computers. Notice that if 5 stars are on computer 1 and 6 stars are on computer 2, we must send the forces exerted on each group from one computer to another over a network interface. Network interfaces are much slower than memory. Common network speeds are 100 Megabits/second and 1 Gigabit/second. These are about 12.5 Megabytes/sec and 125 Megabytes/second respectively. Common bus speeds between CPU and Memory Additionally, there is network latency. Latency with respect to sending a message from one computer to another is the overhead to send a message with no data. This is the amount time we must wait before we are able to process any data when sending a message.

LittleFe Contd. For LittleFe sending a message from one motherboard to another involves creating a network link from one computer to another over a single network switch. So, theinitial time cost of creating such a link is the time for the switch and both motherboards to acknowledge that such a connection has been created. This time islikely several milliseconds. While communication between nodes (motherboards) is useful, we can make the best use of our resources by doing as much computation on each node as possible and limiting communication. So if we have 1000 stars, we might send 1000/6 stars toeach of the six nodes on LittleFe to divide up the work.

Boolean Algebra Recall that OR is a binary operation that is true if either part is true OR is called a disjunction and is represented by a |, ||, V, or + symbol. Recall that AND is a binary operation that is true only if both parts are true AND is called a conjunction and is represented by a carat (^), &, &&, or * symbol. Truth tables X Y X + Y XY X * Y F F F F T T F T F T F T T F F T T T

Boolean Algebra Recall that OR is a binary operation that is true if either part is trueOR is called a disjunction and is represented by a |, ||, V, or + symbol. Recall that AND is a binary operation that is true only if both parts are true AND is called a conjunction and is represented by a carat (^), &, &&, or * symbol. Recall that NOT negates a binary value. NOT is represented as a ~, !, notch, or / symbol Truth tables X Y X + Y XY X * YX ~X F F F F F F T F F T T F T F F T T F T T F F T T T

More Boolean Algebra Other operations such as XOR (exclusive or), NAND (not and), and NOR (not or) can be represented by combining the operations above. In Java, & represents a bitwise AND, and | represents a bitwise OR. These are equivalent to the "and" and "or" instructions MIPS & |

More Boolean Algebra Other operations such as XOR (exclusive or), NAND (not and), and NOR (not or) can be represented by combining the operations above. In Java, & represents a bitwise AND, and | represents a bitwise OR. These are equivalent to the"and" and "or" instructions MIPS & | Notice that these are different than the logical && and || operators.

Boolean Algebra Rules Boole's Laws: NULL Laws: A*0 = 0A+1 = 1 Idempotency: A*A = AA+A = A (Doesn't change result) Complement Laws: A + ~A=1A*~A = 0 Identity Laws: A+0 = AA*1 = A Involution: ~~A = A (Double negation) Commutative Laws: A+B = B+AA*B = B*A Associative Laws: A+(B+C) = (A+B)+CA*(B*C) + (A*B)*C Distributive Laws: A*(B+C) = A*B + A*C A+(B*C) = (A+B) * (A+C) Covering Law: B*(B+C) = B + B*C = B Combining: B*C + B * ~C = B(B+C) * (B + ~C) = B Precedence: NOT, AND, OR

Rules DeMorgan's Laws for converting from ANDs to ORs: ~(A * B) = ~A + ~B ~(A + B) = ~A * ~B These generalize: ~(A + B + C) = ~A * ~B * ~C We can use these laws to simplify nasty equations: ( (A*B) + (A*C) + (B*C) ) * ~(A*B*C)= ( (A*B) + (A*C) + (B*C) ) * (~A + ~B + ~C) by DeMorgan's Law = (A*B)* (~A + ~B + ~C) + (A*C)* (~A + ~B + ~C) + (B*C)* (~A + ~B + ~C) by distribution = A*B*~A + A*B*~B + A*B*~C + A*C*~A + A*C*~B + A*C*~C + B*C*~A + B*C*~B + B*C*~C = 0*B + 0*A + A*B*~C + 0*C + A*C*~B + A*0 + B*C*~A + 0*C + 0*B by inverse law = A*B*~C A*C*~B B*C*~A by null law = A*B*~C + A*C*~B + B*C*~A by identity law = A*B*~C + A*~B*C + ~A*B*C by commutative law

Propagation Delay Note that gates are made from relays and/or transistors These are AND, OR, NOT, XOR, NOR, NAND, and many others. Gates are mechanical devices. It takes time for information to travel through them. This time is called propagation delay Physical arrangement of these gates creates specific orders of operations For example B*C+A Propagation delay is the time it takes for information (a signal) to pass through a gate or series of gates. Propagation delay determines the maximum clock speed. If it takes 15ns for data to pass through a series of gates, the clock speed cannot be faster than 66 MHz

Equation Styles Sum of Products (SOP) - A*C + B*C + A*D + B*D Product of Sums (POS) - (A+B) * (C+D) Truth table A B C D ACBCADBD AC+BC+AD+BD A+B C+D (A+B)*(C+D) Notice that (A+B)*(C+D) is equivalent to AC+BC+AD+BD