QuartusII命令行操作--如何建立可移植的工程

转载 2007年10月04日 08:50:00

    也许最简单的办法是:只提供设计代码,由使用者重新建立工程和设置。这是方法之一,但是一个效率很低、可重现性较差的方法。一个复杂的设计对配置有多少要求,重用这个设计的人就有多少个容易出错的地方,这些错误组合起来就会极大地降低工作效率。


     我在实践中总结了一些建立可移植、可重现的Quartus II工程的方法,与大家分享,希望对大家的工作有所帮助。
     原则一:修改配置文件中的绝对路径名,采用相对路径名指定编译所需的文件(.v、.vhd)。
     原则二:上传或备份配置文件(.tcl),具体的方法请参考我的上一篇文章
     原则三:选择合适的工程相关文件上传或备份,具体方法请参考我的另一篇文章
     原则四:编写编译脚本(.bat或.tcl),自动调用配置文件(.tcl)进行编译。

     下面,主要针对第四个原则进行说明。
     Quartus II的主要编译过程是:分析和综合(Analysis & Synthesis)、布局布线(Fitter)、汇编(Assembler)、时序分析(Timing Analyzer)。这四个步骤在GUI界面中的Processing下都有对应的工具栏按钮,可以分别执行,也可以通过全编译(Compilation)按钮一次完成。
     相应地,在Quartus II的命令行命令中,上述四个步骤也有对应的命令,分别是:quartus_map、quartus_fit、quartus_asm、quartus_tan。
     只要依次执行上述命令(命令参数要正确),就可以实现全编译的功能。


     如何获取正确的命令参数呢?
     如果有耐心并且希望深入了解每条命令的功能的话,可以在windows命令行中输入上述命令名并回车,然后根据提示察看help内容,例如输入:quartus_map -h。
     如果希望尽快得到可用的命令参数,可以在GUI界面中执行一次全编译,编译成功以后,在编译报告(Compilation Report)界面中察看Flow Log项,就可以看到对应全编译各个层次的命令及命令参数了。把Flow Log中的命令拷贝出来,粘贴到一个批处理文件(.bat)中,就可以在命令行执行全编译了(注意要和.qpf放在同一个目录下)。


     在命令行执行全编译的好处有两点:一是编译速度加快(内存占用比GUI少);二是编译过程可重现(GUI界面提供了太多的功能,很有可能误操作),即使操作者不会使用Quartus II,也能得到编译结果。
    
     上面只是Quartus II命令行工具在全编译过程中的用法,Quartus II的其它功能也有对应的命令行命令,大家可以根据自己的需要添加到批处理文件中。

     至于如何调用配置文件,可以在生成配置用的.tcl文件后,在命令行中执行quartus_sh -t xx.tcl,就会自动把所需的配置内容添加到.qsf文件中。可以把这条命令添加到上述批处理文件的第一行,就可以调用配置文件并执行全编译了。

     需要补充的一点是,Quartus II还提供了一套TCL命令,可以用来执行GUI的大部分功能。这套命令结合标准的TCL语言,还可以执行更为详尽和个性化的操作。

 

     提供一个链接,这篇文档给出了Quartus II命令行操作的详细说明:Quartus II Scripting Reference Manual

 

QuartusII命令行设计流程

单独运行每个可执行文件,也可以使用以下命令一次运行所有编译器可执行文件:quartus_sh --flow compile [-c ] 此命令将在全编译过程中运行 quartus_map、quart...
  • renhuailu
  • renhuailu
  • 2010年01月22日 16:09
  • 510

PC至FPGA的简单通信示例——内包含命令行tcl及verilog工程文件

  • 2015年07月17日 15:32
  • 18KB
  • 下载

Quartus II工程文件的后缀含义

Quartus II工程文件的后缀含义 本文为网络整理,大部分内容来自网络。 File Type Extension AHDL In...
  • wxd9199
  • wxd9199
  • 2016年05月24日 09:58
  • 1770

Quartus II单独调试子文件

软件对工程中的子文件进行单独调试的问题:想对某个子文件(不是顶层文件)进行单独的编译和调试,我已经将对应的子文件设为Set as Top_level Entity了,编译完后,在引脚分配的时候,没有对...
  • SBADHWM
  • SBADHWM
  • 2014年10月09日 15:37
  • 960

Quartus II 版本问题解决方案

问题1:   在做一个项目时,发现该项目(主要才用原理图设计)可以在Quartus 9.0版本上编辑,但是无法编译通过,表现在会提示一个弹窗的错误,选择no可以继续进行,结束时也没有提示error,...
  • u011303443
  • u011303443
  • 2016年05月12日 12:50
  • 1677

Quartus ii 9.0软件的使用和win10不兼容解决方案

Quartus ii 9.0软件的使用和win10不兼容解决方案本文只介绍关于quartus软件的编译和仿真的内容,以Verilog代码为例,不进行电路图绘制。也提供一种win10下仿真不兼容的解决方...
  • Frankgoogle
  • Frankgoogle
  • 2017年02月23日 11:06
  • 4663

Modelsim与Quartus ii联合仿真的一些问题

如何在Quartus II中调用Modelsim Quartus II 9.0版本的时候软件还有自带的仿真工具,现在安装的是11.0版本,才发现 Quartus II 11.0取消了软件自带...
  • qishi2014
  • qishi2014
  • 2015年04月13日 18:58
  • 2657

quartusII创建第一个VHDL程序

选择file---new project wizard 点击next,这一步忽略 输入项目的名称,自己写就可以,随便什么,不要有空格 默认选择空文件-----next 如果需要增加写好的文件,...
  • beautifulzc
  • beautifulzc
  • 2016年10月10日 18:56
  • 3268

一步一步学做一个CPU——3,用QuartusII通过原理图完成与门电路设计

打开QuartusII软件,程序主界面如下: 1, 新建一个工程 点击File——>New Project Wizard,打开创建新工程向导,这里你将完成工程的基本设定选项...
  • wyq120547
  • wyq120547
  • 2014年06月17日 12:07
  • 3550

如何新建Quartus工程—FPGA入门教程

这一章我们来实现第一个FPGA工程—LED流水灯。我们将通过流水灯例程向大家介绍一次完整的FPGA开发流程,从新建工程,代码设计,综合实现,管脚约束,下载FPGA程序。掌握本章内容,大家就算正式的开始...
  • lg2lh
  • lg2lh
  • 2016年04月17日 23:27
  • 6123
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:QuartusII命令行操作--如何建立可移植的工程
举报原因:
原因补充:

(最多只允许输入30个字)