EEE 301 Digital Electronics Lecture 1 Course Contents Introduction to number systems and codes. Analysis and synthesis of digital logic circuits: Basic logic functions, Boolean algebra,combinational logic design, minimization of combinational logic. Implementation of basic static logic gates in CMOS and BiCMOS: DC characteristics, noise margin and power dissipation. Power optimization of basic gates and combinational logic circuits. Modular combinational circuit design: pass transistor, pass gates, multiplexer, demultiplexer and their implementation in CMOS, decoder, encoder, comparators, binary arithmetic elements and ALU design. Programmable logic devices: logic arrays, field programmable logic arrays and programmable read only memory. Sequential circuits: different types of latches, flip-flops and their design using ASM approach, timing analysis and power optimization of sequential circuits. Modular sequential logic circuit design: shift registers, counters and their applications. 1
Objectives T o introduce the basic tools for design with combinational and sequential digital logic and state machines. T o learn simple digital circuits Analysis and synthesis Course Learning Outcomes A student who successfully fulfills the course requirements will have demonstrated: An ability to define different number systems, binary addition and subtraction, 2 s complement representation and operations with this representation. An ability to understand the different switching algebra theorems and apply them forlogic functions. An ability to define the Karnaugh map for a few variables and perform an algorithmic reduction of logic functions. Course Learning Outcomes An ability to define the following combinational circuits: buses, encoders/decoders, (de)multiplexers, exclusive-ors, comparators, arithmetic-logic units; and to be able to build simple applications. An ability to understand the bistable element and the different latches and flip-flops. An ability to derive the state-machine analysis or synthesis and to perform simple projects with a few flip-flops. An ability to understand sequential circuits, like counters and shift registers, and to perform simple projects with them. Ability to design with Verilog HDL 2
Books Fundamentals of Digital Logic with Verilog Design - Stephen Brown and Zvonko Vranesic Digital Fundamentals - Thomas L. Floyd Digital Design: With an Introduction to the Verilog HDL - M. Morris Mano, Michael D. Ciletti Digital Logic and Computer Design - Morris Mano Introduction To Digital Electronics - Crowe & Hayes-Gill Digital Electronics - Anil K. Maini Introduction to Logic Circuits 2.1 Variables and Functions The simplest binary element is a switch that has two states. If a given switch is controlled by an input variable x, then we will say that the switch is open if x = 0 and closed if x = 1 3
The output is defined as the state (or condition) of the light, which we will denote bythe letter L. If the light is on, we will say that L = 1. If the light is off, we will say that L = 0. The symbol is called the AND operator, and the circuit in Figure is said to implement a logical AND function. The + symbol is called the OR operator, and the circuit in Figure is said to implement a logical OR function. 4
2.2 Inversion The value of this function is the inverse of the value of the input variable. Instead of using the word inverse, it is more common to use the term complement. Thus we say that L(x) is a complement of x in this example. Another frequently used term for the same operation is the NOT operation. 2.3 Truth Tables We have introduced the three most basic logic operations AND, OR, and complement by relating them to simple circuits built with switches. This approach gives these operations a certain physical meaning. The same operations can also be defined in the formof a table, called a truth table, 5
2.4 Logic Gates and Networks Each logic operation can be implemented electronically with transistors, resulting in a circuit element called a logic gate.. A logic gate has one or more inputs and one output that is a function of its inputs. It is often convenient to describe a logic circuit by drawing a circuit diagram, or schematic, consisting of graphical symbols representing the logic gates. In technical jargon a network of gates is often called a logic network or simply a logic circuit. W e will use these terms interchangeably. 6
2.4.1 Analysis of a Logic Network For an existing logic network, it must be possible to determine the function performed by the network. This task is referred to as the analysis process. The reverse task of designing a new network that implements a desired functional behaviour is referred to as the synthesis process. The analysis process is rather straightforward and much simpler than the synthesis process. 2.4.1 Analysis of a Logic Network Timing Diagram 7
2.4.1 Analysis of a Logic Network Functionally Equivalent Networks Since both networks realize the same function, it makes sense to use the simpler one, which is less costly to implement. This logic function, which differs from the OR function only when both inputs are equal to 1, is useful for other applications as well. It is called the exclusive-or (XOR) function and is indicated in logic expressions by the symbol. 8
Consider the addition of two one-digit binary numbers a and b. The four possible valuations of a, b and the resulting sums 9