• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/75

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

75 Cards in this Set

  • Front
  • Back

Duality of a function

Change . <-> +


Change 0 <-> 1


Keep precedence (may need parentheses)

DeMorgan's Equivalent

Change AND <-> OR


Complements inputs and outputs

DeMorgan's Complement (Inverse)

Change AND <-> OR


Complement inputs

Sum - of - Products (SOP)

Output = 1


Prime 0 terms


OR all minterms

Product - of - Sums (POS)

Output = 0


Prime 1 terms


AND all maxterms

Complete Logic Set

Any logic function can always be constructed using only AND, OR & Inverter gates

Static Hazards

The output is supposed to stay at one value, but briefly assumes the other value




To fix: add an another PI to join all adjacent 1s

Dynamic Hazard

The outputs is supposed to change values, but oscillates briefly before settling down

Minimal Sum for a function (SOP)

Minimum number of products terms (AND gates), minimum number of literal inputs to the products

Literal

A variable or complemented variable

Implicant

A group of 1s on the K-Map

Prime Implicant (PI)

Biggest group of 1s on the K-Map

Distinguished 1-Cell

A 1 included in only one prime implicant (PI)

Essential Prime Implicant (EPI)

A prime implicant (PI) that contains a distinguished 1-cell

Cover

A group of implicants that include al 1s in F

Incompletely Specified Function

a circuit with one or more don't cares

Dataflow Specification (Verilog)

1. Specifies logic equation of the function


2. Represented as a set of concurrent assignment statements


(assign)



Procedural Specification (Verilog)

1. Specified the logic as a sequence of program statements


2. Employs all common logical & arithmetic operators


3. Executes statements sequentially


(always @)

Parameter (Verilog)

Defines a symbolic constant


(similar to #define in C)

Concatenation Operator (Verilog)

Having a bunch of signals you wish to "bundle" together




EX: Nerds = {Sheldon, Leonard, Raj};

Propagation Delay

Real digital circuits take time to switch states


Limit a system's temporal performance

Fan-In

Number of inputs (n) into a particular device


1. The bigger n is, the longer it takes to charge all the gates


2. Large fan-in (n) lengthens prop. delay

Fan-Out

Number of devices a given signal must drive, number of logic gates using this signal as inputs


1. As fan-out increases, the device takes longer to switch

Rise & Fall Time

Time it take signals to rise or fall from logic 0 to logic 1 (affected by fan-in and fan-out)




tr = rise time


tf = fall time

Decimal

Base 10


Representation: 613

Binary

Base 2


Representation: 0b1101

Hexidecimal

Base 16


Representation: 0x613

Octal

Base 8


Representation: 0613

Convert anything to decimal

Execute defining summation:




EX: Binary (0b1101) to decimal 1*2^3 + 0*2^2 + 1*2^1 + 1*2^0 = 11


EX: Octal (03602) to decimal 3*8^3 + 0*8^2 + 6*8^1 + 2*8^0 = 1586


EX: Hex (0x3062) to decimal 3*16^3 + 0*16^2 + 6*16^1 + 2*16^0 = 12,836



Convert decimal to anything

Repeatedly divide the decimal by r:




EX: Decimal (58) to hex 58/16=3 R10, 3/16 = 0 R3 -> 0x3A

Convert Binary to Octal/Hex

Octal: group bits into 3s, write down digits


Hex: group bits 4s, write down digits

Convert Octal/Hex to Binary

Octal: Expand each digit into three binary bits


Hex: Expand each digit into four binary bits

Convert Hex <-> Octal

Detour through binary:


1. Convert to Binary


2. Regroup bits

Unsigned Binary Representation

Cannot be negative numbers


EX: 0001 = 1


EX: 1001 = 11


EX: 1101 = 13

Signed-Magnitude Representation

All we do is add on a sign bit


EX: +5 = 0b0101


-5 = 0b1101




Easy for people to read and interpret

1's Complement Representation

To negate: invert all the bits (-X = X')




EX: +1 = 0001


-1 = 1110

2's Complement Representation

To negate: invert all the bits and add 1 (-X = X'+1)




EX: +5 = 0b0101


-5 = 0b1011 (-5 = 5'+1)




Very hard for people to read and interpret

Sign Extension

Simple "sign extend" the sign bit into the upper bits




EX: 0011 -> 0000,0011


EX: 1011 -> 1111,1011

Unsigned Overflow

Carry out of most significant bit (MSB)

Unsigned Underflow

No carry out of most significant (MSB)

Excess Signed Notation

Select some medial value (B) and define that as 0


Any number > B is positive


Any number < B is negative




Min value is always 000...000


Max value is always 111...111


Zero value is always at B

Gray Code

Any two adjacent bits differ in exactly one bit


EX: 0000, 0001, 0011, 0010

Fixed - Point Fractions

Insert a "binary point" to mark the fraction part of the number



EX: 1010.11 = 10.75


1*2^3 + 0*2^2 + 1*2^1 + 0*2^0 . 1*2^-1 + 1*2^-2



Floating Point Numbers

Base 2 scientific notation




EX: 1001 = 1.001*2^3

Floating Point normalized form

(sign) (significand)*2^exponent




significand is written with one bit the left of the radix point

ASCII Code

American Standard Code for Info Interchange




Decimal digits: 0x30 & run contiguously


Upper case letters: 0x41 & run contiguously


Lower case letters: 0x61 & run contiguously

Change upper case <-> lower case

Upper and lower case only differ in bit 5


To change the case: invert bit 5

Fault

Physical defect or flaw in a component of the system

Error

Incorrect behavior caused by a fault

Failure

inability of system to correctly deliver its service

Codeword

Combined data and check bits




N = M + K (size of codeword)


M = dataword


K = check bits

Hamming Distance

Number of bits in which 2 codewords differ




EX: A 10011001


B 11001101


HD (A,B) = 3

Code Distance

Minimum hamming distance between any 2 valid codewords




Code distance must be > # of errors tolerated

Programmable Logic Array (PLAs)

Direct implementation of SOP equation




Amplifies signal currents, protects source from fan-out




2 output ports: one inverted, one not

Tri-State Devices

Outputs have a high impedance, "High-Z" state




Z-state is controlled by the enable pin


1. enabled: normal buffer


2. disabled: disconnected, high-z state

Decoder

Can generate all combinational logic functions




n data inputs


2^n outputs


enable inputs

Complexity of Decoded Addresses

2^n data rows (one word per row)


2^n select signals, decoded from n address bits

Encoder

Outputs the binary address of input line (assuming inputs are mutually exclusive)




2^n data inputs


n data ouputs




If not mutually exclusive: selection is based on priority - usually one with largest signal name

Multiplexer (MUX)

n data inputs (usually power of 2)


log2(n) select inputs


exactly one ouput


optional enable pin




Rotary switch to select which data inputs goes to the one & only output

Demultiplexer (DeMUX)

1 data input signal (G)


n input select signals


2^n output signals




Rotary switch to select with data output gets the one & only input

Comparators

Compares 2 unsigned numbers




A = B is easy


A < B or A > B is messy

Carry-Lookahead Adder (CLA)

gi = generate function in stage i


pi = propagate function in stage i

Sequential Logic vs. Combinational Logic

Sequential: current output depends on current input and previous device states




Combinational: current output depends on current inputs only

Asynchronous

Output changes as soon as input changes

Level Gated

Output changes only when enable/clock is active


(Latches)

Pulsed

Output changes only when enable/clock changes twice (after a completed pulse)


(Flip-Flops)

Edge Triggered

Output changes only at the edge of the clock

Setup Time

Minimum time that D must be stable before the rising edge of the clock

Hold Time

Minimum time that D must be stable after the rising edge of the clock

Asynchronous Counter

Each Flip-Flop is triggered by a state-change in previous FF (ripple-carry adder)

Synchronous Counter

Each Flip-Flop is triggered by the global clock (carry-lookahead adder)

Moore Finite State Machine

current_state = F(previous_state, inputs)


Q <= F(W,Q)




current_output = G(current_state)


Z = G(Q)




Outputs change synchronously - only on clock edge

Mealy Finite State Machine

current_state = F(previous_state, inputs)


Q <= F(W,Q)




current_output = G(current_state, inputs)


Z = G(W,Q)




Outputs change asynchronously - when either state or inputs change

What does asynchronous mean?

1. No clock pulse to synchronize circuits


2. No clocked flip-flops for state variables


3. States and outputs change when inputs change


4. There is stored state memory (behavior is history dependent)


5. Order in which inputs change, matters

Fundamental Mode

1. Just one input changes at a time


2. A 2nd input change does not occur until the state is stable