The course will focus on the basic and essential components of computing systems. From their memory and storage, through instruction-level parallelism, up to multi-processing and multi-threading. It will provide the students with a knowledge of the "big picture" of computer systems, their capabilities and limitations, together with design practice based on tradeoffs and constraints.
The outcome of this course is in an understanding and acquisition for the basic and essential components of computing systems.
MIPS, Instruction Set Architecture, Memory, Pipelining, Speculation, Multi-threading, Multi Processors
Frontal lectures in the classroom. There will home assignments of solving problems (though not checked, solutions will be published) and reading articles.
|第1回||MIPS Overview||Instruction Set Architecture (ISA), pipelining, hazards, Operating System (OS) interaction.|
|第2回||Memory Hierarchy||Locality, cache design, associativity, multi-level caching.|
|第3回||Virtual Memory||Address space, pages and frames, swap-space, TLB, OS interaction.|
|第4回||Instruction-level Parallelism (ILP1)||Software techniques, static scheduling, branch, prediction.|
|第5回||Instruction-level Parallelism (ILP2)||Pipeline extensions, dynamic scheduling, out-of-order execution.|
|第6回||Instruction-level Parallelism (ILP3)||Speculations, multiple-issue.|
|第7回||High-level Parallelism||Multi-threading, multi processors, shared and distributed memory.|
J. L. Hennessy and D. A. Patterson, Computer Architecture, 4nd Edition, Morgan Kaufmann.
Learning achievement is evaluated by Final exam: 100%;
Knowledge of Digital Logic Systems, Logic Design, and Computers Introduction