处理器程序计数器的Verilog代码

处理器程序计数器的Verilog代码,verilog,processor,Verilog,Processor,在即将到来的时钟周期中,如果执行跳转指令,PC可以增加一个或更新一个跳转地址。如果指令结束,系统应处于停止状态。如何修改此代码,使执行跳转指令后,PC值为上一个PC值(跳转指令之前)+1 模块PCCU(输入时钟, 输入rst, 输入分支, 输入[7:0]跳转地址, 输出[7:0]pc); 注册[7:0]个人计算机; 始终@(posedge clk) 开始 如果(rst) 开始 pc如果连续有两条跳转指令会发生什么? module PCCU(input clk, input rst,

在即将到来的时钟周期中,如果执行跳转指令,PC可以增加一个或更新一个跳转地址。如果指令结束,系统应处于停止状态。如何修改此代码,使执行跳转指令后,PC值为上一个PC值(跳转指令之前)+1

模块PCCU(输入时钟,
输入rst,
输入分支,
输入[7:0]跳转地址,
输出[7:0]pc);
注册[7:0]个人计算机;
始终@(posedge clk)
开始
如果(rst)
开始

pc如果连续有两条跳转指令会发生什么?
module PCCU(input clk,
    input rst,
     input branch,
    input [7:0] jump_address,
    output [7:0] pc);
reg [7:0] pc;
  always@(posedge clk)
    begin
        if(rst)
            begin
                pc <= 0;
            end
        else if(branch)
            begin
                pc <= jump_address;
            end  
            else
                begin
                    pc <= pc + 1;
                end
    end
endmodule