xdma 2019.2 simulation in verdi

Makefile:

CUR_DIR = $(shell pwd)
PRJ_DIR = ${CUR_DIR}/..
export PRJ_DIR

note =
export note

SIM_DIR = proj_simu_${note}
export SIM_DIR

.PHONY: vcs verdi test

vcs:
    rm -rf ${SIM_DIR}; \
    mkdir ${SIM_DIR}; \
    cd ${SIM_DIR}; \
    ../vcs.sh

verdi:
    cd ${SIM_DIR}; \
    verdi -sv -nologo -autoalias -dbdir simv.daidir -ssf inter.fsdb &

test:
    cd ${PRJ_DIR} && pwd

vcs.sh:

export TOP_NAME=board
export TOP_HIER=board

echo "----------------------------------------------------------------"
echo "----------------------------------------------------------------"
echo "-- Simulator : vcs-mx 2018.09"
echo "-- top module: $TOP_NAME"
echo "----------------------------------------------------------------"
echo "----------------------------------------------------------------"

touch synopsys_sim.setup

vivado -nojournal -mode tcl -source ../vivado.tcl -tclargs vcs

vlogan -full64 -debug_access+all -sverilog -kdb -lca -work WORK +v2k +vcs+lic+wait -timescale=1ns/1ps \
    -f ${PRJ_DIR}/simulate/verdi.f ${XILINX_VIVADO}/data/verilog/src/glbl.v -error=noMPD

vcs -full64 -debug_access+all -sverilog -kdb -lca WORK.${TOP_HIER} WORK.glbl -LDFLAGS -Wl,--no-as-needed \
    -P ${VERDI_HOME}/share/PLI/VCS/LINUX64/novas.tab ${VERDI_HOME}/share/PLI/VCS/LINUX64/pli.a -l elaborate.log

./simv -l simu.log -ucli -do ../vcs.tcl

vivado.tcl:

compile_simlib -language verilog -library unisim -family virtex7 -no_ip_compile -simulator [lindex $argv 0] -directory vivado_libs
exit

verdi.f:

+incdir+${PRJ_DIR}/imports

${PRJ_DIR}/imports/pcie3_uscale_rp_top.v
${PRJ_DIR}/imports/pci_exp_usrapp_tx.v
${PRJ_DIR}/imports/pcie3_uscale_rp_core_top.v
${PRJ_DIR}/imports/pci_exp_usrapp_com.v
${PRJ_DIR}/imports/board.v
${PRJ_DIR}/imports/xilinx_pcie_uscale_rp.v
${PRJ_DIR}/imports/pci_exp_usrapp_rx.v
${PRJ_DIR}/imports/xdma_app.v
${PRJ_DIR}/imports/sys_clk_gen.v
${PRJ_DIR}/imports/pci_exp_usrapp_cfg.v
${PRJ_DIR}/imports/sys_clk_gen_ds.v
${PRJ_DIR}/imports/pci_exp_usrapp_pl.v
${PRJ_DIR}/imports/xilinx_dma_pcie_ep.sv


${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/blk_mem_gen_0/sim/blk_mem_gen_0.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/blk_mem_gen_0/simulation/blk_mem_gen_v8_4.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/blk_mem_gen_1/sim/blk_mem_gen_1.v

// ${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/xdma_0_sim_netlist.v

${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/sim/xdma_0.sv

+incdir+${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/hdl/verilog
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/hdl/xdma_v4_1_vl_rfs.sv

${XILINX_VIVADO}/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv
${XILINX_VIVADO}/data/ip/xpm/xpm_fifo/hdl/xpm_fifo.sv
${XILINX_VIVADO}/data/ip/xpm/xpm_memory/hdl/xpm_memory.sv

${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/xdma_v4_1/hdl/verilog/xdma_0_core_top.sv
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/xdma_v4_1/hdl/verilog/xdma_0_dma_bram_wrap_1024.sv
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/xdma_v4_1/hdl/verilog/xdma_0_dma_bram_wrap.sv

${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/sim/xdma_0_pcie3_ip.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_qpll_drp.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_gt_common.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_7vx.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pipe_clock.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pipe_sync.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_bram_7vx_8k.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pipe_rate.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_bram_7vx_16k.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_qpll_wrapper.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_rxeq_scan.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pipe_drp.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_tlp_tph_tbl_7vx.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_bram_7vx_rep.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_3_0_7vx.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_pipe_lane.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_bram_7vx.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_pipe_pipeline.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pipe_eq.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_init_ctrl_7vx.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_bram_7vx_rep_8k.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pipe_wrapper.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_force_adapt.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pipe_reset.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pipe_user.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_bram_7vx_req.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_bram_7vx_cpl.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_gt_top.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_pipe_misc.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_gtx_cpllpd_ovrd.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_qpll_reset.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_pcie_top.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_0/source/xdma_0_pcie3_ip_gt_wrapper.v

${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_1/sim/xdma_v4_1_4_blk_mem_64_reg_be.v
${PRJ_DIR}/xdma_0_ex.srcs/sources_1/ip/xdma_0/ip_2/sim/xdma_v4_1_4_blk_mem_64_noreg_be.v


-f ${XILINX_VIVADO}/data/secureip/pcie_3_1/pcie_3_1_cell.list.f
-f ${XILINX_VIVADO}/data/secureip/gthe3_channel/gthe3_channel_cell.list.f
-f ${XILINX_VIVADO}/data/secureip/gthe3_common/gthe3_common_cell.list.f

vcs.tcl:
 

fsdbDumpfile   "inter.fsdb"
fsdbDumpvars 0 "$env(TOP_HIER)" +mda

run 1ms

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值