Asynchronously reset history to zero. A valid prediction shifts predict_taken into bit 0. A misprediction instead restores train_history and appends train_taken; recovery takes priority over a simultaneous prediction.
RTL Design Patterns/Branch Prediction
CS450 Branch History Register
hardbranch-predictionhistoryrollback