diff options
Diffstat (limited to 'eater_cpu/eater_decoder.sv')
| -rw-r--r-- | eater_cpu/eater_decoder.sv | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/eater_cpu/eater_decoder.sv b/eater_cpu/eater_decoder.sv index 634102a..e18d20d 100644 --- a/eater_cpu/eater_decoder.sv +++ b/eater_cpu/eater_decoder.sv @@ -47,11 +47,12 @@ always @(posedge clk_i) begin INIT: next_state = PC_to_MAR; - PC_to_MAR: next_state = MEM_to_INS; + // PC_to_MAR: next_state = MEM_to_INS; + // MEM_to_INS: next_state = PC_inc; + // PC_inc: next_state = insdep_state(); - MEM_to_INS: next_state = PC_inc; - - PC_inc: next_state = insdep_state(); + PC_to_MAR: next_state = MEM_to_INS_PC_inc; + MEM_to_INS_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; @@ -101,11 +102,17 @@ always_comb begin internal_flags.PC_out = 1; internal_flags.MAR_in = 1; end - MEM_to_INS: 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 + + MEM_to_INS_PC_inc: begin internal_flags.RAM_out = 1; internal_flags.INS_in = 1; - end - PC_inc: begin internal_flags.PC_count = 1; end |
