最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

[走近FPGA] 之工具篇(下)— Modelsim

2020-07-30 23:27 作者:硬木課堂  | 我要投稿

本篇文章將主要介紹Modelsim的安裝和使用。

安裝流程

在官網(wǎng)(mentor.com/company/high)可以下載到免費(fèi)版(學(xué)生版),只需填寫少量信息即可。在下載完成后,打開安裝包,開始安裝過程。前兩個(gè)界面直接點(diǎn)擊Next和Yes即可。接下來選擇安裝目錄,注意不要出現(xiàn)中文。

選擇安裝目錄

選擇圖標(biāo)文件夾,保持默認(rèn)點(diǎn)擊Next即可。

最后點(diǎn)擊Finish即可。

在等待一段時(shí)間的安裝過程后,會(huì)自動(dòng)彈出申請(qǐng)學(xué)生License的網(wǎng)站界面,填寫完帶*標(biāo)記的信息后,便會(huì)彈出License申請(qǐng)成功的通知。申請(qǐng)成功后License將會(huì)很快發(fā)送到填寫的郵箱中。

License下載完成之后,將其復(fù)制到Modelsim軟件的安裝目錄下,即可正常使用Modelsim軟件進(jìn)行仿真,進(jìn)入Modelsim時(shí)正常的界面如下:

將license移入安裝目錄

功能仿真

功能仿真(前仿)主要特點(diǎn)是只仿真邏輯功能是否正確,而時(shí)序仿真(后仿)主要關(guān)心在考慮電路中的時(shí)序信息后功能是否正確。

本文將簡要介紹做功能仿真和時(shí)序仿真的步驟。

首先打開Modelsim軟件,點(diǎn)擊左上角的File->New->Project新建一個(gè)工程,如圖所示。

新建工程

接著在下圖所示的界面中輸入工程名和工程存放的路徑(注意不要有中文)。

添加文件到工程時(shí)選擇“Add Existing File”(已經(jīng)事先編寫好模塊~一個(gè)簡單的計(jì)數(shù)器,為了對(duì)比按[N:0]定義A信號(hào),[0:N]定義A_comp信號(hào),每次時(shí)鐘上升沿+1),點(diǎn)擊browse選擇文件(可以一次選擇多個(gè)文件),然后點(diǎn)擊OK。

Verilog和Testbench文件
添加已有設(shè)計(jì)文件

之后便可以在Project一欄看到剛才添加的文件,右鍵空白區(qū)域,選擇Compile一欄下的Compile All,將剛才添加的文件全部編譯。編譯完成后每個(gè)文件右邊對(duì)應(yīng)的Status會(huì)變成綠色的對(duì)勾,如果出現(xiàn)錯(cuò)誤,則需要根據(jù)下方消息框的報(bào)錯(cuò)信息進(jìn)行代碼修改再編譯。

編譯模塊

編譯完成后,在Library一欄下找到work,可以看到編譯好的兩個(gè)模塊test和test_tb,雙擊test_tb開始仿真。

開始仿真

進(jìn)入仿真界面后,首先在左側(cè)sim欄中選中例化的模塊,在右側(cè)的Objects欄中便會(huì)出現(xiàn)信號(hào)列表,將需要添加到波形中進(jìn)行觀察的信號(hào)選中,右鍵選擇Add Wave即可。

添加需要觀察的信號(hào)

可以看到在右邊的波形窗口中已經(jīng)出現(xiàn)了剛才添加的信號(hào),最后點(diǎn)擊上方工具欄的的Run即可,時(shí)間框內(nèi)的100ps表示Run一次的仿真時(shí)間。

至此,功能仿真過程結(jié)束,可以在右邊的窗口中看到波形。

波形圖

聯(lián)合Vivado進(jìn)行時(shí)序仿真

進(jìn)行時(shí)序仿真需要考慮到FPGA實(shí)現(xiàn)時(shí)布局布線帶來的延遲,因此需要在Vivado綜合實(shí)現(xiàn)后進(jìn)行(Vivado的基本操作在上一篇文章已經(jīng)講過,所以本篇不再贅述),為了聯(lián)合Vivado和Modelsim軟件進(jìn)行時(shí)序仿真,首先需要在Vivado中進(jìn)行相應(yīng)的設(shè)置。

首先從左側(cè)工具欄中的Settings進(jìn)入設(shè)置,如下圖。

在Tool Settings下方的3rd Party Simulators中找到Modelsim,選擇安裝路徑之后點(diǎn)擊OK。

指定第三方仿真器

接著在Modelsim的安裝路徑下新建一個(gè)文件夾(vivado_lib),用于存儲(chǔ)仿真庫。

在Vivado中Tools欄下點(diǎn)擊Compile Simulation Libraries開始編譯仿真庫。

編譯仿真庫

在彈出的界面中選擇Modelsim Simulator,器件里選上Artix-7,Compiled library location選擇剛才新建的文件夾vivado_lib,Simulator executable path選擇modelsim的安裝路徑,都選擇完成后點(diǎn)擊Compile開始編譯。這個(gè)過程需要等待一段不算太短的時(shí)間,建議玩會(huì)游戲。

路徑設(shè)置

編譯完成之后再回到Simulation設(shè)置中將Compiled library location設(shè)置為剛才新建的vivado_lib文件夾即可。

設(shè)置完成后,接下來便需要添加testbench文件到工程中,首先在文件管理區(qū)點(diǎn)擊Add Sources添加文件,在彈出的窗口中選擇Add or create simulation sources。

在彈出的窗口中選擇Add Files,然后選中testbench文件,點(diǎn)擊OK添加到工程中。

添加testbench到工程中

點(diǎn)擊左側(cè)工具欄中的Run Implementation開始綜合實(shí)現(xiàn),完成后點(diǎn)擊Run Simulation然后點(diǎn)擊Run Post-Implementation Timing Simulation(實(shí)現(xiàn)后時(shí)序仿真)開始時(shí)序仿真。

開始時(shí)序仿真

Vivado將會(huì)調(diào)用Modelsim軟件,最后可以觀察到如下圖所示的波形圖。時(shí)序仿真過程已經(jīng)考慮到了實(shí)際電路中的延時(shí)信息,可以看到,信號(hào)A在時(shí)鐘上升沿后經(jīng)過了短暫的延時(shí)才發(fā)生變化。

時(shí)序仿真波形圖

仿真的重要性

這里扯一點(diǎn)題外話,雖然本文的主旨是介紹仿真工具M(jìn)odelsim的使用,但仿真的重要性往往被初學(xué)者忽視,所以想就這個(gè)話題簡單談一談。上 @其實(shí)我是老莫 老師的EDA課時(shí),老師便經(jīng)常強(qiáng)調(diào)仿真的重要性,結(jié)合老師上課講的內(nèi)容和個(gè)人實(shí)際的經(jīng)驗(yàn)來看,如果(自信地)不進(jìn)行仿真直接在FPGA板上進(jìn)行驗(yàn)證,最后都得回歸到功能仿真這一步來查錯(cuò)。一次功能仿真的時(shí)間不到一分鐘,而一個(gè)比較簡單的設(shè)計(jì)綜合實(shí)現(xiàn)生成比特流的過程也需要幾分鐘,所以在上板之前先進(jìn)行功能仿真查錯(cuò),既節(jié)約了時(shí)間,又不會(huì)因?yàn)樯习宄霈F(xiàn)一堆低級(jí)錯(cuò)誤而懊惱,何樂而不為呢?另外,在SoC設(shè)計(jì)實(shí)驗(yàn)中,如果忽視仿真過程,直接上板跑C程序,出現(xiàn)錯(cuò)誤時(shí)比較難定位是硬件問題還是軟件問題,如果先進(jìn)行仿真,就可以先把硬件上的問題解決,之后再進(jìn)行軟件調(diào)試時(shí)效率會(huì)高很多。


下期預(yù)告

本期文章介紹了進(jìn)行FPGA開發(fā)需要用到的工具M(jìn)odelsim軟件的安裝和使用,下期文章將介紹基礎(chǔ)的組合邏輯。


[走近FPGA] 之工具篇(下)— Modelsim的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
丘北县| 翁源县| 余姚市| 怀安县| 正宁县| 科技| 斗六市| 密云县| 蛟河市| 江都市| 宜兴市| 原平市| 长治县| 正宁县| 奉化市| 阿克陶县| 巴青县| 崇阳县| 德安县| 清水河县| 连山| 高要市| 宝山区| 金塔县| 许昌市| 石门县| 乡宁县| 武宣县| 罗江县| 婺源县| 丰县| 阿坝| 泊头市| 美姑县| 南华县| 林芝县| 佳木斯市| 横峰县| 湖口县| 江达县| 红安县|