This commit is contained in:
Jakub Janeczko 2026-07-23 19:07:17 +02:00 committed by nella
parent a95d626691
commit 533899ca7e
1 changed files with 8 additions and 8 deletions

View File

@ -631,8 +631,8 @@ void dump_memory(std::ostream &f, std::string indent, Mem &mem)
continue; continue;
has_transparency = true; has_transparency = true;
} }
int bypass_valid_width = port.data.size();
int bypass_part_width = 1; int bypass_part_width = 1;
int bypass_valid_width = port.data.size() / bypass_part_width;
std::string bypass_valid_id; std::string bypass_valid_id;
std::string bypass_valid_reset_str; std::string bypass_valid_reset_str;
@ -856,13 +856,13 @@ void dump_memory(std::ostream &f, std::string indent, Mem &mem)
os << ";\n"; os << ";\n";
clk_to_lof_body[""].push_back(os.str()); clk_to_lof_body[""].push_back(os.str());
} else if (bypass_part_width == 1) { } else if (bypass_part_width == 1) {
std::ostringstream os; std::ostringstream os;
os << "assign "; os << "assign ";
dump_sigspec(os, port.data); dump_sigspec(os, port.data);
os << " = "; os << " = ";
os << stringf("(%s & %s) | (~%s & %s)", bypass_valid_id, bypass_data_id, bypass_valid_id, temp_id); os << stringf("(%s & %s) | (~%s & %s)", bypass_valid_id, bypass_data_id, bypass_valid_id, temp_id);
os << ";\n"; os << ";\n";
clk_to_lof_body[""].push_back(os.str()); clk_to_lof_body[""].push_back(os.str());
} else { } else {
for (int sub = 0; sub < bypass_valid_width; sub++) { for (int sub = 0; sub < bypass_valid_width; sub++) {
int seg_beg = sub * bypass_part_width; int seg_beg = sub * bypass_part_width;