aboutsummaryrefslogtreecommitdiffstats
path: root/picorv32.v
diff options
context:
space:
mode:
authorTom Verbeure <tom_verbeure@yahoo.com>2016-09-07 20:32:32 -0700
committerTom Verbeure <tom_verbeure@yahoo.com>2016-09-07 20:32:32 -0700
commit80aa70ec2e18015a3d03989437b1a0adcbdc0f1e (patch)
tree27a2edecb0a88b053ddfbd6e804d1229eb7bb27e /picorv32.v
parent0906b1b4b4c28c441d2601171956bca853608d1d (diff)
downloadpicorv32-80aa70ec2e18015a3d03989437b1a0adcbdc0f1e.tar.gz
picorv32-80aa70ec2e18015a3d03989437b1a0adcbdc0f1e.zip
Only clock mem_wdata when necessary
Diffstat (limited to 'picorv32.v')
-rw-r--r--picorv32.v4
1 files changed, 3 insertions, 1 deletions
diff --git a/picorv32.v b/picorv32.v
index 88443b2..8ea791c 100644
--- a/picorv32.v
+++ b/picorv32.v
@@ -498,9 +498,11 @@ module picorv32 #(
end else begin
if (mem_la_read || mem_la_write) begin
mem_addr <= mem_la_addr;
- mem_wdata <= mem_la_wdata;
mem_wstrb <= mem_la_wstrb & {4{mem_la_write}};
end
+ if (mem_la_write) begin
+ mem_wdata <= mem_la_wdata;
+ end
case (mem_state)
0: begin
if (mem_do_prefetch || mem_do_rinst || mem_do_rdata) begin