Closed tmichalak closed 4 years ago
@mithro
(a) Can we move this into its own repository? IE Can this be built as a plugin external to Yosys?
Yes, it can be built external to Yosys, I just added the plugin to Yosys for this PR to easier show the complete solution
(b) Can we split the plugin into two parts, the XDC import and the FASM output?
Yes, we can have 2 separate plugins, one for XDC and another for FASM
(c) Can we make it clearer which parts are the vivado scripts and which parts are the Yosys scripts?
I guess the confusion is with the .tcl
scripts as currently Yosys scripts already have the .ys
extension.
I could use .ys.tcl
for Yosys and .vivado.tcl
or simply .tcl
for Vivado.
Superseded by https://github.com/SymbiFlow/yosys-symbiflow-plugins/pull/1 The comments have been taken into account there.
The initial version of the plugin is capable of reading an XDC file with the INTERNAL_VREF settings and generating a FASM file with the features that we currently have in our database that are related to the VREF settings per bank. This plugin operates on the existing design and modifies its structure based on the content of the XDC (Xilinx Design Constraints) file. Since the XDC file consists of Tcl commands it is read using Yosys's tcl command and processed by the new XDC commands imported to the Tcl interpreter.
The plugins for yosys have a separate repository (https://github.com/YosysHQ/yosys-plugins). However we could simply add the plugin to the symbiflow-arch-defs. We also need to add the concatenation step to symbiflow-arch-defs.