GPR Wrapper Interface Done

This commit is contained in:
felsabbagh3
2019-09-09 14:04:07 -04:00
parent bce9bc443c
commit 1882147370
29 changed files with 3549 additions and 3707 deletions

View File

@@ -27,23 +27,6 @@ module VX_decode(
);
wire in_src1_fwd = VX_fwd_rsp.src1_fwd;
wire[`NT_M1:0][31:0] in_src1_fwd_data = VX_fwd_rsp.src1_fwd_data;
wire in_src2_fwd = VX_fwd_rsp.src2_fwd;
wire[`NT_M1:0][31:0] in_src2_fwd_data = VX_fwd_rsp.src2_fwd_data;
wire[`NT_M1:0][31:0] in_write_data;
wire[1:0] in_wb;
wire[`NT_M1:0] in_wb_valid;
wire[`NW_M1:0] in_wb_warp_num;
assign in_write_data = VX_writeback_inter.write_data;
assign in_wb = VX_writeback_inter.wb;
assign in_wb_valid = VX_writeback_inter.wb_valid;
assign in_wb_warp_num = VX_writeback_inter.wb_warp_num;
wire[31:0] in_instruction = fd_inst_meta_de.instruction;
wire[31:0] in_curr_PC = fd_inst_meta_de.inst_pc;
wire[`NW_M1:0] in_warp_num = fd_inst_meta_de.warp_num;
@@ -75,8 +58,6 @@ module VX_decode(
wire is_jmprt;
wire is_wspawn;
wire write_register;
wire[2:0] func3;
wire[6:0] func7;
wire[11:0] u_12;
@@ -156,25 +137,35 @@ module VX_decode(
`else
VX_gpr_read_inter VX_gpr_read();
assign VX_gpr_read.rs1 = VX_frE_to_bckE_req.rs1;
assign VX_gpr_read.rs2 = VX_frE_to_bckE_req.rs2;
assign VX_gpr_read.warp_num = VX_frE_to_bckE_req.warp_num;
VX_gpr_jal_inter VX_gpr_jal();
assign VX_gpr_jal.is_jal = is_jal;
assign VX_gpr_jal.curr_PC = in_curr_PC;
VX_gpr_clone_inter VX_gpr_clone();
assign VX_gpr_clone.is_clone = is_clone;
assign VX_gpr_clone.warp_num = VX_frE_to_bckE_req.warp_num;
VX_gpr_wspawn_inter VX_gpr_wspawn();
assign VX_gpr_wspawn.is_wspawn = is_wspawn;
assign VX_gpr_wspawn.which_wspawn = in_which_wspawn;
// assign VX_gpr_wspawn.warp_num = VX_frE_to_bckE_req.warp_num;
VX_gpr_wrapper vx_grp_wrapper(
.clk (clk),
.in_warp_num (in_warp_num),
.in_wb_warp_num (in_wb_warp_num),
.is_clone (is_clone),
.in_wb_valid (in_wb_valid),
.in_rd (VX_writeback_inter.rd),
.in_rs1 (VX_frE_to_bckE_req.rs1),
.in_rs2 (VX_frE_to_bckE_req.rs2),
.in_curr_PC (in_curr_PC),
.is_jal (is_jal),
.in_src1_fwd (in_src1_fwd),
.in_src1_fwd_data(in_src1_fwd_data),
.in_src2_fwd (in_src2_fwd),
.in_src2_fwd_data(in_src2_fwd_data),
.write_register (write_register),
.in_write_data (in_write_data),
.is_wspawn (is_wspawn),
.in_which_wspawn (in_which_wspawn),
.VX_writeback_inter(VX_writeback_inter),
.VX_fwd_rsp (VX_fwd_rsp),
.VX_gpr_read (VX_gpr_read),
.VX_gpr_jal (VX_gpr_jal),
.VX_gpr_clone (VX_gpr_clone),
.VX_gpr_wspawn (VX_gpr_wspawn),
.out_a_reg_data (VX_frE_to_bckE_req.a_reg_data),
.out_b_reg_data (VX_frE_to_bckE_req.b_reg_data),
.out_clone_stall(out_clone_stall)
@@ -190,8 +181,6 @@ module VX_decode(
assign VX_frE_to_bckE_req.warp_num = in_warp_num;
assign VX_warp_ctl.warp_num = in_warp_num;
assign write_register = (in_wb != 2'h0) ? (1'b1) : (1'b0);
assign curr_opcode = in_instruction[6:0];