nexus: Updates

Signed-off-by: David Shah <dave@ds0.me>
This commit is contained in:
David Shah 2020-10-03 15:00:45 +01:00
parent 2b13b24cbe
commit e54aa836a4
3 changed files with 17 additions and 5 deletions

View File

@ -53,10 +53,6 @@ void arch_wrap_python(py::module &m)
typedef std::unordered_map<IdString, HierarchicalCell> HierarchyMap;
typedef std::unordered_map<IdString, IdString> AliasMap;
auto belpin_cls = py::class_<ContextualWrapper<BelPin>>(m, "BelPin");
readonly_wrapper<BelPin, decltype(&BelPin::bel), &BelPin::bel, conv_to_str<BelId>>::def_wrap(belpin_cls, "bel");
readonly_wrapper<BelPin, decltype(&BelPin::pin), &BelPin::pin, conv_to_str<IdString>>::def_wrap(belpin_cls, "pin");
typedef UpDownhillPipRange PipRange;
typedef WireBelPinRange BelPinRange;

View File

@ -69,6 +69,8 @@ X(INIT1)
X(INV)
X(BB)
X(VHI)
X(VLO)
X(FD1P3BX)
X(FD1P3DX)

View File

@ -208,6 +208,20 @@ struct NexusPacker
lut_rules[id_LUT4].new_type = id_OXIDE_COMB;
lut_rules[id_LUT4].port_xform[id_Z] = id_F;
lut_rules[id_LUT4].parse_params.emplace_back(id_INIT, id_INIT, 16, 0);
lut_rules[id_INV].new_type = id_OXIDE_COMB;
lut_rules[id_INV].port_xform[id_Z] = id_F;
lut_rules[id_INV].port_xform[id_A] = id_A;
lut_rules[id_INV].set_params.emplace_back(id_INIT, 0x5555);
lut_rules[id_VHI].new_type = id_OXIDE_COMB;
lut_rules[id_VHI].port_xform[id_Z] = id_F;
lut_rules[id_VHI].set_params.emplace_back(id_INIT, 0xFFFF);
lut_rules[id_VLO].new_type = id_OXIDE_COMB;
lut_rules[id_VLO].port_xform[id_Z] = id_F;
lut_rules[id_VLO].set_params.emplace_back(id_INIT, 0x0000);
generic_xform(lut_rules);
}
@ -308,4 +322,4 @@ void Arch::assignCellInfo(CellInfo *cell)
}
}
NEXTPNR_NAMESPACE_END
NEXTPNR_NAMESPACE_END