reset network refactoring
This commit is contained in:
@@ -33,18 +33,6 @@ module VX_fp_div #(
|
||||
wire stall = ~ready_out && valid_out;
|
||||
wire enable = ~stall;
|
||||
|
||||
`ifndef VERILATOR
|
||||
wire [LANES-1:0] fdiv_reset;
|
||||
VX_reset_relay #(
|
||||
.DEPTH (LANES > 1),
|
||||
.NUM_NODES (LANES)
|
||||
) reset_relay (
|
||||
.clk (clk),
|
||||
.reset (reset),
|
||||
.reset_o (fdiv_reset)
|
||||
);
|
||||
`endif
|
||||
|
||||
for (genvar i = 0; i < LANES; i++) begin
|
||||
`ifdef VERILATOR
|
||||
reg [31:0] r;
|
||||
@@ -67,9 +55,11 @@ module VX_fp_div #(
|
||||
.data_out (result[i])
|
||||
);
|
||||
`else
|
||||
`RESET_RELAY (fdiv_reset);
|
||||
|
||||
acl_fdiv fdiv (
|
||||
.clk (clk),
|
||||
.areset (fdiv_reset[i]),
|
||||
.areset (fdiv_reset),
|
||||
.en (enable),
|
||||
.a (dataa[i]),
|
||||
.b (datab[i]),
|
||||
|
||||
@@ -39,18 +39,6 @@ module VX_fp_fma #(
|
||||
wire stall = ~ready_out && valid_out;
|
||||
wire enable = ~stall;
|
||||
|
||||
`ifndef VERILATOR
|
||||
wire [LANES-1:0] fma_reset;
|
||||
VX_reset_relay #(
|
||||
.DEPTH (LANES > 1),
|
||||
.NUM_NODES (LANES)
|
||||
) reset_relay (
|
||||
.clk (clk),
|
||||
.reset (reset),
|
||||
.reset_o (fma_reset)
|
||||
);
|
||||
`endif
|
||||
|
||||
for (genvar i = 0; i < LANES; i++) begin
|
||||
reg [31:0] a, b, c;
|
||||
|
||||
@@ -96,9 +84,11 @@ module VX_fp_fma #(
|
||||
.data_out (result[i])
|
||||
);
|
||||
`else
|
||||
`RESET_RELAY (fma_reset);
|
||||
|
||||
acl_fmadd fmadd (
|
||||
.clk (clk),
|
||||
.areset (fma_reset[i]),
|
||||
.areset (fma_reset),
|
||||
.en (enable),
|
||||
.a (a),
|
||||
.b (b),
|
||||
|
||||
@@ -32,18 +32,6 @@ module VX_fp_sqrt #(
|
||||
wire stall = ~ready_out && valid_out;
|
||||
wire enable = ~stall;
|
||||
|
||||
`ifndef VERILATOR
|
||||
wire [LANES-1:0] fsqrt_reset;
|
||||
VX_reset_relay #(
|
||||
.DEPTH (LANES > 1),
|
||||
.NUM_NODES (LANES)
|
||||
) reset_relay (
|
||||
.clk (clk),
|
||||
.reset (reset),
|
||||
.reset_o (fsqrt_reset)
|
||||
);
|
||||
`endif
|
||||
|
||||
for (genvar i = 0; i < LANES; i++) begin
|
||||
`ifdef VERILATOR
|
||||
reg [31:0] r;
|
||||
@@ -66,9 +54,11 @@ module VX_fp_sqrt #(
|
||||
.data_out (result[i])
|
||||
);
|
||||
`else
|
||||
`RESET_RELAY (fsqrt_reset);
|
||||
|
||||
acl_fsqrt fsqrt (
|
||||
.clk (clk),
|
||||
.areset (fsqrt_reset[i]),
|
||||
.areset (fsqrt_reset),
|
||||
.en (enable),
|
||||
.a (dataa[i]),
|
||||
.q (result[i])
|
||||
|
||||
@@ -71,21 +71,18 @@ module VX_fpu_fpga #(
|
||||
endcase
|
||||
end
|
||||
|
||||
wire [NUM_FPC-1:0] fpu_reset;
|
||||
VX_reset_relay #(
|
||||
.NUM_NODES(NUM_FPC)
|
||||
) reset_relay (
|
||||
.clk (clk),
|
||||
.reset (reset),
|
||||
.reset_o (fpu_reset)
|
||||
);
|
||||
`RESET_RELAY (fma_reset);
|
||||
`RESET_RELAY (div_reset);
|
||||
`RESET_RELAY (sqrt_reset);
|
||||
`RESET_RELAY (cvt_reset);
|
||||
`RESET_RELAY (ncp_reset);
|
||||
|
||||
VX_fp_fma #(
|
||||
.TAGW (TAGW),
|
||||
.LANES(`NUM_THREADS)
|
||||
) fp_fma (
|
||||
.clk (clk),
|
||||
.reset (fpu_reset[FPU_FMA]),
|
||||
.reset (fma_reset),
|
||||
.valid_in (valid_in && (core_select == FPU_FMA)),
|
||||
.ready_in (per_core_ready_in[FPU_FMA]),
|
||||
.tag_in (tag_in),
|
||||
@@ -109,7 +106,7 @@ module VX_fpu_fpga #(
|
||||
.LANES(`NUM_THREADS)
|
||||
) fp_div (
|
||||
.clk (clk),
|
||||
.reset (fpu_reset[FPU_DIV]),
|
||||
.reset (div_reset),
|
||||
.valid_in (valid_in && (core_select == FPU_DIV)),
|
||||
.ready_in (per_core_ready_in[FPU_DIV]),
|
||||
.tag_in (tag_in),
|
||||
@@ -129,7 +126,7 @@ module VX_fpu_fpga #(
|
||||
.LANES(`NUM_THREADS)
|
||||
) fp_sqrt (
|
||||
.clk (clk),
|
||||
.reset (fpu_reset[FPU_SQRT]),
|
||||
.reset (sqrt_reset),
|
||||
.valid_in (valid_in && (core_select == FPU_SQRT)),
|
||||
.ready_in (per_core_ready_in[FPU_SQRT]),
|
||||
.tag_in (tag_in),
|
||||
@@ -148,7 +145,7 @@ module VX_fpu_fpga #(
|
||||
.LANES(`NUM_THREADS)
|
||||
) fp_cvt (
|
||||
.clk (clk),
|
||||
.reset (fpu_reset[FPU_CVT]),
|
||||
.reset (cvt_reset),
|
||||
.valid_in (valid_in && (core_select == FPU_CVT)),
|
||||
.ready_in (per_core_ready_in[FPU_CVT]),
|
||||
.tag_in (tag_in),
|
||||
@@ -169,7 +166,7 @@ module VX_fpu_fpga #(
|
||||
.LANES(`NUM_THREADS)
|
||||
) fp_ncomp (
|
||||
.clk (clk),
|
||||
.reset (fpu_reset[FPU_NCP]),
|
||||
.reset (ncp_reset),
|
||||
.valid_in (valid_in && (core_select == FPU_NCP)),
|
||||
.ready_in (per_core_ready_in[FPU_NCP]),
|
||||
.tag_in (tag_in),
|
||||
|
||||
Reference in New Issue
Block a user