The module focuses on computer system hardware and how it is used to facilitate the execution of software, including topics such as data representation, digital logic, assembler, memory systems, I/O and microprocessor architecture.
The aim of the module is to provide students with an understanding of the functional components of a computer system and how they are organised to facilitate execution. Student will also gain a range of practical skills in the application and construction of computer components that are capable of interfacing with microprocessors.
This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.
Data Representation: Analog and digital data; number systems including number representations and conversions; binary variables including logic expressions and simplifications of binary variables; binary arithmetic, signed numbers; arithmetic structures, multiple precision arithmetic, floating point representation and manipulation.
Logic: Logic expressions, logic gates; Boolean algebra, logical expression simplification; combinatorial logic including implementation of adders/subtractors, multiplexers/de-multiplexers, encoders/decoders; sequential logic including implementation of storage elements, registers, shift-registers; bus structures.
Assembler: Microprocessor architecture; instruction cycles, register transfer language (RTL); instruction set and addressing modes; assembly and machine code programming.
Input/Output Mechanisms: Parallel I/O; memory-mapped and programmable I/O devices, eg VIA; I/O scheduling including programmed I/O, interrupt driven I/O, direct memory access (DMA); analog I/O.
Memory systems: Motivation for memory hierarchy; devices including disk formats, hard disks, optical data storage; elementary error detection and correction.
Processor Architecture: Example combination of ALU, registers, and CPU; instruction set construction; control units including hardwired and microprogrammed control units; performance of microprocessors; RISC/CISC architectures.
By the end of the module, students should be able to:
Please see Talis Aspire link for most up to date list.
View reading list on Talis Aspire
Students are required to conduct independent research as part of their laboratory work and documentation. In addition, 20-40% of Coursework 1 is based on research and working with academic sources.
Systems analysis and design.
Systems-level programming.
Software documentation and maintenance.
Logic circuit design.
Microprocessor interfacing and design.
Technical - Expertise in the analysis and design, operation of computer system hardware. An understanding of systems programming, including the ability to use a systems programming language, and how to interface with a microprocessor.
Communication - Lecture listening. Technical report writing. Technical document comprehension and analysis. Documenting software solutions.
Critical Thinking - Systems analysis and technical problem solving. Quantitative performance analysis based.
Multitasking - Management of competing deadlines and priorities. Documentation- and test-driven development.
Teamwork - Working as part of a technical team in contributing to the development and documentation of a solution.
Creativity - Developing an original solution to a problem with little guidance on the nature or form of the approach that should be taken.
Leadership - Combining teamwork, critical thinking and technical understanding in the development of a software solution.
Type | Required | Optional |
---|---|---|
Lectures | 30 sessions of 1 hour (20%) | |
Practical classes | 8 sessions of 2 hours (11%) | 8 sessions of 2 hours |
Private study | 104 hours (69%) | |
Total | 150 hours |
Background reading:
Clements A, The Principles of Computer Hardware, Oxford, 2006.
Burrell M, Fundamentals of Computer Architecture, Palgrave Macmillan, 2004.
Tanenbaum AS, Structured Computer Organization, Prentice Hall, 2006.
Müldner T, C for Java Programmers, Addison Wesley, 2000.
Coursework-related activities:
Reading, programming, systems design and project management.
Self-tests:
Revision:
Data Representation: Analog and digital data; number systems including number representations and conversions; binary variables including logic expressions and simplifications of binary variables; binary arithmetic, signed numbers; arithmetic structures, multiple precision arithmetic, floating point representation and manipulation.
Digital Logic: Logic expressions, logic gates; Boolean algebra, logical expression simplification; combinatorial logic including implementation of adders/subtractors, multiplexers/de-multiplexers, encoders/decoders; sequential logic including implementation of storage elements, registers, shift-registers; bus structures.
Assembler: Microprocessor architecture; instruction cycles, register transfer language (RTL); instruction set and addressing modes; assembly and machine code programming.
Input/Output Mechanisms: Parallel I/O; memory-mapped and programmable I/O devices, eg VIA; I/O scheduling including programmed I/O, interrupt driven I/O, direct memory access (DMA); analog I/O.
Memory Systems: Motivation for memory hierarchy; devices including magnetic tape, floppy disks, disk formats, hard disks, optical data storage; elementary error detection and correction.
Processor Architecture: Example combination of ALU, registers, and CPU; instruction set construction; control units including hardwired and microprogrammed control units; performance of microprocessors; RISC/CISC architectures.
No further costs have been identified for this module.
You do not need to pass all assessment components to pass the module.
Students can register for this module without taking any assessment.
Weighting | Study time | Eligible for self-certification | |
---|---|---|---|
Coursework 2 - Group Technical Report | 25% | No | |
Coursework 2 Group Technical Report - This assignment is a group technical report based on the work done within labs. This assignment is worth more than 3 CATS, so is not eligible for self-certification. |
|||
Coursework 1 - Problem Sheet | 15% | Yes (extension) | |
Coursework 1 Problem Sheet - This assignment is a problem sheet based on some of the key knowledge gained in the first half of the module. This assignment is worth less than 3 CATS, so is eligible for self-certification via extension. |
|||
In-person Examination | 60% | No | |
CS132 Exam
|
Weighting | Study time | Eligible for self-certification | |
---|---|---|---|
In-person Examination - Resit | 100% | No | |
CS132 Resit Exam
|
Feedback for coursework via Tabula and in lab sessions.
If you pass this module, you can take:
This module is Core for: