0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ModelSim工程實(shí)戰(zhàn)之自動(dòng)仿真

FPGA之家 ? 來源:FPGA之家 ? 作者:FPGA之家 ? 2022-05-17 10:09 ? 次閱讀
3 ModelSim工程實(shí)戰(zhàn)之自動(dòng)仿真說完了 ModelSim 的使用流程,接下來我們將會(huì)對(duì)每個(gè)流程進(jìn)行詳細(xì)的操作演示,一步步、手把手帶領(lǐng)大家學(xué)習(xí)使用 ModelSim 軟件。首先我們講解的 ModelSim 自動(dòng)仿真,所謂自動(dòng)仿真,其實(shí)是在 Quartus II 中調(diào)用 ModelSim 軟件來進(jìn)行仿真,在調(diào)用過程中,Quartus II 會(huì)幫我們完成 ModelSim 中的所有操作,我們只需要分析最后的仿真結(jié)果。下面我們就以上章節(jié)中我們創(chuàng)建的 Quartus II 軟件工程為例,進(jìn)行仿真。3.1 檢查 EDA 路徑首先我們打開之前的 Quartus II 工程,如37f61b82-d57a-11ec-bce3-dac502259ad0.png在該頁面中,我們?cè)诓藛螜谥姓业健綯ool】→【Options】按鈕并打開,在打開的頁面左側(cè),我們找到“EDA Tool Options”點(diǎn)擊,如圖 38114f60-d57a-11ec-bce3-dac502259ad0.png在該頁面中,如果你安裝的是 ModelSim 軟件,那么你需要在 ModelSim 路徑中進(jìn)行設(shè)置,這里我們使用的 ModelSim-Altera , 所 以 我 們 將 ModelSim-Altera 路 徑 設(shè) 置 成 了C:altera13.1modelsim_asewin32aloem。這里需要大家注意的是一定要選擇 modelsim_ase文件夾中的 win32aloem,不要選擇 modelsim_ae 文件夾中的 win32aloem。還記得我們前面說的么?ae 是收費(fèi)版本,我們是不能使用的,這里的 ase 免費(fèi)版本也是可以滿足我們的設(shè)計(jì)的。路徑設(shè)置完成以后,我們點(diǎn)擊【OK】返回我們的 Quartus II 軟件界面。3.2 選擇 EDA 工具我們?cè)?Quartus II 軟件頁面的菜單欄中,我們找到【Assignments】→【Settings】按鈕并打開,在打開的頁面左側(cè)我們找到“EDA Tool Settings”點(diǎn)擊,如圖384a6a2a-d57a-11ec-bce3-dac502259ad0.png還記得我們之前創(chuàng)建工程的時(shí)候,由于在 Quartus II 軟件中我們沒有用到仿真,所以我們將這里設(shè)置成了“None”,現(xiàn)在我們需要用到仿真工具了,我們需要在這里將 Simulation 設(shè)置成“ModelSim-Altera、Verilog HDL”。設(shè)置完成之后,我們點(diǎn)擊【OK】返回 Quartus II 軟件頁 面中。3.3 編寫仿真文件我們?cè)?Quartus II 軟件頁面的菜單欄中,我們找到【Processing】→【Start】→【Start TestBench Template Writer】按鈕并點(diǎn)擊,這時(shí) Message 窗口中會(huì)顯示,如圖3868b5ca-d57a-11ec-bce3-dac502259ad0.png我們可以從這條信息中知道,Quartus II 軟件自動(dòng)給我們生成了一個(gè) TestBench 模板,我們只需要在這個(gè)模板上稍作修改就能直接使用了。我們?cè)诠こ棠夸浵抡业?Verilog_First.vt 文件,我們可以用記事本打開進(jìn)行修改,也可以使用 Quartus II 軟件打開它進(jìn)行修改,這里我們建議還在 Quartus II 軟件中進(jìn)行修改。我們?cè)?Quartus II 軟件的菜單欄中找到【File】→【Open】按鈕并打開,在對(duì)話框中找到我們的 Verilog 文件,如圖 38a5a73c-d57a-11ec-bce3-dac502259ad0.png打開之后,如圖38b9e60c-d57a-11ec-bce3-dac502259ad0.png在該圖中我們可以看到,Quartus II 軟件已經(jīng)為我們完成了一些基本工作,包括端口部分的代碼和接口變量的聲明,我們要做的就是在這個(gè)模板里添加我們需要的測試代碼(也就是我們常說的激勵(lì))。讓讀者能夠更好的理解仿真,這里我們就簡單介紹一下 TestBench 源代碼:代碼的第 1 行,表示仿真的單位時(shí)間為 1ps,精度為 1ps。想要進(jìn)行仿真首先要規(guī)定時(shí)間單位,我們建議大家最好在 Testbench 里面統(tǒng)一規(guī)定時(shí)間單位,不要在工程代碼里定義,因?yàn)椴煌哪K如果時(shí)間單位不同可能會(huì)為仿真帶來一些問題,timescale 是 Verilog 語法中的不可綜合語法。代碼的第 2 行就是我們熟悉的部分了,其中第 5 行至第 10 行是我們的數(shù)據(jù)類型定義,這里我們可以看到 reg eachvec 是一個(gè)多余的信號(hào),沒有任何作用,我們也可以將它刪除,接下來我們?cè)賮砜吹?13 行至第 18 行,這一部分就是一個(gè)模塊調(diào)用,它將我們的 Verilog 模塊中的信號(hào)連接到我們的 TestBench 模塊中。最后,我們?cè)賮砜聪碌?20 行至第 32 行代碼,其中第 20 行至第 26 行是信號(hào)的初始化,第 28 行至第 31 行是時(shí)鐘信號(hào)的生成。這里我們主要來講講#10000,#10000 表示的是延遲 10000ps(即 10ns),具體的延遲單位,還是要看我們的 timescale 是如何設(shè)置的。至此,整個(gè)代碼都介紹完了。3.4 配置仿真功能編寫完了仿真文件,接下來我們需要在 Quartus II 軟件中配置仿真功能,我們?cè)?Quartus II軟件界面的菜單欄找到【Assigement】→【Settings】按鈕并打開,在打開的頁面中,我們找到左側(cè)的 Simulation 點(diǎn)擊,出現(xiàn)如圖38e0b0ac-d57a-11ec-bce3-dac502259ad0.png我們選中“Compile Test bench”,然后單擊后面的【Test Benches】按鈕,則出現(xiàn)如圖 2.9所示的“Test Benches”窗口(也就是圖中上面的窗口),接著我們單擊【New】按鈕,則會(huì)出現(xiàn)如圖所示的“New Test Bench Settings”窗口(也就是圖中下面的窗口)。38f4709c-d57a-11ec-bce3-dac502259ad0.png在該頁面中,我們將 TestBench 模塊名輸入到“Test bench name”和 “Top level module in test bench”的編輯欄中。接著我們?cè)凇癟est bench and simulation files”下拉列表框中添加仿真文件,如圖 所示,點(diǎn)擊【Open】即可。391656f8-d57a-11ec-bce3-dac502259ad0.png然后單擊【Add】 按鈕添加到最下面的列表中如圖392ccc8a-d57a-11ec-bce3-dac502259ad0.png完成后我們單擊【OK】按鈕,便可看到如圖 2.12 所示的“Test benches”窗口的列表中出現(xiàn)了剛才添加的仿真文件相關(guān)信息,至此,我們仿真文件添加完成了,接著我們單擊【OK】按鈕,返回我們的 Quartus II 軟件界面。39594c6a-d57a-11ec-bce3-dac502259ad0.png3.5 開始功能仿真萬事俱備只欠東風(fēng),經(jīng)過上面這么多的操作步驟,我們終于完成了所有設(shè)置,接下來我們就可以進(jìn)行仿真了,在開始仿真之前,我們這里有一點(diǎn)要需要注意,我們?cè)?Quartus II 軟件中實(shí)現(xiàn)的功能是 LED 閃爍,它的間隔時(shí)間是 1s,如果我們想要仿真這個(gè)功能,那么我們仿真軟件運(yùn)行時(shí)間最低就是 1s。這 1s 鐘在我們看來是很短很短的,不過在仿真軟件看來是很長很長的,我們的仿真軟件單位可是 ps。為了便于我們仿真,這里我們需要稍微改動(dòng)一下 Verilog 代碼,我們需要將 parameter SET_TIME_1S = 27'd50_000_000;修改為 parameter SET_TIME_1S = 27'd50; 也就是將我們?cè)瓉淼?1s 鐘修改成了 1us。修改完畢后,我們?cè)?Quartus II 軟件界面中的菜單欄中找到【Tools】→【Run Simulation Tool】→【RTL Simulation】按鈕并點(diǎn)擊,則會(huì)出現(xiàn)如圖 2.13 所示界面。396e1faa-d57a-11ec-bce3-dac502259ad0.png看到這里,也許有的朋友點(diǎn)擊【RTL Simulation】并沒有出現(xiàn) Modelsim 仿真窗口界面,而是出現(xiàn)了如圖 2.14 所示界面。3998988e-d57a-11ec-bce3-dac502259ad0.png出現(xiàn)這種錯(cuò)誤主要是因?yàn)槲覀兦懊嬖O(shè)置的 Modelsim 路徑不對(duì)造成的,如何解決這個(gè)問題呢?我們嘗試將 ModelSim-Altera 路徑設(shè)置成了 C:altera13.1modelsim_asewin32aloem。這和我們剛剛設(shè)置不同的是,我們?cè)诼窂降淖詈竺嫣砑恿艘粋€(gè)反斜杠。這時(shí),我們?cè)冱c(diǎn)擊【RTL Simulation】按鈕就會(huì)出現(xiàn) Modelsim 仿真窗口界面了,這里我們需要說明的是:有的電腦不添加反斜杠是可以運(yùn)行的,有的電腦不添加反斜杠是不能運(yùn)行。在 Modelsim 軟件啟動(dòng)過程中,我 們不需要任何操作,它會(huì)自動(dòng)完成仿真,并給出我們所需要的波形,當(dāng)波形圖出現(xiàn)之后,我們就可以查看波形來判斷設(shè)計(jì)功能是否正常了。

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 仿真
    +關(guān)注

    關(guān)注

    50

    文章

    4113

    瀏覽量

    133802
  • eda
    eda
    +關(guān)注

    關(guān)注

    71

    文章

    2775

    瀏覽量

    173518
  • ModelSim
    +關(guān)注

    關(guān)注

    5

    文章

    174

    瀏覽量

    47318
  • Quarus
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    6421

原文標(biāo)題:ModelSim 使用【二】聯(lián)合Quarus自動(dòng)仿真

文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    LuatOS開發(fā)4G模組隨機(jī)數(shù)(random)|實(shí)戰(zhàn)指南

    本次學(xué)習(xí)的實(shí)戰(zhàn)是關(guān)于4G模組LuatOS開發(fā)的隨機(jī)數(shù)示例指南,希望大家有所收獲。
    的頭像 發(fā)表于 11-30 09:51 ?262次閱讀
    LuatOS開發(fā)<b class='flag-5'>之</b>4G模組隨機(jī)數(shù)(random)|<b class='flag-5'>實(shí)戰(zhàn)</b>指南

    使用modelsim時(shí)的問題分析

    仿真對(duì)于FPGA設(shè)計(jì)來說至關(guān)重要,我們經(jīng)常使用modelsim來進(jìn)行功能仿真或者時(shí)序仿真,這樣就需要將modelsim和設(shè)計(jì)軟件(quart
    的頭像 發(fā)表于 10-24 18:15 ?328次閱讀
    使用<b class='flag-5'>modelsim</b>時(shí)的問題分析

    智駕仿真測試實(shí)戰(zhàn)自動(dòng)泊車HiL仿真測試

    汽車進(jìn)入智能化時(shí)代,自動(dòng)泊車功能已成為標(biāo)配。在研發(fā)測試階段,實(shí)車測試面臨測試場景覆蓋度不足、效率低下和成本高昂等挑戰(zhàn)。為解決這些問題,本文提出一種自動(dòng)泊車HiL仿真測試系統(tǒng)方案,可大幅度提升測試效率
    的頭像 發(fā)表于 10-10 08:05 ?2768次閱讀
    智駕<b class='flag-5'>仿真</b>測試<b class='flag-5'>實(shí)戰(zhàn)</b><b class='flag-5'>之</b><b class='flag-5'>自動(dòng)</b>泊車HiL<b class='flag-5'>仿真</b>測試

    智駕仿真測試實(shí)戰(zhàn)自動(dòng)泊車HiL仿真測試---泊入泊出#ADAS #自動(dòng)駕駛 #VTHiL

    自動(dòng)駕駛
    北匯信息POLELINK
    發(fā)布于 :2024年10月09日 17:53:39

    如何在ModelSim中添加Xilinx仿真

    今天給大俠帶來在FPGA設(shè)計(jì)應(yīng)用中如何在ModelSim中添加Xilinx仿真庫,話不多說,上貨。 注意:ModelSim一定要安裝在不帶空格的目錄下,即不要安裝在“Program
    發(fā)表于 07-03 18:16

    自動(dòng)駕駛仿真測試實(shí)踐:高精地圖仿真

    引言隨著自動(dòng)駕駛技術(shù)的快速發(fā)展,基于高精地圖的自動(dòng)駕駛功能已初步落地應(yīng)用,并持續(xù)迭代升級(jí)。在研發(fā)測試階段,多方面因素導(dǎo)致測試人員可能無法拿到控制器內(nèi)部高精地圖對(duì)應(yīng)的OpenDRIVE文件①,使得仿真
    的頭像 發(fā)表于 06-13 08:25 ?1094次閱讀
    <b class='flag-5'>自動(dòng)</b>駕駛<b class='flag-5'>仿真</b>測試實(shí)踐:高精地圖<b class='flag-5'>仿真</b>

    PLC工程示例步進(jìn)電機(jī)啟停

    電子發(fā)燒友網(wǎng)站提供《PLC工程示例步進(jìn)電機(jī)啟停.rar》資料免費(fèi)下載
    發(fā)表于 06-11 09:09 ?8次下載

    FPGA入門必備:Testbench仿真文件編寫實(shí)例詳解

    在編寫完HDL代碼后,往往需要通過仿真軟件Modelsim或者Vivadao自帶的仿真功能對(duì)HDL代碼功能進(jìn)行驗(yàn)證,此時(shí)我們需要編寫Testbench文件對(duì)HDL功能進(jìn)行測試驗(yàn)證。
    發(fā)表于 04-29 10:43 ?2194次閱讀

    ISE 關(guān)聯(lián) Modelsim 詳細(xì)操作

    在兩者之間即可,然后保存。 第三步,打開ISE,在菜單Edit-Preferences…,調(diào)出設(shè)置窗口。 設(shè)置好之后就到了最后一步,在新建工程時(shí),選擇對(duì)應(yīng)的modelsim即可,在看仿真時(shí)正常打開就行了。
    發(fā)表于 03-22 18:55

    最實(shí)用的Modelsim使用教程

    Quartus II建立工程時(shí),設(shè)置 modelsim 作為仿真軟件,或者是在Assignments——>EDA Tool Settings進(jìn)行設(shè)置。 三、 Modelsim
    發(fā)表于 03-19 16:40

    fpga仿真文件怎么寫

    首先,你需要選擇一個(gè)FPGA仿真軟件,如ModelSim、Vivado、Quartus II等。這些軟件都提供了強(qiáng)大的仿真功能,可以幫助你驗(yàn)證FPGA設(shè)計(jì)的正確性。
    的頭像 發(fā)表于 03-15 14:00 ?861次閱讀

    最實(shí)用的Modelsim使用及仿真的基本步驟

    仿真也稱為時(shí)序仿真或者布局布線后仿真,是指電路已經(jīng)映射到特定的工藝環(huán)境以后,綜合考慮電路的路徑延遲與門延遲的影響,驗(yàn)證電路能否在一定時(shí)序條件下滿足設(shè)計(jì)構(gòu)想的過程,是否存在時(shí)序違規(guī)。
    的頭像 發(fā)表于 03-06 09:58 ?9545次閱讀
    最實(shí)用的<b class='flag-5'>Modelsim</b>使用及<b class='flag-5'>仿真</b>的基本步驟

    【基于Lattice MXO2的小腳丫FPGA核心板】02ModelSim仿真

    的界面點(diǎn)擊Finish后,會(huì)自動(dòng)進(jìn)入ModelSim軟件中進(jìn)行模塊仿真。在仿真界面中,可以將模塊的輸入輸出添加到監(jiān)視界面,便于進(jìn)行模塊的程序邏輯分析。 設(shè)定
    發(fā)表于 02-29 08:25

    Modelsim報(bào)錯(cuò), -novopt 開關(guān)打開,仿真失敗

    在使用紫光同創(chuàng)PDS和Modelsim聯(lián)合仿真時(shí),modelsim報(bào)錯(cuò)不會(huì)解決,如下圖
    發(fā)表于 02-18 10:26

    仿真?

    #2024,為FPGA生態(tài)加油,為FPGA社區(qū)點(diǎn)贊#...使用IP核時(shí)如何進(jìn)行modelsim仿真
    發(fā)表于 02-02 20:22