entity gbe_med_fifo is
generic(
- LINKS_ACTIVE : std_logic_vector(3 downto 0) := "1111"
+ LINKS_ACTIVE : std_logic_vector(3 downto 0) := "1111";
+ SNIFFER_PORT : integer range 0 to 3 := 0
);
port(
RESET : in std_logic;
SD_PRSNT_N_IN : in std_logic_vector(3 downto 0) := (others => '1');
SD_LOS_IN : in std_logic_vector(3 downto 0) := (others => '1');
SD_TXDIS_OUT : out std_logic_vector(3 downto 0);
+ -- internal sniffer port
+ MAC_RX_DATA_OUT : out std_logic_vector(7 downto 0);
+ MAC_RX_WRITE_OUT : out std_logic;
+ MAC_RX_EOF_OUT : out std_logic;
+ MAC_RX_ERROR_OUT : out std_logic;
-- SerDes control
TX_PLOL_LOL_OUT : out std_logic;
TX_PCS_RST_IN : in std_logic;
RX_LINK_READY_OUT : out std_logic_vector(3 downto 0);
TX_LINK_READY_IN : in std_logic;
+ -- Status
PCS_AN_READY_OUT : out std_logic_vector(3 downto 0); -- for internal SCTRL
LINK_ACTIVE_OUT : out std_logic_vector(3 downto 0); -- for internal SCTRL
+ TICK_MS_IN : in std_logic;
-- Debug
STATUS_OUT : out std_logic_vector(4 * 8 - 1 downto 0);
DEBUG_OUT : out std_logic_vector(63 downto 0)
-- attribute BBOX of ddmtd_arch : architecture is "2,2";
begin
-
+
gbe_serdes: entity serdes_gbe_4ch_ds
port map(
-- CH0 --
end generate CHANNEL_GEN;
+ MAC_RX_DATA_OUT <= mac_rx_data((SNIFFER_PORT + 1) * 8 - 1 downto SNIFFER_PORT * 8);
+ MAC_RX_WRITE_OUT <= mac_rx_wr(SNIFFER_PORT);
+ MAC_RX_EOF_OUT <= mac_rx_eof(SNIFFER_PORT);
+ MAC_RX_ERROR_OUT <= mac_rx_err(SNIFFER_PORT);
+
+
THE_LED_TIMER_PROC: process( CLK_125 )
begin
if( rising_edge(CLK_125) ) then