From 02f3f1cbba6c6726b583d0ad8c451b428370f7fd Mon Sep 17 00:00:00 2001 From: jc4419 <60656643+jc4419@users.noreply.github.com> Date: Mon, 30 Nov 2020 16:08:58 +0400 Subject: [PATCH] Program Counter - Untested --- rtl/mips_cpu_pc.v | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 rtl/mips_cpu_pc.v diff --git a/rtl/mips_cpu_pc.v b/rtl/mips_cpu_pc.v new file mode 100644 index 0000000..c2580a8 --- /dev/null +++ b/rtl/mips_cpu_pc.v @@ -0,0 +1,43 @@ +module ProgramCounter( + + input logic rst, + input logic clk, + + input logic[31:0] pcWriteAddr, + input logic pcWriteEn, + + output logic[31:0] pcRes, + + ); + + logic[31:0] pcIncr; + + initial begin + + pcRes <= 32'h00000000; + end + + always_comb begin + pcIncr = pcRes + 32'h00000004 + end + + always @(posedge clk) + begin + if (rst == 1) + begin + pcRes <= 32'h00000000; + end + else + begin + if (pcWriteEn == 1) begin + pcRes <= pcWriteAddr; + end + else begin + pcRes <= pcIncr; + end + end + + $display("pc = %h",pcRes); + end + +endmodule \ No newline at end of file