[hardware] Combine ID and metadata always_comb blocks in snitch_lsu.sv
@@ -84,14 +84,16 @@ module snitch_lsu
// ----------------
// ID TABLE
// ----------------
- // Track ID availability
+ // Track ID availability and store metadata
always_comb begin
// Default
id_available_d = id_available_q;
+ metadata_d = metadata_q;
- // Take ID
+ // Take ID and store metadata
if (id_table_push) begin
id_available_d[req_id] = 1'b0;
+ metadata_d[req_id] = req_metadata;
end
// Free ID
@@ -100,17 +102,6 @@ module snitch_lsu
end
end
- // Store metadata for responses
- always_comb begin
- // Default
- metadata_d = metadata_q;
-
- // Store metadata
- if (id_table_push) begin
- metadata_d[req_id] = req_metadata;
- end
- end
-
assign req_metadata = '{
tag: lsu_qtag_i,
sign_ext: lsu_qsigned,
