You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[jack] I think it’s fine, the tests are good enough for experimental backend
Only concern is version of Yosys, in the past I had to go back a version because something was wrong with the formal tests and Yosys doesn’t do releases very often. We may have to build yosys from source which is a bit of a pain (but we do for chisel3)
[kevin] Maybe we can pick one of the many binary releases
[jack] It would be nice to have a formal checking flow between RTLIL and Verilog, main issue is it takes several minutes per test so this might be nice in a post merge CI rather than in standard PR checking
[chick] is it strictly necessary for this sort of thing to be part of the repo?
[schuyler] No, it is possible to build libraries for this sort of thing, can publish them yourself
[kevin] it is nice to just get the next version and it has it
[kevin] make chiseltest available for tests in chisel3 repo
make it easier to test the chisel standard library components
identify missing features in chiseltest
provide users some examples of how to use chiseltest
long-term goal:
deprecate all simulator bindings outside of chiseltest
problem:
chiseltest depends on chisel3
if chisel3 breaks binary compatibility of a feature that chiseltest relies on, then the tests would fail with a runtime linker error
solution:
keep tests in a separate project called integration-tests
make it possible to skip these tests if there is an issue
[jiuyang] unit test from chuse “build-from-source” chiseltest which linked to “THIS” chisel3.
[jack] More nuclear option is to just merge chiseltest into the chisel3 repo
[jiuyang] Maybe can decouple chiseltest into frontend and backend, keep frontend in chisel3 and backends in separate repo
[kevin] Main concern about merging in chiseltest is it raises the bar of backwards compatibility maintenance, it’s just too much overhead as a grad student
[jack] If we merge repos, we should keep chiseltest in pre-1.0 so it has the lower bar
Make sure to merge histories with git tree-merge or whatever
[kevin] Why don’t we just YOLO it -- don’t merge repos, have chisel-integration-tests depend on chiseltest and see how long it takes something breaks
A legacy PR which used to try to switch chiseltest to Stage and Phase.
Should I reopen it?
If we do this, it needs to not be an entire 1000s of lines architectural overhaul
[kevin] chiseltest is not really a compiler, not sure why it needs a Stage or Phase
What’s the use case that currently doesn’t work?
Switch different backend with annotations -- this can be done now
[kevin] we can add annotations for the various use cases wanted
User facing API is a test function
[adam] Our use case inside SiFive is that we have custom phases (like emitting Artefacts, see rocket-chip), we need these stages to run and are having a tough time getting them to run
[kevin]** if you can open a PR that has a test for the API that you want, we can discuss there**
[adam] RunFirrtlTransformAnnotation won’t work because it’s not a transform, it’s a phase
[schuyler] it’s sort of like needing a RunPhaseAnnotation
[kevin/adam] want to use the same compiler flow [down to low-firrtl] that one uses for tapeouts
[jiuyang] can we have test function in an annotation, then one could provide their own CLI
[jiuyang] Used to provide custom Phases that would enable building one mega-Verilog (full design) yet providing multiple test functions to test different APIs in that single design
[kevin] could possibly provide alternative API that works with Stage/Phase
[shuyler] Chisel Stage should not be the top, it’s just 1 tool for doing 1 thing
Could encapsulate chiseltest’s need for typesafe DUT in a Stage
Sometimes we need something that does elaboration, not necessary the “ElaboratePhase”
Resolution: SiFive to show mockup of API they need, also with a high level design document
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
2021-08-23/24
Outreach
Updates
Pinned Items
*
Discussion 1
Discussion 2
Beta Was this translation helpful? Give feedback.
All reactions