diff --git a/libraries/technology/ip_arria10/tse_sgmii_gx/ip_arria10_tse_sgmii_gx_top.vhd b/libraries/technology/ip_arria10/tse_sgmii_gx/ip_arria10_tse_sgmii_gx_top.vhd new file mode 100644 index 0000000000000000000000000000000000000000..45a6b8d334f4bde0379a78472a6ae9b3fa28184b --- /dev/null +++ b/libraries/technology/ip_arria10/tse_sgmii_gx/ip_arria10_tse_sgmii_gx_top.vhd @@ -0,0 +1,158 @@ +------------------------------------------------------------------------------- +-- +-- Copyright (C) 2014 +-- ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/> +-- P.O.Box 2, 7990 AA Dwingeloo, The Netherlands +-- +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program. If not, see <http://www.gnu.org/licenses/>. +-- +------------------------------------------------------------------------------- + +-- Purpose: Wrapper for generated ip_arria10_tse_sgmii_gx.vhd +-- Description: +-- This wrapper avoids the need to vmap the ip_arria10_tse_sgmii_gx_altera_eth_tse_140 library +-- in the tech_tse library that instantiate this IP. +-- Remarks: +-- . Manually created from generated ip_arria10_tse_sgmii_gx.vhd. + +library IEEE; +use IEEE.std_logic_1164.all; + +library ip_arria10_tse_sgmii_gx_altera_eth_tse_140; + +entity ip_arria10_tse_sgmii_gx_top is + port ( + clk : in std_logic := '0'; -- control_port_clock_connection.clk + reset : in std_logic := '0'; -- reset_connection.reset + reg_data_out : out std_logic_vector(31 downto 0); -- control_port.readdata + reg_rd : in std_logic := '0'; -- .read + reg_data_in : in std_logic_vector(31 downto 0) := (others => '0'); -- .writedata + reg_wr : in std_logic := '0'; -- .write + reg_busy : out std_logic; -- .waitrequest + reg_addr : in std_logic_vector(7 downto 0) := (others => '0'); -- .address + ff_rx_clk : in std_logic := '0'; -- receive_clock_connection.clk + ff_tx_clk : in std_logic := '0'; -- transmit_clock_connection.clk + ff_rx_data : out std_logic_vector(31 downto 0); -- receive.data + ff_rx_eop : out std_logic; -- .endofpacket + rx_err : out std_logic_vector(5 downto 0); -- .error + ff_rx_mod : out std_logic_vector(1 downto 0); -- .empty + ff_rx_rdy : in std_logic := '0'; -- .ready + ff_rx_sop : out std_logic; -- .startofpacket + ff_rx_dval : out std_logic; -- .valid + ff_tx_data : in std_logic_vector(31 downto 0) := (others => '0'); -- transmit.data + ff_tx_eop : in std_logic := '0'; -- .endofpacket + ff_tx_err : in std_logic := '0'; -- .error + ff_tx_mod : in std_logic_vector(1 downto 0) := (others => '0'); -- .empty + ff_tx_rdy : out std_logic; -- .ready + ff_tx_sop : in std_logic := '0'; -- .startofpacket + ff_tx_wren : in std_logic := '0'; -- .valid + ff_tx_crc_fwd : in std_logic := '0'; -- mac_misc_connection.ff_tx_crc_fwd + ff_tx_septy : out std_logic; -- .ff_tx_septy + tx_ff_uflow : out std_logic; -- .tx_ff_uflow + ff_tx_a_full : out std_logic; -- .ff_tx_a_full + ff_tx_a_empty : out std_logic; -- .ff_tx_a_empty + rx_err_stat : out std_logic_vector(17 downto 0); -- .rx_err_stat + rx_frm_type : out std_logic_vector(3 downto 0); -- .rx_frm_type + ff_rx_dsav : out std_logic; -- .ff_rx_dsav + ff_rx_a_full : out std_logic; -- .ff_rx_a_full + ff_rx_a_empty : out std_logic; -- .ff_rx_a_empty + led_crs : out std_logic; -- status_led_connection.crs + led_link : out std_logic; -- .link + led_col : out std_logic; -- .col + led_an : out std_logic; -- .an + led_char_err : out std_logic; -- .char_err + led_disp_err : out std_logic; -- .disp_err + rx_recovclkout : out std_logic; -- serdes_control_connection.export + ref_clk : in std_logic := '0'; -- pcs_ref_clk_clock_connection.clk + rxp : in std_logic := '0'; -- serial_connection.rxp + txp : out std_logic; -- .txp + tx_serial_clk : in std_logic_vector(0 downto 0) := (others => '0'); -- tx_serial_clk.clk + rx_cdr_refclk : in std_logic := '0'; -- rx_cdr_refclk.clk + tx_analogreset : in std_logic_vector(0 downto 0) := (others => '0'); -- tx_analogreset.tx_analogreset + tx_digitalreset : in std_logic_vector(0 downto 0) := (others => '0'); -- tx_digitalreset.tx_digitalreset + rx_analogreset : in std_logic_vector(0 downto 0) := (others => '0'); -- rx_analogreset.rx_analogreset + rx_digitalreset : in std_logic_vector(0 downto 0) := (others => '0'); -- rx_digitalreset.rx_digitalreset + tx_cal_busy : out std_logic_vector(0 downto 0); -- tx_cal_busy.tx_cal_busy + rx_cal_busy : out std_logic_vector(0 downto 0); -- rx_cal_busy.rx_cal_busy + rx_set_locktodata : in std_logic_vector(0 downto 0) := (others => '0'); -- rx_set_locktodata.rx_set_locktodata + rx_set_locktoref : in std_logic_vector(0 downto 0) := (others => '0'); -- rx_set_locktoref.rx_set_locktoref + rx_is_lockedtoref : out std_logic_vector(0 downto 0); -- rx_is_lockedtoref.rx_is_lockedtoref + rx_is_lockedtodata : out std_logic_vector(0 downto 0) -- rx_is_lockedtodata.rx_is_lockedtodata + ); +end ip_arria10_tse_sgmii_gx_top; + +architecture str of ip_arria10_tse_sgmii_gx_top is +begin + + u_ip_arria10_tse_sgmii_gx : entity ip_arria10_tse_sgmii_gx_altera_eth_tse_140.ip_arria10_tse_sgmii_gx + port map ( + clk => clk, -- control_port_clock_connection.clk + reset => reset, -- reset_connection.reset + reg_data_out => reg_data_out, -- control_port.readdata + reg_rd => reg_rd, -- .read + reg_data_in => reg_data_in, -- .writedata + reg_wr => reg_wr, -- .write + reg_busy => reg_busy, -- .waitrequest + reg_addr => reg_addr, -- .address + ff_rx_clk => ff_rx_clk, -- receive_clock_connection.clk + ff_tx_clk => ff_tx_clk, -- transmit_clock_connection.clk + ff_rx_data => ff_rx_data, -- receive.data + ff_rx_eop => ff_rx_eop, -- .endofpacket + rx_err => rx_err, -- .error + ff_rx_mod => ff_rx_mod, -- .empty + ff_rx_rdy => ff_rx_rdy, -- .ready + ff_rx_sop => ff_rx_sop, -- .startofpacket + ff_rx_dval => ff_rx_dval, -- .valid + ff_tx_data => ff_tx_data, -- transmit.data + ff_tx_eop => ff_tx_eop, -- .endofpacket + ff_tx_err => ff_tx_err, -- .error + ff_tx_mod => ff_tx_mod, -- .empty + ff_tx_rdy => ff_tx_rdy, -- .ready + ff_tx_sop => ff_tx_sop, -- .startofpacket + ff_tx_wren => ff_tx_wren, -- .valid + ff_tx_crc_fwd => ff_tx_crc_fwd, -- mac_misc_connection.ff_tx_crc_fwd + ff_tx_septy => ff_tx_septy, -- .ff_tx_septy + tx_ff_uflow => tx_ff_uflow, -- .tx_ff_uflow + ff_tx_a_full => ff_tx_a_full, -- .ff_tx_a_full + ff_tx_a_empty => ff_tx_a_empty, -- .ff_tx_a_empty + rx_err_stat => rx_err_stat, -- .rx_err_stat + rx_frm_type => rx_frm_type, -- .rx_frm_type + ff_rx_dsav => ff_rx_dsav, -- .ff_rx_dsav + ff_rx_a_full => ff_rx_a_full, -- .ff_rx_a_full + ff_rx_a_empty => ff_rx_a_empty, -- .ff_rx_a_empty + ref_clk => ref_clk, -- pcs_ref_clk_clock_connection.clk + led_crs => led_crs, -- status_led_connection.crs + led_link => led_link, -- .link + led_col => led_col, -- .col + led_an => led_an, -- .an + led_char_err => led_char_err, -- .char_err + led_disp_err => led_disp_err, -- .disp_err + rx_recovclkout => rx_recovclkout, -- serdes_control_connection.export + rxp => rxp, -- serial_connection.rxp + txp => txp, -- .txp + tx_serial_clk => tx_serial_clk, -- tx_serial_clk.clk + rx_cdr_refclk => rx_cdr_refclk, -- rx_cdr_refclk.clk + tx_analogreset => tx_analogreset, -- tx_analogreset.tx_analogreset + tx_digitalreset => tx_digitalreset, -- tx_digitalreset.tx_digitalreset + rx_analogreset => rx_analogreset, -- rx_analogreset.rx_analogreset + rx_digitalreset => rx_digitalreset, -- rx_digitalreset.rx_digitalreset + tx_cal_busy => tx_cal_busy, -- tx_cal_busy.tx_cal_busy + rx_cal_busy => rx_cal_busy, -- rx_cal_busy.rx_cal_busy + rx_set_locktodata => rx_set_locktodata, -- rx_set_locktodata.rx_set_locktodata + rx_set_locktoref => rx_set_locktoref, -- rx_set_locktoref.rx_set_locktoref + rx_is_lockedtoref => rx_is_lockedtoref, -- rx_is_lockedtoref.rx_is_lockedtoref + rx_is_lockedtodata => rx_is_lockedtodata -- rx_is_lockedtodata.rx_is_lockedtodata + ); + +end str;