关闭

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

1564人阅读 评论(0) 收藏 举报

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


     我在实践中总结了一些建立可移植、可重现的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

 
0
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:250204次
    • 积分:4010
    • 等级:
    • 排名:第7711名
    • 原创:149篇
    • 转载:43篇
    • 译文:0篇
    • 评论:32条
    文章分类