CSE467: Advanced Digital Design
Carl Ebeling
, Autumn, 2009
Syllabus
We will be covering the following topics, but not necessarily in this order.
Review
- Combinational Logic
- Structured Logic Implementations
- Sequential Logic and Clocking methodologies
- Finite-State Machines
Implementation
- Practical Issues: Reading Data Books, Interfacing, Electrical Realities
- FPGA architectures
- Writing and Implementing Specifications: Module interface and timing specs
Computing Structures
- Control/Datapath model of computation
- Datapath organization
- Control logic
- Pipelining
- Scheduling and Retiming
- Sharing and time-multiplexing
System Components
- Read-mostly Memory Technologies (ROM, PROM, EPROM, EEPROM, Flash)
- Static and Dynamic Memories
- Memory Controllers and Timing Generation
- Digital Communication
- Serial and Parallel Protocols
- Synchronous vs. Asynchronous Communication
- System Busses and Bus Interface Design
- Arbitration Schemes
Computer-Aided Design
- Hardware Description Languages: Verilog
- Two-level and Multi-level Logic Synthesis
- Technology-Independent Optimizations
- Technology Mapping
- Sequential Synthesis
- Underlying Data Structures and Algorithms
- Physical design: Placement and Routing
- Simulation