仿真编译综合
1. verilog 仿真编译
testbench是不能被编译的!
请把testbench在编译中去掉
testbench 是在仿真时用的
mole test_AND;
reg a,b;//定义两个寄存器变量a和b
wire out1,out2;//定义两个线网out1和out2
initial //产生测试数据(激励信号)
begin
a=0;b=0;
#1 a=1;
#1 b=1;
#1 a=0;
end
initial//监视功能
begin
$monitor("Time=%d a=%b b=%b out1=%b out2=%b",$time,a,b,out1,out2);
end
AND gate1(a,b,out2);/*模块AND实例,激励信号通过a和b端进入AND模块,测试结果从out2输出*/
NAND gate2(a,b,out1);/*模块NAND实例,激励信号通过a和b端进入AND模块,测试结果从out1输出*/
endmole
2. verilog HDL的仿真程序怎样用quartus ii编译
quartus 不能编译仿真程序,仿真程序是不能被综合的,quarus只能编译能综合的程序。
仿真程序不能放在quartus工程中
只有在quartus中建立一个testbeach,在当中指定仿真程序,使用仿真工具去编译仿真它。
3. 如何用Quartus II对用Verilog HDL语言编写的源码进行仿真
O(∩_∩)O~,这个是我当时总结的,希望对你有用!
1.首先创建一个工程,再在new中新建添加verilog文本,再进行编译!
2.编译成功后,到file——create/update——create symbol Files for current
3.成功后到New——Block diagram/Schematic File——在空白处点击鼠标右键——insert——symbol——选择project
文件夹下的子文件,点OK键——再在空白处点击右键——insert——symbol——选择d:/(安装文件夹)的子文件夹
primitives下的pin文件夹选择需要的管脚——双击管脚处修改管脚名如a[7..0]——保存文件
4.建立仿真:在new中选择——打开vector waveform file ——再在View中——选择utility window——Node Finder
——点击list找出所有全部复制——关闭后粘贴——点击zoom tool ——点击鼠标右键调节试当的区间——
点击箭头之后选择要变的数值——之后点击Start simulation进行仿真编译
你自己按我写的步骤试试看,基本步骤都涵盖在我上面的总结里!!
4. verilog的程序写完后,下一步怎么做什么软件比较好进行编译和仿真
1步、写测试平台在modesim里面仿真。
2步、仿真通过后如果是做FPGA的话,直接在QUARTUS II里综合一下就可以下载到FPGA里了。
3、如果需要做ASIC的话需要用到DC综合,然后放到后端工具中自动布局布线生成版图,投片。
当然,综合后和自动布局布线后你可以做一个后仿真,将你的延时信息提取出来后在放到modesim里面仿真。
4、编译和仿真最好的工具就是modesim,它最大的优点是速度快,仿真精度也高。但是其编译较宽松,很多错误无法发现。我现在做项目时一般modesim做初级编译,然后用quartus ii做最终编译,如果这样能过的话,你的设计就没错误了。仿真仅用modesim也会产生问题,就是你测试一般无法产生覆盖面100%的激励,所以仿真通过后再下载到FPGA中进行原型验证下,如果FPGA能过得话,你的设计逻辑也就基本满足要求了。
5. modelsim 编译错误
这种文件不能编译,直接include就可以了
6. 如何编译xilinx仿真库
首先介绍一下Xilinx几个主要的仿真库(路径:D:\Xilinx\11.1\ISE\verilog\src\)
Unsim文件夹:Library of Unified component simulation models。仅用来做功能仿真,包括了Xilinx公司全部的标准元件。每个元件使用一个独立的文件,这样是为了方便一些特殊的编译向导指令,如`uselib等。
XilinxCoreLib: CORE Generator HDL Library model。仅用来做功能仿真,包括了使用Xilinx Core Generator工具产生的IP仿真模型,例如FIFO等。
SIMPRIM: Library of generic simulation primitives。用来做时序仿真或者门级功能仿真。
SmartModel:用来模拟非常复杂的一些FPGA设计,其中用到了Power PC或者RocketIO等。
我们一般只用其中的三个库:simprims,unisims,xilinxcorelib。
编译Xilinx仿真库有多种方法,比如,可以在ISE软件中编译xilinx仿真库,这样在ISE调用Modelsim进行仿真了。但是利用ISE调用Modelsim仿真虽然操作方便,但是每次仿真前都要先进行综合,这样会很费时间,如果单独用Modelsim进行仿真,则可以不用进行综合而直接进行功能仿真。不进行综合就仿真的结果是可能本来的设计就是不可综合的。但是只要按照可综合的代码风格进行设计一般不会出现这中问题。这样做的好处是节省了综合需要耗费的时间,所以下面主要介绍直接利用Modelsim编译Xilinx库,并进行仿真的流程。
Step1:在Modelsim的安装路径下建立一个文件夹,用来存储编译后的库文件。
Step2:打开Modelsim,更改路径为xilinx_lib
Step3:新建一个库,命名为xilinx_unisims,用来存放unisims库编译后的文件。
Step4:将unisims库文件编译到xilinx_unisims库中。选择Compile
在Library选择刚创建的xilinx_unsims库,查找范围为D:\Xilinx\11.1\ISE\verilog\src\unisims,然后全选所有文件,点击右下角Compile进行编译
编译完成后可以看到unisims库的文件都被编译到xilinx_unsims库中去了。
Step5:按照Step4的方法创建xilinx_corelib和xilinx_simprims两个库,分别将XilinxCoreLib和simprims文件夹的文件编译到这两个库中去。编译完成后可以看到Library中多出了刚才创建的三个库。
Step6:在安装目录下找到modelsim.ini文件,关掉它的只读属性,并添加以下三个语句,将这三个库添加到默认库文件中去。
添加完成后,保存,并把modelsim.ini改为只读。
这样以后再次打开Modelsim以后就可以看到Library中多出了刚才创建的三个库。
7. 关于QUARTUS II 仿真问题
这个的意思是说你在仿真以前要至少要进行Analysis and Synthesis才能够sunmulate。
解决方法是对你的工程编译一次就可以,只要修改过,就要重新编译一下。编译完就可以sunmulate。
8. 如何使用quartus ii综合
QuartusII 是Altera公司开发的功能最强大的PLD编译工具,全面取代MAX+PLUS
使用步骤:
一、建立工程.
1、“File”→“New Project Wizard”开始新工程的建立设置。‘NEXT’
2、指定project的路径,和project的名称,顶层文件的名称(一般与工程名相同)。
3、指定project中要include 的文件。
4、选择project中要使用的一些EDA TOOLS。
5、选择所使用的器件的家族“family” 和具体型号。
6、‘finish’ 完成工程的设置。
二、输入文件. 在工程中新建设计文件:图形文件“Block Diagram/Schematic File”,Verilog语言文 件“VerilogHDL File”
1、完成工程文件的输入,若为顶层文件,则文件名应该保存为与工程名相同。
2、编译设置:“Assignment”→“Compiler Settings Wizard”→“Next”
3、根据编译窗口的提示修改错误。
4、编译后会生成编译报告“Compilation Report”会分成如下几项:
(1) Analysis&Synthesis语法检查,把大电路转成较小的元件
(2) Fitter 器件资源利用情况,引脚分配情况等
(3) Assembler 连线各元件
(4) Timing Analyzer 时间分析
三、仿真. 完成工程文件的编译、综合、时间、分析后就可以建立波形仿真文件进行功能仿真
1、建立仿真文件
“File”→“New”→“Other Files”→“Vector Waveform File”→“OK”
2、选择输入输出引脚
Edit→“Insert Node or Bus”→“Node Finder”,在“Filter”处选择“Pins:all”,再按下“ >>”将所有选中的引脚添加到“Seleted Nodes”框,点“OK”→“OK”完成引脚添加。可通过右键 修改引脚的显示方式、属性、初始值等参数。
3、仿真时间、栅格的设置
Edit→‘End Time’ 设置仿真结束的时间, ‘Grid Size’设置每个栅格表示的时间。仿真时间是 以建立仿真文件时给出的结束时间为准,仿真设置“Wizards”中设定的End Time没用。
4、仿真编译设置
‘Assignments’→‘Wizards’→‘Simulator Settings Wizard’→选择当前要仿真得文件
仿真文件做好后还要将其设置为当前仿真文件,才可以开始仿真。因为有时一个工程需要建立多个 仿真文件,这就需要通过设置确定仿哪个文件了。在选择仿真类型“Type of simulation”时,“ timing”代表考虑延时,“functional”表示功能型的仿真。
5、先编译后仿真
‘Processing’→‘Start Compilation&Simulation’
6、仿真结束后会生成仿真报告“Simulation Report”
仿真结果并不是出现 在所建立得仿真文件中,在仿真报告中有独立的仿真结果。
仿真的结果总是与当前的工程文件相对应,工程文件改变后要重新仿真后才有意义。
四、将工程模块化,利用图形设计文件建立更大的工程
模块工程文件(“Block Diagram/Schematic File”或“Verilog HDL File”)编译仿真成功后就可以 将其模块化,然后在更高层次将各个模块级联起来,构成更大得工程。
1、模块化
‘File’→‘Creat/Updata’→‘Creat Symbol Files for Current File’ 然后编译器会自动将当前工程完整得编译一遍,然后生产图形模块,放在存放当前工程的文件夹里。
2、更大的工程
(1)建立工程文件
“File”→“New”→“Device Design Files”→“Block Diagram/Schematic File”→“OK”
(2)输入元件
右键→‘Insert’→‘Symbol’→可以在库文件中选,也可以通过“浏览”将已经建立图新模块的 工程加载进来。
(3)连线
9. 高手进!关于Quartus仿真的疑惑。相当不解呀!
问题好多啊。
QuartusII仿真步骤:
1.编译设计Start Compilation(包括:综合(vlog、vhd 转换成电路),布线(映射到具体器件上))
2.建立波形文件(激励)
3.开始仿真Start Simulation
4.得到仿真结果
QuartusII 10.0之后自带的仿真工具已经没有了,建议使用Modelsim(专业的仿真工具)
10. ISE综合后仿真如何操作
第一步:用modelsim编译xilinx的库,并添加;
第二步:打开ISE,edit——>preference,在第三方仿真工具里添加你安装modelsim的目录;
第三步:打开你要仿真的ISE工程,在“source”窗口上面有一个下拉菜单,菜单有“behavioral simulation”以及“post synthesis simulation”等,选最后一个
第四步:现在在source窗口,你应该能够看到你写的测试激励文件;单击选中该文件,在process的窗口应该能看到modelsim的图标及仿真选项
第五步:双击process窗口的modesim图标,即开始调用modelsim进行仿真!
手头这台电脑没装ISE,凭记忆写了这么多,希望能有帮助;