[top, edn] Future enhancement to edn interface to various blocks
Open
Earlgrey-PROD Triaged
Priority:P3
Type:Enhancement
Type:FutureRelease
- Dominant language
- SystemVerilog
- Stars
- 3.6k
- Forks
- 1.1k
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 141
Description
Right now, most blocks assume they are async to edn (see [prim_edn_req](https://github.com/lowRISC/opentitan/blob/master/hw/ip/prim/rtl/prim_edn_req.sv)).
This is a simplification since modules themselves don't really know if it is async to the edn (the top level integration information can be different).
This means for some modules (kmac, keymgr) the async handling is redundant, since their primary clock may actually be synchronous to edn.
It's worth adding some top level tooling support in the future that allows modules to bypass this async handling when it is not needed.
Contributor guide
Assessment
This issue has not been assessed yet.