Skip to content

Systemc leaf full - #685

Open
desmonddak wants to merge 18 commits into
intel:mainfrom
desmonddak:systemc-leaf-full
Open

Systemc leaf full#685
desmonddak wants to merge 18 commits into
intel:mainfrom
desmonddak:systemc-leaf-full

Conversation

@desmonddak

Copy link
Copy Markdown
Contributor

Description & Motivation

This is an effort to rearchitect the way synthesizers generate leaf code. It is highly disruptive because it removes the assumption that the gates produce SystemVerilog code and instead they all call a backend of some kind to produce the gate code as well as operators that produce inline code. So the architecture is language agnostic and symmetric with respect to the two languages we currently have: SystemVerilog and SystemC, as a way of stressing the architecture.

Related Issue(s)

None. A discussion in PR #662 led to this exploration.

Testing

SV and SC tests in ROHD all pass.

Backwards-compatibility

Is this a breaking change that will not be backwards-compatible? If yes, how so?

Likely: while not a user api, it is likley there are some public methods that have been changed or removed.

Documentation

Does the change require any updates to documentation? If so, where? Are they included?

None included. Not likely needed except to document how to handle new gates and possibly custom block handling (which may not be working yet).

@desmonddak

Copy link
Copy Markdown
Contributor Author

This refactoring is not quite complete. The gates portion is mature. The conditionals still have generateVerilog methods.
But generally, this is an architecture to generalize the backend and make the synthesizer architecture symmetric.

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

Successfully merging this pull request may close these issues.

1 participant