![]() |
.. (לתיקייה המכילה) | |
Will all the instructions fit into the history table? | |
No. The (local) history table is direct-mapped. each entry in the history tableaccessed by the branch's ip. because the branch ip is not aligned, use a number of LSBs according to the history table size as set. the remaining bits will function as a tag for the entry. |
What do we do when we have a tag mismatch? | |
Tag mismatch can only occur when using local history. In that case we clear the history register. The matching FSMs would be initialised if local FSMs are used as well. (but not otherwise). |
What is the size of the FSMs table? (number of entries) | |
To clarify again: 1. If we use global FSMs - Single entry 2. If we use local FSMs and local history - the size of the history table Note that the number of FSMs in each entry is determined by the history size. |
what bits i need to xor for an lshare or gshare predictor? | |
xor the lsb of the branch's ip with the hisotry register bits. |