Files
WMU-ECE-3570-Lab/lab2CA.srcs/sources_1/new/FetchUnit.v
goochey b2eb0da26c Fetch Unit Again
I think I did it wrong
2019-02-16 12:36:26 -05:00

32 lines
794 B
Verilog

`timescale 1ns / 1ps
module FetchUnit(input wire clk, reset, op_idx,
input wire [1:0] write_index,
input wire [8:0] AddrIn,
output wire [8:0] AddrOut);
//Wires from mux(result_m) to PC (progC_out) to adder then back to mux (result_a)
wire [8:0] progC_out, result_a, result_m;
register PC(
.clk(clk),
.reset(reset),
.En({write_index[0], write_index[1]}),
.Din(result_m),
.Dout(progC_out));
//Adds 1 to the program counter
add_9bit PCAdder(
.A(progC_out),
.B(1'b1),
.Cin(1'b0),
.Sum(result_a));
mux_2_1 PCmux(
.A(AddrIn),
.B(result_a),
.out(result_m),
.switch(op_idx));
endmodule