mirror of
https://github.com/openhwgroup/cvw
synced 2025-02-11 06:05:49 +00:00
Use tcl variable expansion in wally.do to avoid temp variables
This commit is contained in:
parent
9a70480ef6
commit
8b1d49b5d0
@ -1,8 +1,8 @@
|
|||||||
# wally-batch.do
|
# wally-batch.do
|
||||||
# SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
|
# SPDX-License-Identifier: Apache-2.0 WITH SHL-2.1
|
||||||
#
|
#
|
||||||
# Modification by Oklahoma State University & Harvey Mudd College
|
# Modification by Oklahoma State University & Harvey Mudd College
|
||||||
# Use with Testbench
|
# Use with Testbench
|
||||||
# James Stine, 2008; David Harris 2021
|
# James Stine, 2008; David Harris 2021
|
||||||
# Go Cowboys!!!!!!
|
# Go Cowboys!!!!!!
|
||||||
#
|
#
|
||||||
@ -68,7 +68,7 @@ set FCdefineIDV_TRACE2COV ""
|
|||||||
set lockstep 0
|
set lockstep 0
|
||||||
# ok this is annoying. vlog, vopt, and vsim are very picky about how arguments are passed.
|
# ok this is annoying. vlog, vopt, and vsim are very picky about how arguments are passed.
|
||||||
# unforunately it won't allow these to be grouped as one argument per command so they are broken
|
# unforunately it won't allow these to be grouped as one argument per command so they are broken
|
||||||
# apart.
|
# apart.
|
||||||
set lockstepvoptstring ""
|
set lockstepvoptstring ""
|
||||||
set SVLib ""
|
set SVLib ""
|
||||||
set SVLibPath ""
|
set SVLibPath ""
|
||||||
@ -148,7 +148,7 @@ if {$FunctCoverageIndex >= 0} {
|
|||||||
set FCdefineIDV_TRACE2COV "+IDV_TRACE2COV=1"
|
set FCdefineIDV_TRACE2COV "+IDV_TRACE2COV=1"
|
||||||
set lst [lreplace $lst $FunctCoverageIndex $FunctCoverageIndex]
|
set lst [lreplace $lst $FunctCoverageIndex $FunctCoverageIndex]
|
||||||
}\
|
}\
|
||||||
|
|
||||||
set LockStepIndex [lsearch -exact $lst "--lockstep"]
|
set LockStepIndex [lsearch -exact $lst "--lockstep"]
|
||||||
# ugh. can't have more than 9 arguments passed to vsim. why? I'll have to remove --lockstep when running
|
# ugh. can't have more than 9 arguments passed to vsim. why? I'll have to remove --lockstep when running
|
||||||
# functional coverage and imply it.
|
# functional coverage and imply it.
|
||||||
@ -196,18 +196,10 @@ foreach x $PlusArgs {
|
|||||||
echo "Element is $x"
|
echo "Element is $x"
|
||||||
}
|
}
|
||||||
|
|
||||||
# need a better solution this is really ugly
|
|
||||||
# Questa really don't like passing $PlusArgs on the command line to vsim. It treats the whole things
|
|
||||||
# as one string rather than mutliple separate +args. Is there an automated way to pass these?
|
|
||||||
set temp0 [lindex $PlusArgs 0]
|
|
||||||
set temp1 [lindex $PlusArgs 1]
|
|
||||||
set temp2 [lindex $PlusArgs 2]
|
|
||||||
set temp3 [lindex $PlusArgs 3]
|
|
||||||
|
|
||||||
#quit
|
#quit
|
||||||
|
|
||||||
# compile source files
|
# compile source files
|
||||||
# suppress spurious warnngs about
|
# suppress spurious warnngs about
|
||||||
# "Extra checking for conflicts with always_comb done at vopt time"
|
# "Extra checking for conflicts with always_comb done at vopt time"
|
||||||
# because vsim will run vopt
|
# because vsim will run vopt
|
||||||
|
|
||||||
@ -215,11 +207,9 @@ vlog -lint -work ${WKDIR} +incdir+${CONFIG}/${CFG} +incdir+${CONFIG}/deriv/${CF
|
|||||||
|
|
||||||
# start and run simulation
|
# start and run simulation
|
||||||
# remove +acc flag for faster sim during regressions if there is no need to access internal signals
|
# remove +acc flag for faster sim during regressions if there is no need to access internal signals
|
||||||
vopt $accFlag wkdir/${CFG}_${TESTSUITE}.${TESTBENCH} -work ${WKDIR} ${ParamArgs} -o testbenchopt ${CoverageVoptArg}
|
vopt $accFlag wkdir/${CFG}_${TESTSUITE}.${TESTBENCH} -work ${WKDIR} {*}${ParamArgs} -o testbenchopt ${CoverageVoptArg}
|
||||||
|
|
||||||
#vsim -lib ${WKDIR} testbenchopt +TEST=${TESTSUITE} ${PlusArgs} -fatal 7 ${SVLib} ${SVLibPath} ${OtherFlags} +TRACE2COV_ENABLE=1 -suppress 3829 ${CoverageVsimArg}
|
vsim -lib ${WKDIR} testbenchopt +TEST=${TESTSUITE} {*}${PlusArgs} -fatal 7 ${SVLib} ${SVLibPath} ${OtherFlags} ${FCTRACE2COV} ${FCdefineIDV_TRACE2COV} -suppress 3829 ${CoverageVsimArg}
|
||||||
#vsim -lib ${WKDIR} testbenchopt +TEST=${TESTSUITE} ${PlusArgs} -fatal 7 ${SVLib} ${SVLibPath} +IDV_TRACE2COV=1 +TRACE2COV_ENABLE=1 -suppress 3829 ${CoverageVsimArg}
|
|
||||||
vsim -lib ${WKDIR} testbenchopt +TEST=${TESTSUITE} $temp0 $temp1 $temp2 $temp3 -fatal 7 ${SVLib} ${SVLibPath} ${OtherFlags} ${FCTRACE2COV} ${FCdefineIDV_TRACE2COV} -suppress 3829 ${CoverageVsimArg}
|
|
||||||
|
|
||||||
# vsim -lib wkdir/work_${1}_${2} testbenchopt -fatal 7 -suppress 3829
|
# vsim -lib wkdir/work_${1}_${2} testbenchopt -fatal 7 -suppress 3829
|
||||||
# power add generates the logging necessary for said generation.
|
# power add generates the logging necessary for said generation.
|
||||||
|
Loading…
Reference in New Issue
Block a user