




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ModelSim的仿真仿真的分类仿真过程是正确实现设计的关键环节,用来验证设计者的设计思想是否正确,及在设计实现过程中各种分布参数引入后,其设计的功能是否依然正确无误。仿真主要分为功能仿真和时序仿真。功能仿真是在设计输入后进行; 时序仿真是在逻辑综合后或布局布线后进行。1). 功能仿真 ( 前仿真 ) 功能仿真是指在一个设计中, 在设计实现前对所创建的逻辑进行的验证其功能是否正确的过程。 布局布线以前的仿真都称作功能仿真, 它包括综合前仿真( Pre-Synthesis Simulation )和综合后仿真( Post-Synthesis Simulation )。 综合前仿真主要针对基于原理框图的设计 ; 综合后仿真既适合原理图设计 , 也适合基于 HDL 语言的设计。 2). 时序仿真(后仿真) 时序仿真使用布局布线后器件给出的模块和连线的延时信息, 在最坏的情况下对电路的行为作出实际地估价。 时序仿真使用的仿真器和功能仿真使用的仿真器是相同的, 所需的流程和激励也是相同的; 惟一的差别是为时序仿真加载到仿真器的设计包括基于实际布局布线设计的最坏情况的布局布线延时, 并且在仿真结果波形图中,时序仿真后的信号加载了时延, 而功能仿真没有。 后仿真也称为时序仿真或者布局布线后仿真,是指电路已经映射到特定的工艺环境以后,综合考虑电路的路径延迟与门延迟的影响,验证电路能否在一定时序条件下满足设计构想的过程,是否存在时序违规。其输入文件为从布局布线结果中抽象出来的门级网表、Testbench 和扩展名为 SDO 或 SDF 的标准时延文件。SDO 或 SDF 的标准时延文件不仅包含门延迟,还包括实际布线延迟,能较好地反映芯片的实际工作情况。一般来说后仿真是必选的,检查设计时序与实际的 FPGA 运行情况是否一致,确保设计的可靠性和稳定性。仿真的作用)设计出能工作的电路:因此功能仿真不是一个孤立的过程,其和综合、时序分析等形成一个反馈工作过程,只有这个过程收敛,各个环节才有意义。而孤立的功能仿真通过是没有意义的,如果在时序分析过程中发现时序不满足需要更改代码,则功能仿真必须从新进行。因此正确的工作流程是:将设计划分成便于团队协调工作的“模块”编写/修改模块代码 (电路的90%的性能由 Coding Style 决定)在模块及进行功能仿真针对特定的期间或工艺综合模块,分析电路是否满足时序约束要求不满足)代码排错:功能仿真是代码排错的最重要的手段之一。)仿真检验代码质量的一个重要手段。测试激励的代码覆盖率至少要达到95以上,才能基本认为代码在逻辑上是通过质量控制的,才能进入综合步骤;)在大的设计中,如果想通过一个激励就验证完一个设计或者模块是不现实的。一方面是从逻辑功能上很难做到;另外一方面是因为如果在一个激励中包括了各种情况,整个仿真过程的速度会随着计算机内存的消耗而成线性下降,效率低下,而利用仿真能很好地解决这些问题。)通常的做法是每一个激励只验证电路功能的某个方面。整个电路的功能验证由数个激励共同完成。在这种验证方法中代码覆盖率更显重要,因为可以通过代码覆盖率来控制激励对功能的覆盖程度。)modelsim的Code coverage不但能记录各个激励对代码的“行覆盖”和“分支覆盖”,而且能够将各个激励的覆盖记录进行合并,做到对覆盖率的全面监测。仿真的过程)综合前的功能仿真下面以一个线性反馈移位寄存器为例用ModelSim进行功能仿真,由于用编写do文件的方法进行仿真能极大提高仿真设计的效率,我们采用编写do文件的方式来仿真。编写TestBench文件。编写do文件。打开ModelSim,打开命令File-New-Project,在窗口中输入工程名LFSR_MS,并制定do文件所在文件夹路径。 命令控制栏中直接输入“run sim.do”按回车进行仿真,并查看波形。)综合后功能仿真为工程添加库文件。去除modelsim安装目录下modelsim.ini的只读属性(使得这个.ini的配置文件可以被修改)打开odelsim,更改目录File-Change directory到根目录下。新建一个库取名为alteralibrary。我使用的是odelsim的6.2b版本,步骤是:File-New-Library,打开之后在Library Name中写上alteralibrary,点击ok就可以了。 在Quartus安装目录先找到四个库文件,我的目录是F:Program Files Quartusquartusedasim_lib,并复制到D:FPGA_ExampleLFSRModelSim目录下待用。在odelsim的环境下对alteralibrary库文件进行编译。步骤是Compile -Compile,打开对话框,Library中选择你刚才建的库名alteralibrary,在查找范围内添加第三部我们从Quartus中复制过来的库文件,我这里是D:FPGA_ ExampleLFSRModelSim,如果你是用vhdl编写代码的则选择vhdl,verilog编写代码的话就选verilog(我选择的是verilog),再点击Compile,编译完成后点击done。这样我们的库文件就编译完成了,其编译后的文件就存放在我们建立的库文件alteralibrary中。打开Modelsim.ini文件,在Library下可以看到alteralibrary = alteralibrary,那就修改下路径就成alteralibrary存放的路径,我把路径修改为D:/FPGA_Example/LFSR/ModelSim/Postsim/alteralibrary。再把Modelsim.ini的只读属性选上就可以开工了,重启Modelsim就能在Library栏看到你添加的库啦。在Quartus中打开Assignment- Setting - Simulation,在Tool name中选择Modelsim,在Output Directory中指定生成的网表文件的路径,在more setting中将Generate Netlist for Functional Simulation Only中选择ON,点击仿真就能在你指定的文件夹中输出仿真所需要的网表文件。在Modelsim中新建工程,并添加网表文件和TestBench文件,并编译。 仿真。首先执行Simulate-Start Simulation 在窗口中的Libraries中选择add添加alteralibrary库文件,在work中选择仿真的TestBench文件,点击OK.添加波形并仿真。点击View- Wave,然后将Object中的端口添加到波形查看窗口中,在状态命令栏中输入run 20000,就能查看波形了。).布线后的时序仿真对于布线后的时序仿真我们需要布线后的网表,延时文件*.sdo,testbench文件,仿真原型文件。其仿真过程和综合后的仿真过程大体一致,只是添加的文件有所不同,这里不再重复。附录:线性移位寄存器verilog程序:module LFSR(/input portsSYSCLK,RST_B,/output portDATA_OUT);/=/input and output declaration/=input SYSCLK;input RST_B;output 7:0 DATA_OUT;/=/wire and reg declaration/=wire SYSCLK;wire RST_B;reg 7:0 DATA_OUT;wire 7:0 DATA_OUT_N;wire DO_GEN;/=/logic/=always(posedge SYSCLK or negedge RST_B)beginif(!RST_B)DATA_OUT = 8b00000001;elseDATA_OUT = DATA_OUT_N;endassign DO_GEN= DATA_OUT7DATA_OUT3DATA_OUT2DATA_OUT1;assign DATA_OUT_N = DATA_OUT6:0,DO_GEN;endmoduletestbench程序:module LFSR_TB;reg SYSCLK;reg RST_B;wire 7:0 DATA_OUT;LFSR I_LFSR_TB(.SYSCLK (SYSCLK),.RST_B (RST_B ),.DATA_OUT(DATA_OUT);always #20 SYSCLK = SYSCLK;initialbegin #0 SYSCLK = 0; RST_B = 0; #50 RST_B = 1; end endmoduledo文件程序:#新建一个工作库vlib work#将建立的一个工程与工作库之间映射vmap work work#编译两个文件vl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水的电离 溶液的酸碱性与pH【学生版】-新高二化学暑假专项提升(人教版)
- 老年人外出保健知识培训课件
- 诗歌鉴赏之表达技巧-高考语文一轮复习(新高考地区专用)
- 认识社会与价值选择-2026高考政治一轮复习单元测试卷(含答案)
- 人教版高考历史一轮复习讲义-医疗与公共卫生(含解析)
- CN120201698A 一种简化变频器控制的变频器机柜
- 老师课件自我介绍
- 《喷油涡旋空气压缩机》编制说明
- 翻页时钟课件
- 2025年度商业地产商铺转租服务协议范本
- DB4113T 043-2023 南阳艾草气象观测规范
- 消防培训课件教学课件
- 信息技术-开学第一课(共17张课件)
- 先进制造技术 课件 第一章 先进制造技术概论
- 实际投资额审计报告模板
- 湖南省衡阳市2022-2023学年六年级下册数学期末测试试卷(含答案)
- 农村干部任期经济责任审计所需资料
- 商场超市火灾防范措施
- PVC地板卷材施工方案
- 能源电力行业团队建设工作方案
- 黄褐斑的护理查房
评论
0/150
提交评论