Line 25... |
Line 25... |
use work.arp_types.all;
|
use work.arp_types.all;
|
|
|
entity IP_complete is
|
entity IP_complete is
|
generic (
|
generic (
|
CLOCK_FREQ : integer := 125000000; -- freq of data_in_clk -- needed to timout cntr
|
CLOCK_FREQ : integer := 125000000; -- freq of data_in_clk -- needed to timout cntr
|
ARP_TIMEOUT : integer := 60 -- ARP response timeout (s)
|
ARP_TIMEOUT : integer := 60; -- ARP response timeout (s)
|
|
ARP_MAX_PKT_TMO : integer := 5; -- # wrong nwk pkts received before set error
|
|
MAX_ARP_ENTRIES : integer := 255 -- max entries in the ARP store
|
);
|
);
|
Port (
|
Port (
|
-- IP Layer signals
|
-- IP Layer signals
|
ip_tx_start : in std_logic;
|
ip_tx_start : in std_logic;
|
ip_tx : in ipv4_tx_type; -- IP tx cxns
|
ip_tx : in ipv4_tx_type; -- IP tx cxns
|
Line 71... |
Line 73... |
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
|
|
COMPONENT IP_complete_nomac
|
COMPONENT IP_complete_nomac
|
generic (
|
generic (
|
CLOCK_FREQ : integer := 125000000; -- freq of data_in_clk -- needed to timout cntr
|
CLOCK_FREQ : integer := 125000000; -- freq of data_in_clk -- needed to timout cntr
|
ARP_TIMEOUT : integer := 60 -- ARP response timeout (s)
|
ARP_TIMEOUT : integer := 60; -- ARP response timeout (s)
|
|
ARP_MAX_PKT_TMO : integer := 5; -- # wrong nwk pkts received before set error
|
|
MAX_ARP_ENTRIES : integer := 255 -- max entries in the ARP store
|
);
|
);
|
Port (
|
Port (
|
-- IP Layer signals
|
-- IP Layer signals
|
ip_tx_start : in std_logic;
|
ip_tx_start : in std_logic;
|
ip_tx : in ipv4_tx_type; -- IP tx cxns
|
ip_tx : in ipv4_tx_type; -- IP tx cxns
|
Line 109... |
Line 113... |
|
|
|
|
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
-- Component Declaration for the MAC layer
|
-- Component Declaration for the MAC layer
|
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
component mac_layer
|
component mac_layer_v2_1
|
port (
|
port (
|
-- System controls
|
-- System controls
|
------------------
|
------------------
|
glbl_rst : in std_logic; -- asynchronous reset
|
glbl_rst : in std_logic; -- asynchronous reset
|
mac_reset : in std_logic; -- reset mac layer
|
mac_reset : in std_logic; -- reset mac layer
|
Line 182... |
Line 186... |
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
|
|
IP_layer : IP_complete_nomac
|
IP_layer : IP_complete_nomac
|
generic map (
|
generic map (
|
CLOCK_FREQ => CLOCK_FREQ,
|
CLOCK_FREQ => CLOCK_FREQ,
|
ARP_TIMEOUT => ARP_TIMEOUT
|
ARP_TIMEOUT => ARP_TIMEOUT,
|
|
ARP_MAX_PKT_TMO => ARP_MAX_PKT_TMO,
|
|
MAX_ARP_ENTRIES => MAX_ARP_ENTRIES
|
)
|
)
|
PORT MAP (
|
PORT MAP (
|
-- IP Layer signals
|
-- IP Layer signals
|
ip_tx_start => ip_tx_start,
|
ip_tx_start => ip_tx_start,
|
ip_tx => ip_tx,
|
ip_tx => ip_tx,
|
Line 219... |
Line 225... |
|
|
|
|
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
-- Instantiate the MAC layer
|
-- Instantiate the MAC layer
|
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
mac_block : mac_layer
|
mac_block : mac_layer_v2_1
|
Port map(
|
Port map(
|
-- System controls
|
-- System controls
|
------------------
|
------------------
|
glbl_rst => reset,
|
glbl_rst => reset,
|
mac_reset => '0',
|
mac_reset => '0',
|