MODULE LEARNING OUTCOMES
1. Explain the principles of the internal organization of computers
2. Specify the role of multiple basic electronic components
3. Explain electronic component communication channels and methods
4. Describe different performance optimization devices
5. Demonstrate acquisition of the primary notions of programming in assembler.
MODULE ADDITIONAL ASSESSMENT DETAILS
The two-hour written examination will focus on meeting learning outcomes 1 to 4, while the laboratory work evaluation will focus on meeting learning outcome 5.
MODULE INDICATIVE CONTENT
This course presents the fundamental principles lying behind the structure, organization, and operation of a computer. Starting with the basic electronic components, the course describes how processors, memory and peripheral devices are built. It details how these multiple parts communicate with each other to execute the machine instructions. The course also describes performance optimization devices, such as cache and statement execution pipelines. This module will allow the student to better understand advanced courses in Operating Systems, Concurrent Programming and Parallel Programming. The module will focus on:
General Architecture of a computer and the role of its various components: processors, memory, bus, peripherals.
Representation of information: integers, actuals, characters, and strings characters
Construction of basic logic circuits from transistors: NAND and NOR gates, MUX, DEMUX, PLA, etc.
Core memory: Features, principles, word, and byte addressing, practical implementation: bench and interlaced memory.
Cache: motivation, principles, spatial and temporal locality properties, associative, direct, and hybrid caches.
Processors: internal components, wired sequencer, micro-programmed sequencer, data paths, instruction set, address modes, execution of an instruction, interrupt management, diversions, and multi-tasking.
Advanced architectures: pipelines, multi-core, Hyper-Threading. Bus: Control signals, synchronous and asynchronous buses. Device controllers: Addressing, simple command, channel program, interrupts, DMA.
WEB DESCRIPTOR
This module presents the fundamental principles lying behind the structure, organization and operation of a computer. Starting with the basic electronic components, the course describes how processors, memory and peripheral devices are built. It details how these multiple parts communicate with each other to execute the machine instructions. The module also describes performance optimization devices, such as cache and statement execution pipelines.
This module will allow the student to better understand advanced courses in Operating Systems, and Concurrent Programming and Parallel Programming.
MODULE LEARNING STRATEGIES
A variety of learning strategies will be employed, including 25 hours of lectures and 10 hours of tutorial sessions. The practical nature of the module is emphasised by the provision of practical portfolio tasks and an assignment which reflects all the elements of the module. Independent learning time (70 hours) will be based around reading, typically course textbooks, magazines, web sites etc, assignment work in the labs and revision for examination. Face-to-face, online and email support will be provided, as necessary.
MODULE TEXTS
Structured Computer Organization. Andrew Tanenbaum. Todd Austin. Prentice Hall. Computer Organization and Design. John Hennessy, David Patterson. Morgan Kaufmann.
Systèmes numériques, Concepts et applications, Thomas L.Floyd, Reynald Goulet.
MODULE RESOURCES
Access to Internet
Module Handbook
Access to the online library, journals and web-based resources.
Module website via Blackboard VLE, containing worksheets, PPT Course (slides) and several other related content