Added HW threads - Infinite loop
This commit is contained in:
@@ -1,33 +1,37 @@
|
||||
|
||||
|
||||
`include "VX_define.v"
|
||||
|
||||
module VX_f_d_reg (
|
||||
input wire clk,
|
||||
input wire reset,
|
||||
input wire[31:0] in_instruction,
|
||||
input wire in_valid,
|
||||
input wire[31:0] in_curr_PC,
|
||||
input wire in_fwd_stall,
|
||||
input wire in_freeze,
|
||||
output wire[31:0] out_instruction,
|
||||
output wire[31:0] out_curr_PC,
|
||||
output wire out_valid
|
||||
input wire clk,
|
||||
input wire reset,
|
||||
input wire[31:0] in_instruction,
|
||||
input wire[`NT_M1:0] in_valid,
|
||||
input wire[31:0] in_curr_PC,
|
||||
input wire in_fwd_stall,
|
||||
input wire in_freeze,
|
||||
output wire[31:0] out_instruction,
|
||||
output wire[31:0] out_curr_PC,
|
||||
output wire[`NT_M1:0] out_valid
|
||||
);
|
||||
|
||||
// always @(posedge clk) begin
|
||||
// $display("Fetch Inst: %d\tDecode Inst: %d", in_instruction, out_instruction);
|
||||
// end
|
||||
|
||||
reg[31:0] instruction;
|
||||
reg[31:0] curr_PC;
|
||||
reg valid;
|
||||
reg[31:0] instruction;
|
||||
reg[31:0] curr_PC;
|
||||
reg[`NT_M1:0] valid;
|
||||
|
||||
integer reset_cur_thread = 0;
|
||||
|
||||
|
||||
always @(posedge clk or posedge reset) begin
|
||||
if(reset) begin
|
||||
instruction <= 32'h0;
|
||||
curr_PC <= 32'h0;
|
||||
valid <= 1'b0;
|
||||
for (reset_cur_thread = 0; reset_cur_thread < `NT; reset_cur_thread = reset_cur_thread + 1)
|
||||
valid[reset_cur_thread] <= 1'b0;
|
||||
|
||||
end else if (in_fwd_stall == 1'b1 || in_freeze == 1'b1) begin
|
||||
// $display("Because of FWD stall keeping pc: %h", curr_PC);
|
||||
end else begin
|
||||
|
||||
Reference in New Issue
Block a user