ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:347.77KB ,
资源ID:6074168      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6074168.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(modelsim仿真.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

modelsim仿真.docx

1、modelsim仿真Abstract本文介紹使用ModelSim做前仿真,並搭配Quartus II與ModelSim作後仿真。Introduction使用環境:Quartus II 8.1 + ModelSim-Altera 6.3g由於FPGA可重複編程,所以不少開發人員就不寫testbench,直接使用Quartus II的programmer燒進開發板看結果,或者使用Quartus II自帶的Waveform Editor進行仿真,這種方式雖然可行,但僅適用於小project,若project越寫越大,Quartus II光做fitter就很耗時間,一整天下來都在作Quartus II

2、編譯。比較建議的方式,還是學ASIC那招:寫testbench先對每個module作前仿真,再對每個module作後仿真,最後再燒入FPGA測試。這種方式的優點是:1.testbench比waveform editor可更靈活的描述電路規格。2.testbench可使用Verilog的系統函數,如$display()、$fwrite().等。但要使用testbench作仿真,單獨Qaurtus II並無法做到,就得使用ModelSim了,這又牽涉到前仿真與後仿真。所謂的前仿真,就是Quartus II的Functional Simulation,不考慮電路的門延遲與線延遲,重點在觀察電路在理想

3、環境下的行為與設計構想是否一致1。由於沒經過fitter階段,所以模擬速度很快。前仿真結果正確,並不表示將來結果結果正確,但若前仿真結果不正確,則將來結果一定不正確。所謂的後仿真,就是Quartus II的Timing Simulation,考慮了電路的門延遲與線延遲,由於經過fitter階段,所以模擬結果最為精準。但fitter在Quartus II編譯需耗費很多時間,所以建議前仿真正確後,再考慮後仿真。使用Quartus II的waveform editor作前仿真與後仿真,我就不再多談,本文主要是談如何使用ModelSim-Altera作前仿與後仿。1.使用GUI的方式在ModelSim

4、-Altera作前仿真。2.使用DO macro在ModelSim-Altera作前仿真。3.使用Quartus II + ModelSim-Altera作後仿真。Counter.v / Verilog1/*2(C) OOMusou 2008 34Filename : Counter.v5Compiler : Quartus II 8.1 / ModelSim-Altera 6.3g6Description : simple counter7Release : 01/30/2009 1.08*/910timescale 1ns/100ps1112module Counter (13 input

5、 CLK,14 input RST_N,15 output 3:0 CNT16);1718reg 3:0 cnt;19assign CNT = cnt;2021always(posedge CLK, negedge RST_N) begin22 if (!RST_N) 23 cnt = #54h0;24 else25 cnt New ProjectStep 2:Add Existing File將Counter.v與Counter_tb.v加入Step 3:Compile All選擇Counter.v或者Counter_tb.v,按滑鼠右鍵,選擇Compile-Compile All,編譯所有

6、Verilog code。編譯成功。Step 4:Simulate在Library tab選擇Counter_tb,按滑鼠右鍵,選Simulate。Simulate成功。Step 5:Add Signal to Wave將欲觀察的信號從Objects加入Wave,加入clk,rst_n與cnt。最後結果。Step 6:Run 300ns最後前仿結果。2.使用DO macro在ModelSim-Altera作前仿真ModelSim也提供macro的方式,以上所有的GUI操作,都可以使用TCL script描述。Step 1與Step 2與之前一樣。Step 3:Execute MacroCoun

7、ter_wave.do / ModelSim Macro 1#compile2vlog Counter.v3vlog Counter_tb.v45#simulate6vsim Counter_tb78#probe signals9add wave *1011#300 ns12run300 ns 复制代码最後前仿結果。3.使用Quartus II + ModelSim-Altera作後仿真Step 1:設定Quartus II使用ModelSim-Altera作後仿真Assignments - Settings - Category :EDA Tool Settings - Simulation

8、:Tool name:ModelSim-Altera選取Run gate-level simulation automatically after compilationFormat for output netlist:VerilogTime scale:1 ns Step 2:設定testbench 在同一頁的NativeLink settings選擇Compile test bench,按下TestBenches.加入Counter_tb.v。比較詭異的是,Test bench name、Top level module in test bench與Design instance name in test bench無法自己抓到,必須自己填。 Step 3:編譯與模擬 Processing - Start Compilation

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1