⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sim.sh

📁 PWM/TIMER/COUNTER VHDL IP core
💻 SH
字号:
#!/bin/bash## This script runs RTL and gate-level simulation using different simultion tools.# Right now Cadence Verilog-XL and NCSim are supported.## Author: Damjan Lampret### User definitions## Set simulation tool you are using (xl, ncsim, ncver)SIMTOOL=ncsim# Set test bench top module(s)TB_TOP="tb_tasks"# Set include directoriesINCLUDE_DIRS="../../../rtl/verilog/ ../../../bench/verilog/"# Set test bench filesBENCH_FILES="../../../bench/verilog/*.v"# Set RTL source filesRTL_FILES="../../../rtl/verilog/*.v"# Set gate-level netlist filesGATE_FILES="../syn/out/final_ptc.v"# Set libraries (standard cell etc.)LIB_FILES="/libs/Virtual_silicon/UMCL18U250D2_2.1/verilog_simulation_models/*.v"# Set parameters for simulation toolif [ $SIMTOOL == xl ]; then	PARAM="+turbo+3 -q"	for i in $INCLUDE_DIRS; do		INCDIR=$INCDIR" +incdir+$i"	doneelif [ $SIMTOOL == ncver ]; then	NCVER_PARAM=""	for i in $INCLUDE_DIRS; do		INCDIR=$INCDIR" +incdir+$i"	done	elif [ $SIMTOOL == ncsim ]; then	NCPREP_PARAM="-UPDATE +overwrite"	NCSIM_PARAM="-MESSAGES -NOCOPYRIGHT"	for i in $INCLUDE_DIRS; do		INCDIR=$INCDIR" +incdir+$i"	done	else	echo "$SIMTOOL is unsupported simulation tool."	exit 0fi## Don't change anything below unless you know what you are doing## Run simulation in sim directorycd ../sim# Run actual simulation# Cadence Verilog-XLif [ $SIMTOOL == xl ]; then	# RTL simulation	if [ "$1" == rtl ]; then		verilog $PARAM $INCDIR $BENCH_FILES $RTL_FILES		# Gate-level simulation	elif [ "$1" == gate ]; then		verilog $PARAM $INCDIR $BENCH_FILES $GATE_FILES $LIB_FILES	# Wrong parameter or no parameter	else		echo "Usage: $0 [rtl|gate]"		exit 0	fi# Cadence Ncverilogelif [ $SIMTOOL == ncver ]; then	# RTL simulation	if [ "$1" == rtl ]; then		ncverilog $NCVER_PARAM $INCDIR $BENCH_FILES $RTL_FILES		cp ncverilog.log ../log	# Gate-level simulation	elif [ "$1" == gate ]; then		ncverilog $NCVER_PARAM $INCDIR $BENCH_FILES $GATE_FILES $LIB_FILES		cp ncverilog.log ../log	# Wrong parameter or no parameter	else		echo "Usage: $0 [rtl|gate]"		exit 0	fi# Cadence Ncsimelif [ $SIMTOOL == ncsim ]; then	# RTL simulation	if [ "$1" == rtl ]; then		ncprep $NCPREP_PARAM $INCDIR $BENCH_FILES $RTL_FILES		./RUN_NC	# Gate-level simulation	elif [ "$1" == gate ]; then		ncprep $NCPREP_PARAM $INCDIR $BENCH_FILES $GATE_FILES $LIB_FILES		./RUN_NC	# Wrong parameter or no parameter	else		echo "Usage: $0 [rtl|gate]"		exit 0	fi# Unsupported simulation toolelse	echo "$SIMTOOL is unsupported simulation tool."	exit 0;fi

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -