Use of SV compile macros in RTL #301
Labels
Component:RTL
For issues in the RTL (e.g. for files in the rtl directory)
Type:Enhancement
For feature requests and enhancements
WAIVED:CV32E40P
Issue does not impact a major release of CV32E40P and is waived
The RTL code for cv32e40p contains a large number of compile-time macro checks. For example, in riscv_pmp.sv, lines 233..242 we see:
There are three issues highlighted here:
EN_NAPOT_RULE_8B
are defined in the file that uses them. These should be moved to a central location for all such macros.RULE_0
are used as constants. However, since macros have global scope, this could affect the entire design, so it is recommended to define these as localparams.DEBUG_RULE
could create very unexpected behavior if it is used in another way elsewhere in the RTL.I would like to see the following:
CV32E40P_EN_NAPOT
) to maximize the likelihood of having unique macros.Attached are two files:
rtl_ifdefs.uniq.txt
lists all the unique uses of macros in the RTL andrtl_ifdefs.uniq.txt
shows where these are defined.rtl_ifdefs.uniq.txt
rtl-defines.txt
The text was updated successfully, but these errors were encountered: