summaryrefslogtreecommitdiff
path: root/eater_cpu/eater_decoder.sv
diff options
context:
space:
mode:
Diffstat (limited to 'eater_cpu/eater_decoder.sv')
-rw-r--r--eater_cpu/eater_decoder.sv10
1 files changed, 7 insertions, 3 deletions
diff --git a/eater_cpu/eater_decoder.sv b/eater_cpu/eater_decoder.sv
index 53cc39c..ba7cf16 100644
--- a/eater_cpu/eater_decoder.sv
+++ b/eater_cpu/eater_decoder.sv
@@ -42,9 +42,11 @@ always @(posedge clk_i) begin
INIT: next_state = PC_to_MAR;
- PC_to_MAR: next_state = MEM_to_INS_and_PC_inc;
+ PC_to_MAR: next_state = MEM_to_INS;
- MEM_to_INS_and_PC_inc: next_state = insdep_state();
+ MEM_to_INS: next_state = PC_inc;
+
+ PC_inc: next_state = insdep_state();
LDA_INS_to_MAR: next_state = LDA_MEM_to_A;
LDA_MEM_to_A: next_state = PC_to_MAR;
@@ -82,9 +84,11 @@ always_comb begin
internal_flags.PC_out = 1;
internal_flags.MAR_in = 1;
end
- MEM_to_INS_and_PC_inc: begin
+ MEM_to_INS: begin
internal_flags.RAM_out = 1;
internal_flags.INS_in = 1;
+ end
+ PC_inc: begin
internal_flags.PC_count = 1;
end