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

2011-6-20 22:22 8814 16 18 分类: FPGA/CPLD
        最近由于维护一个老项目的需要,我在研究ISE工程文件的文件类型和管理。从版本控制服务器检出这个工程,花费了几十分钟的时间,传输了近4000个文件,占用了4GB的硬盘空间。这个项目在最初备份的时候,并没有区分哪些文件是创建工程的原始文件,哪些是间接生成的数据库文件,哪些是编译完成的报告文件。这样不分主次的全盘备份,既浪费了服务器的硬盘空间(修改源文件后的每一次编译都会影响上述文件,每次检入版本控制服务器的数据量都很大),还增加了自动化构建和持续集成的困难(检出文件的时间延长了,大量的非原始文件对编译服务器的硬盘空间也是一种浪费)。
        为了不破坏原始备份,我在版本服务器上对主干创建了一个分支,然后从这个分支上检出了所有文件到本地硬盘。接下来需要进行的文件删除操作就在这个分支上进行,并检入回这个分支。等到文件管理工作完成了,才会考虑合并到主干上,或者建立以这个分支为基础的项目备份。

        一、Synplify综合需要的最小工程文件集。
        在这个项目中,ISE以Synplify综合后生成的edf网表为输入文件进行布局布线。所以第一步需要整理Synplify的工程源文件。
        在Synplify的工程文件夹下,需要保留的工程源文件如下:
        1. HDL代码文件:.v .vhd文件。
        2. 工程设置文件:.prj文件。
        3. 工程约束文件:.adc .nrf .opt .sdc .sfp 文件。
        工程源文件的具体描述如下表:
        zip.gifch4-files2.zip
        在工程目录下,还会看到综合后输出的文件,具体描述如下表。其中,.srs和.srm分别对应综合后网表RTL视图和映射后网表Technology视图。
        zip.gifch4-files6.zip
        Synplify综合后得到的网表输出文件也可以备份。Altera对应的是.acf或.vqm文件,Xilinx对应的是.edf文件。

        二、ISE完成布局布线需要的最小工程文件集。
        在ISE的工程文件夹下,需要保留的工程源文件如下:
        1. HDL代码文件:.v .vhd文件。
        2. 综合后网表输入文件:.edn .edf .edif .sedif文件。
        3. 工程设置文件:.ise文件。
        4. 工程约束文件:.ucf .ncf .pcf .tcl文件。
        5. CORE Generator生成的文件:.edn .ucf _flist.txt _xmdf.tcl .ndf .ngc .xaw .xco文件。
        6. ChipScope设置文件:.cdc .ngc .ncf .tok文件。
        在ISE中,可以使用Project --> Cleanup Project Files命令来删除布局布线过程生成的中间文件(数据库和报告文件)。

参考文档:
Synplify Online Help --> Synplify FPGA Reference Manual --> Input and Result Files
Xilinx Software Manuals --> Development System Reference Guide --> Xilinx Development System Files (列出了绝大多数文件扩展名的解释,还需要参考下面两个文档)
Xilinx ISE Help --> Software Help --> CORE Generator Help --> Reference --> Files for Generated IP
Xilinx ISE Help --> FPGA Design --> In-System Design Debugging --> ChipScope Pro Debugging Strategies
PARTNER CONTENT

文章评论2条评论)

登录后参与讨论

ash_riple_768180695 2011-8-9 21:23

My friend, THX for commenting. Hope to see some of your studying blogs.

用户352053 2011-8-7 10:36

riple, THX for sharing. Every time reading ur blog I really really learn a lot not only the specific knowledge you sharing but also the method of studying. Looking forward to ur next blog! You have a nice day!
相关推荐阅读
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直播间
更多
我要评论
2
16
关闭 站长推荐上一条 /3 下一条