Skip to content
Snippets Groups Projects
Select Git revision
  • 32e0502913ed97b1ad9eabc7f98d1ad570bcff74
  • main default protected
  • convert-cookiecutter
  • expand-documentation
  • enable-security-dashboard
  • fix-clang-tidy
6 results

main.cpp

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    compile_ip.tcl 14.01 KiB
    #------------------------------------------------------------------------------
    #
    # Copyright (C) 2014
    # ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
    # JIVE (Joint Institute for VLBI in Europe) <http://www.jive.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/>.
    #
    #------------------------------------------------------------------------------
    
    # This file is based on generated file mentor/msim_setup.tcl.
    # - the values for modelsim_search_libraries key in the hdllib.cfg follow from altera libraries vmap section in the msim_setup.tcl
    # - vmap for the IP specific libraries and compile all IP source files into those libraries similar as in the msim_setup.tcl
    # - replace QSYS_SIMDIR by IP_DIR
    # - if the testbench is also generated with QSYS then only the IP_TBDIR files are needed, because these also contain the source files.
    
    set IP_DIR   "$env(RADIOHDL)/libraries/technology/ip_arria10/phy_10gbase_r/generated/sim"
    
    #vlib ./work/         ;# Assume library work already exists
    
    vmap ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141 ./work/
    
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/altera_xcvr_functions.sv"                             -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/altera_xcvr_functions.sv"                      -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/alt_xcvr_resync.sv"                                   -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/alt_xcvr_resync.sv"                            -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_pcs.sv"                                      -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_pcs_ch.sv"                                   -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_pma.sv"                                      -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_pma_ch.sv"                                   -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_xcvr_avmm.sv"                                -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_xcvr_native.sv"                              -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_pcs.sv"                               -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_pcs_ch.sv"                            -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_pma.sv"                               -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_pma_ch.sv"                            -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_xcvr_avmm.sv"                         -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_xcvr_native.sv"                       -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_10g_rx_pcs_rbc.sv"                      -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_10g_tx_pcs_rbc.sv"                      -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_8g_rx_pcs_rbc.sv"                       -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_8g_tx_pcs_rbc.sv"                       -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_common_pcs_pma_interface_rbc.sv"        -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_common_pld_pcs_interface_rbc.sv"        -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_fifo_rx_pcs_rbc.sv"                     -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_fifo_tx_pcs_rbc.sv"                     -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_gen3_rx_pcs_rbc.sv"                     -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_gen3_tx_pcs_rbc.sv"                     -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_krfec_rx_pcs_rbc.sv"                    -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_krfec_tx_pcs_rbc.sv"                    -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_pipe_gen1_2_rbc.sv"                     -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_pipe_gen3_rbc.sv"                       -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_pma_rx_dfe_rbc.sv"                      -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_pma_rx_odi_rbc.sv"                      -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_pma_rx_sd_rbc.sv"                       -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_pma_tx_buf_rbc.sv"                      -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_pma_tx_cgb_rbc.sv"                      -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_pma_tx_ser_rbc.sv"                      -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_rx_pcs_pma_interface_rbc.sv"            -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_rx_pld_pcs_interface_rbc.sv"            -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_tx_pcs_pma_interface_rbc.sv"            -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/twentynm_hssi_tx_pld_pcs_interface_rbc.sv"            -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_10g_rx_pcs_rbc.sv"               -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_10g_tx_pcs_rbc.sv"               -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_8g_rx_pcs_rbc.sv"                -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_8g_tx_pcs_rbc.sv"                -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_common_pcs_pma_interface_rbc.sv" -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_common_pld_pcs_interface_rbc.sv" -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_fifo_rx_pcs_rbc.sv"              -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_fifo_tx_pcs_rbc.sv"              -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_gen3_rx_pcs_rbc.sv"              -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_gen3_tx_pcs_rbc.sv"              -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_krfec_rx_pcs_rbc.sv"             -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_krfec_tx_pcs_rbc.sv"             -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_pipe_gen1_2_rbc.sv"              -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_pipe_gen3_rbc.sv"                -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_pma_rx_dfe_rbc.sv"               -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_pma_rx_odi_rbc.sv"               -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_pma_rx_sd_rbc.sv"                -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_pma_tx_buf_rbc.sv"               -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_pma_tx_cgb_rbc.sv"               -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_pma_tx_ser_rbc.sv"               -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_rx_pcs_pma_interface_rbc.sv"     -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_rx_pld_pcs_interface_rbc.sv"     -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_tx_pcs_pma_interface_rbc.sv"     -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/twentynm_hssi_tx_pld_pcs_interface_rbc.sv"     -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/a10_avmm_h.sv"                                        -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/altera_xcvr_native_a10.sv"                            -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/alt_xcvr_native_avmm_nf.sv"                           -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/alt_xcvr_native_avmm_csr.sv"                          -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/alt_xcvr_native_prbs_accum.sv"                        -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/alt_xcvr_native_embedded_debug.sv"                    -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/a10_avmm_h.sv"                                 -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/altera_xcvr_native_a10.sv"                     -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/alt_xcvr_native_avmm_nf.sv"                    -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/alt_xcvr_native_avmm_csr.sv"                   -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/alt_xcvr_native_prbs_accum.sv"                 -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vlog -sv "$IP_DIR/../altera_xcvr_native_a10_141/sim/mentor/alt_xcvr_native_embedded_debug.sv"             -work ip_arria10_phy_10gbase_r_altera_xcvr_native_a10_141
    vcom     "$IP_DIR/ip_arria10_phy_10gbase_r.vhd"