Branch predictors can have different configurations as follows:
1. GAg: 1 global history register and 1 global prediction table
2. GAp: 1 global history register and 8 per-address prediction tables
3. PAg: 8 per-address history registers and 1 global prediction table
4. PAp: 8 per-address history registers and 8 per-address prediction tables
We will use the following format for the configurations.
-bpred:2lev<l1size><l2size><histsize>
Configurations: N, M, W
N - entries in first level
M - entries in 2nd level (# of counters, or other FSM)
W - width of shift register(s) (# of bits in each shift register)
Sample predictors:
GAg: 1, M, W where M = 2^W
GAp: 1, M, W where M = C * 2^W, C is # of per-address prediction tables
PAg: N, M, W where M = 2^W
PAp: N, M, W where M = N * 2^W
Requirements: Show the configurations for the above 4 branch predictors using N, M, W and write in the report. Assume for each branch predictor, the number of predictors (saturation counters) is 512. (No simulation is required for Part B)