Module and Programme Catalogue

Search site

Find information on

2020/21 Undergraduate Module Catalogue

COMP1212 Computer Processors

10 creditsClass Size: 400

Module manager: Dr Sam Wilson
Email: s.s.wilson@leeds.ac.uk

Taught: Semester 2 View Timetable

Year running 2020/21

This module is not approved as a discovery module

Module summary

Effective programming depends on understanding not only how to communicate instructions to a machine but also how the machine executes those instructions. This module introduces the internal implementation of a computer at a logic gate level, building on formal logic taught in earlier mathematics modules. This module bridges the gap between high level programming constructs, such as 'if' statements and 'for' loops, and how they are actually implemented by the machine and provides an opportunity to illustrate that abstraction is a powerful transferable tool for problem solving which can be applied across other disciplines. In this module students will build a simulated architecture from logic gates and learn how to program it in machine code, assembly and a high level language.

Objectives

This module provides the full picture view of computer programming and computer implementation which is vital for future developments in compilers and computer architecture. This module will contribute to the student becoming an expert in the field of programming.

Learning outcomes
On successful completion of this module a student will have demonstrated the ability to:

- describe the basic building blocks of a computer in detail and explain how they are composed to construct computing machinery.
- apply appropriate tools to develop, simulate and test logic circuits (CAD).
- explain how high level programming constructs, such as 'if' statements and 'for' loops, are implemented at a machine level and to explain how developments in computer architecture affect computation speed and processor design.


Syllabus

This module covers the following 4 topic areas:

- Hardware implementations : logic gates, logic simplification, combinatorial logic, clocks, sequential logic, memory and architecture.

- Program Instructions : fetch-execute cycle, machine code, assembly instructions, assembler, translating high level programming constructs into machine level instructions.

- Virtual Machines : implementation of virtual machines (such as the Java Virtual Machine or the .Net CLR), the purpose of virtual machines, and the advantages/disadvantages of virtual machines.

- Recent developments : pipelining, caching, multi-core architectures, effects of clock speed, memory hierarchies and coprocessors.

Teaching methods

Due to COVID-19, teaching and assessment activities are being kept under review - see module enrolment pages for information

Delivery typeNumberLength hoursStudent hours
Example Class51.005.00
Laboratory51.005.00
Class tests, exams and assessment12.002.00
Lecture221.0022.00
Private study hours66.00
Total Contact hours34.00
Total hours (100hr per 10 credits)100.00

Opportunities for Formative Feedback

Coursework and labs.

Methods of assessment

Due to COVID-19, teaching and assessment activities are being kept under review - see module enrolment pages for information


Coursework
Assessment typeNotes% of formal assessment
In-course AssessmentLab Exercise-Hack Imp pt 125.00
In-course AssessmentLab Exercise-Hack Imp pt 225.00
In-course AssessmentLab Exercise-Assembly Prog25.00
In-course AssessmentLab Exercise-Stretch Exercises25.00
Total percentage (Assessment Coursework)100.00

Normally resits will be assessed by the same methodology as the first attempt, unless otherwise stated

Reading list

There is no reading list for this module

Last updated: 17/09/2020 15:45:03

Disclaimer

Browse Other Catalogues

Errors, omissions, failed links etc should be notified to the Catalogue Team.PROD

© Copyright Leeds 2019