XIlinx FPGA基本开发流程与各阶段生成的文件类型

 

1-电路设计与输入-->2-功能仿真-->3-综合优化-->4-实现过程(翻译、映射、布局布线3步骤)-->5-生成配置文件-->6-验证-->7-器件配置-->8-烧写芯片,9-在线调试

 

Xilinx ISE 开发过程中生成的各种文件(一)
Xilinx ISE 开发过程中各阶段生成的文件类型简介
电路设计与输入-->功能仿真-->综合优化-->实现过程(翻译、映射、布局布线3步骤)-->生成配置文件-->验证-->器件配置-->烧写芯片,在线调试

1. 创建工程:
<工程名>.gise:
<工程名>.xise: ISE Project Files

2. 添加设计文件:

3. 添加约束文件:

4. 进行综合:

5. 进行实现(翻译、映射、布局布线3步骤):
转换(Translate)、映射(Map)、布局布线(Place&Route)和时间参数提取(Timing)


6. 进行仿真:

7. 下载到开发板(烧写芯片):

8. 在线调试和优化:

 

综合优化:

XST:全称为Xilinx Synthesis Technology,这是Xilinx ISE里面附带的一个免费的综合工具。

Synplify生成文件:netlist网表文件 标准edif文件*.edf; 综合约束传递文件*.ncf;

结构级视图文件*.srs; 有限状态机编码文件*.fse;

生成文件:NGC网表文件 *.ngc(XST输出) *.edn *.ngo

edif和ngc区别​

SynplifyPro默认生成的网表文件(EDIF)、Xilinx IP Core和XST生成的网表文件(NGC/NGO)​

ngc里都是Xilinx fpga的原语; 第三方综合工具综合后是EDIF文件​

综合产生的网表文件,包含网络表和约束,是Xilinx自有文件格式,为二进制文件,且被加密了;可以用来进行知识产权保护,例如许多第三方的AllianceCORE就是这样来实现的;(Xilinx自己的LogiCORE有部分是网表,有部分是加密的vhd源程序)​

 

约束文件:

3种:用户约束文件UCF,网表约束文件NCF,物理约束文件PCF。

UCF由用户输入,NCF由综合工具产生。UCF优先级高。

翻译Translate:

把多个设计文件merge成一个网表文件。

(输入:网表文件EDF(或ngc,ngo)+NCF文件)

NGDBuild:

这个命令,其实就是translate啦。这是implementation的第一步。它会把所有的netlist和design constraint合并到一起,生成一个ngd文 件供map工具使用。

生成文件:*.ngd

映射Map:

把网表中的逻辑符号(gates)分组到物理组件(slices and IOBS)中。

MAP:

MAP命令是将NGDBuild命令所生成的ngd文件,映射到具体的FPGA器件里面去。MAP将产生一个NCD文件供PAR使用。

生成文件:*.ncd
;。
布局布线Place & Route:

把组件放置于芯片中,连接组件,并提取时序数据到报告文件。

PAR:

Place & Route。将逻辑网表适配到FPGA的底层硬件结构上的操作,输出为FPGA配置文件。

时序分析报告:

TRCE:

这个是用来产生偶们最最关心的timingreport的。TRCE会分析你的FPGA的设计并且产生一个后缀名为“.twr”的时序报告。你可以用任何文 本工具打开它,也可以用xilinx的Timing Analyzer。Timing Analyzer比较直观,推荐新手使用。

生成下载文件:

Bitgen:

顾名思义,这个Bitgen就是用来generate programming file啦。

生成文件:*.bit


1.转换

在转换过程中,多个设计文件和约束文件将被合并为一个NGD文件,并同时输出BLD文件。其中,NGD文件包含当前设计的全部逻辑描述,BLD文件时转换的运行报告。转换可以接受的设计文件包括END、EDF、EDIF和SEDIF文件,转换的约束文件包括UCF、NCF、MNC和NGC文件。

2.映射

在映射过程中,当前设计的NGD文件将被映射为目标器件的特定物理单元(如CLB、IOB),并保存在NCD文件中。映射的输入文件包括NGD、NMC、NCD(可选)和MFP(可选),输出文件包括NCD、PCF、NGM和MRP文件。其中,MFP文件是通过Floorplanner生成的布局约束文件,NCD文件包含当前设计的物理映射信息,PCF文件包含当前设计的物理约束信息,NGM文件与当前设计的静态时序分析有关,MRP文件是映射的运行报告。MRP文件中主要包括映射的命令参数、目标设计占用的逻辑资源、映射过程中出现的错误和警告、优化过程中删除的逻辑、目标设计中占用的IOB资源内容等。

3.布局布线

通过读取当前设计的NCD文件,布局布线将映射产生的物理单元在目标器件上放置和连接,并提取相应的时间参数。布局布线的输入文件包括NCD、PCF和NCD(可选)模版文件,输出文件包括NCD、DLY、PAD和PAR文件。在布局布线的输出文件中,NCD文件包含当前设计的全部物理实现信息,DLY文件包含当前设计的网络时延信息,PAD文件包含当前设计的I/O管脚配置信息,PAR文件是布局布线的运新报告。PAR文件主要包括布局布线的命令行参数、布局布线中出现的错误和警告、目标设计占用的资源、为布线网络、网络时序信息等内容。

4.时间参数提取

时间参数提取间生成当前设计的含有时间参数的返标网表,该返标网表将用于时序仿真。时间参数提取的输入文件包括NCD和PCF(可选)文件。时间参数提取输出的时序报告可以反映当前设计是否满足时序约束。

posted @ 2024-02-18 17:13  suntroop  阅读(348)  评论(0)    收藏  举报