From 2c2a755fd0642a3d8b35fbcea256c5e04f4ed0ff Mon Sep 17 00:00:00 2001 From: un-lock-able Date: Thu, 11 Jul 2024 01:27:32 +0800 Subject: [PATCH] Pass jalr test --- .../xsim/xsim.dir/test_cpu_behav/xsim.mem | Bin 17071 -> 16998 bytes .../sources_1/new/InstructionMemory.v | 23 +++++++++++------- PipelineProcessor.xpr | 2 +- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/PipelineProcessor.sim/sim_1/behav/xsim/xsim.dir/test_cpu_behav/xsim.mem b/PipelineProcessor.sim/sim_1/behav/xsim/xsim.dir/test_cpu_behav/xsim.mem index 6a5d976f21747ddffe1923f918707c6b57b06f5a..ae917a3faae548aa94e8de0b6d589e3083bb95a3 100644 GIT binary patch delta 13184 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 diff --git a/PipelineProcessor.srcs/sources_1/new/InstructionMemory.v b/PipelineProcessor.srcs/sources_1/new/InstructionMemory.v index 2745533..46665bb 100644 --- a/PipelineProcessor.srcs/sources_1/new/InstructionMemory.v +++ b/PipelineProcessor.srcs/sources_1/new/InstructionMemory.v @@ -7,21 +7,26 @@ module InstructionMemory ( always @(*) begin case (address[31:2]) - 20'd0: instruction <= 32'h20110001; // addi $s1, $zero, 1 + 20'd0: instruction <= 32'h20110002; // addi $s1, $zero, 2 20'd1: instruction <= 32'h00000000; 20'd2: instruction <= 32'h00000000; 20'd3: instruction <= 32'h00000000; 20'd4: instruction <= 32'h00000000; - 20'd5: instruction <= 32'h0c000007; // jal func - // end: - 20'd6: instruction <= 32'h08000006; // j end - // func: - 20'd7: instruction <= 32'h20120002; // addi $s2, $zero, 2 + 20'd5: instruction <= 32'h20120050; // addi $s2, $zero, 0x50 + 20'd6: instruction <= 32'h00000000; + 20'd7: instruction <= 32'h00000000; 20'd8: instruction <= 32'h00000000; 20'd9: instruction <= 32'h00000000; - 20'd10: instruction <= 32'h00000000; - 20'd11: instruction <= 32'h00000000; - 20'd12: instruction <= 32'h03e00008; // jr $ra + 20'd10: instruction <= 32'h02408009; // jalr $s2, $s0 + // end: + 20'd11: instruction <= 32'h0800000b; // j end + // Note the address + 20'd20: instruction <= 32'h20130003; // addi $s3, $zero, 3 + 20'd21: instruction <= 32'h00000000; + 20'd22: instruction <= 32'h00000000; + 20'd23: instruction <= 32'h00000000; + 20'd24: instruction <= 32'h00000000; + 20'd25: instruction <= 32'h02000008; // jr $s0 default: instruction <= 32'h00000000; endcase end diff --git a/PipelineProcessor.xpr b/PipelineProcessor.xpr index eb0c989..3b3f391 100644 --- a/PipelineProcessor.xpr +++ b/PipelineProcessor.xpr @@ -60,7 +60,7 @@