Skip to main content

Unit information: Design Verification (Teaching Unit) in 2021/22

Unit name Design Verification (Teaching Unit)
Unit code COMS30026
Credit points 0
Level of study H/6
Teaching block(s) Teaching Block 1 (weeks 1 - 12)
Unit director Professor. Eder
Open unit status Not open

COMS10016 Imperative and Functional Programming and COMS10017 Object-Oriented Programming and Algorithms I or equivalent.

COMS20008 Computer Systems A or equivalent.

Strong programming skills, software engineering skills and a basic understanding of computer architecture.


EITHER Assessment Units COMS30024 Design Verification (Examination assessment, 10 credits)

OR COMS30066 Design Verification (Coursework assessment, 15 credits).

Please note:

COMS30026 is the Teaching Unit for the Design Verification option.

Single Honours Computer Science and Mathematics and Computer Science students can choose to be assessed by either examination (10 credits, COMS30024) or coursework (15 credits, COMS30066) by selecting the appropriate co-requisite assessment unit.

Any other students that are permitted to take the Design Verification option are assessed by examination (10 credits) and should be enrolled on the co-requisite exam assessment unit (COMS30024).

School/department Department of Computer Science
Faculty Faculty of Engineering

Description including Unit Aims

This unit introduces students to theoretical and practical aspects of design verification with examples from computer architecture and processor design. It starts with an overview of various verification techniques and explores their limits. We investigate two major topics: Simulation-based Testing (dynamic verification) and Property Checking (static verification). Simulation-based Testing includes the use of simulators, testbench components, collecting and measuring coverage, as well as assertion-based verification and requirements formalization. Property Checking investigates formal model checking techniques and features of state-of-the-art tools, the advantages and limitations of formal verification techniques and how simulation-based techniques can complement formal verification. The course also offers lectures on design and verification flow, including how to write a verification plan.

Unit Aim: This unit familiarises students with the methods and techniques used in the design verification process, and gives them the technical background plus some of the practical skills (if assessed by coursework) expected from a design verification engineer.

Intended Learning Outcomes

General ILOs

On successful completion of this unit, students will be able to:

  1. Appreciate the process of design verification, its complexities and limits.
  2. Understand a variety of state-of-the-art verification techniques, including test-based and formal methods, their foundations, practical use and limits.
  3. Carry out functional verification and determine its effectiveness.
  4. Set verification goals and select suitable verification methods and techniques to achieve these.

In addition to the General ILOs above, when assessed by examination, students will be able to:

  1. Compile a verification plan.

In addition to the General ILOs above, when assessed by coursework, students will be able to:

On successful completion of this unit, students will be able to:

  1. Compile a verification plan and realize this plan by implementing a verification environment to as part of a small verification project.
  2. Organise resources to be used for a verification project and monitor progress.

Teaching Information

Teaching will be delivered through a combination of synchronous and asynchronous sessions, including lectures, practical activities supported by drop-in sessions, problem sheets and self-directed exercises.

Teaching will take place over Weeks 1-7, with coursework support in weeks 9-11 and for students assessed by examination, consolidation and revision sessions in Weeks 12.

Assessment Information

Examination details

2 hour exam (100%, 10 credits).


Coursework details

Coursework (100%, 15 credits) - to be completed during a specific period.


If this unit has a Resource List, you will normally find a link to it in the Blackboard area for the unit. Sometimes there will be a separate link for each weekly topic.

If you are unable to access a list through Blackboard, you can also find it via the Resource Lists homepage. Search for the list by the unit name or code (e.g. COMS30026).

How much time the unit requires
Each credit equates to 10 hours of total student input. For example a 20 credit unit will take you 200 hours of study to complete. Your total learning time is made up of contact time, directed learning tasks, independent learning and assessment activity.

See the Faculty workload statement relating to this unit for more information.

The Board of Examiners will consider all cases where students have failed or not completed the assessments required for credit. The Board considers each student's outcomes across all the units which contribute to each year's programme of study. If you have self-certificated your absence from an assessment, you will normally be required to complete it the next time it runs (this is usually in the next assessment period).
The Board of Examiners will take into account any extenuating circumstances and operates within the Regulations and Code of Practice for Taught Programmes.