-
Notifications
You must be signed in to change notification settings - Fork 790
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
[topgen] Support for parametrized inter-module signals #23672
Conversation
91bc953
to
eaae82c
Compare
eaae82c
to
078b17c
Compare
078b17c
to
755e658
Compare
87e5060
to
92bd869
Compare
92bd869
to
0890bc3
Compare
f64038f
to
78d0a43
Compare
72776ab
to
b3e1a0f
Compare
b3e1a0f
to
d34c78e
Compare
98e6e7b
to
31f553e
Compare
Signed-off-by: Robert Schilling <[email protected]>
e7c2eca
to
4e7315f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM except for one open thread and a formatting comment. Thx @Razer6!
Signed-off-by: Robert Schilling <[email protected]>
4e7315f
to
83f8307
Compare
parameter kmac_pkg::app_config_t KmacAppCfg[KmacNumAppIntf] = | ||
'{kmac_pkg::AppCfgKeyMgr, kmac_pkg::AppCfgLcCtrl, kmac_pkg::AppCfgRomCtrl}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This array is declared in an "up to" (i.e., [0:KmacNumAppIntf-1]
) manner, so to my understanding index 0 is for keymgr, index 1 for lc_ctrl, and index 2 for rom_ctrl -- which is equivalent to the previous definition in kmac_pkg
. LGTM.
CHANGE AUTHORIZED: hw/ip/kmac/data/kmac.hjson These changes have no functional impact on Earlgrey. |
CHANGE AUTHORIZED: hw/ip/kmac/data/kmac.hjson These changes have no functional impact on Earlgrey. This is fine. |
This PR adds support for parametrized inter-module signals. Previously, when an inter-module signal depended on a parameter, you needed to specify the
width
value twice. Once for the parameter and once when the value is used for the width of the inter-module signal.This PR fixes that and adds support for parameters being used for the width of an inter-module signal. When you want to do that, you need to expose the parameter. If
local
is set, the parameter will be created as localparam in the top-level file, and the interconnection uses that parameter. Iflocal
isfalse
, a top-level parameter is created, but also a local parameter within thereg_pkg
of the IP.The PR is separated into 2 parts:
NumAppIntf
parameter