Custom Computing

Module aims

In this module you will have the opportunity to:

  • explore applications of custom hardware in applications such as signal processing and databases
  • develop parametric descriptions for custom computers
  • analyse performance and resource usage of custom computers
  • optimise custom computers to meet design requirements
  • compare realisation of custom computers based on different technologies
  • explore system-on-chip architectures for implementing custom computers

Learning outcomes

Upon successful completion of this module you will be able to:

  • develop parametric descriptions of custom computers
  • develop alternative designs for custom computers that meet specified requirements
  • analyse the performance of a custom computer in terms of time space
  • evaluate space/ time trade-offs between competing custom computing designs in order to determine optimal solutions
  • use simulation to compare the intended and actual behaviour of custom computers
  • design system-on-chip architectures for supporting a specified custom computation

Module syllabus

This module covers the following topics for custom computing systems:

  • features and examples
  • technologies for implementation
  • parametric descriptions
  • development methods and tools
  • resource and performance characterisation
  • optimisation techniques
  • system-on-chip architectures
  • comparison and trade-off analysis
     

Teaching methods

The module will be taught through lectures, backed up by unassessed, formative exercises, that you will solve in-class. Graduate Teaching Assistants (GTAs) will be on hand to provide advice and feedback.  There will be one assessed coursework which is designed to reinforce your understanding of the theoretical aspects of the material as well as give you hands-on experience of designing custom hardware using industry-standard tools.

The Piazza Q&A web service will be used as an open online discussion forum for the module.

Assessments

There will be one coursework that you will complete as an individual. It has three components: an essay-style component assessing general understanding, numerical components assessing relevant analytical skills, and a computer-based practical component assessing skills in using relevant development tools. The coursework counts for 20% of the marks for the module. There will be a final written exam, worth 80% of the marks, which will test both theoretical and practical aspects of the subject.

There will be detailed feedback on the coursework exercises which will include written feedback on your submission, and class-wide feedback explaining common pitfalls and suggestions for improvement.   

Module leaders

Professor Wayne Luk