Skip to main content

ECE 463/563 Fall 2020 Microprocessor Architecture

DateTopicsNotesReading Assignment
Mon., Aug. 10Introduction: Overview of class topics, pipelining techniques, defining computer architecture

Performance: static vs. dynamic instructions; T = (# cycles) x (cycle time); what influences cycles and cycle time
pptx(opens in new window)(opens in new window)§ 1.1 – 1.4
Wed., Aug. 12Caches: Processor-memory perf. gap, temporal and spatial locality, memory hierarchypptx(opens in new window)(opens in new window)§ 2.1  (also recommended: § 2.2)
Mon., Aug. 17Caches: Cache organization and operation, direct-mapped vs. set-associative vs. fully-associative cachesPart A: pptx(opens in new window)(opens in new window)
Part B: pptx
(opens in new window)(opens in new window)
§ B.1
Wed., Aug. 19Caches: Modeling caches generically, replacement policies, LRU, write policies (WBWA, WTNA)

Example L1+L2 simulation (WBWA for both caches)
pptx(opens in new window)(opens in new window)


pptx(opens in new window)(opens in new window)
§ B.1
Mon., Aug. 24continued previous
Wed., Aug. 26continued previous
Mon., Aug. 31classes canceled (NCSU covid-19 move out)

pre-recorded modules:
victim caches(opens in new window)(opens in new window)
write buffers (link to recording to be posted)



pptx(opens in new window)(opens in new window)
pptx(opens in new window)(opens in new window)
 
Wed., Sep. 2Caches: 3C’s model of missespptx(opens in new window)(opens in new window)§ B.2 – B.3, § 2.1 – 2.3
Mon., Sep. 7Caches: Average access time (AAT) equation; impact of cache size, assoc., and block size, on three factors of AAT (and 3C’s misses); impact of adding L2 cache on AAT.pptx(opens in new window)(opens in new window)   “
Wed., Sep. 9Caches: Reducing misses via prefetching and program transformations.pptx(opens in new window)(opens in new window)   “
Mon., Sep. 14Caches: Virtual memory, translation lookaside buffer (TLB), constraints for parallel cache/TLB access.pptx(opens in new window)(opens in new window)§ B.3 – B.4
Wed., Sep. 16Performance: CPU time equation, benchmarks, summarizing performance, speedup, Amdahl’s Lawpptx(opens in new window)(opens in new window)§ 1.8 – 1.9
Mon., Sep. 21costs: chip area and power, power metrics

pre-recorded modules:
chip cost(opens in new window)(opens in new window)
power metrics(opens in new window)(opens in new window)
(see Sep. 16 notes)§ 1.8 – 1.9, 1.5 – 1.6
Wed., Sep. 23Midterm Exam
Mon., Sep. 28Pipelining: Work out the steps for executing instructions, design unpipelined datapath, pipelined datapathpptx(opens in new window)(opens in new window)Appendix C
Wed., Sep. 30Pipelining: Critical path, cycle time and CPI with/without pipelining, pipeline hazards, structural hazards, control hazardspptx
(opens in new window)(opens in new window)
Appendix C
Mon., Oct. 5Pipelining: Dynamic branch prediction, branch target buffer (BTB), separate BTB+BHT, 1-bit counter, 2-bit counter, global branch history, gselect and gshare predictors, local branch history, Yeh/Patt predictor, hybrid predictorspptx(opens in new window)(opens in new window)Appendix C
Wed., Oct. 7Pipelining: Dynamic branch prediction (cont.)(see Oct. 5 notes)Appendix C
Mon., Oct. 12Pipelining: Dynamic branch prediction (cont.)(see Oct. 5 notes)Appendix C
Wed., Oct. 14Pipelining: Static branch prediction, delayed branches, data hazards, RAW hazards, eliminating or minimizing stalls due to RAW hazards through data forwarding, load-use stall, WAR and WAW hazards, techniques for mitigating WAR and WAW hazards, data dependencies (true, anti, and output)

pre-recorded module:
static branch prediction(opens in new window)(opens in new window)
pptx(opens in new window)(opens in new window)

pptx(opens in new window)(opens in new window)
Appendix C
Mon., Oct. 19ILP: From in-order to out-of-order: the Issue Queue (IQ); speculation and register renaming: the Reorder Buffer (ROB)pptx(opens in new window)(opens in new window)§ 3.1, § 3.4
Wed., Oct. 21ILP: (cont.)
Mon., Oct. 26ILP: (cont.)
Wed., Oct. 28ILP: (cont.)
Mon., Nov. 2ILP: Precise interrupts, immediate branch misprediction recovery, handling memory dependencies, superscalar complexitypptx(opens in new window)(opens in new window)
Wed., Nov. 4ILP: (Nov. 2 topics, cont.) 
Mon., Nov. 9ILP: (Nov. 2 topics, cont.)
Wed., Nov. 11ILP: (Nov. 2 topics, cont.)
Mon., Nov. 16ILP: VLIW
ISA: What is ISA, impact of ISA choices: CISC vs. RISC, alignment, endian-ness, expressing parallelism in ISA
pptx(opens in new window)(opens in new window)Appendix A (all sections)