The Three Ys
- Hierarchy
- A system -> modules -> submodules
- Modularity
- Having well-defined functions & interfaces
- Regularity
- Encourage uniformity & module reusability
Digital Abstraction
Consider discrete subset of values.
Binary Numbers
Representing Signs
- Signed binary numbers
- MSB = sign, others = magnitude
- One's complement
- Toggle all bits
- Two's complement
- Toggle all bits + 1
Increase Bit Width
- Two's complement
- Take signed bit & extend
Logic Gates
Noise
Resistance, power supply noise, coupling to neighboring wires, etc.
The Static Discipline
- With logically valid inputs, every circuit element must produce logically valid outputs
- Use limited ranges of voltages to represent discrete values
Noise Margins
Ability of a circuit to tolerate noise without introducing spurious change in output voltage.
Input cannot be in the forbidden zone because any small change introduces significant change in the output. Hence the output range. So the difference (noise margin) is the range we tolerate circuit loss from an output to an input. For ideal buffers, the NM is larger, which is good.
- Ideal buffer
- $$NMH = NM_L = V{DD} / 2$$
- Real buffer
- $$NMH = NM_L < V{DD} / 2$$
Power Consumption
Power = Energy consumed per unit time
Dynamic Power Consumption
Power to charge transistor gate capacitances.
- Energy required to charge capacitance $$C$$ to $$V{DD}$$ is $$CV{DD}^2$$
- Circuit running (transistors switching) at frequency $$f$$
- Capacitor charged $$f / 2$$ times per second
- Dynamic power consumption $$P{Dynamic} = \frac{1}{2} CV{DD}^2 f$$
Static Power Consumption
Power consumed when no gates are switching.
- Quiescent supply current (leakage current) $$I_{DD}$$
- Static power consumption $$P{Static} = I{DD}V_{DD}$$