mirror of
https://github.com/vortexgpgpu/vortex.git
synced 2025-04-23 21:39:10 -04:00
writeback cache fixes
This commit is contained in:
parent
95ca49a85f
commit
2e77c9eec2
1 changed files with 6 additions and 1 deletions
7
hw/rtl/cache/VX_cache_flush.sv
vendored
7
hw/rtl/cache/VX_cache_flush.sv
vendored
|
@ -118,17 +118,22 @@ module VX_cache_flush #(
|
|||
STATE_WAIT: begin
|
||||
if (no_inflight_reqs) begin
|
||||
state_n = STATE_FLUSH;
|
||||
flush_done_n = '0;
|
||||
end
|
||||
end
|
||||
STATE_FLUSH: begin
|
||||
// wait for all banks to finish flushing
|
||||
flush_done_n = flush_done | flush_ready;
|
||||
if (flush_done_n == {NUM_BANKS{1'b1}}) begin
|
||||
state_n = STATE_DONE;
|
||||
flush_done_n = '0;
|
||||
// only release current flush requests
|
||||
// and keep normal requests locked
|
||||
lock_released_n = flush_req_mask;
|
||||
end
|
||||
end
|
||||
STATE_DONE: begin
|
||||
// wait until released flush requests are issued
|
||||
// when returning to IDLE state other requests will unlock
|
||||
lock_released_n = lock_released & ~core_bus_out_ready;
|
||||
if (lock_released_n == 0) begin
|
||||
state_n = STATE_IDLE;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue