mirror of https://github.com/YosysHQ/yosys.git
Add warnings for quickly growing FSM table size in fsm_expand
This commit is contained in:
parent
b0a430f601
commit
49b8160488
|
@ -173,6 +173,16 @@ struct FsmExpand
|
|||
new_ctrl_out.append(output_sig);
|
||||
fsm_cell->setPort("\\CTRL_OUT", new_ctrl_out);
|
||||
|
||||
if (GetSize(input_sig) > 10)
|
||||
log_warning("Cell %s.%s (%s) has %d input bits, merging into FSM %s.%s might be problematic.\n",
|
||||
log_id(cell->module), log_id(cell), log_id(cell->type),
|
||||
GetSize(input_sig), log_id(fsm_cell->module), log_id(fsm_cell));
|
||||
|
||||
if (GetSize(fsm_data.transition_table) > 10000)
|
||||
log_warning("Transition table for FSM %s.%s already has %d rows, merging more cells "
|
||||
"into this FSM might be problematic.\n", log_id(fsm_cell->module), log_id(fsm_cell),
|
||||
GetSize(fsm_data.transition_table));
|
||||
|
||||
std::vector<FsmData::transition_t> new_transition_table;
|
||||
for (auto &tr : fsm_data.transition_table) {
|
||||
for (int i = 0; i < (1 << input_sig.size()); i++) {
|
||||
|
|
Loading…
Reference in New Issue