quartus如何编译仿真库
1. quartus 选择哪个器件进行编译
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)连线
2. quartus ii 仿真
方法1:你首先在quartus左上方的project navigator下面的file选项卡里吧你验证好的几个模块分别点右键--create symbol files for current file.这样你那几个模块就生成了符号,你再新建一个原理图文件(block diagram/schematic file),这样就生成了一个bdf格式的 文件,你双击文件空白处会弹出symbol对话框,此时点击project旁的加号你会看见你刚才的那几个模块都在里面,分别双击他们就可以放在原理图文件里了,然后用你想要的方式对他们进行连线。最后,在同样的project navigator下面的file选项卡里点击右键--set as top-level entity(设置为顶层实体),此时再编译就是编译你刚才的原理图文件了。
方法2:可以新建一个HDL文件描述各个模块之间的连接。同样设置成顶层实体
第一种方法比较直观,推荐第一种!
3. Quartus软件怎么进行功能仿真
我一般使用Quartus
II自带的仿真器仿真,方法如下:
(1)新建一个.vwf文件,并将其设为仿真激励:菜单Assignments->Settings,在左侧选择Simulation
Settings,选择这里的.vwf文件
(2)设置为功能仿真:菜单Assignments->Settings,在左侧选择Simulation
Settings,设置为Functional
Simulation
(3)生成功能仿真网表:菜单Processing->Generate
Functional
Simulation
Netlist
(4)开始仿真:菜单Processing->Start
Simulation
4. 在quartus ii怎么进行 VHDL仿真
仿真分功能仿真和时序仿真,
一两种仿真都需要在编译源*.vhd,程序后,新建一个与源程序同名的,
二在*.vwf文件中,由Insert Node or bus 进入,导入全部I/O.
三在主菜单里的Tools-----Simulator Tool 进入,弹出对话框, 有Simulation Mode 和Simulation Input 两个在上面的对话框,
①选择仿真为 Functional ,则右边的Generate Functional Simulation Netlist 字体变黑,先点击,生成Netlist,再点 START进行仿真
②选择时序仿真Timing ,则右边按钮为灰色,无法点击,可直接进行时序仿真,而不用先生成Netlist.
5. quartusii几个模块怎么调用仿真
Quartus 中调用modelsim的流程
1. 设定仿真工具
assignmentèsettingèEDA tool settingèsimulation 选择你需要的工具。
clip_image001
2. 自动产生测试激励文件模板:
processingèstartèStart test bench template writer
clip_image003
我们点击之后系统会自动在目录:当前文件夹è simulation è modelsim (这个文件夹名字跟你选的仿真工具有关) 中产生一个测试激励文件 xxx.vt(Verilog test bench) 或者 xxx.vht(VHDL test bench), 文件名跟你工程中的Top mole 的名字一样, 后缀为.vt或者.vht。
clip_image004
3. 编辑走动生成的test bench文件
我们加入自己需要的激励以及初始化语句,这里我们还要修改test bench的模块名字为tb(我们会看到这个名字和后面的设定有联系)。
clip_image005
4. 连接test bench,我们需要从Quartus中自动调用仿真工具,所以需要设定Native Link选项。
a) 还是在simulation的设置页面里,设定 Native Link对话框中的设定。我们这里因为需要工具自动调用激励所以选中
clip_image007
b) 点击右边的Test Benches, 我们需要在这里设定一个相关联的test bench.
clip_image009
这里会弹出一个让你指定test bench的对话框,因为我们之前没有指定任何的test bench,所以这里是空白的。
c) 指定test bench
因为我们是第一次产生test bench,点击new.
clip_image011
点击New之后会产生一个New Test bench setting的对话框,在这里你将test bench和你的相应的test bench file进行绑定。
clip_image013
我们这里在Test bench name的对话框中输入一个名字”my_1st_tb”, 我们将看到,在下面的Top level mole in test bench对话框中也自动显示”my_1st_tb”. 注意这个名字应该和你的test bench 中的mole name一直,我们之前在第3步的时候将test bench的mole name已经改成了tb,所以我们这里应该把对话框中的名字改成tb。
clip_image014
d) 加入test bench文件
clip_image016
5. 进行仿真
当这些设定都完成了之后, 选择菜单
toolèRun EDA Simulation toolèEDA RTL simulation
clip_image017
就可以直接调用modelsim进行仿真。
6. 小技巧:
我们这样调用仿真,如果是Modelsim AE每次不会编译lib文件,但如果我们使用的是Modelsim SE版本,每次调用都需要重新编译库,非常不爽,在这里我们建议自己修改脚本文件,进行仿真.
a) 当我们按照之前的描述,运行完仿真之后,停留在Modelsim的界面。
b) 在Modelsim界面的命令行上,我们点向上的方向键,就会出现我们上一条指令, 我们可以看到是
do xxxx.do 这说明工具执行的上一个命令式 xxxx.do这个脚本文件,我们这里的例子是
do oversampling_core_run_msim_rtl_verilog.do
clip_image019
i. 我们知道了工具执行的脚本,我们就可以按照自己的想法去改变这个脚本了。使用
edit oversampling_core_run_msim_rtl_verilog.do命令,可以看到这个脚本的内容(当然我们也可以使用Ultra Edit或者VIM等文本编辑软件去打开这个脚本文件)。这个脚本通常分成3部分 库文件编译部分,设计文件编译,运行参数设定和开始执行部分
clip_image021
ii. 通常来说库文件只在第一次编译的时候,需要编译,后面我们只需要在仿真的时候指定库文件的位置就好了,不需要每次都编译。因此我们可以注释掉“库文件编译部分”。下面图中红色框中的部分就是被注释掉的库编译部分,这样会节省我们的仿真时间,注意在脚本语言中#是注释符。
clip_image023
iii. 我们将编辑过的脚本文件另存为sim.do, 在以后的仿真中我们可以在Modelsim命令行中,直接在脚本中运行do sim.do(当然是先需要将Modelsim的工作目录改到 工程所在文件夹/simulation/modelsim/)。
c) 另外脚本生成的波形文件通常是将test bench的顶层加入到图形画面中我们可以看到在脚本的第3部分(运行参数和开始执行)部分,默认命令式
add wave *, 这条命令就是讲 test bench顶层的所有信好加入到wave窗口中。
clip_image024
对我们来说,在调试阶段,有很多底层信号都是想观测的,所以需要再手动修改一下命令
i. 在modelsim的窗口中,选中自己想要关心的模块,右键可以将自己关心的信号加入wave波形中
clip_image026clip_image028
ii. 此时我们在wave 窗口中可以将这个波形的格式存下来,在wave窗口中点菜单fileèsave… 选择文件名为wave.do.
clip_image030
iii. 在我们执行的脚本中将add wave *,这个命令替换成do wave .do, 就可以在每次执行仿真的时候自动添加想要观测的波形了。
clip_image024[1] clip_image031
7. 接下来最后一个问题,怎样才能一次性的编译好库文件,让软件不再每次编译。其实altera已经为客户准备了相应的选项,只不过藏得比较深,不好找。
a) 一次性编译库:
i. 点击toolè launch EDA simulation Library Compiler
clip_image033
ii. 我们会看到一个让我们选择器件的页面。根据你的实际情况选择下面的设定。点击start compile,软件会自动帮你完成编译,然后关掉就好,至此你应该已经完成了库的编译。
clip_image035
iii. 接下来我们需要在QII的仿真设定页面做一些修改。
我们需要回到设定界面
Assignmentèsettingèsimulationèmore Nativelink setting
clip_image037
设定好相应的路径。
clip_image039
好了,重新run仿真,就发现不会再编译我们的库文件了。
6. quartus怎么仿真
把你邮箱给我 图片传不上去 我用的是quartusII9.0
1、打开QuartusⅡ,
2、选择File→New Project Wizard 新建一项工程。
3、单击Next进入。
(任何一项设计都是一项工程Project,必须首先为此工程建立一个放置与此工程相关的所有文件的文件夹,要用英文的比如存在E/eda),之后会出现三个要填的,分别E/eda,COUNT,COUNT;单击Next进入下一个,first name不填,单击Next进入对话框。在该对话框中指定目标器件,(我们选择的是QuickEDA核心板上用的Cyclone系列的EP1C6240C8。),next一直到finish
4、选择File→New ——VHDL file ,将你的编程复制进去
5、File→save as(新建个文件夹 用英文的)文件名一定要更改为COUNT(保持和实体一致,默认的文件名为VHDL1)
6、在QuartusⅡ主界面下选择Processing→Start Compilation进行全程编译,会显示“successful”
7、在QuartusⅡ主界面下选择File→New命令,打开新建文件对话框,在该对话框中选择Vector Waveform File ;
8、在Nane栏内双击鼠标左键,弹出对话框。
9、点击Node Finder 按钮5、在Filter栏选择Pins:all,点击List按钮,弹出如图所示对话框。
10、点击>>按钮,按2次OK后。
11、设置仿真结束时间。
在QuartusⅡ主界面下选择Edit→End time…,打开图示对话框,将仿真结束时间设置为20us。
12、编辑输入节点波形
1)选中clk,在工具栏中点击Overwrite Clock按钮,打开图示对话框,将CLK周期设置为50ns。
2)将clr设置为“0”(在波形图左边竖着的有个0矩形波)。(可以点击放大/缩小按钮,缩小时按右键)
13、保存仿真波形文件,File→save,按默认的保存就行
14、功能仿真。
1)在QuartusⅡ主界面下选择Processing→Simulate Tool,
2)在Simulation mode 下选择Functional,点击Generate Functional Simulation Netlist按钮。点击Start按钮开始仿真。,仿真后点击Report按钮,打开仿真结果窗口(波形就出来了),在该窗口中可以观察设计结果,功能仿真没有考虑器件的延迟时间。
7. verilog HDL的仿真程序怎样用quartus ii编译
quartus 不能编译仿真程序,仿真程序是不能被综合的,quarus只能编译能综合的程序。
仿真程序不能放在quartus工程中
只有在quartus中建立一个testbeach,在当中指定仿真程序,使用仿真工具去编译仿真它。
8. 如何用Quartus II对用Verilog HDL语言编写的源码进行仿真
要使用QuartusII 进行仿真,首先进行代码编译。
代码输入完成后,点击start compilation按钮开始编译,编译完毕后,点击新建按钮,新建一个WaveForm文件。
然后打开Node Finder,将Pin选择为 All,然后点击 find 按钮,将会将你的代码中的所有输入输出管脚都显示出来,用鼠标选择所有管脚,拖动到WaveForm文件的波形显示框中,每个管脚的状态就都出来了,在你想要输入的管脚上设置高低电平,完毕后,点击 Start Simulation 按钮开始仿真,结束后输出管脚会显示结果。