《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 詳細講解Xilinx+ModelSim的FPGA仿真
詳細講解Xilinx+ModelSim的FPGA仿真
摘要: 本文主要概括一下,如何針對Xilinx+ModelSim進行FPGA的仿真設計。1.xHDL仿真器常用的硬件描述語言的仿真器有很多種,例如,VCS,Ncsim,Affirima,Verilog-XL,SpeedWave,Finisim和ModelSim。
關鍵詞: FPGA ModelSim 仿真
Abstract:
Key words :

本文主要概括一下,如何針對Xilinx+ModelSim進行FPGA仿真設計。

1. xHDL仿真器

常用的硬件描述語言的仿真器有很多種,例如,VCS,Ncsim,Affirima,Verilog-XL,SpeedWave,Finisim和 ModelSim。個人認為比較流行的就是ModelSim和Ncsim,像opencores提供的源碼大部分都含有Ncsim仿真支持,或者 ModelSim仿真支持。

1.1 ModelSim簡介

ModelSim仿真器在FPGA/CPLD設計中的使用得到了廣泛的應用,這是因為Model Technology公司為各個FPGA/CPLD廠家都提供了OEM版本的ModelSim工具。ModelSim仿真原理是基于事件驅動的,它可支持Verilog和VHDL語言的的單獨仿真與混合仿真。

1.2 ModelSim版本

ModelSIm仿真工具有許多版本,首先就是他的版本號很多,這里不多介紹,因為它無非就是軟件性能,功能的升級。這里主要是要說明ModelSim PE/LE/SE之間的區別:

為了滿足不同用戶的需要,ModelSim每個版本號都可以分為PE,LE和SE等類別。其中SE功能是比較完善的,但是它有一個特點就是,在進行仿真前,要首先編譯相應的仿真庫(通過設置,也可以一老永逸),后面會專門介紹。

在進行Xilinx FPGA產品開發時,我們有時會遇到ModelSim XE版本,這是ModelSim的Xilinx OEM版本,里面集成了Xilinx的仿真庫。同樣道理也適用于Altera。

2. 仿真庫的生成

結合自己的實際經驗,本文以Verilog + ModelSim SE + Xilinx ISE為例來說明仿真庫的生成。

2.1 仿真庫的命名

在ModelSim中編譯器件的仿真庫時,使用的仿真庫的名稱可以隨意定義,只要滿足操作系統的命明規則就行。但是在實際操作中,則不然。

當我們使用Xilinx ISE + ModelSim進行仿真時,Xilinx ISE會產生一些對ModelSim進行控制的文件,而在這些文件中,包含仿真庫的映射機制,因此為了兼容性,這里的仿真庫的命名就是固定的了,而不是任意定義。他們分別是Unisim_ver,Simprim_ver,Xilinxcorelib_ver。

2.2 仿真庫文件的說明

上面提到了ModelSim仿真所需要的3個基本的庫,這里主要介紹一下他們的作用。

Unisim_ver:如果要做綜合后的仿真,還要編譯這個庫。即UNISIM,Library of Unified Component simulation models,這個庫用來做功能仿真。這個庫包含了Xilinx的所有的標準元件,可以被絕大多數的綜合工具推論。UNISIM庫被分為VHDL和Verilog兩種。以Verilog為例:Verilog UNISIM庫文件中每一個元件使用一個獨立的文件。根據器件的不同,這個庫分為兩個目錄,對于FPGA器件家族,源文件位置在$Xilinx\Verilog\src\unisims目錄下,對于CPLD家族,源文件位置在$Xilinx\Verilog\src\uni9000目錄下。

Simprim_ver:這個庫用于布局布線后的仿真。對于Verilog來說,這個庫位于$Xilinx\Verilog\src\simprimes,對于VHDL來說,這個庫位于$Xilinx\VHDL\src\simprimes。

Xilinxcorelib_ver:這個庫僅僅用來做功能仿真。 但其和Unisim_ver不同,如果設計中調用了CoreGen產生的核,則需要編譯這個庫。Core Generator HDL Library models, 它包含了適用Core Generator產生的各種IP核的仿真模型。Xilinx的IP核都針對不同的器件結構作了很好的優化,但是對于使用者來說,大部分只能夠做為黑合來 處理。對于Verilog來說,其對應的源文件位置所在的位置是$Xilinx\Verilog\src\xilinxcorelib,對VHDL來說, 其對應的源文件所在的位置是$Xilinx\VHDL\src\xilinxcorelib。

2.3 仿真庫的建立

本節將以Verilog語言中時序仿真庫simprimes為例來說明,為ModelSim建立仿真庫。

第一步:將ModelSim根目錄下的配置文件Modelsim.ini屬性由只讀改為可讀寫。這樣做的目的就是為了讓軟件可以記錄仿真庫建立的路徑以及 映射關系。以后每次啟動Modelsim時,軟件會根據ModelSim.ini中的配置尋找仿真庫,并且形成映射關系。

第二步:在這一步,有2種方法可以作。

(1) 在modelsim環境下,新建工程,工程的路徑與你想把庫存儲的路徑一致。這里Project Name: Xilinx_lib;

Project Location: D:/My_Work/ModelSim_Simulation/Xilinx—即仿真庫保存的路徑。如下圖所示:

仿真1

(2): 在主窗口中選擇[File] / [Change Directory]命令,將工作目錄改到我們想要保存仿真庫的目錄下,即D:/My_Work/ModelSim_Simulation/Xilinx。

以上兩個方法均可,最終的結果都是一樣的。

第三步:新建庫,庫名起作simprim_ver。我們首先就是要建的就是這個庫。

即在主窗口選擇[File] / [New] / [Library]命令,然后根據下圖設置[Create]選項,[Library Name]選項,以及Libray Physical Name]選項(軟件自動生成)。如下圖所示:

仿真2

這一操作實際上相當于在ModelSim主窗口的腳本區域輸入命令

vlib simprimes_ver

vmap simprimes_ver simprimes_ver

第四步:這一步有兩種方法實現,這兩種方式是等效的

(1): 在modelsim的命令欄上,打下如下命令:

vlog -work simprim_ver $xilinx/verilog/src/simprims/*.v

其中的$xilinx是Xilinx ISE的安裝路徑,你把這個改成你的就行了。編譯完之后,你會發現你的工程文件夾下出現了一個simprim文件夾,里面又有很多個文件夾。這些就是我們要的庫了。

(2): 在主窗口選擇[Compile] / [Compile]命令,彈出[Compile Source Files]窗口,然后選擇$xilinx/verilog/src/simprims/目錄下的所有*.v文件,點擊Compile按鈕執行編譯。

第五步:按照第三步中的任意一種方式編譯其它兩個庫,對應的命令行是:

vlog -work unisim_ver $xilinx /verilog/src/unisims/*.v

vlog -work xilinxcorelib_ver $xilinx /verilog/src/XilinxCoreLib/*.v

第六步:庫文件編譯好了以后,為了方便以后使用,可以修改ModelSim.ini配置文件,打開配置文件之后,可添加對Xilinx仿真庫的映射。經過修改后,Xilinx ISE+ ModelSim進行各個階段的仿真就不會出現任何的錯誤了。PS:有的人反映,在仿真過程中,有時還需要指定庫的路徑,其原因就是ModelSim.ini文件沒有配置正確。

如果還需要其它的仿真庫支持,例如abel_ver, cpld_ver,可按照上述的1~5步完成這些仿真庫的添加。

完成上面的步驟后,如果重新打開ModelSim,發現下面的庫文件的話,就說明,你的仿真環境建立好了,接下來就可以做你該做的事情了。

仿真3

3. ModelSim常用命令

在作FPGA開發時,由于需要屢次的修改源文件進行調試,因此,每次仿真都不可避免的要進行編譯。這道程序比較麻煩,ModelSim提供了一個捷徑,即我們只需要編寫一個*.do文件,然后再ModelSim命令行里鍵入do *.do就可以替代這一麻煩過程。

下面以Giga Eth MAC開發仿真為例,說明一下*.do的語法結構,如下圖所示:

仿真4

(1) vlib work >> 由于vlib<庫名>,表示創建一個庫,因此vlib work表示創建一個work庫,這里的work是庫的名稱。

(2) vmap work work >>vmap表示映射庫,前一個work表示以創建的庫的名稱,后一個work表示當前ModelSim工作目錄下的文件夾,即將一個名為work的庫映射到當前目下的work文件夾。

(3) vlog -work work C:/Xilinx91i/verilog/src/glbl.v >> vlog表示編譯源代碼,”-work”表示其后面跟著的參數表示編譯完的源文件要存放的位置,最后的參數表示源文件的位置,即該語法表示,將文件 C:/Xilinx91i/verilog/src/glbl.v編譯,得到的編譯后的文件,存放在當前工作目錄下的work目錄下。

最終的仿真結果如下圖所示:

仿真5

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美交受高潮1| 国产亚洲福利一区| 久久爱www久久做| 亚洲天堂av电影| 一本久久a久久精品亚洲| 亚洲激情中文1区| 亚洲国产精品久久久久婷婷884| 亚洲欧美精品在线| 亚洲免费一在线| 亚洲——在线| 亚洲资源在线观看| 亚洲午夜免费视频| 亚洲一区欧美激情| 亚洲综合欧美日韩| 午夜精品久久久| 西西人体一区二区| 欧美一区二区三区在线看 | 亚洲伊人观看| 亚洲欧美久久久| 午夜精品久久久久久久99樱桃 | 小黄鸭精品aⅴ导航网站入口| 亚洲欧美文学| 欧美在线视频观看免费网站| 久久精品国产v日韩v亚洲| 亚洲高清免费| 日韩视频久久| 亚洲一区二区视频| 欧美在线国产| 久久综合成人精品亚洲另类欧美| 麻豆av一区二区三区久久| 欧美大片va欧美在线播放| 欧美激情第三页| 欧美天天在线| 国产精品伊人日日| 国内外成人免费视频| 亚洲激情电影中文字幕| 日韩亚洲视频在线| 亚洲女同在线| 亚洲国产精品第一区二区| 91久久综合亚洲鲁鲁五月天| 一本久久青青| 欧美亚洲综合在线| 久久一区二区视频| 欧美另类videos死尸| 国产精品国产三级国产普通话蜜臀| 国产精品视频| 亚洲大片一区二区三区| 亚洲日本va午夜在线电影| 99在线精品观看| 欧美一级二区| 亚洲人成人一区二区三区| 亚洲一区二区免费看| 久久久久国色av免费看影院 | 欧美电影免费观看高清完整版| 欧美日韩一区在线观看| 国产三级欧美三级日产三级99| 在线成人av网站| 正在播放日韩| 亚洲黄色毛片| 午夜免费在线观看精品视频| 久久综合色88| 国产精品久久久久久久久免费桃花| 好看的av在线不卡观看| 亚洲裸体视频| 久久精品国内一区二区三区| 亚洲视频一区二区在线观看| 久久女同互慰一区二区三区| 欧美日韩情趣电影| 国模套图日韩精品一区二区| 99视频一区二区三区| 久久精品99国产精品酒店日本| 亚洲一区二区精品在线观看| 蜜臀久久99精品久久久久久9 | 国产精品天天摸av网| 亚洲国内高清视频| 午夜精品久久久久久久99樱桃| 日韩一级成人av| 久久精品综合网| 国产精品国产亚洲精品看不卡15| 黄色成人91| 午夜久久黄色| 亚洲一区一卡| 欧美精品偷拍| 国产专区一区| 亚洲欧美偷拍卡通变态| 一区二区三区免费在线观看| 久久综合亚洲社区| 国产日韩一区欧美| 亚洲一区二区三区精品在线 | 亚洲性线免费观看视频成熟| 美女啪啪无遮挡免费久久网站| 国产伦一区二区三区色一情| 一区二区三区视频在线| 日韩午夜免费| 女女同性精品视频| 狠狠色狠狠色综合日日五 | 欧美一区=区| 亚洲欧美成人一区二区在线电影 | 狠狠色狠狠色综合日日五| 亚洲欧美日韩综合国产aⅴ| 亚洲午夜精品17c| 欧美黑人在线观看| 在线日本成人| 亚洲国产专区| 久久夜色精品| 国产一区二区三区久久精品| 亚洲一区视频在线观看视频| 亚洲在线观看视频网站| 欧美日韩在线高清| 日韩视频在线观看免费| 99精品国产福利在线观看免费| 欧美成人精品不卡视频在线观看| 国产一区日韩二区欧美三区| 欧美亚洲免费电影| 欧美亚洲午夜视频在线观看| 国产精品毛片一区二区三区| 亚洲天堂偷拍| 亚洲女人小视频在线观看| 欧美色一级片| 夜夜嗨av一区二区三区四区 | 99精品国产在热久久婷婷| 99精品视频网| 欧美日韩日本视频| 日韩午夜电影在线观看| 中文精品在线| 欧美视频一区在线观看| 一本色道久久综合亚洲精品小说| 亚洲五月六月| 国产精品人成在线观看免费| 亚洲综合欧美| 久久精品亚洲| 精品动漫3d一区二区三区| 亚洲高清视频的网址| 美日韩精品免费观看视频| 亚洲福利视频网站| 日韩一二三区视频| 欧美视频精品在线观看| 亚洲特黄一级片| 欧美一区91| 国语自产精品视频在线看抢先版结局| 亚洲国产成人精品视频| 欧美成人午夜激情| 日韩午夜激情av| 羞羞色国产精品| 精品9999| 一区二区三区精品在线| 国产精品黄页免费高清在线观看| 亚洲一二三区在线观看| 久久精品99国产精品| 韩日在线一区| 9色porny自拍视频一区二区| 国产精品h在线观看| 性欧美大战久久久久久久久| 免费久久99精品国产| 亚洲免费观看在线观看| 欧美一区二区性| 在线观看日韩av先锋影音电影院| 一区二区三区精密机械公司| 国产精品欧美日韩一区二区| 久久大逼视频| 欧美日本韩国一区| 亚洲一区久久久| 欧美va亚洲va国产综合| 中文久久精品| 久久性天堂网| 99热在这里有精品免费| 久久久久久亚洲综合影院红桃 | 99re热这里只有精品视频| 午夜在线视频一区二区区别| 一区二区三区我不卡| 一区二区三区高清视频在线观看| 国产精品一区二区三区免费观看| 亚洲高清自拍| 欧美性理论片在线观看片免费| 欧美在线看片a免费观看| 欧美日韩成人综合在线一区二区 | 99re在线精品| 国产婷婷成人久久av免费高清| 日韩一区二区高清| 国产美女精品一区二区三区| 亚洲美女淫视频| 国产日韩欧美麻豆| 日韩亚洲欧美精品| 国产亚洲精品bv在线观看| 一本一道久久综合狠狠老精东影业| 国产欧美日韩不卡| 99re热精品| 国内久久精品| 亚洲一区制服诱惑| 亚洲成人资源| 久久精品首页| 亚洲视频在线二区| 欧美激情一区二区三区 | 亚洲电影欧美电影有声小说| 欧美偷拍一区二区| 亚洲欧洲日本mm| 国产婷婷97碰碰久久人人蜜臀| 亚洲午夜一二三区视频| 亚洲国产精品久久| 久久精品国产2020观看福利|