Students taking this module will gain foundations in the key architectural components of a computer system, how a high level program is executed upon that system, and how a computer system is constructed in hardware. Students will be introduced to how a computer system is constructed, and how a program implemented in a high level programming language (for example C) executes on that system. Students will be introduced to the basics of computer architecture and program language construction, providing a basis for further study in later years. Students will be introduced to a bottom-up approach, motivated by real examples, taught as both lectures and laboratory practicals. Students will be able to describe and apply their programming skills on real devices and computer systems that are used in many real applications today.
Module learning outcomes
Identify the purpose of key computer hardware components such as processors, memories and busses.
Describe different data types commonly found in binary systems (e.g. signed vs. unsigned integers), and show how to convert, perform arithmetic, and perform logical operations.
Express logical expressions as basic gates, transistors and combinatoric logic circuits
Describe the function and limitations of a variety of logical building blocks in the context of processor architectures
Describe the von Neumann Model paradigm of computer architecture, including the fetch execute cycle of instruction processing.
Explain how operations executed in a processor can be used to implement to higher level sequential, conditional and iterative programming language constructs
Build a simple system comprised of a CPU, memory and input/output.
Explain the use of assemblers, compilers and linkers to create executable code for a processor, and use such a toolchain develop software for the simple system built in the module
Identify potential security problems associated with architecture design.
% of module mark
Essay/coursework SYS1 Assessment
Special assessment rules
Additional assessment information
Open assessment is a long-running task that takes place over a number of weeks.
% of module mark
Essay/coursework SYS1 Reassessment
Feedback is provided through work in practical sessions, and after the final assessment as per normal University guidelines.
*** J.Hennessy, D.Patterson Computer Architecture: A Quantitative Approach (2nd Edition) Morgan Kaufmannn 1990
*** W.Stallings Computer Organization and Architecture: Design For Performance (8th Edition) Pearson 2010