The necessities in Computer Design
- control and data paths
- pipeline design
- cache design
Introduction edit
Combinational Circuits edit
- Bubble Pushing (pdf)
- - Carry Look-ahead Adder (CLA)
- - Carry Save Adder (CSA)
- - Prefix Adder (Prefix)* Multiplier
- - Divider
- ALU (Arithmetic Logical Unit)
Sequential Circuits edit
- Types of Flip-Flops (1A.pdf)
FSM (Finite State Machine) edit
- FSM State Encoding
- FSM Types : Mealy and Moore Machines
- FSM Example (pdf)
Control Unit Design Techniques edit
ASM (Algorithmic State Machine) edit
- ASM (pdf)
One Hot Designs edit
- One Hot Design (pdf)
Microprogramming edit
- Microprogramming Design (pdf)
Data Unit Design Techniques edit
Pipeline edit
Multiplier edit
- Barrel Shifter (3A.pdf)
- Booth Multiplier
Memory System Design Techniques edit
Cache Memories edit
Virtual Memories edit
Memory Banks edit
Interleaved Banks edit
IO Design Techniques edit
Interrupt edit
- Interrupt (pdf)
Memory Mapped IO edit
- Memory Mapped IO (pdf)
Intersystem Communication edit
- Intersystem Communication (pdf)
Peripherals and Interfacing edit
Practicing Design edit
Implementation Techniques edit
Implementation in Hardware
Implementation in Software
Tiny CPU Architecture Examples edit
C to HDL Exercises edit
- HDL Exercises (A.pdf)