ISE中FPGA工程实现流程

Posted guofeng95

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ISE中FPGA工程实现流程相关的知识,希望对你有一定的参考价值。

在使用FPGA时,设计输入文件一般是原理图、HDL或者IP核,最终得到的是FPGA内部配置信息。

中间的过程由ISE逐步实现,总体来说,可以分为3步:

1、综合(synthesis)

2、执行(implement)

3、生成配置文件(generate programming file)

 

一、综合(synthesis)

综合是将设计输入转为网表的过程。

 

网表提取出了设计输入文件中器件或端口的连接方式,如下图:

Net1: t.p1,b1.a;  
Net2: t.p2,b1.b;  
Net3: t.p3,b1.c;  
Net4: b1.d,b2.e;  
Net5: t.p4,b2.f;  
Net6: b2.g,t.p5; 

 

在ISE中,可以选择自带的XST用于综合,生成的网表文件后缀为ngc,也可以选择synplify用于综合,生成的网表文件后缀为edf。

 

二、执行(implement)

执行是利用网表与约束文件,生成对应型号的FPGA所需的配置信息。

一般分为3步:

1、translate

2、map

3、place&route

 

1、翻译(translate)

将网表文件与约束文件转为一种新的数据库文件,把两个文件的信息放到一个文件中,便于后续处理。

 

注:约束文件一般由用户编写,例如FPGA引脚配置就是一种约束。

 

输入文件:网表文件(ngc或edf)、约束文件(ucf)

输出文件:xilinx数据库文件(ngd)、translate报文(bld)

 

2、映射(map)

将数据库文件里的信息映射成具体的FPGA基元(Slices,RAM和IOBs)

一般MAP过程会根据约束信息,剔除多余逻辑、合并组合逻辑等。最终生成xilinx私有电路文件ncd,包含了设计与FPGA基元具体的映射关系。

对于大部分FPGA而言,MAP时,顺便也完成了后面基元的布局(Place)工作。

 

输入文件:xilinx数据库文件(ngd)

输出文件:xilinx私有电路描述文件(ncd)、物理约束文件(pcf)【约束各个基元之间的位置关系等】、map过程报告(mrp)

 

3、place&route

负责放置基元的实际位置,并布线。

 

布线时,根据时序约束不断布线,直到满足时序要求。

 

输入文件:xilinx私有电路文件(ncd)、物理约束文件(pcf)

输出文件:ncd

 

以上是关于ISE中FPGA工程实现流程的主要内容,如果未能解决你的问题,请参考以下文章

基于ARM的FPGA加载配置实现 想将ISE生成的bit文件远程下载和调试FPGA。

ISE14.2如何将FPGA程序和microblaze的程序一起固化到flash里面去?

简易的基于FPGA的OFDM系统的ISE实现

ISE14.7使用教程(一个完整工程的建立)

转ISE14.7使用教程(一个完整工程的建立)

如何对xilinx FPGA进行bit文件加密