-
Notifications
You must be signed in to change notification settings - Fork 40
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
Scan mode should not be synchronized in reset controller #218
Comments
Review of this also exposed the lack of dft override for reset during scan mode. For maximum scan coverage, we'll need to remove the synchronizer from this path as well as allow the cptra_rst_b pin to drive the uc and noncore resets during scan mode. |
Michael, "src/soc_ifc/rtl/soc_ifc_top.sv" The scan mode p logic won't really work.
Synchronization example:
Needed:
|
@Nitsirks - We've re-run DFT-DRC checks. However, the scan mode pulse concern remains. |
I recommend that such scan mode detection logic be placed in a dedicated module/instance and it will need to be excluded from scan chain. The module should be a synchronizer + shift register. The pulse should reset the shift register. The shift register should be bitwise AND/OR and fan in to Caliptra reset for critical structures (through both scan and non-scan reset branches). It is assumed that the user must clock N cycles to clear the shift register before scan vectors can be successfully shifted through the scan chains. Further, I recommend that the pulse detector is looking for any change of state (XOR) or scan mode. This will force pre+post clear of the critical structures. |
A follow up to explain why synchronizers were not addedA synchronizer is not necessary because the scan_mode must be synchronous to Caliptra's clock, as described in Caliptra Integration Specification, Table 11. This table also stipulates that the signal |
Scan mode override should be straight async control.
Current design has scan mode sychronization. However, the synchronizer will be scan replaced, defeating the purpose of the scan mode override.
File: src/rtl/caliptra/integration/rtl/caliptra_top.sv
The text was updated successfully, but these errors were encountered: