What does bubble do S2015 5,6,9 - stalling and registers when can/can't you forward hazards and their resolution branch misprediction - control hazard, triggered by (op->jXX dependency) solve via squashing (speculatively load instructions, use bubble to remove if wrong) load-use - data hazard, triggered by (load->use dependency) instr1 reads memory, instr2 uses that value in execute solve via one cycle of stalling and then forwarding return - control hazard, triggered by itself solve by waiting for memory before fetching (stall Fetch) - forward data v control hazard Dependency v hazard dep = characteristic of code haz = characteristic of ISA + Pipeline design sram/dram - not this semester cache equations S2016 18 - cache equations tracing hits/misses with list of addresses cache and speed miss rate - want it low; associativity makes it low (usually) hit response time - want it fast; associativity makes it slow for loop and cache (F2014 11+13) F2014 12, 17, 19 - locality