3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-09-16 22:51:28 +00:00

Added modelsim support to autotest

This commit is contained in:
Clifford Wolf 2013-11-24 15:10:43 +01:00
parent 72b35e0b99
commit 1e6836933d
3 changed files with 37 additions and 8 deletions

21
tests/simple/hierarchy.v Normal file
View file

@ -0,0 +1,21 @@
(* top *)
module top(a, b, y1, y2, y3, y4);
input [3:0] a;
input signed [3:0] b;
output [7:0] y1, y2, y3, y4;
submod #(-3'sd1, -3'sd1) foo (a, b, y1, y2, y3, y4);
endmodule
(* gentb_skip *)
module submod(a, b, y1, y2, y3, y4);
parameter c = 0;
parameter [7:0] d = 0;
input [7:0] a, b;
output [7:0] y1, y2, y3, y4;
assign y1 = a;
assign y2 = b;
assign y3 = c;
assign y4 = d;
endmodule

View file

@ -3,6 +3,7 @@
libs=""
genvcd=false
use_isim=false
use_modelsim=false
verbose=false
keeprunning=false
backend_opts="-noattr -noexpr"
@ -14,10 +15,12 @@ if [ ! -f $toolsdir/cmp_tbdata -o $toolsdir/cmp_tbdata.c -nt $toolsdir/cmp_tbdat
( set -ex; gcc -Wall -o $toolsdir/cmp_tbdata $toolsdir/cmp_tbdata.c; ) || exit 1
fi
while getopts il:wkvrxs: opt; do
while getopts iml:wkvrxs: opt; do
case "$opt" in
i)
use_isim=true ;;
m)
use_modelsim=true ;;
l)
libs="$libs $(cd $(dirname $OPTARG); pwd)/$(basename $OPTARG)";;
w)
@ -69,7 +72,12 @@ create_ref() {
compile_and_run() {
exe="$1"; output="$2"; shift 2
if $use_isim; then
if $use_modelsim; then
altver=$( ls -v /opt/altera/ | grep '^[0-9]' | tail -n1; )
/opt/altera/$altver/modelsim_ase/bin/vlib work
/opt/altera/$altver/modelsim_ase/bin/vlog "$@"
/opt/altera/$altver/modelsim_ase/bin/vsim -c -do 'run -all; exit;' testbench | grep '#OUT#' > "$output"
elif $use_isim; then
(
set +x
files=( "$@" )