360 likes | 555 Views
Digital Logic Design EEE241. Sajjad Ali Mushtaq sajjad@ciit.edu.pk sajjad.mushtaq@ieee.org. Digital Logic Design. Digital Concerned with the interconnection among digital components and modules Best Digital System example is General Purpose Computer Logic Design
E N D
Digital Logic DesignEEE241 Sajjad Ali Mushtaq sajjad@ciit.edu.pk sajjad.mushtaq@ieee.org
Digital Logic Design • Digital • Concerned with the interconnection among digital components and modules • Best Digital System example is General Purpose Computer • Logic Design • Deals with the basic concepts and tools used to design digital hardware consisting of logic circuits • Circuits to perform arithmetic operations (+, -, x, ÷)
Digital Signals • Decimal values are difficult to represent in electrical systems. It is easier to use two voltage values than ten. • Digital Signals have two basic states: 1 (logic “high”, or H, or “on”) 0 (logic “low”, or L, or “off”) • Digital values are in a binary format. Binary means 2 states. • A good example of binary is a light (only on or off) on off Power switches have labels “1” for on and “0” for off.
Digital Logic Design • Bits and Pieces of DLD History • George Boole • Mathematical Analysis of Logic (1847) • An Investigation of Laws of Thoughts; Mathematical Theories of Logic and Probabilities (1854) • Claude Shannon • Rediscovered the Boole • “ A Symbolic Analysis of Relay and Switching Circuits “ • Boolean Logic and Boolean Algebra were Applied to Digital Circuitry ---------- Beginning of the Digital Age and/or Computer Age World War II Computers as Calculating Machines Arlington (State Machines) “ Control “
Motivation • Microprocessors/Microelectronics have revolutionized our world • Cell phones, internet, rapid advances in medicine, etc. • The semiconductor industry has grown tremendously
Objectives • Number System, Their Uses, Conversions • Basic Building Blocks of Digital System • Minimization • Combinational And Sequential Logic • Digital System/Circuit Analysis and Design • State Minimizations • Integrated Circuits • Simulations
Text Book • Primary Text: “Digital Design” By M. Morris Mano and Michael D. Ciletti • Complementary Material “Logic and Computer Design Fundamentals”By M. Morris Mano & Charles R Kime.
Number Systems • Decimal is the number system that we use • Binary is a number system that computers use • Octal is a number system that represents groups of binary numbers (binary shorthand). It is used in digital displays, and in modern times in conjunction with file permissions under Unix systems. • Hexadecimal (Hex) is a number system that represents groups of binary numbers (binary shorthand). Hex is primarily used in computing as the most common form of expressing a human-readable string representation of a byte (group of 8 bits).
Overview • The design of computers • It all starts with numbers • Building circuits • Building computing machines • Digital systems • Understanding decimal numbers • Binary and octal numbers • The basis of computers! • Conversion between different number systems
Analog vs. Digital Consider a faucet Digital Water can be flowing or NOT flowing from the faucet Two States • On • Off Analog How much water is flowing from the faucet? Advantages of Digital Replication • Analog Try replicating the exact flow from a faucet • Digital Try replicating ON or OFF
Advantages of Digital • Error Correction/Detection • Small errors don’t propagate • Miniaturization of Circuits • Programmability • Digital computers are programmable • Two discrete values are used in digital systems. • How are discrete elements represented? • Signals are the physical quantities used to represent discrete elements of information in a digital system. • Electric signals used: • Voltage • Current
Advantages of Digital/Representation of Binary Values • Why are there voltage ranges instead of exact voltages? • Variations in circuit behavior & noise • Two possible values • 1, 0 • On, Off • True, False • High, Low • Heads, Tails • Black, White
Digital Computer Systems • Digital systems consider discrete amounts of data. • Examples • 26 letters in the alphabet • 10 decimal digits • Larger quantities can be built from discrete values: • Words made of letters • Numbers made of decimal digits (e.g. 239875.32) • Computers operate on binary values (0 and 1) • Easy to represent binary values electrically • Voltages and currents. • Can be implemented using circuits • Create the building blocks of modern computers
Understanding Decimal Numbers • Decimal numbers are made of decimal digits: (0,1,2,3,4,5,6,7,8,9) • But how many items does a decimal number represent? • 8653 = 8x103 + 6x102 + 5x101 + 3x100 • What about fractions? • 97654.35 = 9x104 + 7x103 + 6x102 + 5x101 + 4x100 + 3x10-1 + 5x10-2 • In formal notation -> (97654.35)10 • Why do we use 10 digits, anyway?
Understanding Octal Numbers • Octal numbers are made of octal digits: (0,1,2,3,4,5,6,7) • How many items does an octal number represent? • (4536)8 = 4x83 + 5x82 + 3x81 + 6x80 = (1362)10 • What about fractions? • (465.27)8 = 4x82 + 6x81 + 5x80 + 2x8-1 + 7x8-2 • Octal numbers don’t use digits 8 or 9 • Who would use octal number, anyway?
Understanding Binary Numbers • Binary numbers are made of binary digits (bits): • 0 and 1 • How many items does an binary number represent? • (1011)2 = 1x23 + 0x22 + 1x21 + 1x20 = (11)10 • What about fractions? • (110.10)2 = 1x22 + 1x21 + 0x20 + 1x2-1 + 0x2-2 • Groups of eight bits are called a byte • (11001001) 2 • Groups of four bits are called a nibble. • (1101) 2
Why Use Binary Numbers? • Easy to represent 0 and 1 using electrical values. • Possible to tolerate noise. • Easy to transmit data • Easy to build binary circuits. AND Gate 1 0 0
Base 2 = Base 10 000 = 0 001 = 1 010 = 2 011 = 3 100 = 4 101 = 5 110 = 6 111 = 7 Binary In Binary, there are only 0’s and 1’s. These numbers are called “Base-2”( Example: 0102) We count in “Base-10” (0 to 9) • Binary number has base 2 • Each digit is one of two numbers: 0 and 1 • Each digit is called a bit • Eight binary bits make a byte • All 256 possible values of a byte can be represented using 2 digits in hexadecimal notation. Binary to Decimal
Binary as a Voltage • Voltages are used to represent logic values: • A voltage present (called Vcc or Vdd) = 1 • Zero Volts or ground (called gnd or Vss) = 0 A simple switch can provide a logic high or a logic low.
Vcc Vcc Vcc, or 1 Gnd, or 0 A Simple Switch • Here is a simple switch used to provide a logic value: There are other ways to connect a switch.
Binary digits Bit: single binary digit Byte: 8 binary digits • Bit 100101112 • Radix Byte
Conversion Between Number Bases Octal(base 8) Decimal(base 10) Binary(base 2) Hexadecimal (base16) • Learn to convert between bases. • Already demonstrated how to convert from binary to decimal. • Hexadecimal described in next lecture.
Conversion Among Bases The possibilities: Decimal Octal Binary Hexadecimal
Convert an Integer from Decimal to Another Base For each digit position: • Divide decimal number by the base (e.g. 2) • The remainder is the lowest-order digit • Repeat first two steps until no divisor remains. Example for (13)10: Integer Quotient Remainder Coefficient 13/2 = 6 + ½ a0 = 1 6/2 = 3 + 0 a1 = 0 3/2 = 1 + ½ a2 = 1 1/2 = 0 + ½ a3 = 1 Answer (13)10 = (a3 a2 a1 a0)2 = (1101)2
Convert an Fraction from Decimal to Another Base For each digit position: • Multiply decimal number by the base (e.g. 2) • The integer is the highest-order digit • Repeat first two steps until fraction becomes zero. Example for (0.625)10: Integer Fraction Coefficient 0.625 x 2 = 1 + 0.25 a-1 = 1 0.250 x 2 = 0 + 0.50 a-2 = 0 0.500 x 2 = 1 + 0 a-3 = 1 Answer (0.625)10 = (0.a-1 a-2 a-3 )2 = (0.101)2
The Growth of Binary Numbers Mega Giga Tera
Binary Addition • Binary addition is very simple. • This is best shown in an example of adding two binary numbers… 1 1 1 1 1 1 carries 1 1 1 1 0 1 + 1 0 1 1 1 --------------------- 1 0 1 0 1 0 0
1 10 0 10 10 0 0 10 1 0 0 1 1 0 1 - 1 0 1 1 1 ------------------------ 1 1 0 1 1 0 borrows Binary Subtraction • We can also perform subtraction (with borrows in place of carries). • Let’s subtract (10111)2 from (1001101)2…
Binary Multiplication • Binary multiplication is much the same as decimal multiplication, except that the multiplication operations are much simpler… 1 0 1 1 1 X 1 0 1 0 ----------------------- 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 1 0 1 1 1 ----------------------- 1 1 1 0 0 1 1 0
Convert an Integer from Decimal to Octal For each digit position: • Divide decimal number by the base (8) • The remainder is the lowest-order digit • Repeat first two steps until no divisor remains. Example for (175)10: Integer Quotient Remainder Coefficient 175/8 = 21 + 7/8 a0 = 7 21/8 = 2 + 5/8 a1 = 5 2/8 = 0 + 2/8 a2 = 2 Answer (175)10 = (a2 a1 a0)2 = (257)8
Convert an Fraction from Decimal to Octal For each digit position: • Multiply decimal number by the base (e.g. 8) • The integer is the highest-order digit • Repeat first two steps until fraction becomes zero. Example for (0.3125)10: Integer Fraction Coefficient 0.3125 x 8 = 2 + 5 a-1 = 2 0.5000 x 8 = 4 + 0 a-2 = 4 Answer (0.3125)10 = (0.24)8
Summary • Binary numbers are made of binary digits (bits) • Binary and octal number systems • Conversion between number systems • Addition, subtraction, and multiplication in binary