Fix OBI address truncation template for 1-byte datawidth case. #176

This commit is contained in:
Alex Mykyta
2025-11-18 22:45:30 -08:00
parent 61bffb7b91
commit 4201ce975e
2 changed files with 6 additions and 0 deletions

View File

@@ -44,7 +44,11 @@ always_ff {{get_always_ff_event(cpuif.reset)}} begin
is_active <= 1'b1; is_active <= 1'b1;
cpuif_req <= 1'b1; cpuif_req <= 1'b1;
cpuif_req_is_wr <= {{cpuif.signal("we")}}; cpuif_req_is_wr <= {{cpuif.signal("we")}};
{%- if cpuif.data_width_bytes == 1 %}
cpuif_addr <= {{cpuif.signal("addr")}}[{{cpuif.addr_width-1}}:0];
{%- else %}
cpuif_addr <= { {{-cpuif.signal("addr")}}[{{cpuif.addr_width-1}}:{{clog2(cpuif.data_width_bytes)}}], {{clog2(cpuif.data_width_bytes)}}'b0}; cpuif_addr <= { {{-cpuif.signal("addr")}}[{{cpuif.addr_width-1}}:{{clog2(cpuif.data_width_bytes)}}], {{clog2(cpuif.data_width_bytes)}}'b0};
{%- endif %}
cpuif_wr_data <= {{cpuif.signal("wdata")}}; cpuif_wr_data <= {{cpuif.signal("wdata")}};
rid_q <= {{cpuif.signal("aid")}}; rid_q <= {{cpuif.signal("aid")}};
for (int i = 0; i < {{cpuif.data_width_bytes}}; i++) begin for (int i = 0; i < {{cpuif.data_width_bytes}}; i++) begin

View File

@@ -1,9 +1,11 @@
from parameterized import parameterized_class from parameterized import parameterized_class
from ..lib.cpuifs import ALL_CPUIF
from ..lib.sim_testcase import SimTestCase from ..lib.sim_testcase import SimTestCase
from ..lib.test_params import get_permutation_class_name, get_permutations from ..lib.test_params import get_permutation_class_name, get_permutations
PARAMS = get_permutations({ PARAMS = get_permutations({
"cpuif": ALL_CPUIF,
"regwidth" : [8, 16, 32, 64], "regwidth" : [8, 16, 32, 64],
}) })
@parameterized_class(PARAMS, class_name_func=get_permutation_class_name) @parameterized_class(PARAMS, class_name_func=get_permutation_class_name)