Digital systems are in virtually all devices we interact with: from consumer electronics, to biomedical applications and automotive industry. Digital technology is evolving so rapidly that engineers need rapid-prototyping software and hardware tools that allow them to explore and test an implementation before moving to the production. In this module, learners will gain fundamental circuit design and verification skills by using an industry-standard hardware description language (VHDL) to program field-programmable gate arrays (FPGAs). The learning process is experience-oriented so that hands-on practice in designing embedded systems as well as theoretical background is acquired during the course.
Note: This module assumes that students are already familiar with combinatorial and sequential logic elements.


Learning Outcomes

After completing this module, students will be expected to be able to:

1. explain the process of automated digital system design using hardware description languages

2. design and implement digital systems using VHDL

3. test a VHDL design using simulation and FPGA platform

4. demonstrate an understanding of microprocessor design


Outline Syllabus

Introduction to behavioural, data flow, and structural modelling of VHDL.

Basic VHDL code structure and syntax.

Review of combinational and sequential logic. Definition of VHDL's concurrent and sequential modes.

Concurrent and sequential statements in VHDL.

Systematic review of VHDL's data types and data attributes. Signals and variables in VHDL.

Review of fundamental concepts related to finite state machines and the corresponding VHDL coding techniques.

Review and evaluation of hardware technologies (FPGAs, ASICs, microprocessors, microcontrollers, DSPs).

Introduction to the internal architecture and functioning of a microprocessor.

Importance of testing complex designs and validating the design prior to fabrication.