Добрый день. Никак не удаётся просимулировать тестбенч проекта, в котором присутствуют AXI BFM (Bus Functional Models). Пробовал и в рабочем проекте, и в example-ах от Altera (а именно
BFM Simulation Example: HPS AXI Bridge Interface to FPGA Core). Но везде проблема одна и та же - симуляция фэйлится.
Имеется Quartus II 14.1 (64-bit). В нём в QSys создаётся подсистема, и для неё самим QSys генерируются тестбенчи ("Generate Testbench System" с опцией "Standard, BFMs for standard Qsys interfaces). Этот тестбенч-проект удаётся скомпилировать, но сама симуляция фэйлится. Симулировать пробовал в:
- ModelSim Altera Edition 10.3c (это "родной" для этой версии Quartus II 14.1);
- ModelSim SE 10.2c;
- Aldec Active-HDL 9.1 и Aldec Active-HDL 10.1 (но в них даже не удавалось скомпилировать некоторые SystemVerilog файлы тестбенча)
ModelSim выдаёт ошибки такого рода:
Код
# ** Fatal: (vsim-160) ./../HPS_h2f_axi_sim_tb/simulation/submodules/mgc_common_axi.sv(2438): Null foreign function pointer encountered when calling 'axi_initialise_SystemVerilog'
# Time: 0 ps Iteration: 0 Process: /HPS_h2f_axi_sim_tb/hps_h2f_axi_sim_inst/hps_0/fpga_interfaces/h2f_axi_master_inst/axi/#INITIAL#2454 File: ./../HPS_h2f_axi_sim_tb/simulation/submodules/mgc_common_axi.sv
Т.е. как-будто не удаётся найти необходимые функции в файлах (и/или dll-ках).
Пробовал изменять переменную
MvcHome в файле
modelsim.ini (как это указано в
example) на:
MvcHome = $QUARTUS_ROOTDIR/../ip/altera/mentor_vip_ae/commonВ ModelSimAE ничего не изменилось, в ModelSimSE ошибка:
Код
# ** Error: (vsim-3193) Load of "D:\Program\altera\14.1\quartus/../ip/altera/mentor_vip_ae/common/questa_mvc_core/win32_gcc-4.2.1/libaxi_IN_SystemVerilog_MTI_full.dll" failed: DLL dependent library not found.
#
# ** Error: (vsim-8649) Initialization function 'axi_IN_SystemVerilog_load' not found.
#
# ** Fatal: (vsim-3748) Failed to load DPI object file "D:\Program\altera\14.1\quartus/../ip/altera/mentor_vip_ae/common/questa_mvc_core/win32_gcc-4.2.1/libaxi_IN_SystemVerilog_MTI_full.dll" while trying to resolve 'questa_mvc_sv_find'.
# FATAL ERROR while loading design
Хотя указанная dll-ка по указанному пути лежит.
Пытался это дело гуглить, и пока мысль приходит только одна - возможно не хватает нужной лицензии (IPS-AXIBFM license)? На
Альтеровском форуме с похожей проблемой говорят что:
Цитата
Mentor AXI BFMs do require a separate license. this isn't really clear from Altera's website. the part number is: IPS-AXIBFM
Цитата
Altera re-distributes four AXI BFMs from Mentor Graphics and licenses them as a suite (IPS-AXIBFM). Licensees of the Quartus II Subscription Edition product automatically receive licenses to this suite with each seat of software. Quartus II Web Edition licensees can purchase seats of this suite. As these are Mentor Graphics products, the licenses are cut from their generator and concatenated into the Altera license file. The current suite contents are:
Mentor Graphics AXI3 Inline Monitor BFM (Altera Edition)
Mentor Graphics AXI3 Master BFM (Altera Edition)
Mentor Graphics AXI3 Slave BFM (Altera Edition)
Mentor Graphics AXI4 BFM (Altera Edition)
Хотя в вышеупомянутом
экзамле как раз есть такие строки:
Цитата
To run the simulation you need to have an installed Mentor Graphics AXI Verification IP Suite license, which is included with the Altera Quartus II Subscription Edition license.
Свой Quartus 14,1 лечил стандартно (правкой байт в sys_cpt.dll), файл лицензии пробовал от Quartus 15.1, или генерил MentorKG. Это помогает вылечить сам Quartus, а вот с этой симуляцией AXI-BFM затык. Ранее симулировать эту шину ни в Altera ни в Xilinx не приходилось.
Может кто-то сталкивался с подобными проблемами? В нехватке лицензии дело или нет? Может как-то можно AXI шину пытаться симулировать и без BFM? Другие идеи?