chapter 1 Flashcards
what are the microprocessor techniques?
- pipelining
- branch prediction
- data flow analysis
- superscalar execution
- speculative execution
explain pipelining
W - execute a series of instruction in an orderly manner
Stages 1. fetch 2. decode 3. execute 4. writeback
types 1. arithmetic - problems divide into sub problems
2. instructions - read next instruction & execute previous instruction
pros - reduce processor’s cycle time
cons - stalling time
explain superscalar execution
W - execute multiple instructions during a clock cycle in various execution units
H 1. fetch unit = fetch & read instructions
2. dispatch unit = decodes & error checking
3. 1 floating point & 1 integer point, dispatch at the same clock cycle
pros - keeps both units busy
- increase performance
cons - 1 multiple errors (scheduling problem)
explain data flow analysis
W - arrange a series of instructions in a sequential manner
H - 1. initialize = data flow values
2. propagation = propagate via data flow graph by analyzing relationships between statements
3. analyzing = error checking & program optimization
4. iteration = iterate propagation to prevent value alteration
5. output = summarize analysis & program variables
pros - error detections & code optimization
cons - complex & false positive
explain speculative execution
W - utilize idle processing units to prefetch data & executes them ahead
H 1. data flow analysis
2. pipelining
3. out of order execution
pros - increase performance
cons - decrease performance if components are busy
explain branch prediction
W - predict branch conditions and store them for future uses
H - obtain historical data to make predictions
- 2-level adaptive = dynamic adjust prediction based on recent data
pros - reduce delay & increase performance
cons - complex & power consumption
2. incorrect prediction penalty
explain von Neuman’s principle
- the basis of computer system
- main memory = store data & instructions
- cpu = perform arithmetic & logic operations
- pc = keeps track & fetch next instruction
- io = operations of io devices