mirror of
https://github.com/fpganinja/taxi.git
synced 2025-12-09 00:48:40 -08:00
eth: Re-nest if statements for termination character handling in 10G RX logic
Signed-off-by: Alex Forencich <alex@alexforencich.com>
This commit is contained in:
@@ -437,9 +437,7 @@ always_comb begin
|
||||
stat_rx_pkt_jabber_next = frame_oversize_next;
|
||||
reset_crc = 1'b1;
|
||||
state_next = STATE_IDLE;
|
||||
end else if (term_present_reg) begin
|
||||
reset_crc = 1'b1;
|
||||
if (term_first_cycle_reg) begin
|
||||
end else if (term_first_cycle_reg) begin
|
||||
// end this cycle
|
||||
m_axis_rx_tkeep_next = 4'b1111;
|
||||
m_axis_rx_tlast_next = 1'b1;
|
||||
@@ -468,11 +466,11 @@ always_comb begin
|
||||
stat_rx_pkt_vlan_next = is_8021q_reg;
|
||||
stat_rx_err_oversize_next = frame_oversize_next;
|
||||
stat_rx_err_preamble_next = !pre_ok_reg;
|
||||
reset_crc = 1'b1;
|
||||
state_next = STATE_IDLE;
|
||||
end else begin
|
||||
end else if (term_present_reg) begin
|
||||
// need extra cycle
|
||||
state_next = STATE_LAST;
|
||||
end
|
||||
end else begin
|
||||
state_next = STATE_PAYLOAD;
|
||||
end
|
||||
|
||||
@@ -446,8 +446,7 @@ always_comb begin
|
||||
|
||||
reset_crc = 1'b1;
|
||||
state_next = STATE_IDLE;
|
||||
end if (term_present_reg) begin
|
||||
if (term_first_cycle_reg) begin
|
||||
end else if (term_first_cycle_reg) begin
|
||||
// end this cycle
|
||||
m_axis_rx_tkeep_next = {KEEP_W{1'b1}} >> 3'(KEEP_W-4-term_lane_reg);
|
||||
m_axis_rx_tlast_next = 1'b1;
|
||||
@@ -484,10 +483,9 @@ always_comb begin
|
||||
|
||||
reset_crc = 1'b1;
|
||||
state_next = STATE_IDLE;
|
||||
end else begin
|
||||
end else if (term_present_reg) begin
|
||||
// need extra cycle
|
||||
state_next = STATE_LAST;
|
||||
end
|
||||
end else begin
|
||||
state_next = STATE_PAYLOAD;
|
||||
end
|
||||
|
||||
@@ -395,9 +395,7 @@ always_comb begin
|
||||
stat_rx_pkt_jabber_next = frame_oversize_next;
|
||||
reset_crc = 1'b1;
|
||||
state_next = STATE_IDLE;
|
||||
end else if (term_present_reg) begin
|
||||
reset_crc = 1'b1;
|
||||
if (term_first_cycle_reg) begin
|
||||
end else if (term_first_cycle_reg) begin
|
||||
// end this cycle
|
||||
m_axis_rx_tkeep_next = 4'b1111;
|
||||
m_axis_rx_tlast_next = 1'b1;
|
||||
@@ -426,11 +424,11 @@ always_comb begin
|
||||
stat_rx_pkt_vlan_next = is_8021q_reg;
|
||||
stat_rx_err_oversize_next = frame_oversize_next;
|
||||
stat_rx_err_preamble_next = !pre_ok_reg;
|
||||
reset_crc = 1'b1;
|
||||
state_next = STATE_IDLE;
|
||||
end else begin
|
||||
end else if (term_present_reg) begin
|
||||
// need extra cycle
|
||||
state_next = STATE_LAST;
|
||||
end
|
||||
end else begin
|
||||
state_next = STATE_PAYLOAD;
|
||||
end
|
||||
|
||||
@@ -392,9 +392,7 @@ always_comb begin
|
||||
stat_rx_pkt_jabber_next = frame_oversize_next;
|
||||
reset_crc = 1'b1;
|
||||
state_next = STATE_IDLE;
|
||||
end else if (term_present_reg) begin
|
||||
reset_crc = 1'b1;
|
||||
if (term_first_cycle_reg) begin
|
||||
end else if (term_first_cycle_reg) begin
|
||||
// end this cycle
|
||||
m_axis_rx_tkeep_next = {KEEP_W{1'b1}} >> 3'(CTRL_W-4-term_lane_reg);
|
||||
m_axis_rx_tlast_next = 1'b1;
|
||||
@@ -427,11 +425,11 @@ always_comb begin
|
||||
stat_rx_pkt_vlan_next = is_8021q_reg;
|
||||
stat_rx_err_oversize_next = frame_oversize_next;
|
||||
stat_rx_err_preamble_next = !pre_ok_reg;
|
||||
reset_crc = 1'b1;
|
||||
state_next = STATE_IDLE;
|
||||
end else begin
|
||||
end else if (term_present_reg) begin
|
||||
// need extra cycle
|
||||
state_next = STATE_LAST;
|
||||
end
|
||||
end else begin
|
||||
state_next = STATE_PAYLOAD;
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user