aboutsummaryrefslogtreecommitdiffstats
path: root/techlibs/xilinx/synth_xilinx.cc
diff options
context:
space:
mode:
authorMarcin Koƛcielnicki <mwk@0x04.net>2020-02-03 18:50:33 +0100
committerMarcelina Koƛcielnicka <mwk@0x04.net>2020-02-07 01:00:29 +0100
commit95c46ccc555769cd9d24bae27e0b7264f06e3d66 (patch)
treede5a3e2df77665914d1bd39c7eb01fabf40a480e /techlibs/xilinx/synth_xilinx.cc
parent1784d25f53abaf4b457e180af49dddca8718d88d (diff)
downloadyosys-95c46ccc555769cd9d24bae27e0b7264f06e3d66.tar.gz
yosys-95c46ccc555769cd9d24bae27e0b7264f06e3d66.tar.bz2
yosys-95c46ccc555769cd9d24bae27e0b7264f06e3d66.zip
xilinx: Add support for Spartan 3A DSP block RAMs.
Part of #1550
Diffstat (limited to 'techlibs/xilinx/synth_xilinx.cc')
-rw-r--r--techlibs/xilinx/synth_xilinx.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/techlibs/xilinx/synth_xilinx.cc b/techlibs/xilinx/synth_xilinx.cc
index 5a28bb139..705591cf7 100644
--- a/techlibs/xilinx/synth_xilinx.cc
+++ b/techlibs/xilinx/synth_xilinx.cc
@@ -438,7 +438,12 @@ struct SynthXilinxPass : public ScriptPass
run("memory_bram -rules +/xilinx/{family}_brams.txt");
run("techmap -map +/xilinx/{family}_brams_map.v");
} else if (!nobram) {
- if (family == "xc6s") {
+ if (family == "xc3sda") {
+ // Supported block RAMs for Spartan 3A DSP are
+ // a subset of Spartan 6's ones.
+ run("memory_bram -rules +/xilinx/xc3sda_brams.txt");
+ run("techmap -map +/xilinx/xc6s_brams_map.v");
+ } else if (family == "xc6s") {
run("memory_bram -rules +/xilinx/xc6s_brams.txt");
run("techmap -map +/xilinx/xc6s_brams_map.v");
} else if (family == "xc6v" || family == "xc7") {