diff --git a/rtl/VX_warp_scheduler.v b/rtl/VX_warp_scheduler.v index 3e292341..c9b72d87 100644 --- a/rtl/VX_warp_scheduler.v +++ b/rtl/VX_warp_scheduler.v @@ -99,14 +99,21 @@ module VX_warp_scheduler ( // thread_masks[0][0] = 1; // Activating first thread in first warp // end - + integer curr_w_help; always @(posedge clk or posedge reset) begin if (reset) begin - warp_pcs[0] <= (32'h80000000 - 4); start <= 0; + warp_pcs[0] <= (32'h80000000 - 4); warp_active[0] <= 1; // Activating first warp visible_active[0] <= 1; // Activating first warp - thread_masks[0][0] <= 1; // Activating first thread in first warp + thread_masks[0] <= 1; // Activating first thread in first warp + for (curr_w_help = 1; curr_w_help < `NW; curr_w_help=curr_w_help+1) begin + warp_pcs[curr_w_help] <= 0; + warp_active[curr_w_help] <= 0; // Activating first warp + visible_active[curr_w_help] <= 0; // Activating first warp + thread_masks[curr_w_help] <= 0; // Activating first thread in first warp + end + end else begin // Wsapwning warps if (wspawn && found_wspawn) begin