From a5f4eb3d133ee25708462a07e267abfa32d91228 Mon Sep 17 00:00:00 2001 From: Blaise Tine Date: Thu, 2 Jul 2020 19:44:32 -0700 Subject: [PATCH] interfaces refactoring --- driver/rtlsim/Makefile | 2 +- driver/tests/basic/Makefile | 2 +- driver/tests/demo/Makefile | 2 +- hw/rtl/VX_exec_unit.v | 20 ++++++++++---------- hw/rtl/VX_fetch.v | 10 +++++----- hw/rtl/VX_warp.v | 4 ++-- hw/rtl/VX_warp_sched.v | 4 ++-- hw/rtl/interfaces/VX_branch_rsp_if.v | 6 +++--- hw/rtl/interfaces/VX_jal_rsp_if.v | 4 ++-- 9 files changed, 27 insertions(+), 27 deletions(-) diff --git a/driver/rtlsim/Makefile b/driver/rtlsim/Makefile index 19b39484..82ab979b 100644 --- a/driver/rtlsim/Makefile +++ b/driver/rtlsim/Makefile @@ -21,7 +21,7 @@ DBG_FLAGS += -DDBG_CORE_REQ_INFO #CONFIGS += -DNUM_CLUSTERS=1 -DNUM_CORES=2 #DEBUG=1 -AFU=1 +#AFU=1 CFLAGS += -fPIC diff --git a/driver/tests/basic/Makefile b/driver/tests/basic/Makefile index 71e38862..a3792edc 100644 --- a/driver/tests/basic/Makefile +++ b/driver/tests/basic/Makefile @@ -38,7 +38,7 @@ $(PROJECT): $(SRCS) $(CXX) $(CXXFLAGS) $^ $(LDFLAGS) -L../../stub -lvortex -o $@ run-fpga: $(PROJECT) - LD_LIBRARY_PATH=../../opae:$(LD_LIBRARY_PATH) ./$(PROJECT) -n 4096 + LD_LIBRARY_PATH=../../opae:$(LD_LIBRARY_PATH) ./$(PROJECT) -n 256 run-ase: $(PROJECT) ASE_LOG=0 LD_LIBRARY_PATH=../../opae/ase:$(LD_LIBRARY_PATH) ./$(PROJECT) -n 256 diff --git a/driver/tests/demo/Makefile b/driver/tests/demo/Makefile index bfd6bec0..0368e5b3 100644 --- a/driver/tests/demo/Makefile +++ b/driver/tests/demo/Makefile @@ -36,7 +36,7 @@ $(PROJECT): $(SRCS) $(CXX) $(CXXFLAGS) $^ $(LDFLAGS) -L../../stub -lvortex -o $@ run-fpga: $(PROJECT) - LD_LIBRARY_PATH=../../opae:$(LD_LIBRARY_PATH) ./$(PROJECT) -n 128 + LD_LIBRARY_PATH=../../opae:$(LD_LIBRARY_PATH) ./$(PROJECT) -n 16 run-ase: $(PROJECT) ASE_LOG=0 LD_LIBRARY_PATH=../../opae/ase:$(LD_LIBRARY_PATH) ./$(PROJECT) -n 16 diff --git a/hw/rtl/VX_exec_unit.v b/hw/rtl/VX_exec_unit.v index d89b4e48..133b0869 100644 --- a/hw/rtl/VX_exec_unit.v +++ b/hw/rtl/VX_exec_unit.v @@ -115,15 +115,15 @@ module VX_exec_unit ( assign inst_exec_wb_if.curr_PC = in_curr_PC; // Jal rsp - assign jal_rsp_temp_if.jal = in_jal; - assign jal_rsp_temp_if.jal_dest = $signed(in_a_reg_data[jal_branch_use_index]) + $signed(in_jal_offset); + assign jal_rsp_temp_if.valid = in_jal; + assign jal_rsp_temp_if.dest = $signed(in_a_reg_data[jal_branch_use_index]) + $signed(in_jal_offset); assign jal_rsp_temp_if.warp_num = exec_unit_req_if.warp_num; // Branch rsp - assign branch_rsp_temp_if.valid_branch = (exec_unit_req_if.branch_type != `BR_NO) && (| exec_unit_req_if.valid); - assign branch_rsp_temp_if.branch_dir = temp_branch_dir; - assign branch_rsp_temp_if.warp_num = exec_unit_req_if.warp_num; - assign branch_rsp_temp_if.branch_dest = $signed(exec_unit_req_if.curr_PC) + ($signed(exec_unit_req_if.itype_immed) << 1); // itype_immed = branch_offset + assign branch_rsp_temp_if.valid = (exec_unit_req_if.branch_type != `BR_NO) && (| exec_unit_req_if.valid); + assign branch_rsp_temp_if.dir = temp_branch_dir; + assign branch_rsp_temp_if.warp_num = exec_unit_req_if.warp_num; + assign branch_rsp_temp_if.dest = $signed(exec_unit_req_if.curr_PC) + ($signed(exec_unit_req_if.itype_immed) << 1); // itype_immed = branch_offset VX_generic_register #( .N(33 + `NW_BITS-1 + 1) @@ -132,8 +132,8 @@ module VX_exec_unit ( .reset (reset), .stall (1'b0), .flush (1'b0), - .in ({jal_rsp_temp_if.jal, jal_rsp_temp_if.jal_dest, jal_rsp_temp_if.warp_num}), - .out ({jal_rsp_if.jal , jal_rsp_if.jal_dest , jal_rsp_if.warp_num}) + .in ({jal_rsp_temp_if.valid, jal_rsp_temp_if.dest, jal_rsp_temp_if.warp_num}), + .out ({jal_rsp_if.valid , jal_rsp_if.dest , jal_rsp_if.warp_num}) ); VX_generic_register #( @@ -143,8 +143,8 @@ module VX_exec_unit ( .reset (reset), .stall (1'b0), .flush (1'b0), - .in ({branch_rsp_temp_if.valid_branch, branch_rsp_temp_if.branch_dir, branch_rsp_temp_if.warp_num, branch_rsp_temp_if.branch_dest}), - .out ({branch_rsp_if.valid_branch , branch_rsp_if.branch_dir , branch_rsp_if.warp_num , branch_rsp_if.branch_dest }) + .in ({branch_rsp_temp_if.valid, branch_rsp_temp_if.dir, branch_rsp_temp_if.warp_num, branch_rsp_temp_if.dest}), + .out ({branch_rsp_if.valid , branch_rsp_if.dir , branch_rsp_if.warp_num , branch_rsp_if.dest }) ); endmodule : VX_exec_unit \ No newline at end of file diff --git a/hw/rtl/VX_fetch.v b/hw/rtl/VX_fetch.v index e17443f4..810f0317 100644 --- a/hw/rtl/VX_fetch.v +++ b/hw/rtl/VX_fetch.v @@ -68,14 +68,14 @@ module VX_fetch ( .split_warp_num (warp_ctl_if.warp_num), // JAL - .jal (jal_rsp_if.jal), - .jal_dest (jal_rsp_if.jal_dest), + .jal (jal_rsp_if.valid), + .dest (jal_rsp_if.dest), .jal_warp_num (jal_rsp_if.warp_num), // Branch - .branch_valid (branch_rsp_if.valid_branch), - .branch_dir (branch_rsp_if.branch_dir), - .branch_dest (branch_rsp_if.branch_dest), + .branch_valid (branch_rsp_if.valid), + .branch_dir (branch_rsp_if.dir), + .branch_dest (branch_rsp_if.dest), .branch_warp_num (branch_rsp_if.warp_num), // Outputs diff --git a/hw/rtl/VX_warp.v b/hw/rtl/VX_warp.v index 53e4e549..b780d760 100644 --- a/hw/rtl/VX_warp.v +++ b/hw/rtl/VX_warp.v @@ -9,7 +9,7 @@ module VX_warp ( input wire[`NUM_THREADS-1:0] thread_mask, input wire change_mask, input wire jal, - input wire[31:0] jal_dest, + input wire[31:0] dest, input wire branch_dir, input wire[31:0] branch_dest, input wire wspawn, @@ -43,7 +43,7 @@ module VX_warp ( always @(*) begin if (jal == 1'b1) begin - temp_PC = jal_dest; + temp_PC = dest; end else if (branch_dir) begin temp_PC = branch_dest; end else begin diff --git a/hw/rtl/VX_warp_sched.v b/hw/rtl/VX_warp_sched.v index 4e0b7aed..81825e54 100644 --- a/hw/rtl/VX_warp_sched.v +++ b/hw/rtl/VX_warp_sched.v @@ -44,7 +44,7 @@ module VX_warp_sched ( // JAL input wire jal, - input wire[31:0] jal_dest, + input wire[31:0] dest, input wire[`NW_BITS-1:0] jal_warp_num, // Branch @@ -203,7 +203,7 @@ module VX_warp_sched ( // Jal if (jal) begin - warp_pcs[jal_warp_num] <= jal_dest; + warp_pcs[jal_warp_num] <= dest; warp_stalled[jal_warp_num] <= 0; end diff --git a/hw/rtl/interfaces/VX_branch_rsp_if.v b/hw/rtl/interfaces/VX_branch_rsp_if.v index 00ac18f1..a8f01d44 100644 --- a/hw/rtl/interfaces/VX_branch_rsp_if.v +++ b/hw/rtl/interfaces/VX_branch_rsp_if.v @@ -5,9 +5,9 @@ interface VX_branch_rsp_if (); - wire valid_branch; - wire branch_dir; - wire [31:0] branch_dest; + wire valid; + wire dir; + wire [31:0] dest; wire [`NW_BITS-1:0] warp_num; endinterface diff --git a/hw/rtl/interfaces/VX_jal_rsp_if.v b/hw/rtl/interfaces/VX_jal_rsp_if.v index c4e2d230..3f6796a0 100644 --- a/hw/rtl/interfaces/VX_jal_rsp_if.v +++ b/hw/rtl/interfaces/VX_jal_rsp_if.v @@ -6,8 +6,8 @@ interface VX_jal_rsp_if (); - wire jal; - wire [31:0] jal_dest; + wire valid; + wire [31:0] dest; wire [`NW_BITS-1:0] warp_num; endinterface