diff options
author | David Shah <dave@ds0.me> | 2020-11-17 15:13:00 +0000 |
---|---|---|
committer | David Shah <dave@ds0.me> | 2020-11-30 08:45:28 +0000 |
commit | 54539b85191fc5292b1d342a0979f9f31a319998 (patch) | |
tree | 710f969e88600de0507fb3e119d888312856ebd7 | |
parent | 6b5277638bc63b592e30acb4f51a4df3a8bd59d8 (diff) | |
download | nextpnr-54539b85191fc5292b1d342a0979f9f31a319998.tar.gz nextpnr-54539b85191fc5292b1d342a0979f9f31a319998.tar.bz2 nextpnr-54539b85191fc5292b1d342a0979f9f31a319998.zip |
nexus: Larger DSP tweaks
Signed-off-by: David Shah <dave@ds0.me>
-rw-r--r-- | nexus/fasm.cc | 8 | ||||
-rw-r--r-- | nexus/pins.cc | 16 |
2 files changed, 15 insertions, 9 deletions
diff --git a/nexus/fasm.cc b/nexus/fasm.cc index 6aff3ae7..5da809c6 100644 --- a/nexus/fasm.cc +++ b/nexus/fasm.cc @@ -526,11 +526,17 @@ struct NexusFasmWriter { BelId bel = cell->bel; push_bel(bel); - write_bit(stringf("MODE.%s", ctx->nameOf(cell->type))); + if (cell->type != id_MULT18_CORE && cell->type != id_MULT18X36_CORE && cell->type != id_MULT36_CORE) + write_bit(stringf("MODE.%s", ctx->nameOf(cell->type))); for (auto param : sorted_cref(cell->params)) { const std::string ¶m_name = param.first.str(ctx); if (is_mux_param(param_name)) continue; + if (param.first == id_ROUNDBIT) { + // currently unsupported in oxide, but appears rarely used + NPNR_ASSERT(param.second.as_string() == "ROUND_TO_BIT0"); + continue; + } write_enum(cell, param_name); } write_cell_muxes(cell); diff --git a/nexus/pins.cc b/nexus/pins.cc index 0cf5c3e2..78aa213e 100644 --- a/nexus/pins.cc +++ b/nexus/pins.cc @@ -128,19 +128,19 @@ static const std::unordered_map<IdString, Arch::CellPinsData> base_cell_pin_data }}, {id_MULT18_CORE, { - {id_SFTCTRL0, PINSTYLE_CIB}, - {id_SFTCTRL1, PINSTYLE_CIB}, - {id_SFTCTRL2, PINSTYLE_CIB}, - {id_SFTCTRL3, PINSTYLE_CIB}, + {id_SFTCTRL0, PINSTYLE_PU}, + {id_SFTCTRL1, PINSTYLE_PU}, + {id_SFTCTRL2, PINSTYLE_PU}, + {id_SFTCTRL3, PINSTYLE_PU}, {id_ROUNDEN, PINSTYLE_CIB}, {{}, PINSTYLE_DEDI}, }}, {id_MULT18X36_CORE, { - {id_SFTCTRL0, PINSTYLE_CIB}, - {id_SFTCTRL1, PINSTYLE_CIB}, - {id_SFTCTRL2, PINSTYLE_CIB}, - {id_SFTCTRL3, PINSTYLE_CIB}, + {id_SFTCTRL0, PINSTYLE_PU}, + {id_SFTCTRL1, PINSTYLE_PU}, + {id_SFTCTRL2, PINSTYLE_PU}, + {id_SFTCTRL3, PINSTYLE_PU}, {id_ROUNDEN, PINSTYLE_CIB}, {{}, PINSTYLE_DEDI}, }}}; |