55AA-005

Computer Architecture

Level
Undergraduate
Status
Under development

Note: this course is still being designed and calibrated; the page content is for reference and does not represent the final teaching version.

Syllabus

Course Overview

Computer Architecture starts from ISAs, pipelines, caches, memory hierarchies, parallelism, and accelerators, then studies tradeoffs among performance, energy, reliability, and security. Students use simulation and measurement to explain why real programs are fast or slow.

This is the hardware foundation for hardware security, system security, virtualization, and embedded systems.

Prerequisites

  • Computer organization and assembly language.
  • Familiarity with C/C++ or Rust and ability to read simple assembly.
  • Basic probability, statistics, and experimental-analysis skills.

Learning Outcomes

  • Explain key structures in modern processors and memory systems.
  • Evaluate performance, locality, parallelism, and energy using metrics.
  • Analyze security implications of caches, branch prediction, and out-of-order execution.
  • Use simulators or performance counters in experiments.
  • Make evidence-based architectural design tradeoffs.

Course Format

  • Two meetings per week: one for core concepts and one for labs, paper discussion, or project review.
  • The course proceeds over 16 weeks, each with a checkable assignment, lab, or project milestone.
  • Reproducibility is required: code, configuration, data, lab logs, and reports must be reviewable by staff or peers.

Weekly Plan

Week 2

ISA, microarchitecture, and performance models: lab and review

Measure CPI and bottlenecks for a program. Complete the paired lab, record issues, and explain design tradeoffs in class review.

Week 4

Pipelines, hazards, and prediction: lab and review

Use a simulator to observe stalls and branch effects. Complete the paired lab, record issues, and explain design tradeoffs in class review.

Week 6

Caches and memory hierarchy: lab and review

Design locality experiments and explain miss patterns. Complete the paired lab, record issues, and explain design tradeoffs in class review.

Week 8

Out-of-order execution, speculation, and consistency: lab and review

Analyze speculative optimization and security risks. Complete the paired lab, record issues, and explain design tradeoffs in class review.

Week 10

Multicore, synchronization, and memory models: lab and review

Test concurrent program behavior under memory models. Complete the paired lab, record issues, and explain design tradeoffs in class review.

Week 12

Vector units, GPUs, and accelerators: lab and review

Compare CPU and accelerator implementations. Complete the paired lab, record issues, and explain design tradeoffs in class review.

Week 14

Reliability, power, and security: lab and review

Evaluate performance-security tradeoffs in a design. Complete the paired lab, record issues, and explain design tradeoffs in class review.

Week 15
Week 16

Architecture experiment report: lab and review

Submit reproducible measurements, plots, and design conclusions. Complete the paired lab, record issues, and explain design tradeoffs in class review.

Assessment

Individual assignments

Concept questions, reading responses, design tasks, and small programming or lab exercises.

25%
Labs and project

Performance experiments, simulation results, design evaluation, and reports.

40%
Participation and review

Participation in discussions, demos, code or paper reviews, and peer feedback.

10%
Final report and defense

Submit reproducible artifacts, a technical report, and a demo explaining methods, results, limitations, and future work.

25%

Course Project

Students choose an architecture problem, collect evidence with simulation, performance counters, or benchmarks, and evaluate a design or optimization.

Policies

  • AI tools are allowed, but generated code, lab notes, and design suggestions must be reviewed by the student and disclosed in the report.
  • Students may not submit code, proofs, configuration, or experimental results they cannot explain; each member must defend their own design, tests, and tradeoffs.
  • Late work affects iteration grades, but the course values reproducible, auditable, and maintainable results over last-minute accumulation.

Reference Courses

China 985 Universities