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

Boring to a FlatIO Port does not properly terminate at the port -- descends into the module #4155

Open
mwachs5 opened this issue Jun 7, 2024 · 0 comments

Comments

@mwachs5
Copy link
Contributor

mwachs5 commented Jun 7, 2024

Type of issue: Bug Report

Please provide the steps to reproduce the problem:
See unit tests added in #4154

What is the current behavior?

Boring to a Module with a FlatIO does not properly terminate at the ports within Aggregates in the FlatIO.
It does work if it is not an Aggregate (if it is an element).

For Ext modules this leads to an annoying error message with a class cast exception because we've descended into the ExtModule which is not very friendly:
https://github.com/chipsalliance/chisel/blob/main/src/main/scala/chisel3/util/experimental/BoringUtils.scala#L273-L281

What is the expected behavior?

When boring to an output port on an ExtModule if it is a property, it should bore to the IO and not try to descent into the Module.

Also, if I do hit this scenario for an ExtModule i should get a better error than the class cast exception from
https://github.com/chipsalliance/chisel/blob/main/src/main/scala/chisel3/util/experimental/BoringUtils.scala#L273-L281

Please tell us about your environment:

Other Information

What is the use case for changing the behavior?

@mwachs5 mwachs5 changed the title Boring to a FlatIO [Property?] Port does not work [for an ExtModule?] Boring to a FlatIO Port does not properly terminate at the port -- descends into the module Jun 7, 2024
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