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

VeeR defines uniquification #59

Open
nstewart-amd opened this issue Feb 17, 2023 · 0 comments
Open

VeeR defines uniquification #59

nstewart-amd opened this issue Feb 17, 2023 · 0 comments

Comments

@nstewart-amd
Copy link

VeeR defines must be uniquified to avoid collision/redefinition when multiple VeeR cores are instantiated in a single design.

Since verilog macro defines are global namespace, they must be uniquified to avoid macro redifinition collision against other common IP names and multi-VeeR usercases.

The following are generic and subject to contention:

common_defines.vh
define REGWIDTH 32 define CLOCK_PERIOD 100
`define TOP tb_top

el2_param.vh
Most everything.
From a generic perspective, VeeR users should be able to integrate mutliple Veer configurations in parallel without collision.
Hence, anything "defined" in {veer.config -default} must not collide with defines in {veer.config -high_perf}.
Defines must be uniquified allowing multiple concurrent instantiation of differently configured VeeR cores.

Today:
`define FOO 0x1

Recommended
VeeR default config: `define VEER_default_FOO 0x1
Veer high_perf config: `define VEER_high_perf_FOO 0x2

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

No branches or pull requests

1 participant