diff --git a/libraries/technology/ip_arria10/tse_sgmii_gx/ip/compile_ip.tcl b/libraries/technology/ip_arria10/tse_sgmii_gx/compile_ip.tcl similarity index 99% rename from libraries/technology/ip_arria10/tse_sgmii_gx/ip/compile_ip.tcl rename to libraries/technology/ip_arria10/tse_sgmii_gx/compile_ip.tcl index 2ee80c6e4e0e3fc008249644161d40dd84e05239..62c08db3c481555704aa8f5a7e849a52ee4b0334 100644 --- a/libraries/technology/ip_arria10/tse_sgmii_gx/ip/compile_ip.tcl +++ b/libraries/technology/ip_arria10/tse_sgmii_gx/compile_ip.tcl @@ -26,7 +26,7 @@ # - hdllib.cfg: add this compile_ip.tcl to the modelsim_compile_ip_files key in the hdllib.cfg # - hdllib.cfg: the values for modelsim_search_libraries key in the hdllib.cfg follow from altera libraries vmap section in the msim_setup.tcl -set IP_DIR "$env(RADIOHDL)/libraries/technology/ip_arria10/tse_sgmii_gx/ip/generated/sim" +set IP_DIR "$env(RADIOHDL)/libraries/technology/ip_arria10/tse_sgmii_gx/generated/sim" #vlib ./work/ ;# Assume library work already exists diff --git a/libraries/technology/ip_arria10/tse_sgmii_gx/ip/generate_ip.sh b/libraries/technology/ip_arria10/tse_sgmii_gx/generate_ip.sh similarity index 100% rename from libraries/technology/ip_arria10/tse_sgmii_gx/ip/generate_ip.sh rename to libraries/technology/ip_arria10/tse_sgmii_gx/generate_ip.sh diff --git a/libraries/technology/ip_arria10/tse_sgmii_gx/hdllib.cfg b/libraries/technology/ip_arria10/tse_sgmii_gx/hdllib.cfg index 8d029f93eb0a14eb85f9756383d312dfcd205021..b856c532f219f53b6fe17804143d3f5a1979e83e 100644 --- a/libraries/technology/ip_arria10/tse_sgmii_gx/hdllib.cfg +++ b/libraries/technology/ip_arria10/tse_sgmii_gx/hdllib.cfg @@ -1,16 +1,15 @@ hdl_lib_name = ip_arria10_tse_sgmii_gx -hdl_library_clause_name = ip_arria10_tse_sgmii_gx_lib -hdl_lib_uses = ip_arria10_tse_sgmii_gx_altera_eth_tse_140 common +hdl_library_clause_name = ip_arria10_tse_sgmii_gx_altera_eth_tse_140 +hdl_lib_uses = common hdl_lib_technology = ip_arria10 build_dir_sim = $HDL_BUILD_DIR build_dir_synth = $HDL_BUILD_DIR synth_files = - ip_arria10_tse_sgmii_gx_top.vhd test_bench_files = - tb_ip_arria10_tse_sgmii_gx_top.vhd + tb_ip_arria10_tse_sgmii_gx.vhd modelsim_search_libraries = altera_ver lpm_ver sgate_ver altera_mf_ver altera_lnsim_ver twentynm_ver twentynm_hssi_ver twentynm_hip_ver diff --git a/libraries/technology/ip_arria10/tse_sgmii_gx/ip/ip_arria10_tse_sgmii_gx.qsys b/libraries/technology/ip_arria10/tse_sgmii_gx/ip_arria10_tse_sgmii_gx.qsys similarity index 100% rename from libraries/technology/ip_arria10/tse_sgmii_gx/ip/ip_arria10_tse_sgmii_gx.qsys rename to libraries/technology/ip_arria10/tse_sgmii_gx/ip_arria10_tse_sgmii_gx.qsys 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 deleted file mode 100644 index 45a6b8d334f4bde0379a78472a6ae9b3fa28184b..0000000000000000000000000000000000000000 --- a/libraries/technology/ip_arria10/tse_sgmii_gx/ip_arria10_tse_sgmii_gx_top.vhd +++ /dev/null @@ -1,158 +0,0 @@ -------------------------------------------------------------------------------- --- --- 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; diff --git a/libraries/technology/ip_arria10/tse_sgmii_gx/tb_ip_arria10_tse_sgmii_gx_top.vhd b/libraries/technology/ip_arria10/tse_sgmii_gx/tb_ip_arria10_tse_sgmii_gx.vhd similarity index 97% rename from libraries/technology/ip_arria10/tse_sgmii_gx/tb_ip_arria10_tse_sgmii_gx_top.vhd rename to libraries/technology/ip_arria10/tse_sgmii_gx/tb_ip_arria10_tse_sgmii_gx.vhd index 404ea376b8ad034dad85dc027b24a28cce11ae8b..40d45db78a3bf89ac469b008bbfabd8c00a63845 100644 --- a/libraries/technology/ip_arria10/tse_sgmii_gx/tb_ip_arria10_tse_sgmii_gx_top.vhd +++ b/libraries/technology/ip_arria10/tse_sgmii_gx/tb_ip_arria10_tse_sgmii_gx.vhd @@ -19,7 +19,7 @@ -- ------------------------------------------------------------------------------- --- Purpose: Testbench for ip_arria10_tse_sgmii_gx_top. +-- Purpose: Testbench for ip_arria10_tse_sgmii_gx. -- Description: -- The tb is self checking based on that tx_pkt_cnt=rx_pkt_cnt must be true -- at the tb_end. @@ -33,11 +33,11 @@ USE IEEE.numeric_std.ALL; USE common_lib.common_pkg.ALL; -ENTITY tb_ip_arria10_tse_sgmii_gx_top IS -END tb_ip_arria10_tse_sgmii_gx_top; +ENTITY tb_ip_arria10_tse_sgmii_gx IS +END tb_ip_arria10_tse_sgmii_gx; -ARCHITECTURE tb OF tb_ip_arria10_tse_sgmii_gx_top IS +ARCHITECTURE tb OF tb_ip_arria10_tse_sgmii_gx IS CONSTANT sys_clk_period : TIME := 10 ns; -- 100 MHz CONSTANT eth_clk_period : TIME := 8 ns; -- 125 MHz @@ -632,7 +632,7 @@ BEGIN WAIT; END PROCESS; - dut : ENTITY work.ip_arria10_tse_sgmii_gx_top + dut : ENTITY work.ip_arria10_tse_sgmii_gx -- The ip_arria10_tse_sgmii_gx needs to be regenerated if its parameters are changed. -- . ENABLE_SHIFT16 = 1 : Align packet headers to 32 bit, useful for Nios data handling -- . ENABLE_SUP_ADDR = 0 : An extra MAC addresses can e.g. be used as service MAC for tests