Introduction to Computer Systems
Module aims
In this module you will study the fundamental principles and devices used in the design of digital computers, and the way in which primitive control logic can be organised to construct a programmable machine.
Learning outcomes
Upon successful completion of this module you will be able to:
- Explain combinatorial circuit design and synchronous sequential circuit design
- Design a CPU using Boolean algebra and functional design
- Describe the basic architecture of a CPU and its components and explain how to map CPU control to hardware
- Compare and be able to use different number representations
Module syllabus
- Number representations and computer arithmetic
- Boolean algebra
- Combinatorial logic functions
- Principles of semiconductor devices and logic gates
- Adders subtractors and multipliers
- Bistable storage devices
- Flip-flop design
- Registers
- Multiplexers and decoders
- Counters
- Finite state machines
- Static and dynamic RAM
- Register transfer descriptions
- ALU and CPU design
Teaching methods
The module starts from first principles with no assumed previous knowledge of digital circuit design. The emphasis is on how digital systems work and how they can be designed and the module strikes a balance between theory and practice.
Each week there will be two lectures and one supervised turorial. During the tutorials you will be given a problem sheet comprising unassessed, formative, exercises with space for you to complete the solution. The tutorials are primarily intended to reinforce the lecture material using practical design examples, although they also provide examples of the types of question that will be found in the written exam. Solutions to the tutorial problem sheets will be posted online. In addition to helping you with the problem sheets, the tutors will be pleased to answer any other questions on the material covered during lectures.
Support is given by the Course Leader and Graduate Teaching Assistants (GTAs), and through carefully selected software for the coursework. An online service will be used as a discussion forum for the module.
Assessments
There will be two assessed exercises (small, focussed, practical, exercises) undertaken alone which count for 20% of the final mark. The first coursework task can be solved with pen and paper, while the second one makes use of professional hardware and design software. There will be a final written exam, testing fundamental knowledge on an individual basis. This exam counts for the remaining 80% of the marks for the module.
There will be the opportunity to receive feedback as you work through the formative tutorial exercises in class. Feedback for the assessed exercise is provided by written feedback through the online system.
Reading list
Suggested reading
-
Introduction to computing systems : from bits & gates to C/C++ & beyond
Third edition., McGraw-Hill
-
Digital design : with an introduction to the Verilog HDL, VHDL, and system Verilog
Sixth edition., NY, NY : Pearson
-
Digital logic techniques : principles and practice
Nelson Thornes
-
Digital logic techniques : principles and practice
3rd ed., Chapman & Hall
Module leaders
Dr Lluis VilanovaMr Bjoern Schuller