Closed rodrigomelo9 closed 4 years ago
Apparently ISE doesn't like the '%' in the strings. I have to check whether the '%' is allowed in EDIF.
You can check, of course, but we need to avoid the '%' (if the problem) to use with devices such as Spartan6 :smiley:
Can you try with this change:
--- a/src/ghdl.cc
+++ b/src/ghdl.cc
@@ -48,7 +48,8 @@ static std::string to_str(Sname name)
res = '.' + string(get_cstr(get_sname_suffix(pfx))) + res;
break;
case Sname_Version:
- res = '%' + stringf("%u", get_sname_version(pfx)) + res;
+ // Use '$' for versions. '%' is not supported by Xilinx ISE edif2ngc.
+ res = '$' + stringf("%u", get_sname_version(pfx)) + res;
break;
}
}
It works, ISE and Vivado (working in hardware :-D). Great work @tgingold and thanks @eine for the support (regenerate ghdl/synth:beta
locally).
Hi. I am not sure about to post it here or at the Yosys repo, but a first glance, it seems related to deal with VHDL packages. Let me explain.
ghdl-yosys-plugin
support into PyFPGA.ghdl-yosys-plugin
+ Yosys, using Vivado (Zynq 7000) to generate the bitstream, is working with a Zybo.ghdl-yosys-plugin
+ Yosys, using ISE (Spartan 6), fails with a complaint about the EDIF format:Executing edif2ngd -quiet "ise.edif" "_ngo/ise.ngo" WARNING: es_AR:es is not supported as a language. Using usenglish. Release 14.7 - edif2ngd P.20131013 (lin64) Copyright (c) 1995-2013 Xilinx, Inc. All rights reserved. ERROR:NgdBuild:202 - On or above line 1277 in file "ise.edif": EDIF asciiCharacter specification has illegal character """. This likely means that the EDIF netlist was improperly written. Please contact the vendor of the program that produced this EDIF. ERROR:NgdBuild:276 - edif2ngd exited with errors (return code 2). ERROR:NgdBuild:28 - edif2ngd did not successfully complete. Please check preceding errors for root cause. Total REAL time to NGDBUILD completion: 2 sec Total CPU time to NGDBUILD completion: 0 sec
Writing NGDBUILD log file "Top.bld"... WARNING: es_AR:es is not supported as a language. Using usenglish. Release 14.7 - edif2ngd P.20131013 (lin64) Copyright (c) 1995-2013 Xilinx, Inc. All rights reserved. ERROR:NgdBuild:202 - On or above line 1277 in file "ise.edif": EDIF