RTLIL::Wire *wire = module->wire(name);
if (wire) {
- RTLIL::Cell* driver = module->cell(stringf("%slut", wire->name.c_str()));
+ RTLIL::Cell* driver = module->cell(stringf("%s$lut", wire->name.c_str()));
module->rename(wire, RTLIL::escape_id(stringf("%s[%d]", name.c_str(), 0)));
if (driver)
- module->rename(driver, stringf("%slut", wire->name.c_str()));
+ module->rename(driver, stringf("%s$lut", wire->name.c_str()));
}
// Do not make ports with a mix of input/output into
}
log_debug("Creating %s = ~%s\n", wire_name.c_str(), wire_inv_name.c_str());
- module->addNotGate(stringf("\\__%d__not", variable), wire_inv, wire); // FIXME: is "not" the right suffix?
+ module->addNotGate(stringf("\\__%d__$not", variable), wire_inv, wire); // FIXME: is "$not" the right suffix?
return wire;
}
lut_mask[j] = o.as_const()[0];
ce.pop();
}
- RTLIL::Cell *output_cell = module->cell(stringf("\\__%d__and", rootNodeID));
+ RTLIL::Cell *output_cell = module->cell(stringf("\\__%d__$and", rootNodeID));
log_assert(output_cell);
module->remove(output_cell);
- module->addLut(stringf("\\__%d__lut", rootNodeID), input_sig, output_sig, std::move(lut_mask));
+ module->addLut(stringf("\\__%d__$lut", rootNodeID), input_sig, output_sig, std::move(lut_mask));
}
}
else if (c == 'n') {
module->rename(wire, stringf("\\%s", s.c_str()));
- RTLIL::Cell* driver = module->cell(stringf("%slut", wire->name.c_str()));
- module->rename(driver, stringf("%slut", wire->name.c_str()));
+ RTLIL::Cell* driver = module->cell(stringf("%s$lut", wire->name.c_str()));
+ module->rename(driver, stringf("%s$lut", wire->name.c_str()));
std::getline(f, line); // Ignore up to start of next line
++line_count;
log_assert(wire);
log_assert(wire->port_output);
- RTLIL::Cell* driver = module->cell(stringf("%slut", wire->name.c_str()));
+ RTLIL::Cell* driver = module->cell(stringf("%s$lut", wire->name.c_str()));
if (index == 0)
module->rename(wire, RTLIL::escape_id(symbol));
}
if (driver)
- module->rename(driver, stringf("%slut", wire->name.c_str()));
+ module->rename(driver, stringf("%s$lut", wire->name.c_str()));
}
else
log_error("Symbol type '%s' not recognised.\n", type.c_str());
RTLIL::Wire *wire = module->wire(name);
if (wire) {
- RTLIL::Cell* driver = module->cell(stringf("%slut", wire->name.c_str()));
+ RTLIL::Cell* driver = module->cell(stringf("%s$lut", wire->name.c_str()));
module->rename(wire, RTLIL::escape_id(stringf("%s[%d]", name.c_str(), 0)));
if (driver)
- module->rename(driver, stringf("%slut", wire->name.c_str()));
+ module->rename(driver, stringf("%s$lut", wire->name.c_str()));
}
// Do not make ports with a mix of input/output into
RTLIL::Wire *o_wire = createWireIfNotExists(module, l1);
RTLIL::Wire *i1_wire = createWireIfNotExists(module, l2);
RTLIL::Wire *i2_wire = createWireIfNotExists(module, l3);
- module->addAndGate(o_wire->name.str() + "and", i1_wire, i2_wire, o_wire);
+ module->addAndGate(o_wire->name.str() + "$and", i1_wire, i2_wire, o_wire);
}
std::getline(f, line);
}
RTLIL::Wire *o_wire = createWireIfNotExists(module, l1);
RTLIL::Wire *i1_wire = createWireIfNotExists(module, l2);
RTLIL::Wire *i2_wire = createWireIfNotExists(module, l3);
- module->addAndGate(o_wire->name.str() + "and", i1_wire, i2_wire, o_wire);
+ module->addAndGate(o_wire->name.str() + "$and", i1_wire, i2_wire, o_wire);
}
}
if (a_bit.wire->port_input) {
// If it's a NOT gate that comes from a primary input directly
// then implement it using a LUT
- cell = module->addLut(remap_name(stringf("%slut", c->name.c_str())),
+ cell = module->addLut(remap_name(stringf("%s$lut", c->name.c_str())),
RTLIL::SigBit(module->wires_[remap_name(a_bit.wire->name)], a_bit.offset),
RTLIL::SigBit(module->wires_[remap_name(y_bit.wire->name)], y_bit.offset),
1);
// (TODO: Optimise by not cloning unless will increase depth)
RTLIL::IdString driver_name;
if (GetSize(a_bit.wire) == 1)
- driver_name = stringf("%slut", a_bit.wire->name.c_str());
+ driver_name = stringf("%s$lut", a_bit.wire->name.c_str());
else
- driver_name = stringf("%s[%d]lut", a_bit.wire->name.c_str(), a_bit.offset);
+ driver_name = stringf("%s[%d]$lut", a_bit.wire->name.c_str(), a_bit.offset);
RTLIL::Cell* driver = mapped_mod->cell(driver_name);
log_assert(driver);
auto driver_a = driver->getPort("\\A").chunks();
if (b == RTLIL::State::S0) b = RTLIL::State::S1;
else if (b == RTLIL::State::S1) b = RTLIL::State::S0;
}
- cell = module->addLut(remap_name(stringf("%slut", c->name.c_str())),
+ cell = module->addLut(remap_name(stringf("%s$lut", c->name.c_str())),
driver_a,
RTLIL::SigBit(module->wires_[remap_name(y_bit.wire->name)], y_bit.offset),
driver_lut);