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

Slides:



Advertisements
Similar presentations
L14: Boolean Logic and Basic Gates
Advertisements

CSE 20 Lecture 9 Boolean Algebra: Theorems and Proofs CK Cheng April 26, 2011 Lecture notes 1.
Chapter 2 Logic Circuits.
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.
Logic Gate Level Combinational Circuits, Part 1. Circuits Circuit: collection of devices physically connected by wires to form a network Net can be: –
1 Boolean Algebra & Logic Design. 2 Developed by George Boole in the 1850s Mathematical theory of logic. Shannon was the first to use Boolean Algebra.
Boolean Algebra and Logic Simplification. Boolean Addition & Multiplication Boolean Addition performed by OR gate Sum Term describes Boolean Addition.
Chapter 2: Boolean Algebra and Logic Functions
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patterson and Hennessy Text.
Boolean Algebra Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2009.
Computer Organization
CHAPTER 2 Boolean Algebra
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.
Data Manipulation CSCI130 Instructor: Dr. Imad Rahal.
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.
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 and Digital Circuits
Computer Organization 1 Logic Gates and Adders. Propositions –Venn Diagrams.
Fall 2012: FCM 708 Foundation I Lecture 2 Prof. Shamik Sengupta
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.
Week 6: Gates and Circuits: PART I READING: Chapter 4.
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.
Unit 1 Minimization Techniques and Logic Gates. Introduction to Digital Systems Analog devices and systems process time-varying signals that can take.
1 Lecture 6 BOOLEAN ALGEBRA and GATES Building a 32 bit processor PH 3: B.1-B.5.
Basic Digital Logic: NAND and NOR Gates Technician Series ©Paul Godin Last Update Dec 2014.
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.
Logic and Boolean Algebra. Logic statements  Real life statements  “I use public transportation when the car is broken and I have to go to work”  “All.
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.
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patternson and Hennessy Text.
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patternson and Hennessy Text.
CS/COE0447 Computer Organization & Assembly Language
Computer Organization CS345 David Monismith Based upon notes by Dr. Bill Siever and notes from the Patternson and Hennessy Text.
R. Johnsonbaugh Discrete Mathematics 5 th edition, 2001 Chapter 9 Boolean Algebras and Combinatorial Circuits.
Boolean Algebra Computer Architecture. Digital Representation Digital is an abstraction of analog voltage –Voltage is a continuous, physical unit Typically.
BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION
Dale Roberts Department of Computer and Information Science, School of Science, IUPUI Dale Roberts, Lecturer Computer Science, IUPUI
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).
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
Digital Logic.
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
Digital Logic.
Boolean Algebra.
Princess Sumaya University
IB Computer Science Computer Organization
Boolean Algebra.
Boolean Algebra & Logic Circuits
Agenda – 2/12/18 Questions? Readings: CSI 4, P
Basic Logic Gates 1.
CSE 370 – Winter Combinational Logic - 1
Fundamentals of Computer Systems
Boolean Algebra Introduction CSCI 240
Boolean Algebra.
BOOLEAN ALGEBRA AND LOGIC SIMPLIFICATION Part (a)
Chapter 2 Introduction to Logic Circuits
Boolean Algebra How gates get picked.
Lecture 2: Combinational Logic Design
Presentation transcript:

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

Review Last time we looked at several different representations of signed integers and floating point representation. IEEE 754 standard This time – Look at the LittleFe cluster computer. – Basic Boolean Algebra

LittleFe LittleFe is a cluster computer, meaning it is a group of independent computers that can work together by sharing data over a network interface. LittleFe consists of the following: – One power supply – One 10/100/1000 ethernet switch – Five "child" nodes Each is a motherboard with the following hardware One D525 Intel Atom Dual-Core Chip One NVidia ION 2 GPU 2GB RAM (Main memory) – One "head" node The head node is a motherboard with the same specifications as above, but it has a hard disk drive and runs the Bootable Cluster CD (BCCD) as its operating system.

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 messagefrom 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 bothmotherboards 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 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 trueAND 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 trueAND 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

More Boolean Algebra 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