mirror of
https://github.com/alexforencich/verilog-ethernet.git
synced 2025-01-14 06:43:18 +08:00
MAC RX timing optimizations
This commit is contained in:
parent
27999924a0
commit
938479c246
@ -286,7 +286,7 @@ always @* begin
|
||||
last_cycle_tkeep_next = last_cycle_tkeep_reg;
|
||||
|
||||
m_axis_tdata_next = {DATA_WIDTH{1'b0}};
|
||||
m_axis_tkeep_next = {KEEP_WIDTH{1'b0}};
|
||||
m_axis_tkeep_next = {KEEP_WIDTH{1'b1}};
|
||||
m_axis_tvalid_next = 1'b0;
|
||||
m_axis_tlast_next = 1'b0;
|
||||
m_axis_tuser_next = 1'b0;
|
||||
@ -334,11 +334,13 @@ always @* begin
|
||||
update_crc = 1'b1;
|
||||
|
||||
m_axis_tdata_next = xgmii_rxd_d2;
|
||||
m_axis_tkeep_next = ~xgmii_rxc_d2;
|
||||
m_axis_tkeep_next = {KEEP_WIDTH{1'b1}};
|
||||
m_axis_tvalid_next = 1'b1;
|
||||
m_axis_tlast_next = 1'b0;
|
||||
m_axis_tuser_next = 1'b0;
|
||||
|
||||
last_cycle_tkeep_next = tkeep_mask;
|
||||
|
||||
if (control_masked) begin
|
||||
// control or error characters in packet
|
||||
m_axis_tlast_next = 1'b1;
|
||||
@ -362,7 +364,6 @@ always @* begin
|
||||
state_next = STATE_IDLE;
|
||||
end else begin
|
||||
// need extra cycle
|
||||
last_cycle_tkeep_next = tkeep_mask;
|
||||
state_next = STATE_LAST;
|
||||
end
|
||||
end else begin
|
||||
|
@ -326,7 +326,7 @@ always @* begin
|
||||
last_cycle_tkeep_next = last_cycle_tkeep_reg;
|
||||
|
||||
m_axis_tdata_next = {DATA_WIDTH{1'b0}};
|
||||
m_axis_tkeep_next = {KEEP_WIDTH{1'b0}};
|
||||
m_axis_tkeep_next = {KEEP_WIDTH{1'b1}};
|
||||
m_axis_tvalid_next = 1'b0;
|
||||
m_axis_tlast_next = 1'b0;
|
||||
m_axis_tuser_next = 1'b0;
|
||||
@ -364,11 +364,13 @@ always @* begin
|
||||
update_crc = 1'b1;
|
||||
|
||||
m_axis_tdata_next = xgmii_rxd_d1;
|
||||
m_axis_tkeep_next = ~xgmii_rxc_d1;
|
||||
m_axis_tkeep_next = {KEEP_WIDTH{1'b1}};
|
||||
m_axis_tvalid_next = 1'b1;
|
||||
m_axis_tlast_next = 1'b0;
|
||||
m_axis_tuser_next = 1'b0;
|
||||
|
||||
last_cycle_tkeep_next = {4'b0000, tkeep_mask[7:4]};
|
||||
|
||||
if (control_masked) begin
|
||||
// control or error characters in packet
|
||||
m_axis_tlast_next = 1'b1;
|
||||
@ -396,7 +398,6 @@ always @* begin
|
||||
state_next = STATE_IDLE;
|
||||
end else begin
|
||||
// need extra cycle
|
||||
last_cycle_tkeep_next = {4'b0000, tkeep_mask[7:4]};
|
||||
state_next = STATE_LAST;
|
||||
end
|
||||
end else begin
|
||||
|
Loading…
x
Reference in New Issue
Block a user