From 6fb37d5f47629817a5092da40217bde5ca0ed4fa Mon Sep 17 00:00:00 2001 From: Julian Blake Kongslie Date: Sun, 4 Apr 2021 14:16:27 -0700 Subject: Very fancy improved Fibonacci machine, with HDL convert-to-ASCII functionality --- hdl/top.sv | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'hdl') diff --git a/hdl/top.sv b/hdl/top.sv index 35279d4..4cb5e30 100644 --- a/hdl/top.sv +++ b/hdl/top.sv @@ -120,6 +120,11 @@ always_ff @(posedge clk) begin 'h2: state = AGEN; 'h3: if (acc != sign_extended_operand) ++pc; 'h4: pc = pc + sign_extended_operand; + 'h5: begin + mem_write_data = acc % 10 + 'h30; + acc = acc / 10; + state = AGEN; + end 'hf: begin if (operand[0]) ++acc; if (operand[1]) --acc; @@ -152,6 +157,12 @@ always_ff @(posedge clk) begin mem_write_data = acc; state = `mem_ready ? FETCH : AGEN; end + 'h5: begin + mem_valid = 1; + mem_address = {2'b0, idx + sign_extended_operand}; + mem_write = 1; + state = `mem_ready ? FETCH : AGEN; + end endcase end -- cgit v1.2.3