Quartus II使用小技巧

工程结构:

在建立完某项设计的文件后,依次在其里面新建四个文件夹,分别为:rtl、qprj、msim、doc。

75c80585959941afbce1c18692a775c3.png

rtl文件夹用于存放设计的源文件。

doc文件夹用于存放设计的一些文档性的资料。

qprj文件夹用于存放quaruts 工程以及quartus生成的一些过程性文件。

msim文件夹用于存放仿真文件。

如何查看一个Quartus工程用的是什么版本呢?

用notepad++打开工程名.qsf文件,查看最后一次打开使用的版本即可。

工程名.qsf文件部分内容如下:

set_global_assignment -name ORIGINAL_QUARTUS_VERSION 21.4.0
set_global_assignment -name PROJECT_CREATION_TIME_DATE "22:28:56  JANUARY 09, 2024"
set_global_assignment -name LAST_QUARTUS_VERSION "21.4.0 Pro Edition"

快捷键:

Ctrl+LStart Copilation开始全局编译
Ctrl+KStart Analysis & Synthesis开始分析与综合

输入设计有三种:

HDL代码输入、原理图输入、原理图和HDL代码混合输入。

2f0026a01ae64f5699edebd66044783c.png

Verilog布置接口的两种方式:

e7848343d6d140a08abc27111af50668.png

使用Quartus21.4自带编辑器查找变量:

快捷键:Ctrl+F

638cf8c1c2864ae9ad339e4b8faf4d06.png

弹出Match case:匹配大小写

Find whole words only:只显示完全相同的文本

Use regular expressions:使用正则表达式

Quartus可以直接打开的文件类型

qpf、stp1.stp、sof文件均可直接拖到桌面Quartus图标上,从而Quartus直接打开该文件。

在Quartus中Using Verilog Templates(Verilog模板)

在打开Quartus自带的文本编辑器的情况下,在文本编辑器中左键单击确定位置,Edit > Insert Template > Verilog HDL,选择自己想要添加的模板。

21697702be7f4bc28e1a35c8039b47b5.png

27237ff1e337468aa4f4861758019543.png

7d636978738c4139aabfdfb58ff7e1f1.png

Adding Design Files to a Project

方法一:

Assignments > Settings > Files > 点击File name 右边的...,添加.v文件。

19250524963b485cb0ce5d14e1b665a5.png

方法二:

Project Navigator > 左键单击选中Files窗口 > 右键单击 Files弹出Add/Remove Files in Project

49ca9cb0f37940e0a311aa9e6844c813.png

新建Quartus工程时选的芯片不对,需要重新选择:

Assignment 》Device,在弹出的Device弹窗中选择号想要的芯片后点击OK即可。

常用方法:选择芯片系列后,在Filter中输入完整器件型号,确认芯片后点击OK即可。

b5e3f2a073724f6cbca93e1dc02de2a6.png

两个同版本Quartus工程可以共用同一个stp1.stp文件

有两个Quartus工程:q_pfj_1.qpf与q_prj_2.qpf,其中q_prj_2.qpf是q_prj_1.qpf的衍生工程,两个工程想要在Signal Tap Logic Analyzer中观察的信号一样,直接将q_prj_1.qpf中已经设置好的stp1.stp挪到q_prj_2.qpf工程中,替换掉q_prj_2.qpf中原来的stp1.stp文件,即可在q_prj_2.qpf中的Signal Tap Logic Analyze抓取相同的信号。

但是注意换了stp1.stp的要q_prj_2.qpf工程要重新编译才能生效。

多个工程同理;

为什么会有多个工程?

因为服务器以及Quartus可以同时打开多个工程,而每个工程验证的方向不一样,因此会存在临时在Signal Tap Logic Analyzer中新增一些观察信号,这时笨办法是重复将其他工程一样设置一遍,省事的办法是直接copy已经设置好的stp1.stp到目的工程目录下覆盖即可。

可以在qsf文件中设置stp文件:

set_global_assignment -name SIGNALTAP_FILE stp1.stp

合并两个相同Quartus版本的工程:

1、将prj_1整个文件夹copy到prj_2的prj_2中;

2、修改prj_2的prj_2.qsf,添加prj_1的ip与.v文件,以及添加prj_1中有,而prj_2中没有设置的引脚约束等;

prj_2.qsf添加ip文件:

set_global_assignment -name IP_FILE ../fifo/fifo_test.ip

prj_2.qsf添加ip的约束文件(不是所有的ip都有sdc约束文件):

set_global_assignment -name SDC_FILE ../fifo/fifo_test.sdc

prj_2.qsf添加qip文件:

set_global_assignment -name QIP_FILE ../self_fifo/self_fifo.qip

prj_2.qsf添加qsys文件:

set_global_assignment -name QSYS_FILE ../hdmi_example/aux_mux.qsys

prj_2.qsf添加tcl脚本文件:

set_global_assignment -name TCL_SCRIPT_FILE ../rtl/FPGA_number.tcl

prj_2.qsf添加system_verilog.sv文件:

set_global_assignment -name SYSTEMVERILOG_FILE ../fifo/fifo.sv

prj_2.qsf添加verilog.v文件:
set_global_assignment -name VERILOG_FILE ../rtl/led_test.v

note:QIP文件里的内容是典型的脚本格式,如上。

3、很重要的一步,将prj_1中的顶层文件例化到prj_2中的顶层文件中

4、分析与阐释,先检查错误

5、全编译,生成sof文件验证

注意:以qar的形式打包prj_2工程得到一个prj_2.qar的文件,该文件内部的prj_1文件夹下仅有ip与.v模块,不能再使用Quartus软件打开prj_1.qpf工程了,因为解压后的prj_2_restored文件夹下的prj_1文件夹内已经没有了prj_1.qpf。

Allergo的Orcad原理图软件导出FPGA引脚约束tcl脚本文件:

打开OrCAD Capture CIS,选择Tool 》 Export FPGA,在弹出的FPGA Export弹窗中进行如下设置:

  1. FPGA Fammily Vendor:有Xilinx与Altera可选
  2. FPGA Component:选择位号为N1的FPGA芯片
  3. 勾选Genearate Wrapper File
  4. 支持Verilog与VHDL
  5. File format中按需选择Net Name v/s Pin Number或者Pin-Name v/s Pin Number
  6. File Type中选择Generate TCL File,方便将产生的tcl文件copy到Quartus的prj_name.qsf文件中

产生如下Quatus支持的prj_name.tcl文件:

内容格式均为:

set_location_assignment PIN_A1 -to TEST_LED

注意在设置Quartus的顶层文件PORT时要与Net Name v/s Pin Number中的Net Name对应上。

如何下载intel FPGA 的device包

这里以Quartus Standard版本下的Cyclone V包为例:

note:下载1.1G的Cyclone V包挺快的,也就几分钟。

  • 21
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数字信号源设计实验是基于Quartus软件进行的一项实验。Quartus是一种用于进行数字电路设计和FPGA编程的集成开发环境。在这个实验中,我们需要设计并实现一个数字信号源,该信号源可以产生特定的数字信号序列。 首先,我们需要打开Quartus软件并创建一个新的项目。在项目设置中,我们需要选择适合我们实验的FPGA型号。接下来,我们可以创建一个新的设计文件,该文件将包含我们所设计的数字信号源的逻辑电路. 在设计文件中,我们可以使用Quartus提供的逻辑元件和IP核来实现我们的数字信号源。我们可以选择合适的逻辑元件,如逻辑门、触发器等,并将它们进行连接组合来产生特定的数字信号序列。如若需要,我们还可以使用IP核来实现一些复杂的功能,比如计数器或状态机等。Quartus提供了大量的逻辑元件和IP核供我们选择使用。 在完成逻辑电路设计后,我们需要进行功能仿真以验证我们的设计。Quartus提供了仿真工具,可以使用波形查看器对数字信号进行检查。我们可以设置合适的输入信号,然后运行仿真,观察输出信号是否与我们的设计要求一致。如果仿真结果不符合预期,我们可以回到设计文件中进行修改,然后重新进行仿真,直到达到预期的功能。 最后,我们需要将设计文件进行综合、布局和配置。Quartus提供了这些功能,并可以生成对应的比特流文件,用于下载到FPGA芯片中进行实际的验证。我们可以按照Quartus提供的指导完成这些步骤,从而完成数字信号源的设计实验。 总的来说,数字信号源设计实验是一个使用Quartus软件进行数字电路设计和FPGA编程的过程。我们通过选择适合的逻辑元件和IP核,设计并实现一个能产生特定数字信号序列的电路。最后,我们进行仿真和验证,并将设计文件综合、布局和配置,然后将结果下载到FPGA芯片中进行实际测试。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值