Course overview
This course aims to assist students in acquiring industry-relevant skills in Digital Circuits and Systems Design. Hardware Description Language (HDL) will be used to describe digital circuits and state-of-the-art computer-aided design (CAD) tools will be used to design complex digital systems. The course has a strong practical component using sophisticated CAD tools. Through practical exercises, students gain experience in designing, simulating, synthesising, and testing digital hardware, such as FPGA, preparing them for careers in digital system design and related fields.
- Digital Design Foundations and Datapath
- System Controller
- Interfacing
- System Integration
Course learning outcomes
- Design and analyse combinational and arithmetic building blocks used in digital datapaths with appropriate bit-width selection and management of overflow/underflow.
- Design and analyse reliable synchronous digital systems by applying timing and clocking principles and implement safe handling of asynchronous inputs and clock domain crossings (CDC) in RTL using synchronisers and appropriate transfer mechanisms.
- Develop synthesisable RTL designs using appropriate state machine notation and HDL code to model, simulate, and synthesise digital modules and subsystems, supported by appropriate testbenches and functional verification evidence.
- Evaluate and apply design trade-offs to meet a given system specification, considering constraints such as functionality, timing/performance, resource usage, reliability, and interface/protocol requirements.
- Apply an FPGA/EDA workflow to deliver a working digital system implementation that includes simulation, synthesis, and verification to meet specified timing and resource targets.