forked from lowRISC/opentitan
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[flash_ctrl] Pop read pipeline FIFOs for data and mask in sync
This commit fixes a bug in the read pipeline where the data and the mask storage FIFO could get out of sync in case of the mask computation running behind the actual Flash read (e.g. due to back pressure in the shared scrambling logic). To avoid the FIFOs getting out of sync, the design now tracks whether for reads that don't require descrambling, a mask was still computed. This can happen if for scramble enabled locations that are being erased. In case a mask computation has been started, the FIFOs are now only popped if both the data and the mask FIFO contain a valid entry (i.e. the mask computation for the data to be popped has finished). This resolves lowRISC#22443 Signed-off-by: Pirmin Vogel <vogelpi@lowrisc.org>
- Loading branch information
Showing
3 changed files
with
99 additions
and
96 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters