歡迎您光臨本站 登入註冊首頁

ModelSim SE模擬Altera庫的一些問題

admin @ 2014-03-26 , reply:0

概述

1.modelsim怎麼調用altera的庫模擬啊?(megafunctions)以前有個帖子說把quartus安裝目錄下的sim文件夾裡面的文件編譯進modelsim裡面就可以了,可是sim文件夾裡……

1. modelsim怎麼調用altera的庫模擬啊?(megafunctions)
以前有個帖子說把quartus安裝目錄下的sim文件夾裡面的文件編譯進modelsim裡面就可以了,可是sim文件夾裡面我要的那個函數不是.v文件啊,還有他裡面的一些.vhd文件怎麼編譯錯誤啊?

是eda/sim_lib里,編譯錯誤,我想是你編譯的順序不對

用EDA/SIM_LIB中文件直接放到PROJECT中,你需要看看它的告錯信息。一般是缺庫。你可以按提示缺的庫,在FILE/NEW/LIBRARY菜單里創建一個映射到WORK的庫。這樣一般就好了。

如何在modelsim里如altera的庫中做后模擬啊,急死了
我用synplify綜合后,用modelsim做后模擬,我在modelsim裡面加入了C:quartusedasim_libmodelsimvhdl裡面的兩個庫,但是編譯的時候還是提示我找不到library apex20k。還要加什麼庫啊??? 鬱悶死了

vlib apex20k
vmap apex20k apex20k
vcom -work apex20k c:/quartus/eda/sim_lib/apex20k_atoms.vhd
vcom -work apex20k c:/quartus/eda/sim_lib/apex20k_components.vhd

謝謝i8086,我現在知道怎麼加入altera的庫了,但是錯誤依然在,不知道是什麼原因,modelsim裡面的提示如下:
vcom -reportprogress 300 -work work {D:/caiyang/rev_1/caiyang_1.vhd}
# Model Technology ModelSim SE vcom 5.7e Compiler 2003.07 Jul 8 2003
# -- Loading package standard
# ** Error: (vcom-19) Failed to access library 'acex2k' at "acex2k".
# No such file or directory. (errno = ENOENT)
# ** Error: D:/caiyang/rev_1/caiyang_1.vhd(7): Library acex2k not found.
# -- Loading package std_logic_1164
# -- Loading package numeric_std
# -- Loading package components
# ** Error: D:/caiyang/rev_1/caiyang_1.vhd(12): Unknown identifier: acex2k
# ** Error: D:/caiyang/rev_1/caiyang_1.vhd(14): VHDL Compiler exiting
library ieee, acex2k;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
library synplify;
use synplify.components.all;
use acex2k.acex2k_components.all;
~~~~~~~~~~~~~~~就是提示找不到這個東西,這是用synplify綜合后的文件的前面幾行代碼。

除了把altera的apex20k庫加上外,還要把acex2k對應的庫加上,跟加apex20k庫差不多。不過我不知道acex2k對應的vhd文件。

就是不知道是哪個文件啊。我選用的是cyclone的器件,好像synplify裡面是用acex2k來表示的。而且我把quartus裡面cyclone_atoms.vhd和cyclone_components.vhd也加了的,都不起作用。難道應該加synplify裡面的庫文件? 我只在modelsim裡面加了synplify的synplify.vhd這個文件,是不是不夠?

換成acex1k系列的都可以做后模擬

2. 請哪位好心人給詳細講解一下如何在ModelSim中添加Quartus的庫啊
到處都是討論ModelSim和Xilinx的,怎麼沒人給講解一下Quartus庫文件使用的問題啊,難道沒人用Altera的嗎?哪位好心人給詳細講解一下如何在ModelSim中添加Quartus的庫吧,我都鬱悶了好幾天了啊

altera公司的模擬庫都在quartus安裝目錄EDASIM_LIB下,以VHDL和VERILOG的形式存在。你需要什麼器件就往工程里加入什麼器件的文件。我用CYCLONE,就把CYCLONE_ATOMS.VHD加入工程。編譯時它會提示需要CYCLONE庫。就在MODELSIM中創建名叫CYCLONE的庫,MAP到WORK庫就可以了。其實你會碰到類似的很多沒有的庫都可以這樣產生。

我用來模擬VHDL寫的工程,對於VERILOG的不清楚。我也在問別人如何用MODELSIM進行混合編程的工程?對於這種工程我現在只能用ACTIVEHDL模擬。

3. 如何在modelsim中指定Altera的模擬庫
我就是按照精華區那個帖子上說的把quartusedasim_libaltera_mf.v、lpm生成的afifo.v、testbench.v放在一起編譯,照著做還是提示如下錯誤實在是搞不懂怎麼回事?
# Loading work.afifo_sim
# ** Error: (vsim-3033) F:/Modeltech_5.7e/examples/work/afifo/afifo_testbench.v(46): Instantiation of 'Afifo' failed. The design unit was not found.
# Region: /afifo_sim
# Searched libraries:
# work

從Error上看應該是你的testbench中調用自己做的afifo出的問題,查查是不是管腳引用的不對或是名稱寫錯了?應該不是大問題。你的步驟沒錯

4. [急請]在modelsim中如何導入Altera的lpm庫呢
limingnefu 你好!我用你提供的資料編譯ALTERA的CYLONE庫時,編譯 cyclone_atoms.v可以沒有錯,而編譯cyclone_atoms.vhd和cyclone_components.VHD時有錯誤,信息如下:
# ** Error: (vcom-19) Failed to access library 'cyclone' at "cyclone".
我把quartus II 輸出的 *.VO文件導入模擬時出現如下錯誤,請問如何解決?謝謝!
Error: (vsim-3033) G:/work/LCD/testintmcu/simulation/modelsim/IntfMcu.vo(4799): Instantiation of 'cyclone_io' failed. The design unit was not found.
# Region: /testbench/u0
#Searched libraries:
# work

在Altera的網站上有對modelsim的補丁,你可以查一下你的版本號,然後下載對應的補丁!據我所知好像對vhdl和verilog的補丁是不一樣的!
這個好像還需要根據自己使用的是verilog 還是 vhdl,步驟有一點調整。之需要同類的庫即可

我用的是VERILOG, cyclone_atoms.v已經編譯成功了,也看得見'cyclone_io' 已經編譯並LOAD的信息,可是在載入我的設計項目時又不行了,請設置成功的朋友談談看法,謝謝!我主要是想模擬PLL,DPRAM,等LPM單元。

最後,我還沒搞掂,只好把cyclone_atoms.v,220model.v,altera_mf.v,等文件作為源文件加到我的WORK裡面,這樣雖然在我的WORK中出現了很多單元名稱,總之可以模擬了,這個辦法比較笨,希望大家能幫解決我遇到的上面的問題,謝謝!!!

5. modelsim 6.0 中指定Altera的模擬庫
modelsim 6.0 中指定Altera的模擬庫后(即編譯220model.v,220model.vhd,220model_87.vhd220pack.vhd,altera_mf.v,altera_mf.vhd,altera_mf_87.vhd,altera_mf_components.vhd后),在編譯時仍出現altera_mf,lpm兩個庫找不到的情況,那位大俠碰到過這個問題?

我碰到的問題是不知道該如何編譯模擬庫,看了altera的AN204還是不知所云,向前輩指教

6. 我想用modelsim做功能模擬,不知道怎樣調用altera的lpm庫
已經鬱悶了幾天了,就是在模擬時,提示:
Component 'u8' is not bound.
# Time: 0 ns Iteration: 0 Region: /ccd File: F:/work/modelsim/camera/ccd.vhd
我用的是modelsim6.0和quartusII4.2;幫幫忙吧!

你看看變數U8的賦值過程,很可能是你沒有確定它的位寬。我也碰到過這樣的情形。

在某目錄編譯完modelsim庫后,怎麼使它對其他目錄也可用?庫編譯好后,只能在這個目錄下用,當把工程建在其他目錄下時,庫的編譯又無效了,怎麼使它對任意目錄都是有效的?謝謝!

vsim –L

把你的modelsim.ini只讀屬性去掉,然後把你所有的project統統關掉,再設置庫的路徑

怎麼設置庫的路徑?能不能講具體一點,跪謝!!!!

手工編輯modelsim.ini文件,將路徑指向正確目錄即可。

謝謝各位大俠!
我設置了庫的路徑
unisim=$MODEL_TECH/../examples/unisim
simprim=$MODEL_TECH/../examples/simprim
xilinxcorelib=$MODEL_TECH/../examples/XilinxCoreLib
可是設置后只有xilinxcorelib是可見的,而unisim庫還是不可用,為什麼?有什麼辦法?

問題解決,謝謝各位!!!!

7. modelsim中編譯altera模擬庫
請教各位大俠,在modelsim中編譯altera的模擬庫,總是有兩個文件報錯:220model.VHD和altera_mf.VHD:總提示兩個文件里的FILE Declaring using 1076-1993 syntax Recompiling using -93 swith。其他文件編譯正常。用的是quartus ii4.0和modelsim se 5.7。請知道的給予提示,不勝感激。謝謝

為什麼不在模擬前把altera的庫倒到modelsim的lib里呢?

那也要編譯的啊。我現在找到問題所在了,也編譯成功了。可是自己編了個程序,用到ALTERA的庫lpm,在modelsim總編譯時總提示找不到lpm這個庫,不知為什麼,還請給點提示。

唉,我是用的quartus4.2和modelsim6.0是在modelsim里新建了一個編譯過的Altera的庫文件(就是那quartursedasim_lib文件夾下,對它下面的8個文件進行編譯,建立到modelsim中一個庫)
每次啟動modelsim都可以自己調用這個庫
現在quartus啟動以後,設置其模擬工具為modelsim,編譯什麼都能通過,工程里有波形文件,到最後一步也自己可以調用modelsim,但是調用完之後,modelsim就不動了,也不進行模擬

我也是這樣編譯的,但在編譯時就是找不到LPM這個文件,不知何故。是不是軟體版本的事啊。鬱悶。

8. 如何調用模擬庫(resource libraries)?必須vsim後用-L參數嗎
在quartus II內調用ModelSim后自動生成work、cyclone_ver、lpm_ver這三個庫,可是我雙擊work庫內counter進行模擬的時候卻告訴我無法找到cyclone_io(此module在cyclone_ver庫內),我必須在命令行下vsim counter -L cyclone_ver才能模擬,請問必須這樣嗎?總覺得不該啊

^_^已經解決,看來必須用-L參數,對應UI界面的操作則是"Simulate"->start simulation,切到library標籤,然後add...,上下均可。真是ft啊,為這麼一個問題花了一整天

9. 在modelsim里加入Quartus的模擬庫
引用:-------------------------------------------雖然這是個老話題了,但總會有剛入門的朋友不知道的。我在這裡還是講講吧!
為什麼要這樣做?
1、Quartus不支持Testbench
2、調用了megafunction或者lpm庫之類的Altera的函數
3、時序模擬
要在Modelsim下做模擬,總會遇到上面這幾個問題,因為需要在Modelsim中加入Quartus的模擬庫。Altera公司推薦的具體的做法是:
1.
在Modelsim中,File->Change Directory,將工作目錄改變到想要存放模擬庫的地方,然後點擊OK。將來產 生的一大堆模擬庫要用的文件就存放在這裡。
2. Design->Create a New Library,建立一個新的庫:Altera,點擊OK。
3. Compile ..quartusedasim_lib下面的兩個文件,220model.v和altera_mf.v,記得編譯的時候上面的library一定是Altera。這樣三步以後,就完成了在Modelsim中添加Altera的庫!
實際中,這樣做不方便。我是這樣做的。
把220model.v和altera_mf.v拷貝到你要編譯的文件所在的文件夾里。先編譯這兩個文件,等於是把Altera的器件加到了work這個library里。然後再在library下編譯你要用的文件就可以了。這樣方便些。
----------------------------------------------上面是引用網上的一段。問問大家是如何添加Quartus的模擬庫。
有時候 只加這兩個文件(220model.v和altera_mf.v)還不夠,還得加各個晶元特有的庫

這樣做是可以的,但是有些麻煩的是必須將原設計文件中的
LIBRARY altera_mf
USE altera_mf.altera_mf_components.all
改成
USE work.altera_mf_components.all;
如果要在Quartus裡面編譯,又要改回來,還是比較麻煩的

樓上的是針對vhdl而言的而verilog還是要用樓主的方法

建庫后是不需要LIBRARY 和USE的語句

同意這個兄弟說的!我調用了這兩個庫,前模擬是可以的,但后模擬出錯了!真不知道問題出在哪了

10. 在modelsim中添加altera庫的問題,急!!!!
我在使用modelsim時,模擬波形中輸出總是高阻,但在quartus下模擬卻正確,應該是添加altera庫到modelsim沒成功,能告訴我怎麼添加嗎?

找到altera_mf.v和220model.v這2個文件然後把他們一起編譯一下就可以了

那麼時序模擬時候,為什麼還是不成功呢?

11. 請教:modelsim不能自動搜尋建立的模擬庫!
利用論壇中講述的方法在modelsim5.7中建立了altera的模擬庫alt_lib,已編譯了QTII下的八個文件,然後更改了modelsim.ini文件,手動添加了庫的映射路徑:alt_lib = $MODEL_TECH/../alt_lib。按照帖子的說明,應該這個庫就可以當作系統的庫來使用了吧?可是如果我要進行模擬,新建一個庫work,將我的源文件在work中編譯,然後load進行模擬的時候卻總是報告:"can't find the design unit"。這樣看來,modelsim在load我的程序時並沒有自動到alt_lib模塊當中去搜尋,如果真的是這樣,創建模擬庫就沒有多大意義了,是不是還有哪兒需要設置啊?請過來人指教!

修改modelsim.ini的只讀屬性,編譯庫要是重啟以後還是沒有的話,右擊你建的庫,選edit重新映射

由於本貼已關閉,我在此轉述一下網友wisdomgzy的發言:在Altera庫的名字上單擊右鍵,選中Edit,把路徑指到存放庫的地方,然後退出modelsim即可,肯定可以。

12. modelsim做后仿,加庫后還是出現問題!
modelsim做后仿,創建了library,並編譯了相應的庫文件到library,也在quartus里生成了.sdo文件和.vho文件,但是就是出現如下錯誤:
vsim -sdftyp tb_test1s25board_vhd/u0=E:/Stratix_DSPBoard_1S25/simulation/modelsim/test1s25board_vhd.sdo -t 1ps work.tb_test1s25board
# vsim -sdftyp tb_test1s25board_vhd/u0=E:/Stratix_DSPBoard_1S25/simulation/modelsim/test1s25board_vhd.sdo -t 1ps work.tb_test1s25board
# Loading C:Modeltech_5.8ewin32pe/../std.standard
# Loading C:Modeltech_5.8ewin32pe/../ieee.std_logic_1164(body)
# Loading C:Modeltech_5.8ewin32pe/../ieee.std_logic_arith(body)
# Loading C:Modeltech_5.8ewin32pe/../ieee.std_logic_signed(body)
# Loading dspbuilder.dspbuilderblock(body)
# Loading lpm.lpm_components
# Loading C:Modeltech_5.8ewin32pe/../std.textio(body)
# Loading work.tb_test1s25board(tbdspbuilder)
# ** Warning: (vsim-3473) Component 'u0' is not bound.
# Time: 0 ps Iteration: 0 Region: /tb_test1s25board File: e:/stratix_dspboard_1s25/tb_test1s25board.vhd
# ** Error: (vsim-SDF-3250) E:/Stratix_DSPBoard_1S25/simulation/modelsim/test1s25board_vhd.sdo(0): Failed to find INSTANCE 'tb_test1s25board_vhd/u0'.
# Error loading design
還有在加入.sdo文件時,有個apply to region的選項,該如何填啊?

region是指向你的design instance的位置,如果在你的測試程序模塊名為test,其中設計的例示名為design那麼添 /test/design

對啊,謝謝樓上的回復,但比如我的源程序叫example.vhd;testbench文件是tb_example.vhd;設計的例示名應該在哪裡找啊?

我找到了例化名,在testbench中:U0:test1s25board port map....
所以,apply to region應該是/test1s25board/U0吧,但是模擬后還是出現如下錯誤
# ** Warning: (vsim-3473) Component 'u0' is not bound.
# Time: 0 ps Iteration: 0 Region: /tb_test1s25board File: E:/Stratix_DSPBoard_1S25/tb_test1s25board.vhd
# ** Error: (vsim-SDF-3250) E:/Stratix_DSPBoard_1S25/simulation/modelsim/test1s25board_vhd.sdo(0): Failed to find INSTANCE '/test1s25board/U0'.
# Error loading design

在testbench中:U0:test1s25board port map所以,apply to region應該是/U0。

13. 關於MODELSIM添加ALTEARA模擬庫問題
根據《Altera FPGS/PLD 設計基礎篇》第8章 第三方EDA工具 (260頁)第2點所說添加模擬庫,三種方法都不成功。
第一種:安裝盤及安裝目錄下都無"<Altera_install_dir>quartusedasim_lib"
第二種:也未見該書有“Altera_sim_lib"壓縮文件,卻有Altera_lib_files文件夾,但無法導入
第三種:書中所說鍵接無效,也搜索不到所謂“msmindex.jsp
請問是什麼問題,特別想請篇寫本書的老師,說明一下

沒有問題,我一直就這麼用的

可以把QUARTUS中的一個叫ALTERA_MF_COMPONENTS.VHD文件加進去就可以了。

14. 在modelsim進行模擬,編譯都通過了就是不能loading,請教是否是因為缺器件庫的原因?
用synplify綜合后的*.vm文件,在modelsim進行模擬,編譯都通過了就是不能loading,請教是否是因為缺器件庫的原因?
# vsim testben
# Loading work.testben
# Loading work.divider
# ** Warning: (vsim-3010) [TSCALE] - Module 'divider' has a `timescale directive in effect, but previous modules do not.
# Region: /testben/uut
# ** Error: (vsim-3033) E:/A02 Baseband Test/FPGA Test/test_mod/test.vm(51): Instantiation of 'cyclone_io' failed. The design unit was not found.
# Region: /testben/uut
# Searched libraries:
# work
# ** Error: (vsim-3033) E:/A02 Baseband Test/FPGA Test/test_mod/test.vm(69): Instantiation of 'cyclone_io' failed. The design unit was not found.
# Region: /testben/uut
# Searched libraries:
# work
# ** Error: (vsim-3033) E:/A02 Baseband Test/FPGA Test/test_mod/test.vm(87): Instantiation of 'cyclone_io' failed. The design unit was not found.
# Region: /testben/uut
# Searched libraries:
# work
# ** Error: (vsim-3033) E:/A02 Baseband Test/FPGA Test/test_mod/test.vm(105): Instantiation of 'cyclone_io' failed. The design unit was not found.
# Region: /testben/uut
# Searched libraries:
# work
# ** Error: (vsim-3033) E:/A02 Baseband Test/FPGA Test/test_mod/test.vm(127): Instantiation of 'cyclone_lcell' failed. The design unit was not found.
# Region: /testben/uut
# Searched libraries:
# work
# Error loading design
`include "cyclone_io"
`include "cyclone_lcell"
看看

你應該將cyclone_atoms.v文件編譯到工程中

15. 請問各位大俠如何用Modelsim查看被模擬文件的非埠信號?
請問各位大俠如何用Modelsim查看被模擬文件的非埠信號?
用add wave * 加入的是一些亂七八糟的信號,與原來定義對不上號。求教解決辦法!

功能模擬不會出現這種問題。你說的是后模擬吧?布局布線后,內部的一些信號名稱會改變,可以先加幾個測試埠,看完需要的信號后,再刪掉即可。

哈哈,我用的也是這種笨辦法,有沒有更好的辦法呢?如果設計有很多層,若模擬出現錯誤,想查看某層中的某個自定義信號用這中辦法就無能為力了。

那是你testbench寫得不對吧?把objects窗口調出來,Alt+v+d+b然後選擇你想要看的信號,可以一個信號一個信號的加到wave裡面去

add-wave-signal in design基本上所有的信號都有了

add-wave-signal in design 和add wave *一樣,加入的信號和原信號名字對不上號(埠信號是一樣的),一個自定義的中間信號有N個信號與之對應,分析信號時非常不便,假設設計分N層(VHD文件),在頂層模擬中要查看底層的某個信號又該如何進行呢?

16. 請教達人一個SDF的問題
我在用MODELSIM做后仿的時候,遇到這樣一個問題,就是把SDO文件加進去會出現以下的問題,是不是我的APPLY TO REGION填得不對啊,我寫的格式是/測試頂層模塊名/例化名。各位達人幫忙分析下,謝謝
# ** Warning: (vsim-7) Failed to open SDF file "fat_v.sdo" in read mode.
# No such file or directory. (errno = ENOENT)
# ** Error: (vsim-SDF-3445) Failed to parse SDF file "fat_v.sdo".
# Time: 0 ps Iteration: 0 Region: /testfat File: D:/modelsim pro/chugao/testfat.v

No such file or directory.
不是說了嗎?沒有此文件或者是路徑不對!我想錯誤應該在兩個方面:
1.庫加的是否對;
2.APPLY TO REGION是否對!

17. 關於出不來波形的問題(摘自ModelSim安裝目錄的教程)
For ModelSim users:
This release uses the following licensing versions:
FLEXlm v9.5;
Mentor Graphics Licensing MGLS v2004.2 and PCLS 2004.328.
* * * * * * * * * * * * * * * * * * * * * * *
Access comprehensive ModelSim documentation:
Select Help > Help & Manuals
* * * * * * * * * * * * * * * * * * * * * * *
For ModelSim SE users:
The automatic invocation of the design-wide performance optimization tool "vopt" has been enabled.
The optimization step will improve run time performance and affect the visibility of objects in the design. To enable debug visibility it is recommended you add additional options to vopt on the vsim invocation via the -voptargs argument. For example:
vsim -voptargs="+acc"
which enables full debug access to objects in the optimized design. To understand the full usage of +acc and -voptargs, please refer to the following chapter in the User's Manual:
"Optimizing Designs with vopt"
If required, you may obtain the previous behavior ofvsim, where it does not perform performance optimizations, by setting the modelsim.ini variable "VoptFlow" to 0 (zero). 先要把modelsim.ini的只讀屬性去掉!


[admin via 研發互助社區 ] ModelSim SE模擬Altera庫的一些問題已經有8541次圍觀

http://cocdig.com/docs/show-post-42989.html