aboutsummaryrefslogtreecommitdiffstats
path: root/techlibs/xilinx/synth_xilinx.cc
diff options
context:
space:
mode:
authorMarcelina Koƛcielnicka <mwk@0x04.net>2021-11-09 11:22:48 +0100
committerMarcelina Koƛcielnicka <mwk@0x04.net>2021-11-09 15:40:16 +0100
commit15b0d717ed658b342ce5f74df5a65827eed04a94 (patch)
treee9dfb025526ea0f1fbddf705987872fc889a951c /techlibs/xilinx/synth_xilinx.cc
parent4871d8f19911dc48bf7726519437be8a821c0a1f (diff)
downloadyosys-15b0d717ed658b342ce5f74df5a65827eed04a94.tar.gz
yosys-15b0d717ed658b342ce5f74df5a65827eed04a94.tar.bz2
yosys-15b0d717ed658b342ce5f74df5a65827eed04a94.zip
iopadmap: Add native support for negative-polarity output enable.
Diffstat (limited to 'techlibs/xilinx/synth_xilinx.cc')
-rw-r--r--techlibs/xilinx/synth_xilinx.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/techlibs/xilinx/synth_xilinx.cc b/techlibs/xilinx/synth_xilinx.cc
index 28672fb2e..6a060c8fe 100644
--- a/techlibs/xilinx/synth_xilinx.cc
+++ b/techlibs/xilinx/synth_xilinx.cc
@@ -558,9 +558,10 @@ struct SynthXilinxPass : public ScriptPass
}
if (check_label("map_cells")) {
- // Needs to be done before logic optimization, so that inverters (OE vs T) are handled.
+ // Needs to be done before logic optimization, so that inverters (inserted
+ // here because of negative-polarity output enable) are handled.
if (help_mode || !noiopad)
- run("iopadmap -bits -outpad OBUF I:O -inpad IBUF O:I -toutpad $__XILINX_TOUTPAD OE:I:O -tinoutpad $__XILINX_TINOUTPAD OE:O:I:IO A:top", "(skip if '-noiopad')");
+ run("iopadmap -bits -outpad OBUF I:O -inpad IBUF O:I -toutpad OBUFT ~T:I:O -tinoutpad IOBUF ~T:O:I:IO A:top", "(skip if '-noiopad')");
std::string techmap_args = "-map +/techmap.v -map +/xilinx/cells_map.v";
if (widemux > 0)
techmap_args += stringf(" -D MIN_MUX_INPUTS=%d", widemux);