aboutsummaryrefslogtreecommitdiffstats
path: root/techlibs/gowin/synth_gowin.cc
diff options
context:
space:
mode:
authorPepijn de Vos <pepijndevos@gmail.com>2021-11-07 18:00:18 +0100
committerGitHub <noreply@github.com>2021-11-07 18:00:18 +0100
commit4bf8deacbb961649901d45b21ab7fa8522d5885b (patch)
tree59a8b410b271a8633061d6df0d367445002402cb /techlibs/gowin/synth_gowin.cc
parent9a413803eb83f96d74dc48aee8a2319e1b926692 (diff)
downloadyosys-4bf8deacbb961649901d45b21ab7fa8522d5885b.tar.gz
yosys-4bf8deacbb961649901d45b21ab7fa8522d5885b.tar.bz2
yosys-4bf8deacbb961649901d45b21ab7fa8522d5885b.zip
synth_gowin: move splitnets to after iopadmap (#2435)
Diffstat (limited to 'techlibs/gowin/synth_gowin.cc')
-rw-r--r--techlibs/gowin/synth_gowin.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/techlibs/gowin/synth_gowin.cc b/techlibs/gowin/synth_gowin.cc
index cfc856deb..1f34a1d1d 100644
--- a/techlibs/gowin/synth_gowin.cc
+++ b/techlibs/gowin/synth_gowin.cc
@@ -238,7 +238,6 @@ struct SynthGowinPass : public ScriptPass
run("opt -fast");
if (retime || help_mode)
run("abc -dff -D 1", "(only if -retime)");
- run("splitnets");
if (!noiopads || help_mode)
run("iopadmap -bits -inpad IBUF O:I -outpad OBUF I:O "
"-toutpad $__GW_TBUF OE:I:O -tinoutpad $__GW_IOBUF OE:O:I:IO", "(unless -noiopads)");
@@ -278,6 +277,8 @@ struct SynthGowinPass : public ScriptPass
run("opt_lut_ins -tech gowin");
run("setundef -undriven -params -zero");
run("hilomap -singleton -hicell VCC V -locell GND G");
+ if (!vout_file.empty() || help_mode) // vendor output requires 1-bit wires
+ run("splitnets -ports", "(only if -vout used)");
run("clean");
run("autoname");
}
@@ -293,7 +294,7 @@ struct SynthGowinPass : public ScriptPass
if (check_label("vout"))
{
if (!vout_file.empty() || help_mode)
- run(stringf("write_verilog -decimal -attr2comment -defparam -renameprefix gen %s",
+ run(stringf("write_verilog -simple-lhs -decimal -attr2comment -defparam -renameprefix gen %s",
help_mode ? "<file-name>" : vout_file.c_str()));
if (!json_file.empty() || help_mode)
run(stringf("write_json %s",