10 USE ieee.std_logic_1164.
all;
11 USE ieee.std_logic_arith.
all;
17 constant IPBUFWIDTH: positive := 5
20 mac_clk : IN std_logic;
21 mac_rx_data : IN std_logic_vector (7 DOWNTO 0);
22 mac_rx_error : IN std_logic;
23 mac_rx_last : IN std_logic;
24 mac_rx_valid : IN std_logic;
25 mac_tx_ready : IN STD_LOGIC;
26 master_tx_data : IN std_logic_vector (8 DOWNTO 0);
27 master_tx_err : IN std_logic;
28 rarp_rx_data : IN std_logic_vector (7 DOWNTO 0);
29 rarp_rx_last : IN std_logic;
30 rarp_rx_valid : IN std_logic;
31 rst_macclk : IN std_logic;
32 mac_tx_data : OUT STD_LOGIC_VECTOR (7 DOWNTO 0);
33 mac_tx_error : OUT STD_LOGIC;
34 mac_tx_last : OUT STD_LOGIC;
35 mac_tx_valid : OUT STD_LOGIC;
36 master_rx_data : OUT std_logic_vector (8 DOWNTO 0);
37 master_tx_pause : OUT STD_LOGIC;
38 master_link_down : IN std_logic;
39 slaves_Got_IP_addr : OUT std_logic
52 SIGNAL FIFO_Full : STD_LOGIC;
53 SIGNAL FIFO_Reset : STD_LOGIC;
54 SIGNAL FIFO_WriteEn : std_logic;
55 SIGNAL Got_IP_addr : STD_LOGIC;
56 SIGNAL FIFO_data : std_logic_vector(9 DOWNTO 0);
64 FIFO_Reset <= rst_macclk or not Got_IP_addr;
65 slaves_Got_IP_addr <= Got_IP_addr;
68 U_2 :
entity ipbus_lib.udp_hub_fifo
70 BUFWIDTH => IPBUFWIDTH
74 rst_macclk => FIFO_Reset,
75 FIFO_WriteEn => FIFO_WriteEn,
76 FIFO_Data => FIFO_data,
77 FIFO_Full => FIFO_Full,
78 hub_tx_pause => master_tx_pause,
79 mac_tx_ready => mac_tx_ready,
80 mac_tx_data => mac_tx_data,
81 mac_tx_error => mac_tx_error,
82 mac_tx_last => mac_tx_last,
83 mac_tx_valid => mac_tx_valid
85 U_0 :
entity ipbus_lib.udp_hub_if
88 rst_macclk => rst_macclk,
89 mac_rx_data => mac_rx_data,
90 mac_rx_error => mac_rx_error,
91 mac_rx_last => mac_rx_last,
92 mac_rx_valid => mac_rx_valid,
93 rarp_rx_data => rarp_rx_data,
94 rarp_rx_last => rarp_rx_last,
95 rarp_rx_valid => rarp_rx_valid,
96 Got_IP_addr => Got_IP_addr,
97 FIFO_Full => FIFO_Full,
98 FIFO_data => FIFO_data,
99 FIFO_WriteEn => FIFO_WriteEn,
100 hub_rx_data => master_rx_data,
101 hub_tx_data => master_tx_data,
102 hub_tx_err => master_tx_err,
103 hub_link_down => master_link_down