summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKimplul <kimi.h.kuparinen@gmail.com>2026-11-03 20:03:50 +0200
committerKimplul <kimi.h.kuparinen@gmail.com>2026-11-03 20:03:50 +0200
commitb9afe2d4c22e35f2d2e65d67c07b300ba3f7ccb3 (patch)
tree1e079fc872c9b5b32a23430862f0ea4cbbc9f2f1 /src
parentf4afcfa58eb90d14abd55d79640ecda13b23dc21 (diff)
downloadttarv32-b9afe2d4c22e35f2d2e65d67c07b300ba3f7ccb3.tar.gz
ttarv32-b9afe2d4c22e35f2d2e65d67c07b300ba3f7ccb3.zip
fix missing connection in skid buffer
+ Verilator does not check undefined values and unused wire warnings only show up with -Wall (as warnings) so I just missed this completely, hah. Surprised the testbench passed, I guess it's just not quite up to snuff.
Diffstat (limited to 'src')
-rw-r--r--src/skid_buffer.sv6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/skid_buffer.sv b/src/skid_buffer.sv
index 3ea6d0d..0bb5617 100644
--- a/src/skid_buffer.sv
+++ b/src/skid_buffer.sv
@@ -37,6 +37,12 @@ if (!rstx_i)
else if (b_fill)
b <= a;
+always_ff @(posedge clk_i or negedge rstx_i)
+if (!rstx_i)
+ b_full <= '0;
+else if (b_fill || b_drain)
+ b_full <= b_fill;
+
/* fill A first, if upstream can't read A in time, place A into B and skid the
* input into A until upstream can clean out B */
assign a_fill = valid_i && ready_o;