Computer Architecture Note

6 posts·Computer architecture
Computer Architecture Note · 6
Computer Architecture Note

Computer Architecture Basics: ISA, Abstraction Layers, and Performance

Notes on the introduction to a computer architecture course. Covers abstract data types (ADTs) with a stack example, the instruction set architecture (ISA), Hennessy and Patterson's engineering methodology and its two golden rules, and performance evaluation methods and design techniques.

Computer Architecture Note

How Virtual Memory Works: Paging and Virtual-to-Physical Translation

Notes on how virtual memory works. Covers paging, which splits the virtual address space into pages, translation from virtual to physical addresses, page table organization and the PTBR, the TLB, and the pros and cons of demand paging.

Computer Architecture Note

Memory Hierarchy and Caches: The Memory Wall and Four Cache Design Questions

Notes on the memory hierarchy and caches. Covers the memory wall and temporal and spatial locality, hierarchy terminology, the four questions of cache design (placement, identification, replacement, writes), a direct-mapped cache example, and how block size relates to miss rate.

Computer Architecture Note

Pipelining and Hazards: Analyzing the 5-Stage MIPS Pipeline

Notes on pipelining principles using the 5-stage MIPS pipeline. Covers a performance comparison with sequential execution, structural, data, and control hazards with stalls and bubbles, the load-use hazard, a worked CPI example, and superpipelining and superscalar designs.

Computer Architecture Note

Multiprocessors and Shared-Memory Sync: Critical Sections, Producer-Consumer

Notes on multiprocessor architecture. Covers UMA and NUMA shared memory, a sum reduction example, the producer-consumer and critical-section problems, Test-and-Set mutual exclusion and optimized synchronization, message passing and clusters, and interconnect structures.

Computer Architecture Note

Storage and I/O System Architecture: I/O Buses and Reliability (MTTF)

Notes on computer I/O systems. Covers I/O bus connections and per-device data rates, the reliability metrics MTTF and MTTR and how to improve them, I/O register mapping, polling and interrupts and how they differ from exceptions, DMA, and RAID configurations.