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

provide an Chisel Native API for SystemVerilog bind #4051

Open
sequencer opened this issue May 3, 2024 · 2 comments
Open

provide an Chisel Native API for SystemVerilog bind #4051

sequencer opened this issue May 3, 2024 · 2 comments

Comments

@sequencer
Copy link
Member

Type of issue: Feature Request

For a FixedIOModule, the ioGenerator is its header.

Think about this scenario, Different teams can only access the header for different purpose, e.g. RTL designer, DV engineer seeing Probe and ProbeRW, Performance Model engineer writing necessary printf to specific signals(Probe it).

There will be three different end users to the specified ioGenerator, and three layers of IO in three colors. three teams are developing three Modules but bind at last.

Currently bind can be automatically extracted in CIRCT.

But we may need a way to expose this functionality in Chisel.

@jackkoenig
Copy link
Contributor

This is actually what Layers are: https://www.chisel-lang.org/docs/explanations/layers

@sequencer
Copy link
Member Author

Yes. Layer is doing good in firrtl spec. But at chisel level, I’m thinking is there some design pattern for it? e.g. aop for a same IO, and corresponding aspect will have corresponding layer. This is possible. But does it support D/I? I’m not sure.

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

2 participants