Skip to content
Snippets Groups Projects
Commit 98a16adf authored by Alban Gruin's avatar Alban Gruin
Browse files

controller: force D$ and BP flush on fence.i instructions


Signed-off-by: default avatarAlban Gruin <alban.gruin@irit.fr>
parent fd12a3c9
Branches
Tags
No related merge requests found
...@@ -97,17 +97,13 @@ module controller import ariane_pkg::*; ( ...@@ -97,17 +97,13 @@ module controller import ariane_pkg::*; (
flush_id_o = 1'b1; flush_id_o = 1'b1;
flush_ex_o = 1'b1; flush_ex_o = 1'b1;
flush_icache_o = 1'b1; flush_icache_o = 1'b1;
// this is not needed in the case since we // Force D$ flushing to avoid issues on the FPGA.
// have a write-through cache in this case
`ifndef WT_DCACHE
flush_dcache = 1'b1; flush_dcache = 1'b1;
fence_active_d = 1'b1; fence_active_d = 1'b1;
`endif
flush_bp_o = 1'b1;
end end
// this is not needed in the case since we
// have a write-through cache in this case
`ifndef WT_DCACHE
// wait for the acknowledge here // wait for the acknowledge here
if (flush_dcache_ack_i && fence_active_q) begin if (flush_dcache_ack_i && fence_active_q) begin
fence_active_d = 1'b0; fence_active_d = 1'b0;
...@@ -115,7 +111,7 @@ module controller import ariane_pkg::*; ( ...@@ -115,7 +111,7 @@ module controller import ariane_pkg::*; (
end else if (fence_active_q) begin end else if (fence_active_q) begin
flush_dcache = 1'b1; flush_dcache = 1'b1;
end end
`endif
// --------------------------------- // ---------------------------------
// SFENCE.VMA // SFENCE.VMA
// --------------------------------- // ---------------------------------
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment