Started on rtl (Finished till decode)

This commit is contained in:
felsabbagh3
2019-03-21 02:23:10 -04:00
parent 1892feefbf
commit d08d389177
43 changed files with 3088 additions and 0 deletions

40
rtl/VX_register_file.v Normal file
View File

@@ -0,0 +1,40 @@
module VX_register_file (
input wire clk,
input wire in_write_register,
input wire[4:0] in_rd,
input wire[31:0] in_data,
input wire[4:0] in_src1,
input wire[4:0] in_src2,
output wire[31:0] out_src1_data,
output wire[31:0] out_src2_data
);
reg[31:0] registers[31:0];
wire[31:0] write_data;
wire[4:0] write_register;
wire write_enable;
assign write_data = in_data;
assign write_register = in_rd;
assign write_enable = in_write_register && (in_rd != 5'h0);
always @(posedge clk) begin
if(write_enable) begin
registers[write_register] <= write_data;
end
end
assign out_src1_data = registers[in_src1];
assign out_src2_data = registers[in_src2];
endmodule