**Course information**

**Catalog Description:**

This course covers the design and application of digital logic circuits, including combinational and sequential logic circuits. Finite State Machine

**Course Objectives:**

Course objectives are the long-term goals set for students who take this course. For students to understand how logic circuits are used to solve engineering problems. Understand how logic circuits are analyzed, designed, verified, and tested. And understand the relationship between abstract logic characterizations and practical electrical implementations.

**Course Learning Outcomes:**

Learning outcomes are the skills and abilities students are expected to have at the end of the course so that the course objectives can be achieved. Learning outcomes also define the primary quantities that are measured for the purpose of course assessment and continuous improvement. After taking this course students will be able to recognize and use the following concepts, ideas, and/or tools: Boolean algebra, logic gates and Logic functions, Function simplification and Logic gates and networks, Combinational logic circuit and Sequential Logic Circuits, CMOS technology and programmable logic devices and TTL, Finite state machines

**COURSE CONTENT:****Binary Numbers**

In mathematics and digital electronics, a binary number is a number expressed in the base-2 numeral system or binary numeral system, which uses only two symbols: typically 0 (zero) and 1 (one).

Generally, a logic “1” represents a higher voltage, such as 5 volts, which is commonly referred to as a HIGH value, while a logic “0” represents a low voltage, such as 0 volts or ground, and is commonly referred to as a LOW value. These two discrete voltage levels representing the digital values of “1’s” (one’s) and “0’s” (zero’s) are commonly called: Binary digits, and in digital and computational circuits and applications they are normally referred to as binary BITS.

**Digital Logic States**

The **Digital Logic Gate** is the basic building block from which all digital electronic circuits and microprocessor-based systems are constructed from. Basic digital logic gates perform logical operations of AND, OR and NOT on binary numbers.

**Boolean Algebra**: is a branch of algebra that involves bools, or true and false values. They’re typically denoted as T or 1 for true and F or 0 for false. Using this simple system, we can boil down complex statements into digestible logical formulas.

**Truth table**: A truth table is a logically-based mathematical table that illustrates the possible outcomes of a scenario. The truth table contains the truth values that would occur under the premises of a given scenario. As a result, the table helps visualize whether an argument is logical (true) in the scenario.

The rows of a basic truth table contain the Boolean logic true or false values, while the columns list the premises of a scenario as well as the conclusion. A simple truth table contains a single scenario and lists the valid statement and its negation.

After those definition, we will introduce some logic gate

**AND Logic**:

The output state of a “Logic AND Gate” only returns “LOW” again when ANY of its inputs are at a logic level “0”. In other words, for a logic AND gate, any LOW input will give a LOW output.

The logic or Boolean expression given for a digital logic AND gate is that for *Logical Multiplication* which is denoted by a single dot or full stop symbol, (.) giving us the Boolean expression of: A.B = Q.

**OR Logic:**

The output, Q of a “Logic OR Gate” only returns “LOW” again when **ALL** of its inputs are at a logic level “0”. In other words, for a logic OR gate, any “HIGH” input will give a “HIGH”, logic level “1” output.

The logic or Boolean expression given for a digital logic OR gate is that for *Logical Addition* which is denoted by a plus sign, (+) giving us the Boolean expression of: A+B = Q.

**NOT Logic**

it is a single input device which has an output level that is normally at logic level “1” and goes “LOW” to a logic level “0” when its single input is at logic level “1”, in other words it “inverts” (complements) its input signal. The output from a NOT gate only returns “HIGH” again when its input is at logic level “0” .

The logic that we mentioned earlier, it’s the basic logic gate, now we well introduce some special logic gate.

**De Morgan’s theorem **

one of a pair of theorems in logic: the denial of a conjunction is equivalent to the alternation of the denials and the denial of an alternation is equivalent to the conjunction of the denials

**Karnaugh Maps definition**: A diagram consisting of a rectangular array of squares, each representing a different combination of the variables of a Boolean function.

**Function simplification**

Boolean Functions and Expressions: Every Boolean function can be written in disjunctive normal form as an OR of ANDs (Sum-of products) of it is arguments or their complements.

Digital electronics deals with the discrete-valued digital signals. In general, any electronic system based on the digital logic uses binary notation (zeros and ones) to represent the states of the variables involved in it. Thus, Boolean algebraic simplification is an integral part of the design and analysis of a digital electronic system.

Although Boolean algebraic laws and DeMorgan’s theorems can be used to achieve the objective, the process becomes tedious and error-prone as the number of variables involved increases. This necessitates the use of a suitable, relatively-simple simplification technique like that of Karnaugh map (K-map), introduced by Maurice Karnaugh in 1953.

**Boolean Algebra Examples**

**The combinational logic circuits**

**The combinational logic circuits** or time-independent logic circuits in digital circuit theory can be defined as a type of digital logic circuit implemented using Boolean circuits, where the output of logic circuit is a pure function of the present inputs only, for example encoder, decoder, multiplexer and demultiplexer. The combinational logic circuit operation is instantaneous and these circuits do not have the memory or feedback loops.

The three main ways of specifying the function of a combinational logic circuit are: Boolean Algebra, Truth Table and Logic Diagram.

**The Multiplexer**

The multiplexer, shortened to “MUX” or “MPX”, is a combinational logic circuit designed to switch one of several input lines through to a single common output line by the application of a control signal. Multiplexers operate like very fast acting multiple position rotary switches connecting or controlling multiple input lines called “channels” one at a time to the output.

The Boolean expression for this 4-to-1 **Multiplexer** above with inputs A to D and data select lines a, b is given as:

**Sequential ****logic circuits**

A Sequential logic circuits is a form of binary circuit; its design employs one or more inputs and one or more outputs, whose states are related to some definite rules that depends on previous states. Both the inputs and outputs can reach either of the two states: logic 0 (low) or logic 1 (high). In these circuits their output depends, not only on the combination of the logic states at its inputs, but moreover on the logic states that existed previously. In other words, their output depends on a SEQUENCE of the events occurring at the circuit inputs. Examples of such circuits include clocks, flip-flops, bi-stables, counters, memories, and registers. The actions of the circuits depend on the range of basic sub-circuits.

**Types of Sequential Logic Circuits**

There are three types of sequential circuits:

**Event Driven:** – Asynchronous circuits that can change the state immediately when enabled. Asynchronous (fundamental mode) sequential circuit: The behavior is dependent on arrangement of input signal that changes continuously over time, and the output can be a change at any time (clock less).

**Clock Driven:** Synchronous circuits that are synchronized to a specific clock signal. Synchronous (latch mode) sequential circuit: The behavior can be defined from the knowledge of circuits that achieve synchronization by using a timing signal called the clock.

**Pulse Driven:** This is a mixture of the two that responds to the triggering pulses.

**SR Flip-Flop**

The **SR flip-flop**, also known as a SR Latch, can be considered as one of the most basic sequential logic circuit possible. This simple flip-flop is basically a one-bit memory bistable device that has two inputs, one which will “SET” the device (meaning the output = “1”), and is labelled S and one which will “RESET” the device (meaning the output = “0”), labelled R.

**TTL and CMOS Logic:**

Standard commercially available digital logic gates are available in two basic families or forms, **TTL** which stands for Transistor-Transistor Logic such as the 7400 series, and **CMOS** which stands for Complementary Metal-Oxide-Silicon which is the 4000 series of chips. This notation of TTL or CMOS refers to the logic technology used to manufacture the integrated circuit, (IC) or a “chip” as it is more commonly called.

The differences between TTL and CMOS are:

- TTL circuits utilize BJTs while CMOS circuits utilize FETs.

- TTL Voltage levels range from 0 to Vcc where Vcc is typically 4.75V – 5.25V. Voltage range 0V – 0.8V creates logic level 0. Voltage range 2V – Vcc creates logic level 1. whilst CMOS Voltage levels range from 0 to VDD where VDD is the supply voltage. A low level is anywhere between 0 and 1/3 VDD while a high level is between 2/3 VDD and VDD.

- CMOS allows a much higher density of logic functions in a single chip compared to TTL.
- TTL circuits consumes more power compared to CMOS circuits at rest.
- CMOS chips are a lot more susceptible to static discharge compared to TTL chips.
- There are CMOS chips that have TTL logic and are meant as replacements for TTL chips.

**Finite State Machines**

A **finite state machine**, or FSM, is a computation model that can be implemented with hardware or software and can be used to simulate sequential logic and some computer programs. Finite state machines can be used to model problems in many fields including mathematics, artificial intelligence, games, and linguistics.

A Finite State Machine is a model of computation based on a hypothetical machine made of one or more states. Only one single state of this machine can be active at the same time. It means the machine has to transition from one state to another in to perform different actions.

In the above figure, there are three states, namely A, B & C. These states are labelled inside the circles & each circle corresponds to one state. transitions between these states are represented with directed lines. Here, 0 / 0, 1 / 0 & 1 / 1 denotes **input / output**. In the above figure, there are two transitions from each state based on the value of input, x.

**Summary**

A Digital Logic Gate is an electronic device that makes logical decisions based on the different combinations of digital signals present on its inputs.

In this course, the student designed and implementation of combinational and sequential logic circuits. The student got a good idea about the concepts of Boolean algebra, Karnaugh maps, flip-flops, registers, and counters along with various logic families and comparison of their behavior and characteristics.

**References**

[1] MORRIS MANO, M., CILETTI, M., Digital Design, 4/e, Prentice Hall.

[2] KYRIAKIS‐BITZAROS, E. D., Logic Circuit Design, laboratory Manual

[3] GAJSKI D.D., Principles of Digital Design, Prentice Hall; 1/e, 1996.