Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

zeroized mem read ports #102

Merged
merged 3 commits into from
Feb 24, 2025
Merged

Conversation

ekarabu
Copy link
Collaborator

@ekarabu ekarabu commented Feb 21, 2025

@Nitsirks needs to review this change

The MLDSA RTL correctly enters the zeroization flow, but the last read data remains on the read ports after zeroization completes. This occurs because the read data port retains the last-read value just before zeroization.

To prevent this, I enforce a read operation at address zero during zeroization. As a result, three clock cycles after receiving the zeroization command, the read port outputs data from address zero, which has already been cleared by the memory zeroization routine.

This ensures that no stale data remains on the read ports post-zeroization. This also ensures that read data port is zeroized at the 3rd clock cycle after receiving the zeroization command.

…port' with updated timestamp and hash after successful run
@Nitsirks Nitsirks merged commit 4e9b93e into main Feb 24, 2025
5 checks passed
@ekarabu ekarabu deleted the user/dev/ekarabulut/zeroize_mem_port branch February 24, 2025 16:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants