Quartus Primeライト・エディションのModelSim Starter EditionをCentOS7で動かそうとすると、いろいろとライブラリのインストールが必要になりました。
必要なライブラリのインストール
PLIのコンパイル
PLIのソースファイルをコンパイルすると、「crti.oやcrtn.oがない」というエラーが出力されます。glibc-devel.i686のインストールで解決しました。
- yum install glibc-devel.i686
vsimの実行
「libX11.so.6がない」といったエラーが多数出力されます。以下のライブラリのインストールを行うことで解決しました。
- yum install libX11-devel.i686
- yum install libXext-devel.i686
- yum install libXft-devel.i686
- yum install ncurses-devel.i686
ModelSimコマンドラインスクリプト
以下のようなスクリプトで、ModlelSimの実行を確認しました。
#!/bin/sh
RTL_DIR="../rtl"
MDELSIM_DIR="/opt/intelFPGA_lite/17.0/modelsim_ase"
GCC=${MDELSIM_DIR}/gcc-4.7.4-linux/bin/gcc
if [ ! -d ./work ]; then
${MDELSIM_DIR}/bin/vlib ./work
fi
sim_file=$1
echo "FILE=" $simfile
# compile
${MDELSIM_DIR}/bin/vlog \
$opt \
+notimingchecks \
+define+VSIM \
+define+RTL_DEBUG \
+define+USE_AXI_MONITOR \
-sv \
-y . \
-y ${RTL_DIR} \
-y ${RTL_DIR}/fm_axi_s \
-y ${RTL_DIR}/fm_axi_m \
-y ${RTL_DIR}/fm_sys \
-y ${RTL_DIR}/fm_sdr \
-y ${RTL_DIR}/fm_mic \
-y ${RTL_DIR}/fm_cmn \
-y ${RTL_DIR}/fm_hvc \
-y ${RTL_DIR}/fm_3d \
-y ${RTL_DIR}/fm_rd \
-y ${RTL_DIR}/fm_hdmi \
-y ../behavior \
-y ../bench \
+incdir+${RTL_DIR}/+ \
+incdir+${RTL_DIR}/fm_sdr+ \
+incdir+${RTL_DIR}/fm_3d+ \
+incdir+../bench+ \
+incdir+${SRC_DIR}+ \
+incdir+../rtl/include+ \
+libext+.v+ \
timescale.v \
${sim_file}
# PLI compile
${GCC} -m32 -c -g -I ${MDELSIM_DIR}/include ../bin/pli/pli_src.c
${GCC} -shared -Bsymbolic -L ${MDELSIM_DIR}/linux -lmtipli -o pli_src.so pli_src.o
# rum simulation
${MDELSIM_DIR}/bin/vsim -keepstdout top -pli pli_src.so <<EOF
run -all
EOF

