-
Florian Zaruba authored
The instuction frontend has become an increasingly messy part an needed cleaning-up. The current solution contains 2 x 32 bit instruction data fifos and 1 x 64 bit address fifo. Hence, it should be significantly more area efficient that the previous one. The interface to `id_stage` is a ready/valid handshake. The credit based system has been replaced in favour of a replay mechanism as it was very brittle and overly pessimistic. Branch-prediction has been cleaned up: The front-end was also partially predicting on jumps, this could have potentially let to performance bugs if the branch detection wasn't correct in the frontend.
Florian Zaruba authoredThe instuction frontend has become an increasingly messy part an needed cleaning-up. The current solution contains 2 x 32 bit instruction data fifos and 1 x 64 bit address fifo. Hence, it should be significantly more area efficient that the previous one. The interface to `id_stage` is a ready/valid handshake. The credit based system has been replaced in favour of a replay mechanism as it was very brittle and overly pessimistic. Branch-prediction has been cleaned up: The front-end was also partially predicting on jumps, this could have potentially let to performance bugs if the branch detection wasn't correct in the frontend.