mirror of https://github.com/YosysHQ/yosys.git
verific: add option to skip simplifying complex ports
This commit is contained in:
parent
3537976477
commit
db1de5fe5d
|
@ -2815,6 +2815,9 @@ struct VerificPass : public Pass {
|
||||||
log(" -extnets\n");
|
log(" -extnets\n");
|
||||||
log(" Resolve references to external nets by adding module ports as needed.\n");
|
log(" Resolve references to external nets by adding module ports as needed.\n");
|
||||||
log("\n");
|
log("\n");
|
||||||
|
log(" -no-split-complex-ports\n");
|
||||||
|
log(" Complex ports (structs or arrays) are not split and remain packed as a single port.\n");
|
||||||
|
log("\n");
|
||||||
log(" -autocover\n");
|
log(" -autocover\n");
|
||||||
log(" Generate automatic cover statements for all asserts\n");
|
log(" Generate automatic cover statements for all asserts\n");
|
||||||
log("\n");
|
log("\n");
|
||||||
|
@ -3548,6 +3551,7 @@ struct VerificPass : public Pass {
|
||||||
bool mode_nosva = false, mode_names = false, mode_verific = false;
|
bool mode_nosva = false, mode_names = false, mode_verific = false;
|
||||||
bool mode_autocover = false, mode_fullinit = false;
|
bool mode_autocover = false, mode_fullinit = false;
|
||||||
bool flatten = false, extnets = false, mode_cells = false;
|
bool flatten = false, extnets = false, mode_cells = false;
|
||||||
|
bool split_complex_ports = true;
|
||||||
string dumpfile;
|
string dumpfile;
|
||||||
string ppfile;
|
string ppfile;
|
||||||
Map parameters(STRING_HASH);
|
Map parameters(STRING_HASH);
|
||||||
|
@ -3565,6 +3569,10 @@ struct VerificPass : public Pass {
|
||||||
flatten = true;
|
flatten = true;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
if (args[argidx] == "-no-split-complex-ports") {
|
||||||
|
split_complex_ports = false;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
if (args[argidx] == "-extnets") {
|
if (args[argidx] == "-extnets") {
|
||||||
extnets = true;
|
extnets = true;
|
||||||
continue;
|
continue;
|
||||||
|
@ -3804,8 +3812,10 @@ struct VerificPass : public Pass {
|
||||||
worker.run(nl.second);
|
worker.run(nl.second);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (auto nl : nl_todo)
|
if (split_complex_ports) {
|
||||||
nl.second->ChangePortBusStructures(1 /* hierarchical */);
|
for (auto nl : nl_todo)
|
||||||
|
nl.second->ChangePortBusStructures(1 /* hierarchical */);
|
||||||
|
}
|
||||||
|
|
||||||
if (!dumpfile.empty()) {
|
if (!dumpfile.empty()) {
|
||||||
VeriWrite veri_writer;
|
VeriWrite veri_writer;
|
||||||
|
|
Loading…
Reference in New Issue