Skip to content
This repository was archived by the owner on Apr 27, 2023. It is now read-only.

Commit 9ff3426

Browse files
authored
Merge pull request #85 from flaviens/master
Fix signal used before declaration in multiple Verilog files
2 parents 447bd81 + 5310a73 commit 9ff3426

File tree

3 files changed

+25
-12
lines changed

3 files changed

+25
-12
lines changed

rtl/xc_aesmix/xc_aesmix.v

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ output wire [31:0] result //
2424
// Single cycle implementation (set) or 4-cycle implementation (clear).
2525
parameter FAST = 1'b1;
2626

27+
wire [7:0] step_out;
28+
2729
//
2830
// Multiply by 2 in GF(2^8) modulo 8'h1b
2931
function [7:0] xtime2;
@@ -181,7 +183,7 @@ wire [7:0] dec_byte = dec_0_out ^ dec_1_out ^ dec_2_out ^ dec_3_out;
181183
//
182184
// Result collection
183185

184-
wire [7:0] step_out = enc ? enc_byte : dec_byte;
186+
assign step_out = enc ? enc_byte : dec_byte;
185187

186188
assign result_enc = {b_3, b_2, b_1, b_0};
187189
assign result_dec = {b_3, b_2, b_1, b_0};

rtl/xc_malu/xc_malu.v

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,17 @@ output wire ready // Outputs ready.
5151

5252
);
5353

54+
wire fsm_init;
55+
wire fsm_mdr;
56+
wire fsm_msub_1;
57+
wire fsm_macc_1;
58+
wire fsm_mmul_1;
59+
wire fsm_mmul_2;
60+
wire fsm_mmul_3;
61+
wire fsm_done;
62+
63+
wire ld_mdr;
64+
wire ld_long;
5465

5566
//
5667
// Submodule interface wires
@@ -145,14 +156,14 @@ localparam FSM_MMUL_2 = 8'b00100000;
145156
localparam FSM_MMUL_3 = 8'b01000000;
146157
localparam FSM_DONE = 8'b10000000;
147158

148-
wire fsm_init = fsm[0];
149-
wire fsm_mdr = fsm[1];
150-
wire fsm_msub_1 = fsm[2];
151-
wire fsm_macc_1 = fsm[3];
152-
wire fsm_mmul_1 = fsm[4];
153-
wire fsm_mmul_2 = fsm[5];
154-
wire fsm_mmul_3 = fsm[6];
155-
wire fsm_done = fsm[7];
159+
assign fsm_init = fsm[0];
160+
assign fsm_mdr = fsm[1];
161+
assign fsm_msub_1 = fsm[2];
162+
assign fsm_macc_1 = fsm[3];
163+
assign fsm_mmul_1 = fsm[4];
164+
assign fsm_mmul_2 = fsm[5];
165+
assign fsm_mmul_3 = fsm[6];
166+
assign fsm_done = fsm[7];
156167

157168
always @(*) begin
158169

@@ -226,8 +237,8 @@ reg [63:0] acc ; // Accumulator
226237

227238
// Route outputs of MDR instruction into registers. Can happen even if
228239
// there isn't an MDR instruction executing, as in the case of xc.mmul.
229-
wire ld_mdr = insn_mdr || ((fsm_init||fsm_mmul_1) && uop_mmul);
230-
wire ld_long = insn_long && !((fsm_init||fsm_mmul_1) && uop_mmul);
240+
assign ld_mdr = insn_mdr || ((fsm_init||fsm_mmul_1) && uop_mmul);
241+
assign ld_long = insn_long && !((fsm_init||fsm_mmul_1) && uop_mmul);
231242

232243
wire [63:0] n_acc = {64{ld_mdr }} & mdr_n_acc |
233244
{64{ld_long }} & long_n_acc ;

rtl/xc_malu/xc_malu_divrem.v

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,13 @@ output wire ready
3232

3333
reg div_run ;
3434

35+
wire div_finished= (div_run && count == 32);
3536
assign ready = div_finished;
3637

3738
wire signed_lhs = (op_signed) && rs1[31];
3839
wire signed_rhs = (op_signed) && rs2[31];
3940

4041
wire div_start = valid && !div_run;
41-
wire div_finished= (div_run && count == 32);
4242

4343
wire [31:0] qmask = (32'b1<<31 ) >> count ;
4444

0 commit comments

Comments
 (0)