COMPGC03 - Architecture and Hardware
Note: Whilst every effort is made to keep the syllabus and assessment records correct, the precise details must be checked with the lecturer(s).- Code
- COMPGC03
- Year
- MSc
- Prerequisites
- This course should be taken in conjunction with the core courses for this programme (ie GC01, GC02, GC04 and GC05)
- Term
- 1
- Taught By
- Peter Rounce (100%)
- Aims
- To 'demystify' computers - i.e. to provide a basic understanding of how computers execute programs. To show how the basic components of the computer can be built from simple electronic components.
- Learning Outcomes
- Students should understand the roles of the major components of a computer system, how instructions are executed, how memory is accessed and managed. They should appreciate the main performance measures and constraints.
Content:
- Major components of a computer
- Processor, storage, input and output.
- Information representation
- Digital and analogue representation. Bits and bytes. Number Systems: binary, hexadecimal, negative numbers. Fixed length arithmetic. Fractional numbers.
- The processor and main memory
- General and special purpose registers. The fetch-execute cycle. Instruction formats and encoding. Assembler instructions. The bus.
- Introduction to the MIPS processor
- Assembler syntax. Branches. The SPIM emulator
- Data and Data Structures
- Characters and Floating point. Static data structures: arrays. Dynamic data structures: queues, stacks and linked lists.
- Stack Usage
- Parameter passing. Return addresses. Stack Frames.
- Input and Output
- Basic I/O, streamed I/O, polling loops. The I/O interface and its role.
- Interrupts
- Generation, prioritisation, Interrupt Servicing and the ISR.
- DMA (Direct Memory Access)
- What it does, how it's done, when it is used.
- Serial I/O systems
- Asynchronous, synchronous, ethernet
- Disk I/O
- Magnetic storage, disk capacity, organisation and performance.
- How the CPU works
- Internal Structure and operation of a Mips-like CPU.
- Real Memory
- Commercial Memory: structure, operation. Cache memory.
- Making it go faster
- Pipelining. Instruction and data caches. RISC vs CISC.
- Memory Mangement
- How paging is implemented.
- Basic Electrical Theory
- Current, voltage, resistance. Conductors, Resistors. Power. Simple electrical circuits.
- Logic Circuits
- NOT, NAND and NOR circuits.
- Semi-conductors
- Diodes and transistors. The transistor as an electrical switch. Transistors in logic circuits.
- Data storage in digital circuits
- Flip-flops, Registers and memories. Memory configuration. Memory types; RAM and ROM. Accessing I/O interfaces.
- CPU operation
- Clock cycles, timing diagrams, Finite State Machines, Internal CPU Structure and operation.
Method of Instruction:
Lectures and web-based exercises.
Assessment:
The course has the following assessment components:
- Coursework Section (1 piece, 10%)
- Written Examination (2.5 hours, 90%)
To pass this course, students must:
- Obtain an overall pass mark of 50% for all sections combined
The examination rubric is:
Answer question 1 (Section A) and TWO questions from Section B.
Resources:
'The Architecture of Computer Hardware and Systems Software (3rd Edition)', Irv Englander, Wiley, 2003, ISBN 0-471-0732
'Computer Organization and Design (3rd Edition)', Patterson and Hennessy, Morgan Kaufmann, 1999, ISBN 1-55860-4910-X
'Structured Computer Organisation (4th Edition)', Tanenbaum, Prenctice-Hall. 1999, ISBM 0-13-020435-8
'Computer Organisation and Architecture', B.S. Chalk, Palgrave-Hall. 1996, ISBM 0-333-64551-0

