Pushing the bulk of UHD-3.7.0 code.

Original-commit: ff1546f8137f7f92bb250f685561b0c34cc0e053
This commit is contained in:
Ben Hilburn
2014-02-14 12:05:07 -08:00
parent 29086f9001
commit fbbc991a7d
2194 changed files with 1489297 additions and 1084 deletions
+60
View File
@@ -0,0 +1,60 @@
//
// Copyright 2013 Ettus Research LLC
//
//
//
// Provide required handshake to Opencores XGE MAC to initiate Rx of one available packet
//
//
module xge_handshake
(
input clk,
input reset,
output reg pkt_rx_ren,
input pkt_rx_avail,
input pkt_rx_eop
);
localparam IDLE=0;
localparam RX=1;
reg state;
always @(posedge clk)
if (reset) begin
pkt_rx_ren <= 0;
state <= IDLE;
end else begin
case (state)
//
// Wait for pkt_rx_avail to be asserted, then assert pkt_rx_ren next cycle
//
IDLE: begin
if (pkt_rx_avail) begin
pkt_rx_ren <= 1;
state <= RX;
end else begin
pkt_rx_ren <= 0;
state <= IDLE;
end
end
//
// Keep pkt_rx_ren asserted until EOF received.
//
RX: begin
if (pkt_rx_eop) begin
pkt_rx_ren <= 0;
state <= IDLE;
end else begin
pkt_rx_ren <= 1;
state <= RX;
end
end
endcase // case(state)
end // else: !if(reset)
endmodule // xge_handshake