diff options
Diffstat (limited to 'eater_cpu/eater_decoder.sv')
| -rw-r--r-- | eater_cpu/eater_decoder.sv | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/eater_cpu/eater_decoder.sv b/eater_cpu/eater_decoder.sv index 78d4e6c..53cc39c 100644 --- a/eater_cpu/eater_decoder.sv +++ b/eater_cpu/eater_decoder.sv @@ -28,6 +28,7 @@ function CpuState insdep_state; LDA: insdep_state = LDA_INS_to_MAR; ADD: insdep_state = ADD_INS_to_MAR; OUT: insdep_state = OUT_A_to_OUT; + HALT_op: insdep_state = HALT_st; default: insdep_state = INIT; endcase @@ -54,6 +55,8 @@ always @(posedge clk_i) begin OUT_A_to_OUT: next_state = PC_to_MAR; + HALT_st: next_state = HALT_st; + default: begin next_state = INIT; end @@ -115,6 +118,10 @@ always_comb begin internal_flags.OUT_in = 1; end + HALT_st: begin + internal_flags.halt = 1; + end + default: begin end |
