Himbaechel xilinx : More cascaded input ports for which routing is skipped

This commit is contained in:
Adrien Prost-Boucle 2024-09-13 15:22:25 +02:00 committed by myrtle
parent 04f5f80766
commit ad9a54cc69

View File

@ -108,12 +108,26 @@ void XC7Packer::pack_dsps()
for (auto &port : ci->ports) {
std::string n = port.first.str(ctx);
// According to ug479 :
// These signals are dedicated routing paths internal to the DSP48E1 column. They are not accessible via fabric routing resources.
if (boost::starts_with(n, "ACIN") || boost::starts_with(n, "BCIN") || boost::starts_with(n, "PCIN")) {
if (port.second.net == nullptr)
continue;
if (port.second.net->name == ctx->id("$PACKER_GND_NET"))
ci->disconnectPort(port.first);
}
if (n == "CARRYCASCIN") {
if (port.second.net == nullptr)
continue;
if (port.second.net->name == ctx->id("$PACKER_GND_NET"))
ci->disconnectPort(port.first);
}
if (n == "MULTSIGNIN") {
if (port.second.net == nullptr)
continue;
if (port.second.net->name == ctx->id("$PACKER_GND_NET"))
ci->disconnectPort(port.first);
}
// prjxray has extra bits for these ports to hardwire them to VCC/GND
// as these seem to be interal to the tile,