Skip to content

Conversation

@klin02
Copy link
Member

@klin02 klin02 commented Jan 10, 2026

This change refactors the Difftest transfer logic to use a ready-valid pipeline
for Squash, Batch, Delta, and Diff2AXI.

In the updated logic, Delta and Diff2AXI will set the ready signal to 0 when
data is not yet processed, applying backpressure to Difftest data. To apply
backpressure to data in the Delayer, RegNext is replaced with RegEnable.

Additionally, the clockEnable signal is required to remain 0 for an extra
cycle compared to the ready signal, ensuring that the valid signal is correctly
sampled during the fire handshake process.

@klin02 klin02 changed the title Pipeline feat(difftest): refactor transfer logic with ready-valid pipeline Jan 10, 2026
@klin02 klin02 marked this pull request as draft January 11, 2026 08:19
@klin02 klin02 force-pushed the pipeline branch 2 times, most recently from 9343147 to e809370 Compare January 12, 2026 06:46
klin02 added a commit that referenced this pull request Jan 14, 2026
In PR #797, Gateway was switched to use the ungated ref_clock. Before the
pipeline-based backpressure support introduced in PR #802, this caused
fpga_sim failures.

This change temporarily reverts Gateway to use the gated clock to ensure
correct behavior. Gateway will switch back to ref_clock after the pipeline
refactoring in PR #802 is merged.
klin02 added a commit that referenced this pull request Jan 14, 2026
In PR #797, Gateway was switched to use the ungated ref_clock. Before the
pipeline-based backpressure support introduced in PR #802, this caused
fpga_sim failures.

This change temporarily reverts Gateway to use the gated clock to ensure
correct behavior. Gateway will switch back to ref_clock after the pipeline
refactoring in PR #802 is merged.
This change refactors the Difftest transfer logic to use a ready-valid pipeline
for Squash, Batch, Delta, and Diff2AXI.

In the updated logic, Delta and Diff2AXI will set the ready signal to 0 when
data is not yet processed, applying backpressure to Difftest data. To apply
backpressure to data in the Delayer, RegNext is replaced with RegEnable.

Additionally, the clockEnable signal is required to remain 0 for an extra
cycle compared to the ready signal, ensuring that the valid signal is correctly
sampled during the fire handshake process.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants