Digital Logic Design

Réussis tes devoirs et examens dès maintenant avec Quizwiz!

Flip-flop latch

A latch that stores a new bit only at the instant of clock input'ss rising edge

SR Latch

A latch that stores one bit, with an input s to set the latch to 1, an input r to reset the latch to 0, and with the stored bit appearing on output q. S and s are for "set"l and R and r for "reset".

Level-sensitive latch

A latch that stores only when the enable's "level" is high

DeMorgan's Law

A law of logic that is used to simplify conditions in which ! (not) operators are applied to AND + OR expressions. AND switches to OR and OR switches AND. When you invert an OR --> the AND of the complements. (a+b)' = a'b' When you invert an AND --> the OR of the complements. (ab)' = a' + b'

Select Lines

A mux's control inputs

Minterm

A product term in a Boolean expression where all possible variables appear once in true or complement form.

Function

A relation of input values to output values. Can be represented in various ways: equation, table, circuit, etc. A function may have more than one input, but has only one output.

Controller

A sequential circuit consisting of a register and combinational logic

electronically-controlled switch

A switch that has another input terminal whose voltage can turn the switch on.

NAND

A universal gate. Operates as an AND gate followed by a NOT gate; the output is false if both inputs are true; otherwise the output is true.

NOR

A universal gate. The opposite of an OR gate.

Logic Operators

AND, OR, and NOT

Product Term

Aan ANDing of (one or more) variables, like ab'c.

Minimal Cover

An expression for the function, having the fewest terms, each with the fewest literals. On a K-map, a minimal cover is a cover using the fewest, largest, circles, and the largest circles are PIs.

Prime Implicant

An implicant that cannot have a literal removed without becoming a non-implicant. In a k-map, it is each LARGEST possible valid circle.

Clock signal

An oscillating signal used to control when to store bits. Oscillates between a high and a low state and is utilized like a metronome to coordinate actions of circuits.

What are the different ways of describing a function?

As English: When inputs a, b are both 1's, the output y is 1. Else, y is 0. As an equation: y = ab As a truth table. As a circuit, as a drawing, a K-map (introduced later), etc.

Edge-triggered

Certain FFs that require a change in the clock signal as a condition for switching states

D latch

Circuit that stores one bit, with an input d having the bit to be stored, an input e that when 1 enables storing the bit, and with the stored bit appearing on output q.

Convert from binary to decimal: 0001

Convert from decimal to binary: 1

Convert from binary to decimal: 1101

Convert from decimal to binary: 13

Analysis

Converting a circuit to behavior (like an equation)

Design

Converting an equation to a circuit.

Equation

Has an =, with expressions of input variables on the right, and an output variable on the left. (e.g. y = ab)

For a 16x4 encoder, what is the output if only input d5 is 1?

Input d5 is 1 and no other input is 1, so the output is the binary value for 5, or e3e2e1e0 = 0101.

How are k-maps useful?

It is a graphical method to help us find opportunities to combine terms. Otherwise, it is easy to miss "seeing" possible opportunities to combine terms.

Expression

Lacks an equal sign, and involves input variables. (e.g. ab)

Shorthand: a'

NOT(a)

Mealy FSM

Output value is a function of current state AND current input values

Moore FSM

Output value is a function of current state only

XNOR

Outputs 1 if that input values are equal/are even (in the case of > 2 inputs)

Canonical form

Standard equation form for a function

On-set

The set of midterms that define when the function is 1

What does it mean when a term "covers" a midterm?

The term evaluates to 1 whenever the midterm does. E.g. term ab for minters abc, as well as abc'.

Clock cycle

The time between two rising edges (the clock period)

Two equations with the same sum-of-minterms represent the same function (T/F).

True

How do you convert an FSM to a controller?

Use a state register to store the present state and combinational logic to compute outpus and the next state. 1. Capture the FSM 2. Create the architecture by using a state register of appropriate width and combinational logic with inputs being the state register bits and the FSM inputs and outputs being the next state bits and FSM outputs. 3. Encode the states (assign a unique binary number to each state) 4. Create the state/truth table for the combinational logic such that the logic will generate the correct FSM outputs and next state signals. 5. Implement the combinational logic using any method.

State Reduction with Partitioning Method

Use the partitioning method. 1. Group states per output values 2. Add a column for inputs for each state 3. List next states and their groups based on the transition conditions. (e.g. if b=1 --> state T) 4. List the next state group for each state+input. 5. If the next state's group differs they cannot be equivalent. 6. Split group per next states' groups. Update next states' groups

Identity (OR)

a + 0 = a

Complement (OR) Property

a + a' = 1

XOR

outputs 1 if the input values differ/are odd (in the case of > 2 inputs)

Even Parity Bit

the eighth bit, aka the parity bit, is set to 1 if the number of 1's in the data bits is odd, which would make the number of 1's in the 8 bit byte an even number. It is set to 0 if the number of 1's in the data is even. Ex: 1111 100 → the 8th bit would be 1 because it needs to be an even parity bit and there are an odd number of 1's

Involution

(a')' = a

Associative Property

(ab)c = a(bc)

Finite State Machine (FSM)

A computation model capable of describing sequential behavior. The model consists of inputs, outputs, states, state actions, transitions, and an initial state. Generates an output as processing takes place.

Timing diagram

A diagram that graphically shows a circuit's output values for given input values that change over time. Each signal (input or output) name is listed on the left. Time proceeds to the right. Each signal is drawn as a high line (1) or a low line (0).

D Flip-Flop

A flip-flop with one data input that stores the value of that input signal in the internal memory when the clock edge occurs

Sum-of-products

A form of logical representation that employs a logical sum (OR) of products (terms joined using the AND operator)

How can you convert a truth table to an equation?

A function captured as a truth table can be transformed to a sum-of-minterms equation by summing the minterms in rows having a 1

For a D latch, what is q's present value given: d: 0..0..1 e: 1..0..0

0

For a D latch, what is q's present value given: d: 0..0..1..1..0 e: 1..0..0..1..0

1

What is the common process for simplifying a sum-of-products expression?

1. Convert to sum-of-minterms 2. Seek i(j+j') opportunities

How can you create a minimal cover?

1. Generate PIs: Find all PI's by drawing all largest possible circles 2. Add essential PIs: Find any essential PIs and add them to the function's cover. 3. Cover remaining: Select PI's to cover any 1's not covered by the essential PI's.

If each AND or OR gate input requires two transistors, how many transistors does the circuit r = abc' + ab'c' (unsimplified) require? Ignore NOT gates.

16 The two AND gates have 6 inputs total (one per literal). The OR gate as 2 inputs (one per term). The total AND/OR inputs is 6 + 2 = 8. However, each input requires two transistors, so the total transistors is 8 * 2 = 16.

How many bits are required to store 4 states in a state register?

2 bits (00, 01, 10, 11)

D flip-flop: Master-servant implementation

A D flip-flop built as a first D latch whose output q is the input d of a second D latch. A clock input connects to the e input of each, inverted for the first.

Sum-of-minterms form

A canonical form of a Boolean equation where the right-side expression is a sum-of-products with each product a unique minterm

Register

A circuit that stores a groups of bits. On a rising clock edge, all bits are stored simultaneously

Sequential Circuit

A circuit whose output is a function of its input values and the current state of the circuit. A circuit whose output values may depend on the past sequence of input values, and not just the present input values

Combinational Circuit

A circuit whose output is solely determined by its input values

Priority encoder

A combinational circuit that outputs the binary value for the highest priority input that is 1, where a higher numbered inputs has higher priority Assumes that at least one input is 1, but more than one input can be 1. When multiple inputs are one, the binary value for the highest priority input will be output. Ex: If the input is d3d2d1d0 = 1010, d3 has priority over d1, so the output is e1e0 = 11.

Incompletely specified function

A function that does not define an output value for every input combination. Ex: A 3-position knob may set 2 inputs to 00, 01, or 10. Combination 11 is not possible and thus f is not specified for that combination.

K-map (Karnaugh Map)

A graphical function representation that eases the simplification process for expressions involving a few variables, by adjacently placing minterms that differ in exactly one variable. It lays out possible minterms as adjacent cells (boxes). Adjacent minterm cells differ by exactly one variable. Each function minterm cell gets a 1; other cells get 0. Can also be considered a reoriented truth table.

Oscillator

A special device that generates a clock at a specific frequency

maxterm

A sum term in a Boolean expression where all possible variables appear once in true or complement form. (e.g. a+b when only a and b are the variables)

How can you convert a sum-of-products equation into a sum-of-minterms equation?

A sum-of-products equation can be transformed to sum-of-minterms by multiplying each product term by (v + v') for any missing variable v to create minterm (removing redundant minterms) 1. Initially multiplying out to sum-of-products 2. Transform each product term to a minterm 3. Remove redundant minterms

Implicant

A term that covers only midterms in the function's on-set. Represented in a k-map by each valid circle (not necessarily the largest).

How can a SR latch be implemented?

An SR latch can be designed with two cross-coupled NOR gates (the output of each is an input to the other), with s input to top gate and r input to the bottom (whose output is q).

Carry-Ripple Adder

An adder that mimics adding by hand, adding a digit's pair of bits and carry-in bit, and generating a sum and carry-out bit.

Boolean algebra

An algebra whose only values are true or false, and whose operators are AND, OR, and NOT.

Quine-McCluskey

An algorithm for two-level logic optimization, suitable for computer automation due to using a tabular method (rather than a graphical method like K-maps). Given.a function's midterms, the steps are: 1. Generate PI's: Create a table of midterms, then pairwise check midterms for i(j + j') opportunities, combining into new terms in a new column, repeating with new terms until no more combinations can be made. Each term that wasn't combined with another (midterms or new terms) is a prime implicant (PI). 2. Find Essentials: Draw a table with PI's as rows and midterms as columns, putting a mark to indicate that a PI covers a midterm. For any column with only one mark, the PI for that row is essential so is added to the cover. All midterms covered by that PI are also checked off as covered. 3. Cover Remaining: Select minimal unadded prime implicants to cover remaining midterms.

Boolean equation

An equation that expresses a boolean output in terms of boolean inputs to which one or more Boolean functions, such as OR, AND and NOT, are applied. Can describe a digital circuit, with the output on the left and the inputs on the right.

What is the relationship between a function's minimal cover and prime implicants?

Defining prime implicants is useful because each term in a minimum cover MUST be a prime implicant, otherwise the cover is not minimal.

Idempotent

Duplicate values can be removed. a · a = a a + a = a

Latch

Stores a new bit while an enable input is 1

Compact Function Notation

Represents each minterm in a sum-of-minterms equation by a number. e.g. f(a,bc) = m3 + m7

Null elements

Result doesn't depend on the value of a. a · 0 = 0 a + 1 = 1

Distributive (AND) Property

Same as multiplication in regular algebra a(b + c) = ab + ac

Equivalent state

States that have the: - Same output - Same next state - Same input values

Essential Prime Implicant

The only prime implicant to cover a particular midterm in a function's on-set. On a K-map, an essential PI is a largest circle that is the only circle to cover a particular 1.

State register

The register in a controller, holding an FSM's present state. Each state requires a unique bit encoding which is then stored in the state register.

Latch

The simplest circuit for storing a bit

Distributive (OR) Property

Variable order does not matter. a + (bc) = (a + b)(a + c)

Shorthand: ab

a AND b

Shorthand: a + b

a OR b

Encoder

a combinational circuit that converts 1 of N inputs to a binary value using log(N) outputs

Decoder

a combinational circuit that converts N inputs to a 1 on one of 2^N outputs

Multiplexor (aka Mux)

a combinational circuit that passes one of multiple data inputs through to a single output, selecting which one based on additional control inputs

logic gate (or just gate)

a transistor circuit that implements a logic function

Literal

a variable appearance, in true or complemented form, in an expression, such as b, or b'.

Identity (AND)

a · 1 = a

Complement (AND) Property

aa' = 0

Commutative Property

ab = ba a + b = b + a

sum term

an ORing of (one or more) variables, like (a + b' + c'). A sum term is sometimes called just a term

Adder

computes A + B, where A and B are N-bit numbers, such as 8-bit numbers

Clock frequency

cycles per second of a clock, in units of hertz (Hz) meaning cycles/second

Given f(a, b, c) = a'bc + abc, the compact notation is?

f(a, b, c) = m3 + m7

If a mix has n inputs, how many select lines are needed?

log2n

Minterm Number of ab'c = ?

m5

Minterm Number of abc'

m6

Minterm Number of abc = ?

m7

Product-of-sums form

n expression in product-of-sums (POS) form consists solely of an ANDing of sum terms, like (a + b' + c)(a + b).


Ensembles d'études connexes

chapter 17: gene regulation in eukaryotes

View Set

ATI TEAS Science Diagnostic Test

View Set

Neuro and MusculoSkeletal Socrative

View Set

Chapter 3 - Cells: The Living Units

View Set