Skip to content

Commit 20d92aa

Browse files
authored
Merge pull request #412 from os-fpga/design200
updated rtl of design200
2 parents 6a1b8c4 + 553df68 commit 20d92aa

File tree

12 files changed

+34
-40
lines changed

12 files changed

+34
-40
lines changed

RTL_testcases/verilog_random_designs/design200_30_25_top/raptor_run.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ parse_cga exit 1; }
200200
[ -z "$strategy" ] && echo "" || echo "synthesize $strategy">>raptor_tcl.tcl
201201

202202
if [ "$post_synth_sim" == true ] || [ "$post_route_sim" == true ] || [ "$bitstream_sim" == true ]; then
203-
echo "setup_lec_sim">>raptor_tcl.tcl
203+
echo "setup_lec_sim 10 2">>raptor_tcl.tcl
204204
else
205205
echo ""
206206
fi

RTL_testcases/verilog_random_designs/design200_30_25_top/rtl/d_latch_top.v

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ module d_latch_top #(parameter WIDTH=32) (clk,rst,data_in,data_out);
77
reg enable;
88
wire [WIDTH-1:0] d_out;
99

10-
always @ (posedge clk) begin
10+
always @ (posedge clk or posedge rst) begin
1111
if (rst)
1212
enable <= 0;
1313
else

RTL_testcases/verilog_random_designs/design200_30_25_top/rtl/decoder_top.v

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ module decoder_top #(parameter WIDTH=32) (clk,rst,data_in,data_out);
99
reg enable;
1010
wire [WIDTH-1:0] d_out;
1111

12-
always @ (posedge clk) begin
12+
always @ (posedge clk or posedge rst) begin
1313
if (rst)
1414
enable <= 0;
1515
else
@@ -31,7 +31,7 @@ module decoder #(parameter WIDTH=32)(
3131
);
3232
reg [WIDTH-1:0 ] data_out_w;
3333

34-
always @ (posedge clk) begin
34+
always @ (posedge clk or posedge rst) begin
3535
if (rst)
3636
data_out <= 0;
3737
else
@@ -43,14 +43,14 @@ module decoder #(parameter WIDTH=32)(
4343

4444
always @ (data_in) begin
4545
case(data_in[2:0])
46-
3'b000: data_out_w = 32'b11111111111111111111111111111110;
47-
3'b001: data_out_w = 32'b11111111111111111111111111111101;
48-
3'b010: data_out_w = 32'b11111111111111111111111111111011;
49-
3'b011: data_out_w = 32'b11111111111111111111111111110111;
50-
3'b100: data_out_w = 32'b11111111111111111111111111101111;
51-
3'b101: data_out_w = 32'b11111111111111111111111111011111;
52-
3'b110: data_out_w = 32'b11111111111111111111111110111111;
53-
3'b111: data_out_w = 32'b11111111111111111111111101111111;
46+
3'b000: data_out_w = 32'b10111111111110111111111111111110;
47+
3'b001: data_out_w = 32'b11011111111110111111111111111101;
48+
3'b010: data_out_w = 32'b11101111111110111111111111111011;
49+
3'b011: data_out_w = 32'b11110111111110111111111111110111;
50+
3'b100: data_out_w = 32'b11111011111110111111111111101111;
51+
3'b101: data_out_w = 32'b11111101111110111111111111011111;
52+
3'b110: data_out_w = 32'b11111110111110111111111110111111;
53+
3'b111: data_out_w = 32'b11111111011110111111111101111111;
5454

5555
default: data_out_w = 32'b11111111111111111111111111111111;
5656
endcase

RTL_testcases/verilog_random_designs/design200_30_25_top/rtl/encoder.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ output reg [WIDTH-1:0] data_out
88

99
reg [WIDTH-1:0 ] data_out_wire;
1010

11-
always@(posedge clk)
11+
always@(posedge clk or posedge rst)
1212
begin
1313
if(rst)
1414
data_out<=0;
@@ -35,7 +35,7 @@ else
3535
if (data_in==32'd7000)
3636
data_out_wire=~32'd4000;
3737
else
38-
data_out_wire=0;
38+
data_out_wire=32'h6789ABCD;
3939
end
4040

4141

RTL_testcases/verilog_random_designs/design200_30_25_top/rtl/full_adder_top.v

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ module full_adder_top #(parameter WIDTH=32) (clk,rst,data_in,data_out);
99
wire cout;
1010

1111

12-
always @ (posedge clk) begin
13-
if (!rst)
12+
always @ (posedge clk or posedge rst) begin
13+
if (rst)
1414
cin <= 0;
1515
else
1616
cin <= 1;
@@ -35,7 +35,7 @@ module full_adder #(parameter WIDTH=32)(
3535
reg [15:0] a,b;
3636
reg c;
3737

38-
always @(posedge clk) begin
38+
always @(posedge clk or posedge rst) begin
3939
if (rst) begin
4040
a<=0;
4141
b<=0;

RTL_testcases/verilog_random_designs/design200_30_25_top/rtl/invertion.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ module invertion
2121
assign bitwise_xor = data_in[31:24] ^ data_in[23:16];
2222

2323
// Conditional operation on the upper 16 bits
24-
assign conditional_invert = (data_in[31:16] == data_in[15:0]) ? ~data_in[15:0] : data_in[31:16];
24+
assign conditional_invert = (data_in[31:16] == data_in[15:0]) ? data_in[15:0] : ~data_in[31:16];
2525

26-
always @(posedge clk) begin
26+
always @(posedge clk or posedge rst) begin
2727
if (rst) begin
2828
data_out <= 0; // Reset the entire output vector
2929
end else begin

RTL_testcases/verilog_random_designs/design200_30_25_top/rtl/large_adder.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ reg [WIDTH-1:0] add_out_reg_0;
1010
reg [WIDTH-1:0] add_out_reg_1;
1111
reg [WIDTH-1:0] add_out_reg_2;
1212

13-
always@(posedge clk)
13+
always@(posedge clk or posedge rst)
1414
begin
1515
if(rst)
1616
begin
@@ -25,7 +25,7 @@ add_out_reg_1<=(data_in[WIDTH-1:WIDTH-16] - data_in[WIDTH-16-1:0]);
2525
add_out_reg_2<=(data_in[WIDTH-1:WIDTH-16] + data_in[WIDTH-16-1:0]);
2626
end
2727
end
28-
assign data_out = add_out_reg_0 * add_out_reg_1 + add_out_reg_2;
28+
assign data_out = add_out_reg_0 + add_out_reg_1 * add_out_reg_2;
2929

3030
endmodule
3131

RTL_testcases/verilog_random_designs/design200_30_25_top/rtl/memory_cntrl.v

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -27,17 +27,16 @@ always@(posedge clk)
2727
rd_addr<=0;
2828
wr_en<=0;
2929
rd_en<=0;
30+
wr_data_mem<=0;
3031
end
3132
else
3233
case(state) //synopsys full_case
3334
s0:
3435
begin
35-
wr_data_mem<=0;
36-
reset_mem<=0;
3736
if (wr_addr==10'b1111111111) begin
3837
state<=s1;
39-
wr_addr<=0;
4038
wr_en<=0;
39+
reset_mem<=0;
4140
end
4241
else
4342
begin
@@ -50,10 +49,7 @@ always@(posedge clk)
5049
s1:
5150
begin
5251
rd_en<=1;
53-
if(rd_addr == wr_addr)
54-
rd_addr<=wr_addr+1;
55-
else
56-
rd_addr<=rd_addr+1;
52+
rd_addr<=rd_addr+1;
5753
state<=s1;
5854
end
5955
default: state<=s0;
@@ -95,14 +91,12 @@ output reg [DATA-1:0] rd_data_out);
9591
reg [DATA-1:0] mem [(2**ADDR)-1:0];
9692

9793
always@(posedge clk) begin
98-
if(!rst) begin
99-
if(wr_en) begin
100-
mem[wr_addr] <= wr_data_in;
94+
if(wr_en) begin
95+
mem[wr_addr] <= wr_data_in;
10196
end
10297
end
103-
end
10498

105-
always@(posedge clk) begin
99+
always@(posedge clk or posedge rst) begin
106100
if(rst) begin
107101
rd_data_out<=0; end
108102
else begin

RTL_testcases/verilog_random_designs/design200_30_25_top/rtl/mod_n_counter.v

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ module mod_n_counter #(parameter N=256, parameter WIDTH = 32)(
55
output reg [WIDTH-1:0] data_out
66
);
77

8-
always @ (posedge clk) begin
8+
always @ (posedge clk or posedge rst) begin
99
if (rst)
1010
data_out <= 0;
1111
else begin

RTL_testcases/verilog_random_designs/design200_30_25_top/rtl/paritygenerator_top.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ module paritygenerator_top #(parameter WIDTH=32) (clk,rst,data_in,data_out);
99
wire parity;
1010

1111

12-
always @ (posedge clk) begin
12+
always @ (posedge clk or posedge rst) begin
1313
if (rst)
1414
data_out <= 0;
1515
else
@@ -33,7 +33,7 @@ module paritygenerator #(parameter WIDTH=32)(
3333

3434
reg [WIDTH-1:0] data_out_reg;
3535

36-
always @ (posedge clk) begin
36+
always @ (posedge clk or posedge rst) begin
3737
if (rst)
3838
data_out <= 0;
3939
else

0 commit comments

Comments
 (0)