Skip to content

Commit dbfdaad

Browse files
committed
Merge commit '18aad0db798716df2b569a41a6cf55b8360eb595'
2 parents 857149c + 18aad0d commit dbfdaad

File tree

3 files changed

+12
-11
lines changed

3 files changed

+12
-11
lines changed

glip/src/backend_tcp/logic/dpi/glip_tcp_toplevel.sv

+1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
*
2323
* Author(s):
2424
* Stefan Wallentowitz <[email protected]>
25+
* Wei Song <[email protected]>
2526
*/
2627

2728
module glip_tcp_toplevel

glip/src/common/logic/scaler/verilog/glip_downscale.v

+7-7
Original file line numberDiff line numberDiff line change
@@ -41,17 +41,17 @@ module glip_downscale
4141
output out_valid,
4242
input out_ready);
4343

44-
/* 0 when passthrough and 1 when emitting upper part */
44+
/* 0 when passthrough and 1 when emitting lower part */
4545
reg scale;
46-
/* Store upper part for emitting in second transfer */
47-
reg [OUT_SIZE-1:0] upper;
46+
/* Store lower part for emitting in second transfer */
47+
reg [OUT_SIZE-1:0] lower;
4848

4949
/* Ready during passthrough */
5050
assign in_ready = !scale & out_ready;
5151
/* Valid during passthrough or second transfer */
52-
assign out_valid = scale ? 1 : in_valid;
53-
/* Passthrough in first and stored upper in second transfer */
54-
assign out_data = !scale ? in_data[OUT_SIZE-1:0] : upper;
52+
assign out_valid = scale | in_valid;
53+
/* Passthrough in first and stored lower in second transfer */
54+
assign out_data = scale ? lower : in_data[OUT_SIZE*2-1:OUT_SIZE];
5555

5656
always @(posedge clk) begin
5757
if (rst) begin
@@ -65,7 +65,7 @@ module glip_downscale
6565

6666
always @(posedge clk) begin
6767
if (in_valid & in_ready) begin
68-
upper <= in_data[OUT_SIZE*2-1:OUT_SIZE];
68+
lower <= in_data[OUT_SIZE-1:0];
6969
end
7070
end
7171

glip/src/common/logic/scaler/verilog/glip_upscale.v

+4-4
Original file line numberDiff line numberDiff line change
@@ -43,15 +43,15 @@ module glip_upscale
4343

4444
/* 0 while storing the first part and 1 when emitting */
4545
reg scale;
46-
/* Store lower part for second cycle */
47-
reg [IN_SIZE-1:0] lower;
46+
/* Store upper part for second cycle */
47+
reg [IN_SIZE-1:0] upper;
4848

4949
/* Ready to store on first part and then passthrough in second */
5050
assign in_ready = !scale | out_ready;
5151
/* Valid in second part */
5252
assign out_valid = scale & in_valid;
5353
/* Assemble data */
54-
assign out_data = { in_data, lower };
54+
assign out_data = { upper, in_data };
5555

5656
always @(posedge clk) begin
5757
if (rst) begin
@@ -65,7 +65,7 @@ module glip_upscale
6565

6666
always @(posedge clk) begin
6767
if (in_valid & in_ready) begin
68-
lower <= in_data;
68+
upper <= in_data;
6969
end
7070
end
7171
endmodule // glip_upscale

0 commit comments

Comments
 (0)