#! /bin/tcsh -f
############################################################
## Copyright: 2011 Integrated Sytems Laboratory, ETH Zurich
## http://www.iis.ee.ethz.ch/~sha3
############################################################
# v0.2 - - Wed Oct 5 10:26:26 CEST 2011
# - added a commandline argument to set the out directory
# v0.1 - - Tue Sep 27 12:55:33 CEST 2011
# - Copy from shabziger/modelsim/compile_gate.csh
set VER=10.0b
set LIB=gate
set ALG=shabziger_chip
set PWD=`pwd`
set DIR=`dirname $PWD`
set ALG=`basename $DIR`
set LOG=${ALG}_tb_compile.log
if ($1 != "") then
set DIR="$1"
if (! -e $DIR) then
echo "ERROR: can not access [$1], exiting"
exit
endif
else
set DIR="../encounter/out"
endif
set NETLIST="$DIR/${ALG}.v"
echo "Compiling $NETLIST "
if (-e $LIB) then
echo "Deleting old library [$LIB]"
rm -rf $LIB
endif
vlib-${VER} $LIB
echo -n "** Compilation of ${ALG} from: " > ${LOG}
date >> ${LOG}
vlog-${VER} -work ${LIB} ${NETLIST} >> ${LOG}
vcom-${VER} -work ${LIB} ../sourcecode/simulstuff.vhd >> ${LOG}
vcom-${VER} -work ${LIB} ../sourcecode/${ALG}_tb.vhd >> ${LOG}
echo "- Reporting Warnings:"
grep -i "** Warn" ${LOG} | nl
echo "- Reporting Errors:"
grep -i "** Err" ${LOG} | grep -v "Compiler exiting" | nl
echo "* Done"
echo
#echo vsim-$VER -t 1ps -lib $LIB
echo "vsim-$VER -c -t 1ps -lib $LIB \\\
-voptargs="\""+acc=mnp"\"" \\\
-L uk65lscllmvbbr_vlog \\\
-L uk65lscllmvbbh_vlog \\\
-L uk65lscllmvbbl_vlog \\\
-sdftyp DUT=${DIR}/${ALG}.sdf.gz +sdf_verbose \\\
-v2k_int_delays +no_glitch_msg \\\
-do "\""run -all; quit"\"" \\\
${ALG}_tb | tee ../simvectors/${ALG}_sim_gate.rpt "
echo