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

axi_xbar_unmuxed: Avoid multi dimensional arrays in more tools #353

Open
olofk opened this issue Oct 9, 2024 · 1 comment
Open

axi_xbar_unmuxed: Avoid multi dimensional arrays in more tools #353

olofk opened this issue Oct 9, 2024 · 1 comment

Comments

@olofk
Copy link
Contributor

olofk commented Oct 9, 2024

axi_xbar_unmuxed doesn't parse with (our version of) Xcelium because of problems with multi dimensional interfaces. I see the same problem has come up with VCS which was fixed in 14fbbf5

Two thoughts here

  1. My experience tells me that it's best to avoid multi-dimensional interfaces completely because of poor tool support
  2. Use something like `ifdef NO_MULTI_DIM_ARRAYS instead of `ifdef VCS. It's not a good idea to have tool-specific ifdefs. It's better to name the ifdef after the actual missing feature (e.g. `ifdef NO_MULTI_DIM_ARRAYS in this case) I had the same comment a couple of years ago around assertions where there were a lot of `ifdef VERILATOR. When we wanted to run this in XSIM, we had to also add a layer of `ifdef XSIM and then after a while, Verilator started to support assertions which made things more confusing. Having e.g. an `ifdef ASSERTIONS and controlling when to set that through the build system would help in these cases.
@olofk
Copy link
Contributor Author

olofk commented Oct 9, 2024

Just remembered that common_cells nowadays does have a `COMMON_CELLS_ASSERTS_OFF which I think is a good example of how to do this.

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