ModelSim是工業(yè)界最優(yōu)秀的語言仿真器,,它提供最友好的調(diào)試環(huán)境,是作FPGA,、ASIC設(shè)計的RTL級和門級電路仿真的首選,。它支持PC和UNIX,、LINUX平臺,是單一內(nèi)核支持VHDL和Verilog混合仿真的仿真器,。它采用直接優(yōu)化的編譯技術(shù),、Tcl/Tk技術(shù)、和單一內(nèi)核仿真,,編譯仿真速度業(yè)界最快,,編譯的代碼與平臺無關(guān),,便于保護IP核,具有個性化的圖形界面和用戶接口,,為用戶加快調(diào)試提供強有力的手段,。全面支持VHDL和Verilog語言的IEEE 標(biāo)準(zhǔn),以及IEEE VITAL 1076.4-95 標(biāo)準(zhǔn),,支持C語言功能調(diào)用, C的模型,,基于SWIFT的SmartModel邏輯模型和硬件模型。
ModelSim支持RTL仿真,,門級仿真,,時序仿真:
主要特點:
*采用直接編譯結(jié)構(gòu),編譯仿真速度最快,;
*單一內(nèi)核無縫地進行VHDL和Verilog混合仿真,;
*與機器和版本無關(guān),便于數(shù)據(jù)移植和庫維護,;
*與機器無關(guān)的編譯代碼編于保護和利用IP;
*簡單易用和豐富的圖形用戶界面,,快速全面調(diào)試,;
*Tcl/Tk用戶可定制仿真器;
*完全支持VHDL/Verilog國際標(biāo)準(zhǔn),完全支持Verilog 2001,;
*支持眾多的ASIC和FPGA廠家?guī)欤?br />
*集成的Performance analyzer幫助分析性能瓶頸,,加速仿真;
*靈活的執(zhí)行模式,,Debug模式可以進行高效的調(diào)試,,效率模式大幅度提高仿真速度。
*加強的代碼覆蓋率功能Code coverage,,能報告出statement ,、branch、condition,、
* expression,、toggle、fsm等多種覆蓋率情況,,進一步提高了測試的完整性,;
*同一波形窗口可以顯示多組波形,并且能進行多種模式的波形比較(Wave Compare),;
*先進的Signal Spy功能,,可以方便地訪問VHDL 或者 VHDL 和Verilog 混合設(shè)計中的下層模塊的信號,便于設(shè)計調(diào)試,;
*支持加密IP;
*集成的 C調(diào)試器,,支持 用C 語言完成測試平臺和模塊;支持64位的OS;
ModelSim用戶界面:
ModelSim設(shè)計流程:
ModelSim coverage驗證:
ModelSim Dataflow窗口:
QuestaSim是第一個基于標(biāo)準(zhǔn)的單核驗證引擎,集成了一個HDL模擬器,,一個約束求解器,,一個判斷引擎,功能覆蓋,,以及一個通用的用戶界面,。
主要特點:
*內(nèi)建單內(nèi)核仿真器支持SystemVerilog、verilog,、VHDL,、PSL以及SystemC。
*內(nèi)建約束解釋器支持Constrained-random激勵生成,,以實現(xiàn)Testbench-Automation,;
*支持基于PSL,SystemVerilog語言斷言的功能驗證,,支持業(yè)界最著名的0-in Checkware 斷言庫功能驗證
*集成化支持功能覆蓋率檢查與分析
*高性能的RTL和Gate-level仿真速度
*支持用SystemVerilog和SystemC實現(xiàn)高層次testbench設(shè)計與調(diào)試
*高性能集成化的混合語言調(diào)試環(huán)境加速對混合驗證語言,;(SystemVerilog,SystemC,,PSL,,VHDL,Verilog)的交叉調(diào)試與分析
*基于標(biāo)準(zhǔn)的解決方案能支持所有的流程,,便于保護驗證上的投資
*提供最高性價比的功能驗證解決方案
Questa AFV提供真正的混合語言驗證
Questa AFV是以混合語言流程 (mixed language flow) 為目標(biāo)的單核心驗證解決方案,,
它同時支持SystemVerilog、VHDL,、PSL和SystemC,,使設(shè)計人員能夠選擇最合適的語言。
除此之外,,與SystemVerilog驗證能力的緊密連結(jié),,并將其用于受限隨機
(constrainedrandom)測試平臺的產(chǎn)生以及功能覆蓋率的驗證也對VHDL使用者大有好處。
QuestaSim用戶界面與ModelSim類似,,命令也完全兼容,。
QuestaSim Coverage檢查:
QuestaSim DPI Use Flow: