-
Notifications
You must be signed in to change notification settings - Fork 77
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
Add option to use systemverilog-plugin to build examples #244
Conversation
b550e79
to
fa94b11
Compare
@kamilrakoczy I see that this fails a bunch of tests but does pass a number of xc7 tests. We would like to use it on xc7 on basic designs. Is it functional enough for us to try? If not, will it be soon? I assume if we were to try it we would do the manual copying of the symbiflow_synth script? |
@nelsobe Yes, until f4pga/f4pga-arch-defs#2364 will be merged, manual copying of |
@kamilrakoczy Thanks for the info! We have successfully run it on a simple design without errors (hardware test successful as well). I am thinking it would be easy (given how we are collecting student designs) to run all the student designs through both paths. Any thoughts on the net naming problem? Happy to have a student take a look, do you have any pointers on where to point him? |
@nelsobe I briefly looked at Adding
I confirmed that As it looks like the problem is in Please let us know if you need any additional guidance.
|
fa94b11
to
59a16a8
Compare
@nelsobe PR in |
@kamilrakoczy I have generated a few test designs and can see that they all exhibit the problem when the top level ports are multi-bit signals. This seems to be for inputs only. Been talking with Prof Nelson @nelsobe, not sure where to look next since I don't know for sure what the structure of surelog/uhdm/yosys is. Can you provide some ideas on where to look in the code to identify where the subscripts are being lost for inputs? Happy to continue to dig but am a bit lost as to where the code to be looking in might be found. |
Hello, @DCrom1 Source code of the used tools can be found in following repos: When design is read using As I suggest that first you should confirm, that this multi-bit signal information is present in UHDM file. To do that, please add Example SystemVerilog code:
Example UHDM output (please look under
If it is present, next step would be to confirm, that it is present in Yosys AST (before simplification, after uhdm-plugin). This information is also printed after adding Example Yosys output:
If you are not sure, how correct AST should look like, you can try to compare AST of given node between when it is read using |
a008848
to
3172b03
Compare
8aff40f
to
ba28cab
Compare
7a7661e
to
4093eb1
Compare
Signed-off-by: Kamil Rakoczy <krakoczy@antmicro.com>
Signed-off-by: Kamil Rakoczy <krakoczy@antmicro.com>
4093eb1
to
45e3f1d
Compare
Signed-off-by: Rafal Kapuscik <rkapuscik@antmicro.com>
Signed-off-by: Kamil Rakoczy <krakoczy@antmicro.com>
Signed-off-by: Kamil Rakoczy <krakoczy@antmicro.com>
c946be5
to
2abc660
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Let's wait for CI.
This PR adds option to build examples using
systemverilog
(renameduhdm
) plugin.Not all examples are working yet with it, so this PR enables
systemverilog
only as option, not as default frontend.Progress on supporting currently not working examples can be tracked here: chipsalliance/yosys-f4pga-plugins#287
Signed-off-by: Kamil Rakoczy krakoczy@antmicro.com