原创 QuartusII文件的管理--如何建立一个最小工程

2006-12-22 08:59 11881 9 22 分类: FPGA/CPLD

    Quartus II是一款功能强大的EDA软件。在这个集成开发环境中,PLD使用者可以完成编辑、编译、仿真、综合、布局布线、时序分析、生成编程文件、编程等全套PLD开发流程。 riple 
    Quartus II以工程(Project)为单位管理文件。保证了设计文件的独立性和完整性。 riple 
    由于Quartus II功能众多,每一项功能都对应一个甚至多个文件类型。在使用中,如果需要转移或备份某一工程对应的文件,对众多文件的取舍成了一个令人头痛的问题。类似问题,在使用Maxplus II的过程中也很常见。 riple 
    使用Quartus II自带的工程文件压缩功能可以省去取舍文件的麻烦。但是.qar文件把众多文件压缩成一个文件,只有解压缩才能获取具体文件的信息。如果使用版本控制工具(如CVS)的话,对.qar文件无法进行版本比较。甚至当.qar文件受损时,部分甚至全部文件都无法恢复了。而且,缺省配置的.qar文件也包含了一些非关键文件,存在一定的冗余。 riple 
    解决这一问题的关键在于弄清文件扩展名的意义,明明白白地控制文件的取舍。 riple 
    下面的文件是从Quartus II帮助文件中拷贝出来的文件扩展名解释。 riple


    rar riple


   


File Type<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


Extension


AHDL Include File


.inc


ATOM Netlist File


.atm


Block Design File


.bdf


Block Symbol File


.bsf


BSDL file


.bsd


Chain Description File


.cdf


Comma-Separated Value File


.csv


Component Declaration File


.cmp


Compressed Vector Waveform File


.cvwf


Conversion Setup File


.cof


Cross-Reference File


.xrf


database files


.cdb, .hdb, .rdb, .tdb


DSP Block Region File


.macr


EDIF Input File


.edf, .edif, .edn


Global Clock File


.gclk


Graphic Design File


.gdf


HardCopy files


.datasheet, .sdo, .tcl, .vo


Hexadecimal (Intel-Format) File


.hex


Hexadecimal (Intel-Format) Output File


.hexout


HSPICE Simulation Deck File


.sp


HTML-Format Report File


.htm


I/O Pin State File


.ips


IBIS Output File


.ibs


In System Configuration File


.isc


Jam Byte Code File


.jbc


Jam File


.jam


JTAG Indirect Configuration File


.jic


Library Mapping File


.lmf


License File


license.dat


Logic Analyzer Interface File


.lai


Memory Initialization File


.mif


Memory Map File


.map


PartMiner edaXML-Format File


.xml


Pin-Out File


.pin


placement constraints file


.apc


Programmer Object File


.pof


programming files


.cdf, .cof


QMSG File


.qmsg


Quartus II Archive File


.qar


Quartus II Archive Log File


.qarlog


Quartus User-Defined Device File


.qud


Quartus II Default Settings File


.qdf


Quartus II Exported Partition File


.qxp


Quartus II Project File


.qpf


Quartus II Settings File


.qsf


Quartus II Workspace File


.qws


RAM Initialization File


.rif


Raw Binary File


.rbf


Raw Programming Data File


.rpd


Routing Constraints File


.rcf


Signal Activity File


.saf


SignalTap II File


.stp


Simulator Channel File


.scf


SRAM Object File


.sof


Standard Delay Format Output File


.sdo


Symbol File


.sym


Synopsys Design Constraints File


.sdc


Tab-Separated Value File


.txt


Tabular Text File


.ttf


Tcl Script File


.tcl


Text Design File


.tdf


Text-Format Report File


.rpt


Text-Format Timing Summary File


.tan.summary


Timing Analysis Output File


.tao


Token File


ted.tok


Vector File


.vec


Vector Table Output File


.tbl


vector source files


.tbl, .vwf, .vec


Vector Waveform File


.vwf


Verilog Design File


.v, .vh, .verilog, .vlg


Verilog Output File


.vo


Verilog Quartus Mapping File


.vqm


Verilog Test Bench File


.vt


Value Change Dump File


.vcd


version-compatible database files


.atm, .hdbx, .rcf, .xml


VHDL Design File


.vhd, .vhdl


VHDL Output File


.vho


VHDL Test Bench File


.vht


XML files


.cof, .stp, .xml


waveform files


.scf, .stp, .tbl, .vec, .vwf


    上面这些文件可以分为五类: riple 
    1. 编译必需的文件:设计文件(.gdf、.bdf、EDIF输入文件、.tdf、verilog设计文件、.vqm、.vt、VHDL设计文件、.vht)、存储器初始化文件(.mif、.rif、.hex)、配置文件(.qsf、.tcl)、工程文件(.qpf) riple 
    2. 编译过程中生成的中间文件(.eqn文件和db目录下的所有文件) riple 
    3. 编译结束后生成的报告文件(.rpt、.qsmg等) riple 
    4. 根据个人使用习惯生成的界面配置文件(.qws等) riple 
    5. 编程文件(.sof、.pof、.ttf等) riple 
    上面分类中的第一类文件是一定要保留的;第二类文件在编译过程中会根据第一类文件生成,不需要保留;第三类文件会根据第一类文件的改变而变化,反映了编译后的结果,可以视需要保留;第四类文件保存了个人使用偏好,也可以视需要保留;第五类文件是编译的结果,一定要保留。 riple 
    在使用版本控制工具时,我通常保留第一类、第三类和第五类文件。但是第三类文件通常很少被反复使用。 riple 
    所以,为了维护一个最小工程,第一类和第五类文件是一定要保留的。 riple 
  
    此外,当一个项目的设置内容需要转移给另一个项目时,例如引脚分配信息,需要转移.tcl文件而不是.qsf文件。.tcl文件与.qsf文件的关系以及如何生成.tcl文件我会在以后的日志中给出。 riple 
   


    相关链接:Quartus II中图形与HDL输入法混用时,文件的保存原则

PARTNER CONTENT

文章评论13条评论)

登录后参与讨论

用户234618 2016-1-16 21:20

写得很好,学习了,转了。

用户377235 2012-11-15 10:51

写得真好,正碰到这样的问题

用户251222 2010-3-26 00:43

高深啊

ash_riple_768180695 2009-5-21 21:13

在配置文件.qsf中添加下面这句话set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output,可以把生成的报告文件和二进制文件输出到output文件夹中。

用户1651241 2009-5-21 18:24

不知道Quartus可不可以自动为不同类型的文件指定特定的文件夹。必须要自己跟这些文件分类吗?

用户178146 2009-3-16 10:50

真好东西,学习了

用户142049 2008-3-23 23:13

除了感谢没有其他什么的了,在初学的路上有人指点迷津真是幸事!

ash_riple_768180695 2008-3-23 21:42

你的意思是要在对顶层文件的仿真中观察底层模块的信号。在Quartus中很难观察到全部的底层模块信号,原因是:Quartus内建的仿真器进行仿真的对象是综合后的网表,而不是综合前的行为级网表。综合后的网表会对原设计的行为级或结构级网表进行优化和重命名。结果是原有的模块边界改变了,一些node优化掉了,一些node重命名了。 所以,你如果坚持用Quartus仿真的话,你一定要会观察综合后的网表,建立综合后网表与原设计结构的对应关系,然后通过察综合后网表的行为反推回原设计的行为。 或者,采用Modelsim这样的专门仿真工具,进行行为级的仿真。

用户142049 2008-3-23 19:03

我想问一下版主,怎样对工程中的其中一个vhd文件进行仿真?我在建立vwf仿真文件时,只能找到工程顶层文件的node,而没法找到我想进行仿真的vhd文件的node,望版主指教。

用户142049 2008-3-23 18:56

初学quartus2问题不断!几次在用百度和google搜索时都不经意间进入你的博客,受益匪浅!
相关推荐阅读
ash_riple_768180695 2015-12-18 11:06
学习示例程序:FPGA快速系统原型设计--敏捷实践
        学习与开发板配套的示例程序,是敏捷实践的起点。示例程序是厂商针对开发板上提供的硬件资源和接口量身定做的工程,可以展示其FPGA芯片的功能和性能特点。从示例程序入手最大的好处就是:示...
ash_riple_768180695 2015-11-03 16:46
开发板选取:FPGA快速系统原型设计--敏捷实践
    既然是“实践”,就不能只谈编码和仿真,必须要上板运行、调试。这个虚拟项目的目标是实现一块兼容Intel82574L以太网控制器的千兆网卡,需要运行在一块具备PCIe接口和10/100/10...
ash_riple_768180695 2015-10-22 12:41
开篇:FPGA快速系统原型设计--敏捷实践
    虽然借用了 “系统原型开发”的标题,本系列文章将围绕FPGA IP级别的开发这个主题展开,如果可能的话,将扩展至FPGA System级别的开发。     先上一篇PPT:RSPwFP...
ash_riple_768180695 2013-08-26 10:21
学习SystemVerilog(二)——学习它的理由
    学习SystemVerilog的理由也很多,我在阅读SystemVerilog for Design 和 SystemVerilog for Verification两本书前言的过程中,总...
ash_riple_768180695 2013-08-26 10:19
学习SystemVerilog(一)——不学习它的理由
    想要学习SystemVerilog已经很久了。曾经尝试通过Accellera网站上给出的LRM学习,怎奈内容众多,找不出入手点和重点,只能望而却步。虽然手头有三本SystemVerilog...
ash_riple_768180695 2011-06-26 23:20
Hardware-Assisted IEEE1588 Implementation Analysis
06/18/11 11:00:05 PM         最近一段时间在研究IEEE1588-2008精确时间同步协议(PTP)。该协议可以在软件中实现,如果需要提高时间同步...
EE直播间
更多
我要评论
13
9
关闭 站长推荐上一条 /3 下一条