280 likes | 302 Views
Explore FPGA-based system design topics such as combinational logic, static complementary gates, and switch logic. Learn about gate design challenges, Boolean algebra terminology, completeness of logic gate sets, and static complementary gate structures. Discover the design principles and benefits of pullup/pulldown networks, AOI/OAI gates, and switch-based mux implementation.
E N D
Chapter 2: VLSI Technology Tahir Muhammad Lecture 2 FPGA-Based System Design
Topics • Combinational logic functions. • Static complementary logic gate structures. • Switch logic. • Non-standard gate structures.
Combinational logic expressions • Combinational logic: function value is a combination of function arguments. • A logic gate implements a particular logic function. • Both specification (logic equations) and implementation (logic gate networks) are written in Boolean logic.
Gate design Why designing gates for logic functions is non-trivial: • may not have logic gates in the libray for all logic expressions; • a logic expression may map into gates that consume a lot of area, delay, or power.
Boolean algebra terminology • Function: f = a’b + ab’ • a is a variable; a and a’ are literals. • ab’ is a term. • A function is irredundant if no literal can be removed without changing its truth value.
Completeness • A set of functions f1, f2, ... is complete iff every Boolean function can be generated by a combination of the functions. • NAND is a complete set; NOR is a complete set; {AND, OR} is not complete. • Transmission gates are not complete. • If your set of logic gates is not complete, you can’t design arbitrary logic.
Static complementary gates • Complementary: have complementary pullup (p-type) and pulldown (n-type) networks. • Static: do not rely on stored charge. • Simple, effective, reliable; hence ubiquitous.
Static complementary gate structure Pullup and pulldown networks: VDD pullup network out inputs pulldown network VSS
Inverter + out a
NAND gate + out b a
NOR gate + b a out
AOI/OAI gates • AOI = and/or/invert; OAI = or/and/invert. • Implement larger functions. • Pullup and pulldown networks are compact: smaller area, higher speed than NAND/NOR network equivalents. • AOI312: and 3 inputs, and 1 input (dummy), and 2 inputs; or together these terms; then invert.
AOI example out = [ab+c]’: invert symbol circuit or and
Pullup/pulldown network design • Pullup and pulldown networks are duals. • To design one gate, first design one network, then compute dual to get other network. • Example: design network which pulls down when output should be 0, then find dual to get pullup network.
a a dummy c b b c dummy Dual network construction
Switch logic • Can implement Boolean formulas as networks of switches. • Can build switches from MOS transistors—transmission gates. • Transmission gates do not amplify but have smaller layouts.
Switch logic network a 0 b 1
Another switch logic network a r b s
Behavior of n-type switch n-type switch has source-drain voltage drop when conducting: • conducts logic 0 perfectly; • introduces threshold drop into logic 1. VDD VDD - Vt VDD
n-type switch driving static logic Switch underdrives static gate, but gate restores logic levels. VDD VDD - Vt VDD
n-type switch driving switch logic Voltage drop causes next stage to be turned on weakly. VDD VDD - Vt VDD
Behavior of complementary switch • Complementary switch products full-supply voltages for both logic 0 and logic 1: • n-type transistor conducts logic 0; • p-type transistor conducts logic 1.
Charge sharing • Values are stored at parasitic capacitances on wires:
0 0 0 Charge sharing example 1 1 1 1