Digital Design
Designing a digital system
1. Specify the desired behavior 2. Formulate the relationship between the inputs and outputs of a system, usually in terms of Boolean equations or a truth table. 3. Optimize the representation of the logical behavior to minimize the number of logical gates required 4. Map the optimized logic to the available implementation technology 5. Verify the correctness of the final design
Multiplier Using Wider Adders
A more "structured" way to develop an n x m multiplier is to sum partial products using adder trees.
Encoder Expansion
Encoders can be expanded to large numbers of inputs by expanding OR gates.
D-Latches
One way to eliminate the undesirable undefined state in the SR latch is to ensure that input S and R are never equal to 1 at the same time.
Binary Subtraction
The binary addition of the minuend to the 2's complement of the subtrahend.
rudimentary logic functions
Value fixing, transferring,inverting, and enabling are among the most elementary combinational logic functions. the first two operations, value fixing and trasferring, do not involve any boolean operatores, they use only variables and constants.
Multiplier Arrays using Adders
a digital combinational circuit used for multiplying two binary numbers by employing an array of full adders and half adders. this is a fast way of multiplying two numbers since all it takes is the time for signals to propagate through the gates that form the multiplication array.
Multiplication/Division by 2n
a multiplier with a 3-bit multiplier and a 4-bit multiband is shown with constant values applied to the multiplier.
Prime Implicant
a product term obtained by combining the maximum possible numbers of adjacent squares in the map into a rectangle with the number of squares of a power of 2.
Data path Components
a set of registers, the microoperations performed on data stored in the registers, the control interface
Latches
a storage element can maintain a binary state indefinitely until directed by an input signal to switch states
Incrementing
adding a fixed value to an arithmetic variable
Programmable Logic Device
are fabricated with structures that implement logic functions and structures that are used to control connections or to store information specifying the actual logic functions.
Shift Microoperations explained
are used for lateral movement of data. the contents of a shift register can be shifted either right or left.
Logic Microoperations explained
are useful in manipulating the bits stored in a register.
iterative combinational circuit
arithmetic functions operate on binary vectors and use the same subfunction in each bit position, it can design functional block fir subfunction and repeat to obtain functional block for overall function.
Arithmetic Microoperations explained
basic arithmetic such as add, subtract, increment, decrement, and complement.
Carry Lookahead Development
can be removed from the cells and used to derive a set of carry equations spanning cells.
Zero fill
can be used to increase the number of bits in an operand.
Multiple Level Circuit
can have reduced gate input cost compared to two-level circuits
Static RAM
consists of internal latches that store binary information. the information remains valid as long as power is applied to the RAM
Sequential Circuit Analysis
consists of obtaining a suitable description that demonstrates the time sequence of inputs, outputs, and states.
Don't Care in K-map
contains information such as the input values for the minterms will never occur; the output for the minterm is not used.
CMOS Circuit
digital integrated circuits are classified not only by their function but also by their specific implementation
Technology Parameters
for each specific implementation technology, there are details that differ in their electronic circuit design and circuit parameters.
signed complement
here the digits are interpreted as the rest of the complement of the number.
signed magnitude
here the n-1 digits are interpreted as a positive magnitude.
Value Fixing, Transferring and Inverting
if a simple-bit function depends on a single variable x, four different functions are possible
Edge triggered flip-flop
ignores the clock pulse while it is at a constant level and triggers only during a transition of the clock signal.
properties of memory
integrated- circuit RAM may be either static or dynamic
Binary 1's complement
invert the given number
SR Latches
is a circuit constructed from two cross-coupled NOR gates. it is derived from the single-loop storage elements.
Priority encoder
is a combinational circuit that implements a priority function. if two or more inputs are equal to 1 at the same time, the input having the highest priority takes precedence.
Arithmetic Logic Units
is a combinational circuit that performs a set of basic arithmetic and logic micro operations. it has several section lines used to determine the operation to be performed.
Multiplexer
is a combinational circuit that selects binary information from one of many input lines and directs the information to a single output line.
Encoding
is a digital function that performs the inverse operation of a decoder. it has 2n input lines and n output lines. the output lines generate the binary code corresponding to the input value.
Memory Basics
is a major component of a digital computer and is present in a large proportion of all-digital systems.
Design by Contraction
is a technique for simplifying the logic in a functional block to implement a different function. the new function must be realizable from the original function by applying rudimentary functions to its inputs.
Write Operation
is a transfer into the memory of a new word to be stored.
Read Operation
is a transfer of a copy of a stored word out of memory
Carry lookahead adder
is a type of electric adder used in digital logic. it calculates one or more carry bits before the sum, which reduces the wait time to calculate the result of the larger-value bits of the adder
Microoperations
is an elementary operation performed on data stored in registers or memory.
Read Only Memory
is essentially a device in which "permanent" binary information is stored. the information must be specified by the designer.
Sequential Circuit
is formed by interconnecting a combinational circuit and storage elements. the storage elements are circuits that are capable of binary information.
4 bit Ripple - Carry Binary adder
is made from 4 1- bit full adders
Multiple Level Optimization
is performed by applying transformations to circuits represented by equations while evaluating costs
Programable Logic Array
is similar to ROM, except that it does not provide full decoding of the variables and does not generate all the minterms.
Extension
is the increase in the number of bits at the MSB end of an operand by using a complement representation.
Half Adder
it is a 2-input bit-wise additional block
Full Adder
it is a 3-input bit-wise additional block
Binary 2's complement
it is an example of a radix complement
Data paths
it is part of the processer, or CPU. it contains the digital logic that implements the various microoperations.
Essential Prime Implicant
it is the only one that covers one or more minterms
overflow detection
it occurs if n+1 bits are required to contain the result from an n-bit addition or subtraction. it can be performed by examining the result signs which should match the sings of the top operand.
Prime Implicant Selection Rule
minimize the overlap among prime implicants as much as possible. in the final solution, make sure that each prime implicant selected includes at least 1 minterm not included in any other prime implicant selected.
Multiplier Boolean Equations
n x m "block" multiplier and us that to form partial products.
Carry Propagation and Delay
one problem with the addition of binary numbers is the length of time to propagate the ripple carry from the least significant bit to the most significant bit.
3 variable k-map
one square represents a minterm with 3 variables, reduced literal products fir SOP standard forms correspond ti rectangles on k-maps contain cell count that is the power of 2.
Arithmetic Microoperations
perform arithmetic operations on data in regesters
Logic Microoperations
perform bit manipulation on data in registers
signed integer
positive numbers and zero cab be represented by unsigned n-digit, radix r numbers. we need a representation for negative numbers.
Decoder based combinational circuits
provides the 2n minterms of n input variables. since any boolean function can be expressed as a sum of minterms, one cause uses a decoder to generate the minterms and combine them with an external OR gate to form a sum-of-minterms implementation.
Combinational Functional Blocks
refered to as functional blocks.
Selecting
selection of information to be used in a computer system is a very important function, not only in communicating between the parts of the system, but also within the parts as well.
Shift Microoperations
shift data in registers
Sequential Circuit Diagram
starts from a set of specifications and culminates in a logic diagram or a list of boolean functions from which the logic diagram can be obtained
Dynamic RAM
stores the binary information in the form of electric charges on capacitors.
Unsigned Subtraction
subtract the subtrahend N from the minuend M.
Decrementing
subtracting a fixed value from an arithmetic variable
2's complement adder/subtractor
subtraction can be done by the addition of the 2's complement
Integrated circuit RAM
the binary cells need external power to maintain the stored information
Decoding
the conversion of an n-bit input code to an m-bit output such that each valid input codeword produces a unique output code. it is performed by a decoder, combinational circuit with n-bit binary codes applied to its inputs and m-bit binary code appearing at the output.
hierarchical design
the creation of higher-level cells based on lower level cells.
State Table
the functional relationships among inputs, outputs, and flip-flops states of a sequential circuit can be enumerated in a state table.
Multiple Bit Function
the functions defined as for can be applied to multiple bits on a bit uses basis
State Diagram
the information available in a state table may be represented graphically
Input Equations
the logic diagram of a sequential circuit consists of flip-flops and usually combinational gates.
Timing Waveform
the operation of the memory unit is controlled by an external device, such as CPU. its read and write operations are timed by changes in values on the control inputs.
Computer Design Basics
the specifications for a computer consist of a description of its appearance o a programmer at the lowest level.
flip-flops
the storage elements used in the simplest form of clocked sequential circuits.
Decoder and OR gate implementation of a binary adder bit
the sum bit output S and the carrying bit C for a bit position in the addition are given in terms of the two bits being added, and the incoming carry from the right.
2's Complement
the sum of a number and its two's complement is 2n
Design Space
there is typically a target implementation technology that specifies the primitive elements available and their properties.
Binary Adder
to add multiple operands, we "bundle" logical signals together into vectors and use functional blocks that operate on the vectors
Transfer Microoperations
transfer binary data from one register to another
5 variable K-map
use two adjacent k-maps. it becomes harder to visualize, minterms for selecting PIs.