$\require{cancel}$
Basic Gates
 This is partially from appendix B.
 We are beginning combinational logic or logic which does not contain memory.
 Sequential logic is the opposite, logic that contains a memory.
 I will demo with tkgate because I like it.
 For us, the basic components of logic are
 We will also be using these support devices
 Switches
 LEDs
 tristate devices
 This appears to be called a driver in Digital.
 Logic is not electronics.
 We are at a weird mixture between the two, but
 Think about vdd as a source of true
 Think about ground as a source of false.
 This is wrong, but it will work.
 Each of the logic component can be expressed three ways
 Boolean Expression
 Truth Table
 Symbol
 You should be able to switch between the three.
 Not
 $f(x) = \overline{x}$
 In logic it might be $f(x) = \neg x$

$x$  $\overline{x}$ 

0  1 
1  0 

 The datasheet for a not chip.
 Generally we think of not as having less than a unit cost.
 and
 $f(a,b) = a \cdot b = ab$
 In logic $f(a,b) = a \land b$

a  b  ab 
0  0  0 
0  1  0 
1  0  0 
1  1  1 

 The datasheet for similar chips.
 or
 $f(a,b) = a + b = ab$
 In logic $f(a,b) = a \lor b$

a  b  ab 
0  0  0 
0  1  1 
1  0  1 
1  1  1 

 And and or are counted as single units in delay terms.
 There is an exclusive or. (xor)
 nand and nor are inverted versions of and and or.

 These are just an and or or gate negated.
 It is common to put a dot in place of a inverter or not gate.
 Crossing the wires
 If wires just cross, they do not make a connection.
 If wires have a dot at the intersection, they make a connection.

 Tristate
 This allows us to control what comes out of a circuit.
 Think putting something on the buss.
 This can be built out of transistors.

 It has
 A data input wire
 A data output wire
 A control line
 If the control line is high, the data from the input is passed to the output.
 If the control line is low, nothing is passed to the output.
 More than two input and/or gates
 For or, if any one is true, the entire thing is true.
 For and, if any one is false, the entire thing is false.

 Bundled wires
 Sometimes we wish to run multiple bits through a device.
 We do this with bundled wires.

 We indicate the number of wires with a slash and a number
 I am sure that I have forgotten something, but we will deal with it as it arises.