ISE中FPGA的实现流程
基于xilinise的fpga设计流程

基于x i l i n i s e的f p g a设计流程The pony was revised in January 20210 前言一套完整的FPGA设计流程包括电路设计输入、功能仿真、设计综合、综合后仿真、设计实现、添加约束、布线后仿真和下载、调试等主要步骤。
图1 FPGA设计流程目前赛灵思公司FPGA设计软件的最新版本是ISE ,本文中以ISE 为例。
ISE 9以后的版本的安装文件都是集成到了一个包当中,安装起来很方便。
软件包里面包含四个大的工具,ISE Design Tools、嵌入式设计工具EDK、PlanAhead、Xtreme DSP 设计工具System Generator。
ISE设计工具中包含ISE Project Navigator、ChipScope Pro和以下工具:图2 ISE软件包中部分工具做一般的FPGA逻辑设计时只需要用到ISE设计工具,下面通过一个最简单的“点亮LED 灯”实例,具体讲解ISE设计工具的使用,并介绍基于ISE的FPGA设计基本流程。
1 创建工程(1)在桌面快捷方式或开始→所有程序→Xilinx ISE Design Suite →ISE Design Tools中打开ISE Project Navigator。
(2)单击File→New Project...出现下图所示对话框。
图3 新建工程对话框在该界面输入工程名、选择工程存放路径、选择顶层模块类型,其中顶层模块类型有硬件描述语言(HDL)、原理图(Schematic)、SynplifyPro默认生成的网表文件(EDIF)、Xilinx IP Core和XST生成的网表文件(NGC/NGO)这四种选项,这里我们使用Verilog模块作为顶层输入,所以选HDL。
(3)单击Next >进入下一步,弹出下图所示对话框。
图4 工程参数设置对话框这里主要设置FPGA器件型号,速度等级,综合工具和仿真工具的选择,其余的一般默认即可。
ISE开发环境使用指南[FPGA开发教程

ISE开发环境使用指南简介ISE(Integrated Software Environment)是Xilinx公司开发的一套FPGA设计软件工具。
本文档将为您介绍如何使用ISE开发环境进行FPGA开发,包括环境的安装、基本操作和常见问题解决方法。
环境安装1.在Xilinx官网上下载最新版本的ISE软件。
2.双击安装文件,按照向导指示完成安装过程。
3.完成安装后,打开ISE软件,进行必要的设置和配置。
基本操作创建工程1.打开ISE软件,选择“File” -> “New Project”。
2.在弹出的对话框中输入工程名称和路径,选择FPGA型号等相关参数,点击“Next”。
3.添加源文件和约束文件,点击“Next”。
4.点击“Finish”完成工程创建。
编译工程1.在ISE软件中选择“Project” -> “Run Implementation”进行工程编译。
2.检查编译过程中是否有错误,根据提示进行修正。
下载到FPGA1.将FPGA与电脑连接,选择“Tools” -> “iMPACT”打开下载工具。
2.配置下载参数,选择对应的FPGA型号和文件路径。
3.点击“Program”开始下载程序到FPGA。
常见问题解决方法编译错误•检查代码中是否有语法错误或逻辑问题。
•检查约束文件是否设置正确。
下载失败•检查FPGA与电脑的连接是否正常。
•检查下载工具配置是否正确。
总结通过本文档的介绍,您应该对如何使用ISE开发环境进行FPGA开发有了一定了解。
希望您在实际操作中能够顺利完成项目的开发和调试。
如果遇到任何问题,可以参考本文档中提供的常见问题解决方法或参考Xilinx官方文档进行进一步学习和搜索。
实践篇——ISE设计流程部分(FPGA设计者的5个重要基本功)

基于VHDL语言的ISE设计流程
--新建工程
输入工程名字:counter 工程所在的目录
点击“Next”按纽
北京中教仪装备技术有限公司
基于VHDL语言的ISE设计流程
--新建工程
产品范围(product category) 芯片的系列(Family) 具体的芯片型号(Device) 封装类型(Package) 速度信息(speed) 综合工具(Synthesis Tool)
北京中教仪装备技术有限公司
基于VHDL语言的ISE设计流程
--对该设计文件进行综合
在ISE的主界面的处理子窗口 的synthesis的工具可以完成下面的 任务: • 查看RTL原理图(View RTL schematic) • 查看技术原理图(View 选中该选项并将其展开 Technology Schematic) • 检查语法(Check Syntax) • 产生综合后仿真模型(Generate Post-Synthesis Simulation Model) 。
--对该设计文件进行综合
行为级综合可以自动将系统直接从行为级描述综 合为寄存器传输级描述。 行为级综合的输入为系统的行为级描述,输出为 寄存器传输级描述的数据通路。 行为级综合工具可以让设计者从更加接近系统概 念模型的角度来设计系统。同时,行为级综合工具能 让设计者对于最终设计电路的面积、性能、功耗以及 可测性进行很方便地优化。 行为级综合所需要完成的任务从广义上来说可以 分为分配、调度以及绑定。
北京中教仪装备技术有限公司
基于VHDL语言的ISE设计流程
--启动ISE13.1软件
方法1:在开始菜单下找到ISE的启动图标
点击此处
方法2:在桌面上找到ISE图标,点击该图标启动ISE13.1软件
用ISE与Modelsim进行FPGA后仿真(时序仿真)的两种方法

用ISE与Modelsim进行FPGA后仿真(时序仿真)的两种方法作者:毕成炜2012年1月30日星期一我使用的是ISE_12.2,集成MODELSIM_6.5e。
后仿真的方法分为直接和间接两种。
直接是指从ISE上起动MODELSIM。
间接是单独起动MODELSIM,然后使用ISE生成的用于后仿的文件夹netgen。
下面分别叙述。
(一) 直接方法:1.建立一个文件夹给ISE工程用,比如D:\timing_sim,然后将源文件和测试文件放到它的下面:2.在ISE中如有旧的Project正在使用,则关闭它:这样画面清静。
然后新建一个New Project,点Next,选好器件和仿真器:点Next,点Finish.为了能够在ISE中直接唤起MODELSIM,还需要一些设置,主要是两处:双击器件:保证下图红圈处选中你要的仿真器:点OK后,在主菜单中点:保证在红圈处指定好MODELSIM执行文件所在的位置编译仿真库可以在这里双击Compile HDL Simulation Libraries,也可以在C:\Xilinx\12.2\ISE_DS\ISE\bin\nt下面找到,双击它,注意红圈处所标的是你的ISE版本所支持的MODELSIM版本,不能低于它。
否则仿真过程可能出问题。
点Next,点Next,选定你针对什么器件编译仿真库,点Next,点Next,注意,ISE可能最初不带modelsim.ini,它在此步会自动生成这个文件,并且是可写的,即它的“只读”属性是已经自动去掉的。
生成仿真库的映射关系自动写入了ISE的这个modelsim.ini,位于C:\Xilinx\12.2\ISE_DS\ISE\bin\nt,但是,它并不会自动去更新MODELSIM软件的modelsim.ini,而且MODELSIM使用的是它自己的modelsim.ini,位于C:\modeltech_6.5e。
所以需要把ISE的modelsim.ini中的映射关系再COPY到MODELSIM自己的modelsim.ini中。
基于Xilinx-ISE-124的FPGA设计流程-12页文档资料

基于ISE 12.4的FPGA设计基本流程ISE是使用XILINX的FPGA的必备的设计工具,它可以完成FPGA开发的全部流程,包括设计输入、仿真、综合、布局布线、生成BIT文件、配置以及在线调试等,功能非常强大。
本文主要通过一个最简单的“点亮LED灯”实例介绍了基于ISE 12.4软件的FPGA设计流程,包括设计输入、仿真、约束、下载等。
0 前言一套完整的FPGA设计流程包括电路设计输入、功能仿真、设计综合、综合后仿真、设计实现、添加约束、布线后仿真和下载、调试等主要步骤。
图1 FPGA设计流程目前赛灵思公司FPGA设计软件的最新版本是ISE 13.1,本文中以ISE 12.4为例。
ISE 9以后的版本的安装文件都是集成到了一个包当中,安装起来很方便。
软件包里面包含四个大的工具,ISE Design Tools、嵌入式设计工具EDK、PlanAhead、Xtreme DSP设计工具System Generator。
ISE设计工具中包含ISE Project Navigator、ChipScope Pro和以下工具:图2 ISE软件包中部分工具做一般的FPGA逻辑设计时只需要用到ISE设计工具,下面通过一个最简单的“点亮LED灯”实例,具体讲解ISE设计工具的使用,并介绍基于ISE的FPGA设计基本流程。
1 创建工程(1)在桌面快捷方式或开始→所有程序→Xilinx ISE Design Suite 12.4→ISE Design Tools中打开ISE Project Navigator。
(2)单击File→New Project...出现下图所示对话框。
图3 新建工程对话框在该界面输入工程名、选择工程存放路径、选择顶层模块类型,其中顶层模块类型有硬件描述语言(HDL)、原理图(Schematic)、SynplifyPro默认生成的网表文件(EDIF)、Xilinx IP Core和XST生成的网表文件(NGC/NGO)这四种选项,这里我们使用Verilog模块作为顶层输入,所以选HDL。
ISE教程

第十一章VHDL的FPGA实现能够完成逻辑综合的EDA工具很多。
在此,我们基于实验室使用比较广泛的ISE 软件介绍综合流程,参见图11.1,基于ISE的FPGA设计一般分为九步:·电路功能设计·VHDL的RTL源程序输入·功能仿真(功能不正确,则修改设计)·综合(产生网表)·综合后仿真(综合后电路的门级仿真不通过,则需修改源程序)·实现与布局布线·时序仿真与验证(整体的时序分析(后仿)通不过,则需要重新布线)·板级仿真与验证(主要应用于高速电路设计)·芯片编程与调试(产生FPGA目标文件,下载烧写FPGA)图11.1 FPGA设计流程在仿真模型中完全可以用VHDL来描述一项设计的时序特性,但在综合中,这些时序行为(如惯性或传输延迟)的描述都会被VHDL综合器忽略,而此设计的实际时序行为仅依赖于目标器件的物理结构和映射方式。
因此,若将设计模型从一个目标器件移植到另一个目标器件时,那些依赖于正确的延迟特性才能正常工作的VHDL模型,将不可能得到期望的综合结果和时序仿真效果。
仿真模型可以描述一些无限制的条件(如无穷循环或无范围限制的整型数),硬件却不能提供这些条件。
在某些情况下,如无穷循环或循环次数不确定的情况下,综合工具会产生错误并退出。
在其他的情况下,如无范围的整数,VHDL综合器会假设一个默认的表示方式,如以32bit二进制数表示无范围的整数。
尽管这是可综合的,但却无法生成所期望的电路。
11.2 VHDL的FPGA逻辑综合以下将以第七章例7.15交通信号灯监测电路的程序为例来说明如何对VHDL程序进行综合。
具体步骤如下:1.启动ISE如图11.2所示,在windows操作系统的开始菜单中启动Xilinx ISE Design Suite 10.1中的ISE主窗口,之后如图11.3。
图11.2 启动ISE 10.1图11.3 ISE 10.1 主窗口2.创建一个新的项目ISE 10.1主窗口打开后,选择创建一个新的项目,一般分为以下七步:(1) 单击【File】 【New Project …】命令,如图11.4.1,出现图11.4.2所示的【Create New Project】对话框。
在ISE软件中用HDL开发FPGA的流程

在ISE软件中用HDL开发FPGA的流程Xilinx公司的ISE软件是一套用以开发Xilinx公司的FPGA&CPLD的集成开发软件,它提供给用户一个从设计输入到综合、布线、仿真、下载的全套解决方案,并很方便的同其它EDA工具接口。
其中,原理图输入用的是第三方软件ECS,HDL 综合可以使用Xilinx公司开发的XST、Synopsys的FPGA Express和Synplicity 公司的Synplify/Synplify Pro,测试台输入是图形化的HDL Bencher,状态图输入用的是StateCAD,前、后仿真则可以使用Modelsim XE(Xilinx Edition)或Modelsim SE。
除了上述软件以外,你也可以使用其它公司的相关EDA软件产品。
一、设置工作环境这一步并不是总是需要。
通常用在第一次使用ISE或需要对某些项目进行修改时。
一般有以下几项需要设置:(1)常用的。
这主要是设置项目管理器中文件的显示方式、字体、窗口的显示方式等。
一般用默认值就行。
(2)编辑器。
这里可设置跳格键(Tab)的字符个数、编辑器的字体等。
(3)流程设置。
(4)工具设置。
主要设置仿真器ModelSim、HDL 测试台生成工具HDL Bencher、状态图输入工具State CAD的工作目录。
其实要设置的就是ModelSim的工作目录,因为后两项通常在安装完后ISE已经帮你设好了!二、新建工程这一步和其它的软件开发一样,ISE要求在对文件进行综合或布线之前必须要有一个存在的工程。
在新建工程时,你需要设置以下几点:(1)工程名(2)工程所在目录。
ISE所产生的输出文件将全部放在该目录下。
但对源文件的目录没有要求。
(3)器件家族。
即你所采用的FPGA是Xilinx的哪一大类。
(4)器件型号。
(5)综合软件。
由于ISE3.3预置了4种可选的综合器接口(XST为Xilinx自己开发,FPGA Express是Synopsys公司的OEM版,在安装ISE时就已经装好了。
FPGA开发全攻略——ISE基本操作

FPGA开发全攻略——ISE基本操作这篇文章讲述了如何用工具提高效率的方法,适用程度因人而异。
Situation: 在对FPGA 设计进行最初步的系统规划的时候,需要进行模块划分,模块接口定义等工作。
通常,我们起初会在纸上进行设计,到了一定阶段的定稿可能会输入Visio 等工具,方便在T eam 内部交流和审阅。
虽然在纸上我们可以很随意地书写,而用纸画的不方便就在于,如果想对某一个模块进行一些改动或者重画模块,那么常常因为留出的空余纸张不够,而导致拿一张新的白纸重新画一遍,比较浪费时间。
对于电子化的Visio 来说,方便修改是好处,但他不是专为设计FPGA 系统而设计的,添加输入输出端口没那么方便,也不会根据定义的模块自动生成HDL文件。
HDLQuestion: 我们能不能使用更好软件进行系统规划呢?Solution: 答案是可以的。
下面以ISE 10.1 为例作说明:1) 画一个空模块,仅定义端口 - 新建Schematic,选择Tools -> Symbol Wizard,里面可以定义Symbol名和端口属性。
完成后生成sym 格式的Symbol。
如果端口是一个bus,那么可以用A(4:0) 的形式。
2) 将Symbol 添加到原理图 - 在Schematic 的Symbol 页面,选择Categories 为工程文件夹,在Symbols列表中就可以看到刚刚新建的Symbol。
将它添加到原理图中。
3) 重复1-2 步骤,建立所有Symbol,并连接端口。
如果需要修改连线的名字或者模块的例化名,可以选择需要修改名字的元件然后按右键--> Object Properties --> 在Name/InstName 窗格中填入需要的名字。
4) 如需修改Symbol,可以直接在sym 文件中修改 - 可以按右键-> Add -> Pin 等等添加,也可以Copy已存在的Pin,然后改变PinName。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.ISE实现的步骤
在综合之后,我们开始启动FPGA在ISE中的实现过程,整个过程包括以下几个步骤:
1.Translate - 将输入的网表文件和约束文件整合后输出到一个Xilinx私有的通用数据库文件
(Native Generic Database,NGD)中。
2.MAP-将设计映射到目标器件的资源上,可以选择在此阶段完成资源的布局。
3.Place and Route-按照时序约束的要求,完成设计的布局布线。
4.Generate Programming File- 生成一个可下载到FPGA器件的bit流文件。
本文将会详细的介绍如何完成一个设计的实现过程以及实现过程的这四个步骤。
二.启动实现过程的方法
1.在design窗口的第一行,找到view选项,选中Implementation模式,表示design窗口中显示的是Implementation过程的界
面。
新建工程中默认选择Implementation 模式。
2.在design窗口上半部分的hierarchy子窗口中,点击顶层文件。
3.在design窗口下半部分的processes子窗口中,可以双击Implement Design启动完整实现过程,也可以右键选中run启动
完整实现过程。
同时,可以展开Implement Design,单独执行Translate、MAP、Place and Route等过程。
Implement
结束以后,可以双击Generate Programming File生成bit流文件。
Generate Programming File过程也可以通过邮件选中
run来启动。
三.Translate
Translate过程将输入的所有网表文件和约束文件进行整合,输出到一个NGD(Native Generic Database)文件中。
NGD文件是Xilinx自定义的一种通用数据库文件,在文件中设计被映射成各种NGD 定义的基元,例如与门、或门、LUTs、flip-flops和RAM等。
NGD文件中同时包含着原始网表文件中描
述的设计层次,以及原始约束文件中包含的约束信息。
NGD可被映射到目标系列的器件中。
主要输入文件类型:ngc(XST综合时的网表文件)、edf (synplify综合时的输入网表文件)、ucf (约束文件)
主要输出文件类型:NGD(Xilinx私有通用数据库文件)、BLD(Translate过程的报文)
四.MAP
MAP过程用于将设计映射到一个具体的目标FPGA中,输入文件NGD中描述的逻辑被MAP(映射)成具体的FPGA基元,如IOBs、Slices和RAMs。
MAP过程会进行多余逻辑剔除、组合逻辑合并之类的动作,具体实现过程受到各种约束的影响。
MAP 过程输出一个叫做NCD(Native Circuit Description)的文件,用来表示设计与FPGA基元之间的具体映射关系。
对于除了Spartan@-3和Virtex-4之外的的FPGA,MAP过程同时会完成FPGA基元的布局(Place)。
主要输入文件类型:NGD
主要输出文件类型:NCD(Xilinx私有电路描述文件,描述了逻辑与FPGA基元的具体映射关系,
对于除Spartan3和Virtex4
之外的FPGA,NCD还包含基元的布局信息)、PCF(物理约束文件,用于约束各个FPGA基元之间的
位置关系等)、MRP(map 过程的报告)
五.PAR(Place and Route)
PAR过程用于将输入文件NCD中的FPGA基元放置在具体的位置,并且完整各个基元之间的连线。
对于除Spartan@-3和Virtex-4之外的的FPGA,Place过程已在MAP阶段完成,PAR只需完成Route(布线)即可。
PAR在Route时,根据时序约束,不断的尝试如何让所有的布线都满足时序要求,直到所有布线真的都满足时序为止。
PAR的结果输出到一个NCD(Native Circuit Description)文件中,PAR输出的NCD和与MAP输出的NCD全名不相同,内容也不相同。
主要输入文件类型:NCD、PCF
主要输出文件类型:NCDXilinx私有电路描述文件,描述了逻辑在FPGA内部的具体实现)、PAR (PAR过程的报告文件)
六.Generate Programming File
Generate Programming File过程用于生成FPGA的的配置文件,配置文件(如bit文件)中包含了PAR后NCD文件中所有的布局布线信息,可用于FPGA的配置。
将配置文件加载到FPGA以后,FPGA才能实现被设计的功能。
主要输如文件类型:NCD(PAR产生)
主要输出文件类型:bit(包含一些头信息和配置信息,可用于电缆线加载)、bin(只包含配置信息,存储在memory中的
部分,如存在SPI FLASH中的配置信息)。