Line 5... |
Line 5... |
-- File : atlys_eth_top.vhd
|
-- File : atlys_eth_top.vhd
|
-- Author : Wojciech M. Zabolotny <wzab@ise.pw.edu.pl>
|
-- Author : Wojciech M. Zabolotny <wzab@ise.pw.edu.pl>
|
-- License : BSD License
|
-- License : BSD License
|
-- Company :
|
-- Company :
|
-- Created : 2010-08-03
|
-- Created : 2010-08-03
|
-- Last update: 2014-10-20
|
-- Last update: 2014-11-15
|
-- Platform :
|
-- Platform :
|
-- Standard : VHDL
|
-- Standard : VHDL
|
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
-- Description:
|
-- Description:
|
-- This file implements the top entity, integrating all component
|
-- This file implements the top entity, integrating all component
|
Line 181... |
Line 181... |
cmd_arg : out std_logic_vector(31 downto 0);
|
cmd_arg : out std_logic_vector(31 downto 0);
|
cmd_run : out std_logic;
|
cmd_run : out std_logic;
|
cmd_retr_s : out std_logic;
|
cmd_retr_s : out std_logic;
|
cmd_ack : in std_logic;
|
cmd_ack : in std_logic;
|
cmd_response_in : in std_logic_vector(8*12-1 downto 0);
|
cmd_response_in : in std_logic_vector(8*12-1 downto 0);
|
|
retr_count : out std_logic_vector(31 downto 0);
|
transmit_data : in std_logic;
|
transmit_data : in std_logic;
|
transm_delay : out unsigned(31 downto 0);
|
transm_delay : out unsigned(31 downto 0);
|
dbg : out std_logic_vector(3 downto 0);
|
dbg : out std_logic_vector(3 downto 0);
|
clk : in std_logic;
|
clk : in std_logic;
|
rst_n : in std_logic);
|
rst_n : in std_logic);
|
Line 197... |
Line 198... |
cmd_arg : in std_logic_vector(31 downto 0);
|
cmd_arg : in std_logic_vector(31 downto 0);
|
cmd_run : in std_logic;
|
cmd_run : in std_logic;
|
cmd_ack : out std_logic;
|
cmd_ack : out std_logic;
|
cmd_response : out std_logic_vector(8*12-1 downto 0);
|
cmd_response : out std_logic_vector(8*12-1 downto 0);
|
clk : in std_logic;
|
clk : in std_logic;
|
rst_p : in std_logic);
|
rst_p : in std_logic;
|
|
retr_count : in std_logic_vector(31 downto 0)
|
|
);
|
end component cmd_proc;
|
end component cmd_proc;
|
|
|
component eth_sender is
|
component eth_sender is
|
port (
|
port (
|
peer_mac : in std_logic_vector(47 downto 0);
|
peer_mac : in std_logic_vector(47 downto 0);
|
Line 353... |
Line 356... |
signal cmd_ack : std_logic := '0';
|
signal cmd_ack : std_logic := '0';
|
signal cmd_code : std_logic_vector(15 downto 0) := (others => '0');
|
signal cmd_code : std_logic_vector(15 downto 0) := (others => '0');
|
signal cmd_seq : std_logic_vector(15 downto 0) := (others => '0');
|
signal cmd_seq : std_logic_vector(15 downto 0) := (others => '0');
|
signal cmd_arg : std_logic_vector(31 downto 0) := (others => '0');
|
signal cmd_arg : std_logic_vector(31 downto 0) := (others => '0');
|
|
|
|
signal retr_count : std_logic_vector(31 downto 0);
|
|
|
begin -- beh
|
begin -- beh
|
|
|
-- Allow selection of MAC with the DIP switch to allow testing
|
-- Allow selection of MAC with the DIP switch to allow testing
|
-- with multiple boards!
|
-- with multiple boards!
|
Line 429... |
Line 433... |
cmd_arg => cmd_arg,
|
cmd_arg => cmd_arg,
|
cmd_run => cmd_run,
|
cmd_run => cmd_run,
|
cmd_retr_s => cmd_retr_s,
|
cmd_retr_s => cmd_retr_s,
|
cmd_ack => cmd_ack,
|
cmd_ack => cmd_ack,
|
cmd_response_in => cmd_response_in,
|
cmd_response_in => cmd_response_in,
|
|
retr_count => retr_count,
|
transmit_data => transmit_data,
|
transmit_data => transmit_data,
|
transm_delay => transm_delay,
|
transm_delay => transm_delay,
|
dbg => dbg,
|
dbg => dbg,
|
clk => clk_user,
|
clk => clk_user,
|
rst_n => rst_n);
|
rst_n => rst_n);
|
Line 444... |
Line 449... |
cmd_arg => cmd_arg,
|
cmd_arg => cmd_arg,
|
cmd_run => cmd_run,
|
cmd_run => cmd_run,
|
cmd_ack => cmd_ack,
|
cmd_ack => cmd_ack,
|
cmd_response => cmd_response_in,
|
cmd_response => cmd_response_in,
|
clk => clk_user,
|
clk => clk_user,
|
rst_p => rst_p);
|
rst_p => rst_p,
|
|
retr_count => retr_count
|
|
);
|
|
|
eth_sender_1 : eth_sender
|
eth_sender_1 : eth_sender
|
port map (
|
port map (
|
peer_mac => peer_mac,
|
peer_mac => peer_mac,
|
my_mac => my_mac,
|
my_mac => my_mac,
|