Program Core
Credit hour : 3
Synopsis
This course focuses on the computer system which involves the design of interface techniques, organization, and architecture. The syllabus coverage will be on the theory of basic computer system, the format of the instruction set, memory organization, and the arithmetic logic unit (ALU) as well as certain designing issues such as bus structure, parallel processing, pipelining, memory management, superscalar, speculative and out-of-order execution, vector machines, VLIW machines, multithreading, graphics processing units, and parallel microprocessors. The subject will also explore the design of memory systems including caches, virtual memory, and DRAM.
Students are expected to better understand all the major concepts used in modern microprocessors by the end of the semester.
Course Content
Basic Concepts and Computer Evolution
○ Organization and architecture, structure and function
○ A brief history of computers, the evolution of the Intel x86 architecture.
○ Basic computer systems data representation and organization
○ Computer logic, analog and digital systems, state machines.
Performance Issues
○ Designing for performance, multicore, MICs, and GPGPUs
○ Access time and latencies in computer systems.
○ Basic measures of computer performance, benchmarks and SPEC.
A Top-Level View of Computer Function and Interconnection
○ Computer components and function
○ Interconnection structure
○ Bus interconnection
○ Point-to-point interconnect
○ PCI express.
Processor Structure and Function
○ Processor and register organization
○ Instruction cycle
○ Instruction pipelining
○ The x86 processor family and the ARM processor.
Control Unit Operation
○ Micro-operations
○ Control of the processor
○ Hardwired implementation.
Microprogrammed Control
○ Basic concepts
○ Microinstruction sequencing
○ Microinstruction execution.
Cache Memory
○ Computer memory system overview
○ Cache memory principles, elements of cache design
Internal Memory
○ Semiconductor main memory
○ Error correction, DDR DRAM, flash memory, newer nonvolatile solid-state memory technologies.
External Memory
○ Magnetic disk, RAID, solid state drives, optical memory, magnetic tape
○ Virtual memory and virtualization
Input/Output
○ External devices, I/O modules, programmed I/O, interrupt-driven I/O,
○ Direct memory access, direct cache access, I/O channels and processors
○ External interconnection standards.
Instruction Level Parallelism and Superscalar Processors
○ Overview design issues
○ Intel core microarchitecture
Parallel Processing
○ Sequential and parallel processing.
○ Multiple processor organizations
○ Symmetric multiprocessors, cache coherence and the MESI protocol
○ Multithreading and chip multiprocessors, clusters
○ Nonuniform memory access.
Reduced Instruction Set Computers
○ Instruction execution characteristics
○ The use of a large register file
○ Compiler-based register optimization
○ Reduced instruction set architecture.
Reduced Instruction Set Computers
○ RISC pipelining
○ MIPS 4000
○ SPARC, RISC vs CISC controversy.
Redundancy
○ Fault detection and recovery
○ Error checking and correction
○ Redundancy and fault tolerance
References
William Stallings. Computer organization and architecture: Designing for performance. Tenth edition. Pearson Education Limited. 2016.
David Patterson & John Hennessy. Computer organization and design: The hardware/software interface. Fourth edition. Morgan Kaufmann. 2012.
Andrew Tanenbaum & Todd Austin. Structured computer organization. Sixth edition. Pearson. 2013.
Linda Null & Julia Lobur. Essentials of computer organization and architecture. Third edition. Jones & Bartlett Learning. 2012.
Prepared By:
Dr Shuhaizar Daud