ES2C4-15 Computer Architecture and Systems
To provide practical knowledge of how digital computing systems are designed, how they function, and how to program them.
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.
Basic C: Types, operators, loops, pointers, bitwise operations.
Data Representation: Binary numbers, Boolean algebra, unsigned and signed integers, fixed and floating point, codes.
Logic and Digital Arithmetic: Basic function truth tables, Karnaugh maps, multiplexers, encoders, decoders, half and full adders, multipliers, comparators and division, sequential circuits – latches, flip flops, finite state machines.
Instruction Set Architecture: Assembly language, machine instructions including register, immediate, and jump, addressing modes, program flow.
Processor Microarchitecture: Memory, ALU, program counter, register file, control unit, single-cycle and pipelined processors.
Memory and I/O: Caches, virtual memory, GPIO, UART, SPI, I2C, high speed serial, timers, interrupts, PWM.
Microcontroller Programming: Loops, interrupts, timers, accessing peripherals.
By the end of the module, students should be able to:
- Represent different types of data in binary and perform arithmetic operations on them.
- Understand the working of combinational and sequential circuits. Implement logic functions using these building blocks.
- Explain how low-level instructions correspond to the operation of a processor microarchitecture and how complex programs can be decomposed into such instructions.
- Explain the functionality of the basic components in a processor architecture.
- Explain how external peripherals and memory are interfaced with a processor through a variety of interfaces.
- Create basic C programs and C programs for Microcontrollers. Write microcontroller programs in C that go beyond a single iteration loop, taking advantage of interrupts and timers, and communicating with external peripherals.
Indicative reading list
- S. Harris and D. Harris. Digital Design and Computer Architecture: ARM Edition. Publisher: Morgan Kaufmann, 2015, Paperback: 584 pages, ISBN-10: 0128000562, ISBN-13: 978-0-12-800056-4.
- A. G. Dean, Embedded Systems Fundamentals with Arm Cortex-M based Microcontrollers, Arm Education Media UK, ISBN 978-1911531036.
- M. R. Mano, C. R. Kime, and T. Martin, Logic and Computer Design Fundamentals, 5th Ed, Pearson 2015. ISBN 978-1292096070
Subject specific skills
Plan and manage the design process, including cost drivers, evaluating outcomes, and working with technical uncertainty.
Ability to apply relevant practical and laboratory skills.
Ability to conceive, make and realise a component, product, system or process.
Numeracy: apply mathematical and computational methods to communicate parameters, model and optimize solutions.
Apply problem-solving skills, information retrieval, and the effective use of general IT facilities.
Communicate (written and oral; to technical and non-technical audiences) and work with others.
Plan self-learning and improve performance, as the foundation for lifelong learning/CPD.
Exercise initiative and personal responsibility, including time management, which may be as a team member or leader.
Overcome difficulties by employing skills, knowledge and understanding in a flexible manner.
|Lectures||20 sessions of 1 hour (13%)|
|Practical classes||8 sessions of 2 hours (11%)|
|Other activity||2 hours (1%)|
|Private study||112 hours (75%)|
Private study description
112 hours of guided independent learning
Other activity description
2 x 1hr Revision Classes
No further costs have been identified for this module.
You must pass all assessment components to pass the module.
Assessment group D1
|Two design assignments (6 pages each)||40%|
2 x 20%
QMP 2 X 1HR NEEDS TO BE RAN ONE AFTER TO THE OTHER
~Platforms - QMP
Feedback on assessment
- Support through advice and feedback hours.
- Written feedback on marked programming assignments.
- Cohort-level feedback on final exam.
If you pass this module, you can take:
- ES3B2-15 Digital Systems Design
This module is Core for:
- Year 2 of UESA-H63W BEng Electronic Engineering
- Year 2 of UESA-H63X MEng Electronic Engineering
- Year 2 of UESA-H605 Undergraduate Electrical and Electronic Engineering
- Year 2 of UESA-H606 Undergraduate Electrical and Electronic Engineering MEng
This module is Option list A for:
- Year 2 of UESA-H161 BEng Biomedical Systems Engineering
- Year 2 of UESA-H216 BEng Civil Engineering
- Year 2 of UESA-H113 BEng Engineering
- Year 2 of UESA-HH35 BEng Systems Engineering
UESA-H112 BSc Engineering
- Year 2 of H112 Engineering
- Year 2 of H112 Engineering
- Year 2 of UESA-HN11 BSc Engineering and Business Studies
- Year 2 of UESA-H163 MEng Biomedical Systems Engineering
- Year 2 of UESA-H217 MEng Civil Engineering
- Year 2 of UESA-H114 MEng Engineering
- Year 2 of UESA-HH31 MEng Systems Engineering