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

原文地址:https://www.cnblogs.com/guofeng95/p/9180433.html

时间: 2024-11-06 03:30:34

ISE中FPGA工程实现流程的相关文章

vivado 创建FPGA工程

前言 我Win10系统上的Xilinx Platform Studio打不开,无奈之下换用Vivado.这篇粗略地介绍Vivado创建FPGA工程的流程 新建工程 打开vivado,点New Project然后Create a New Vivado Project点next再填写工程名.工程路径点next 在Project Type选择 RTL 工程,单击 NEXT 选择板子,我的是Zedboard,然后next-finish 原文地址:https://www.cnblogs.com/uestc

FPGA开发全攻略连载之十:FPGA开发基本流程(1)

原文链接: FPGA开发全攻略连载之十:FPGA开发基本流程(1) FPGA开发基本流程(2) FPGA是可编程芯片,因此FPGA的设计方法包括硬件设计和软件设计两部分.硬件包括FPGA芯片电路. 存储器.输入输出接口电路以及其他设备,软件即是相应的HDL程序以及最新才流行的嵌入式C程序. 目前微电子技术已经发展到SOC阶段,即集成系统(Integrated System)阶段,相对于集成电路(IC)的设计思想有着革命性的变化.SOC是一个复杂的系统,它将一个完整产品的功能集成在一个芯片上,包括

第一个FPGA工程—LED流水灯

这一章我们来实现第一个FPGA工程-LED流水灯.我们将通过流水灯例程向大家介绍一次完整的FPGA开发流程,从新建工程,代码设计,综合实现,管脚约束,下载FPGA程序.掌握本章内容,大家就算正式的开始入门FPGA开发了. 1.1.1.电路说明 1.1.2.新建工程 第一步:从开始菜单启动Quartus II 13.1(64 bit) ,如下图. 第二步:菜单栏选择File->New Project Wizard,新建工程. 第三步:弹出新建工程对话框,点击Next,下一步. 第三步:如下图,依次

ISE中如何将自己的verilog源代码.v或VHDL源代码.vhd封装打包成IP核?

=======================第一篇======================= 如何将自己写的verilog模块封装成IP核 将你的设计制作成BlackBox,也就是网表文件,这样别人看不到你的设计但是可以调用你的模块了.详细的参考信息如下: 1. 什么是BlackBox - 一个大的设计中可以用到一系列网表文件作为输入的一部分而并不全部使用HDL文件.当综合这个大设计时综合器不需要知道这个网表文件是怎样实现的,而只需要知道它的输入输出接口就可以了.这样的网表就称为黑盒子,因

实现第一个FPGA工程—FPGA入门教程【钛白Logic】

这一章我们来实现第一个FPGA工程-LED流水灯.我们将通过流水灯例程向大家介绍一次完整的FPGA开发流程,从新建工程,代码设计,综合实现,管脚约束,下载FPGA程序.掌握本章内容,大家就算正式的开始入门FPGA开发了. 1.1.1.电路说明 1.1.2.新建工程 第一步:从开始菜单启动Quartus II 13.1(64 bit) ,如下图. 第二步:菜单栏选择File->New Project Wizard,新建工程. 第三步:弹出新建工程对话框,点击Next,下一步. 第三步:如下图,依次

关于Quartus和ISE中ROM的初始化和仿真的一些小结

最近在玩Altera的FPGA,当我用Quartus II自带的IP核生成ROM时,出现了各种问题,于是在网上各种查资料,终于解决了我的问题.这里做一下小结,方便自己日后查阅. Quartus II 和ISE在仿真和初始化时有些些区别,这里简要介绍一下二者的初始化和仿真步骤:1.用Quartus II创建并仿真ROM Step1:在Quatus II工程下生成一个ROM Step2:编写.mif文件,作为ROM的初始化文件 Step3:将.mif文件拷贝到Modelsim工程下 Step4:进行

第一个FPGA工程----点亮开发板上的3个LED灯

第一个FPGA工程----点亮开发板上的3个LED灯 1.新建FPGA工程 开启Quartus2的画面 File--New Project Wizard..指定工程的路径与工程名 指定所使用的FPGA设备型号 2.添加设计文件 本设计采用Verilog HDL硬件描述语言建模 3.建模 本设计有三个输出量,没有输入量,这三个输出量对应FPGA芯片的三个管脚,同时被置高电平,用来驱动LED灯. 4.编译工程 Processing--Start compilation 并生成编译报告 5.引脚分配

设置ISE中默认文本编辑器为gvim

ise windows版,添加方式 ISE下点击菜单Edit -> Preferences -> Editor. 在Editor选项框里选择Custom,在Command line syntax文本框里输入:{d:\program files\vim\gvim.exe}  +$2 $1把路径改成你自己的路径,然后注意+前面有个空格,$1前面也有个空格,路径用大括号括起来 vivado windows版,添加方式 记得环境变量中加入gvim:path=D:/Program Files/Vim/v

quartus2中FPGA管脚分配保存方法(转)

一.摘要 将Quartus II中FPGA管脚的分配及保存方法做一个汇总. 二.管脚分配方法 FPGA 的管脚分配,除了在QII软件中,选择“Assignments ->Pin”标签(或者点击按钮) ,打开Pin Planner,分配管脚外,还有以下2种方法. 方法一:Import Assignments 步骤1: 使用记事本或类似软件新建一个txt文件(或csv文件),按如下格式编写管脚分配内容(不同的开发版,其内容也不同,本文以我使用的DIY_DE2开发板为范例).[这种方式格式最为简单]