Понимание прогноза ветвления

Есть некоторые вопросы о предсказании ветвления, которые я не могу с уверенностью выяснить. Предположим, что мне приходится работать со статическим предсказателем ветвления.

На каком этапе конвейера должно произойти предсказание ветвления?Как узнать, что прогноз оказался неверным? Как дата данных узнает, что произошло неправильное предсказание?Если он узнает, что произошло неправильное предсказание, как он посылает сигнал для того, чтобы занять неиспользованную ветку?После того, как все пошло не так, я должен заняться тем адресом, который не был занят ранее. Между тем, что если произойдет какая-то запись в память или запись в регистр? Как предотвратить это?

Это будет очень полезно, даже если будут предложены некоторые правильные ссылки с datapath в них. Заранее спасибо.

Ответы на вопрос(2)

Ваш ответ на вопрос