-
Notifications
You must be signed in to change notification settings - Fork 193
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
How to read an EDIF netlist into Vivado that isn't the toplevel? #426
Comments
shareefj
added a commit
to shareefj/edalize
that referenced
this issue
Apr 12, 2024
This commit updates tools/vivado.py to allow the user to skip the link_design step normally used after reading in a toplevel netlist. The use case here is when an EDIF netlist, or any other netlist, is read in as a submodule and is not the toplevel. In this case the link_design step will fail as Vivado is expecting a netlist with the toplevel name. In order to bypass the link_design step, use the no_link_design tag when specifying the netlist in your Core file: filesets: netlist: files: - cute_a7_core/cute_a7_core.edf: { file_type: edif, tags: [no_link_design] }
shareefj
added a commit
to shareefj/edalize
that referenced
this issue
Apr 17, 2024
This commit updates tools/vivado.py to allow the user to skip the link_design step normally used after reading in a toplevel netlist. The use case here is when an EDIF netlist, or any other netlist, is read in as a submodule and is not the toplevel. In this case the link_design step will fail as Vivado is expecting a netlist with the toplevel name. In order to bypass the link_design step, use the no_link_design tag when specifying the netlist in your Core file: filesets: netlist: files: - cute_a7_core/cute_a7_core.edf: { file_type: edif, tags: [no_link_design] }
olofk
pushed a commit
that referenced
this issue
Nov 11, 2024
This commit updates tools/vivado.py to allow the user to skip the link_design step normally used after reading in a toplevel netlist. The use case here is when an EDIF netlist, or any other netlist, is read in as a submodule and is not the toplevel. In this case the link_design step will fail as Vivado is expecting a netlist with the toplevel name. In order to bypass the link_design step, use the no_link_design tag when specifying the netlist in your Core file: filesets: netlist: files: - cute_a7_core/cute_a7_core.edf: { file_type: edif, tags: [no_link_design] }
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I'm working with some IP where they supply an EDIF netlist and I want to read this in as a submodule. If I specify the source file as having a
file_type: edif
, then thenetlist_flow
boolean is set which in turn causes alink_design
command to be run. Also see #425 for a bug here.https://github.com/olofk/edalize/blob/main/edalize/tools/vivado.py#L179
I can't say I've used a lot of EDIF netlists before so don't know when the
link_design
command is required. In this case, if I just comment it out, then the flow completes without issue. Is it only needed if you're trying to read in a toplevel netlist?A simple fix looks to be to use the
tags
field in the Core file to set something like ano_link_design
flag.The text was updated successfully, but these errors were encountered: