Call for ODM Talks - LEC, Simulation, Synthesis, Vendor-specific dialect(s)/outputs

At this week’s ODM, we discussed a few topics that are relevant in the community and would make for a good discussion. Just wanted to broadcast this in case anyone missed it. Hopefully we can pick some dates where the interested parties can make it and add it to the ODM doc.

ODM doc is here: CIRCT Weekly Discussion Notes - Google Docs

LEC - TBD
PR out here: https://github.com/llvm/circt/pull/3991
Moving it into a library: https://github.com/llvm/circt/pull/4544\
Would be good to discuss current state, next steps, etc.
cc @ahbea, not sure if Dragoș Cristian Lizan is on Discourse

Simulation - tentatively 2/22
Arc simulator, mid-level simulators, event driven, etc.
cc @fabianschuiki who has volunteered and suggested 2/22, but I’m sure that can be adjusted if needed

Synthesis - TBD
Most recent discussion in Integrate logic synthesis and optimisation capabilities - #9 by jdd
cc @boschmitt who has volunteered and several of us who offered to provide guidance

Vendor-specific dialect(s)/outputs - TBD
Has come up multiple times before (e.g. specific muxes for ASIC, specific DSPs for FPGA, etc.)
Also comes up when discussing synthesis topics.

Speaking of next steps, I’ve got a model-checking tool building on the LEC code mostly complete (but in need of some more testing) - the only big thing that’s missing is the front-end to provide properties to check over designs, as that felt like something worth getting opinions on. Was planning on waiting for the LEC code to stabilise before I made the PR, but if it’s useful for discussion I’m happy to put up a draft PR and just rebase as necessary.

1 Like

That sounds great, and I think it would be interesting to discuss at any point, regardless of how far along it is. Would you be interested in making a quick presentation at a CIRCT ODM to seed the discussion?

Cool, I’ll get that up soon.

Yes, definitely! Would be great to hear people’s thoughts.

The draft model checker PR is now visible here. Still needs some work, but there should be enough implementation/information there to discuss!