第1拿1SE系统简介 XILINX ·Design Manager:即设计管理器,这个工具是ISE5.x以前版本中FPGA/CPLD 实现与配置的集成环境。其功能相当于在ISE5.x中完成EDF设计流程,ISE 5.x取消了该工具 ·E2PROM:即电擦除可编程只读存储器。 ·EDIF:是逻辑网表格式的一个工业标准,为大多数综合、布局布线工具所支 持。 r:即Xilinx布局规划器。通过交互图形界面,用户可以观察到 FPGA内部连接情况,文持手动更改CLB和IOB的连接配置,进行物理位置 约束 ·FPGA Editor:即FPGA底层编辑器,与布局规划器功能相似,以图形化界面 显示FPGA内部的CLB和IOB模块结构,根据用户的设置与修改生成Xilinx 物理约束文件(PCF文件)指导FPGA布局布线」 ·HDL Be hr:即测试激生成器,辅助用户自动生成设计的测试激,并可 以调用仿真 完成设计的验证 ·HDL:即硬件描述语言(Hardware Description Language),以代码形式描述项 件的连接关系,是当代大型FPGA/CPLD设计的首选设计方式。业界普遍使用 的HDL语言是Verilog和VHDL。 HDL Editor:即HDL编辑器,ISE中HDL语言的编辑器,内嵌语法辅助模板 (Language ),能帮助用户更好地进行源代码设计 iMPACT:即Xilinx配置工具,自动检测FPGA/CPLD和配置EEPROM的项 件连接情况,实现FPGA/CPLD配置文件的分割、下载等系列功能 ·Implementation:即实现,指将综合输出的逻辑网表适配到具体FPGA/CPLD 的过程,包括译(Translate)、映射(Map)和布局布线(Place&Route)等 3个步聚。 ·Instance:即实例,指在设计中对调用的声明。其动词形式为Instantiation,即 实例化 ·I/O:即输入/出(Input/Output)。 ·PCor:即P核,已经设计好且受知识产权保护的标准模块单元。 ·LogiBLOX:与P核生成器相似,可方便地生成大量成熟、高效的设计模块】 。PACE:即引脚与区域约来编器(Pimm and Area Constraints Editor).ISE 5.x中增加的工具,完成10管脚和布局区域的约束,是约束编辑器的有益 充 ·PAR:即布局布线(Place And Route)。指将逻辑网表适配到FPGA/CPLD的底 层硬件结构上的操作,其输出结果为FPGA/CPLD配置文件。 。Primitive:即硬件原语,它有两层含义:第一,硬件原语是FGPA/CPLD的其 本逻辑单元,如门结构(与门AND,或门OR,异 或门XOR等)和寄存器结 构:第二,硬件原语不需要逻辑优化,直接被映射到FPGA/CPLD的底层硬件 单元。 ·Project Navigator:即工程管理器,它贯穿着ISE设计流程的始终,是ISE所 28
第 1 章 ISE 系统简介 28 • Design Manager:即设计管理器,这个工具是 ISE 5.x 以前版本中 FPGA/CPLD 实现与配置的集成环境。其功能相当于在 ISE 5.x 中完成 EDIF 设计流程,ISE 5.x 取消了该工具。 • E2PROM:即电擦除可编程只读存储器。 • EDIF:是逻辑网表格式的一个工业标准,为大多数综合、布局布线工具所支 持。 • Floorplanner:即 Xilinx 布局规划器。通过交互图形界面,用户可以观察到 FPGA 内部连接情况,支持手动更改 CLB 和 IOB 的连接配置,进行物理位置 约束。 • FPGA Editor:即 FPGA 底层编辑器,与布局规划器功能相似,以图形化界面 显示 FPGA 内部的 CLB 和 IOB 模块结构,根据用户的设置与修改生成 Xilinx 物理约束文件(PCF 文件)指导 FPGA 布局布线。 • HDL Bencher:即测试激励生成器,辅助用户自动生成设计的测试激励,并可 以调用仿真工具,完成设计的验证。 • HDL:即硬件描述语言(Hardware Description Language),以代码形式描述硬 件的连接关系,是当代大型 FPGA/CPLD 设计的首选设计方式。业界普遍使用 的 HDL 语言是 Verilog 和 VHDL。 • HDL Editor:即 HDL 编辑器,ISE 中 HDL 语言的编辑器,内嵌语法辅助模板 (Language Templates),能帮助用户更好地进行源代码设计。 • iMPACT:即 Xilinx 配置工具,自动检测 FPGA/CPLD 和配置 EEPROM 的硬 件连接情况,实现 FPGA/CPLD 配置文件的分割、下载等系列功能。 • Implementation:即实现,指将综合输出的逻辑网表适配到具体 FPGA/CPLD 的过程,包括翻译(Translate)、映射(Map)和布局布线(Place & Route)等 3 个步骤。 • Instance:即实例,指在设计中对调用的声明。其动词形式为 Instantiation,即 实例化。 • I/O:即输入/输出(Input/Output)。 • IP Core:即 IP 核,已经设计好且受知识产权保护的标准模块单元。 • LogiBLOX:与 IP 核生成器相似,可方便地生成大量成熟、高效的设计模块。 • PACE:即引脚与区域约束编辑器(Pinout and Area Constraints Editor),是 ISE 5.x 中增加的工具,完成 I/O 管脚和布局区域的约束,是约束编辑器的有益补 充。 • PAR:即布局布线(Place And Route)。指将逻辑网表适配到 FPGA/CPLD 的底 层硬件结构上的操作,其输出结果为 FPGA/CPLD 配置文件。 • Primitive:即硬件原语,它有两层含义:第一,硬件原语是 FGPA/CPLD 的基 本逻辑单元,如门结构(与门 AND,或门 OR,异或门 XOR 等)和寄存器结 构;第二,硬件原语不需要逻辑优化,直接被映射到 FPGA/CPLD 的底层硬件 单元。 • Project Navigator:即工程管理器,它贯穿着 ISE 设计流程的始终,是 ISE 所
XILINX 小 有集成工具的连接纽带 chematic 即原理图,指用图形方式描迷设计原理。 StateCAD:即状态机编辑器,辅助进行状态机的设计与仿真的工具。 ·Symbola:即器件符号,是模块单元的图形化代表形式。 。Synthesize:即综合,指将设计输入(HDL代码、原理图等)编译并优化为由 与、或、非门,RAM,寄存器等基本逻辑单元组成的逻辑连接。 · 即时序分析器,分析实现结果是否满足约束条件、芯片的工 作速率以及关健路径等时序信息的工具 ·XPower:即功耗仿真器,是Xilinx估计设计功耗的工具。 1.9小结 本章主要介绍了FPGA/CPLD的基础知识,FPGA/CPLD开发的完整设计流程以及ISE 集成的各种工具的名称、分类、功能与作用。 通过本章的学习,读者应该掌握FPGA/CPLD的基本原理、结构、特点与应用。从技术 角度讲,FPGA/CPLD能实现任何数字器件的功能,上至高性能的微处理器,下至简单的74 电路。而且现在FPGA/CPLD支持的接口、标准越来越多,可直接利用的P核与高性能的 基本模块覆盖到各个专业领域。EDA软件易学易用,逐渐成为当代系统设计与硬件设计的 首选方式之一。可以说FPGA/CPLD的出现使数字硬件设计工作变得轻松愉快。 一个完整的FPGA/CPLD开发设计流程应当包括电路设计与输入、功能仿真、综合、综 合后仿真、实现、布线后仿真、下板调试等主要步骤。读者应在后续章节的学习中深刻体会 这个设计开发过程 SE的工具包分为综合工具、仿真工月 、实现工具、辅助设计工具和其他工具等5类 本章依次介绍了这些工具的名称、功能与特点。SE功能强大,界面友好,易于掌握。希望 读者能够结合后面各章的论述熟练掌握这些工具的使用技巧。 1.10问题与思考 I.简述FPGA/CPLD的原理、特点与应用。 2. 一个完整的设计流程包含哪些主要步骤,这些步骤的作用分别是什么? 3.简述SE集成工具的名称、分类、功能与作用。 9
小结 29 有集成工具的连接纽带。 • Schematic:即原理图,指用图形方式描述设计原理。 • StateCAD:即状态机编辑器,辅助进行状态机的设计与仿真的工具。 • Symbol:即器件符号,是模块单元的图形化代表形式。 • Synthesize:即综合,指将设计输入(HDL 代码、原理图等)编译并优化为由 与、或、非门,RAM,寄存器等基本逻辑单元组成的逻辑连接。 • Timing Analyzer:即时序分析器,分析实现结果是否满足约束条件、芯片的工 作速率以及关键路径等时序信息的工具。 • XPower:即功耗仿真器,是 Xilinx 估计设计功耗的工具。 1.9 小结 本章主要介绍了 FPGA/CPLD 的基础知识,FPGA/CPLD 开发的完整设计流程以及 ISE 集成的各种工具的名称、分类、功能与作用。 通过本章的学习,读者应该掌握 FPGA/CPLD 的基本原理、结构、特点与应用。从技术 角度讲,FPGA/CPLD 能实现任何数字器件的功能,上至高性能的微处理器,下至简单的 74 电路。而且现在 FPGA/CPLD 支持的接口、标准越来越多,可直接利用的 IP 核与高性能的 基本模块覆盖到各个专业领域。EDA 软件易学易用,逐渐成为当代系统设计与硬件设计的 首选方式之一。可以说 FPGA/CPLD 的出现使数字硬件设计工作变得轻松愉快。 一个完整的 FPGA/CPLD 开发设计流程应当包括电路设计与输入、功能仿真、综合、综 合后仿真、实现、布线后仿真、下板调试等主要步骤。读者应在后续章节的学习中深刻体会 这个设计开发过程。 ISE 的工具包分为综合工具、仿真工具、实现工具、辅助设计工具和其他工具等 5 类。 本章依次介绍了这些工具的名称、功能与特点。ISE 功能强大,界面友好,易于掌握。希望 读者能够结合后面各章的论述熟练掌握这些工具的使用技巧。 1.10 问题与思考 1. 简述 FPGA/CPLD 的原理、特点与应用。 2. 一个完整的设计流程包含哪些主要步骤,这些步骤的作用分别是什么? 3. 简述 ISE 集成工具的名称、分类、功能与作用
第2章工程管理器与设计输入工具 本章在介绍ISE工程管理器(Project Na vigator)的基础上介绍多种设计输入工具及设 计输入的方法。工程管理器贯穿ISE操作的始终,它连接SE集成的所有工具。通过工程 理器的学习,读者能够了解ISE的用户界面和设计流程。本章将重点介绍ISE集成的3种常 用的设计输入工具:HDL编辑器(HDL Editor)、状态机编辑器(StateCAD)和原理图编辑 器(ECS)的使用方法。CORE Generator提供了大量实用高效的设计模块的IP核。灵活运 用CORE Gen ao不但能减少设计工作量,节约设计时间,在一定程度上还能提高设计的 质量。HDL Bencher 个测试激励生成器,它能辅助设计者快捷地编写出测试激 Architecture Wizard是自ISE5.I后新增的工具,用于辅助生成数字时钟管理模块(DCM Digital Clock Manager)和高速I/O收发器(Rocket/L OTM transceivers)。 本章主要内容如下: ·ISE的工程管理器 Proje tNavigator: HDL语言的输入工具 -HDLEditor ·状态机输入工具 -StateCAD: 。原理图给入工具一 -ECS: 。P核的生成工具一CORE Generator: 。测试励生成器一HDL Bencher 。设计结构向号 Architecture Wizard 2.1ISE工程管理器 -Project Navigator Proje 是ISE的工程管理器,它是ISE所有集成工具的连接纽带。通过使用 2.1.1 Project Navigator综述 工程管理器的主费功能是创建一个用户工程,并按照第1竟介绍的EPGA/CPLD设计流 程调用相应的工具,完成从电路设计 与输入、功能仿真、综 、综合后仿真、 实现、布线后 仿真、生成配置文件与配置FPGA等设计步骤。工程管理器支持第】章介绍的所有工具, 这些工具的基本功能如表21所示
第2章 工程管理器与设计输入工具 本章在介绍 ISE 工程管理器(Project Navigator)的基础上介绍多种设计输入工具及设 计输入的方法。工程管理器贯穿 ISE 操作的始终,它连接 ISE 集成的所有工具。通过工程管 理器的学习,读者能够了解 ISE 的用户界面和设计流程。本章将重点介绍 ISE 集成的 3 种常 用的设计输入工具:HDL 编辑器(HDL Editor)、状态机编辑器(StateCAD)和原理图编辑 器(ECS)的使用方法。CORE Generator 提供了大量实用高效的设计模块的 IP 核。灵活运 用 CORE Generator 不但能减少设计工作量,节约设计时间,在一定程度上还能提高设计的 质量。HDL Bencher 是一个测试激励生成器,它能辅助设计者快捷地编写出测试激励。 Architecture Wizard 是自 ISE 5.1 后新增的工具,用于辅助生成数字时钟管理模块(DCM, Digital Clock Manager)和高速 I/O 收发器(Rocket I/O™ transceivers)。 本章主要内容如下: • ISE 的工程管理器──Project Navigator; • HDL 语言的输入工具──HDL Editor; • 状态机输入工具──StateCAD; • 原理图输入工具──ECS; • IP 核的生成工具──CORE Generator; • 测试激励生成器──HDL Bencher; • 设计结构向导──Architecture Wizard。 2.1 ISE 工程管理器──Project Navigator Project Navigator 是 ISE 的工程管理器,它是 ISE 所有集成工具的连接纽带。通过使用 工程管理器,设计者可以创建、组织和管理自己的设计。 2.1.1 Project Navigator 综述 工程管理器的主要功能是创建一个用户工程,并按照第 1 章介绍的 FPGA/CPLD 设计流 程调用相应的工具,完成从电路设计与输入、功能仿真、综合、综合后仿真、实现、布线后 仿真、生成配置文件与配置 FPGA 等设计步骤。工程管理器支持第 1 章介绍的所有工具, 这些工具的基本功能如表 2-1 所示
第2拿工程管理器与设计输入工具 XILINX 表21 工程管理器支持的工具及其功能 工具名称 工具功能 对应FPGNCPLD设计流 程的步 HDL编辑器(HDLEdito HDL源代码的生成与编辑 状态机编辑器(StteCAD】 箱助状态机设计 原理图编辑器(ECS) 完成原型图的设计与输入 设计输入 1cgHO》 模块复用工手 IP核生成器(CORE Generator P核生成工具 Xdinx综合工具(XsT) 综合工具 FPGA Express 综合工具 FPGA Compiler II Synplify Synplify Pro 统合工具 绘合工具 测试生成器(HDL Bencher) 助测试激的设计 ModeSim XE/PE/SE 伤直工具 约束辑器(C straints Edito 编辑用于指导实步球的用户约束文件(c 引與与区城约克编料器(PACE) 编辑与1心管脚与面积约束相关的用户约束文件 FPGA底层编辑器(FPGA Editor) 手工布局布线 现结果时序分析器 布局规划器( nner 底层物理布找 芯片观黎器(ChipViewer 观察设计在GA上的实现结果 功耗仿真器(Xwgr) 分析不同工作条件下PGA的功有 配置文件分制器(PROM Fe) 完成配置文件的分剂 iMPACT 使用配置文件配置FPGACPLD 注:每个工具的功能与特点详见第1.7节. 2.1.2 Project Navigator的用户界面 Project Navigator的主界面由标题栏、菜单栏、工具栏、资源管理窗、当前资源操作 窗、工程工作区、HDL编辑器工作区、信息显示窗和状态栏等部分组成,如图21所示。 下面简要介绍各个部分的作用和使用方法。 L.标题栏(Title Bar) 标题栏显示当前工程的路径和程序的名称。 2.菜单栏(Menu Bar) 菜单栏主要由文件(File)、编辑(Edit 视图(View、工程(Project 资源文件 (Source入、操作(Process)、窗口(Window)和帮助(Help)等8个下拉菜单组成
第 2 章 工程管理器与设计输入工具 32 表 2-1 工程管理器支持的工具及其功能 工具名称 工具功能 对应 FPGA/CPLD 设计流 程的步骤 HDL 编辑器(HDL Editor) HDL 源代码的生成与编辑 状态机编辑器(StateCAD) 辅助状态机设计 原理图编辑器(ECS) 完成原理图的设计与输入 LogiBLOX 模块复用工具 IP 核生成器(CORE Generator) IP 核生成工具 设计输入 Xilinx 综合工具(XST) 综合工具 FPGA Express FPGA Compiler II 综合工具 Synplify & Synplify Pro 综合工具 LeonardoSpectrum 综合工具 综合 测试激励生成器(HDL Bencher) 辅助测试激励的设计 ModelSim XE/PE/SE 仿真工具 仿真(包括功能仿真、综 合后仿真、布线后仿真) 约束编辑器(Constraints Editor) 编辑用于指导实现步骤的用户约束文件(.ucf) 引脚与区域约束编辑器(PACE) 编辑与 I/O 管脚与面积约束相关的用户约束文件 FPGA 底层编辑器(FPGA Editor) 手工布局布线 时序分析器(Timing Analyzer) 实现结果时序分析器 布局规划器(Floorplanner) 底层物理布线 芯片观察器(ChipViewer) 观察设计在 FPGA 上的实现结果 实现 功耗仿真器(XPower) 分析不同工作条件下 FPGA 的功耗 配置文件分割器(PROM File Formatter) 完成配置文件的分割 iMPACT 使用配置文件配置 FPGA/CPLD 生 成 配 置 文 件 与 配 置 FPGA/CPLD 注:每个工具的功能与特点详见第 1.7 节。 2.1.2 Project Navigator 的用户界面 Project Navigator 的主界面由标题栏、菜单栏、工具栏、资源管理窗、当前资源操作 窗、工程工作区、HDL 编辑器工作区、信息显示窗和状态栏等部分组成,如图 2-1 所示。 下面简要介绍各个部分的作用和使用方法。 1. 标题栏(Title Bar) 标题栏显示当前工程的路径和程序的名称。 2. 菜单栏(Menu Bar) 菜单栏主要由文件(File)、编辑(Edit)、视图(View)、工程(Project)、资源文件 (Source)、操作(Process)、窗口(Window)和帮助(Help)等 8 个下拉菜单组成
XILINX ISE工程管理器—-Project Navigator -[coantee.v] 习4%2形 He-del →穩 g:0]: 卡工任资源言理南 Bitstream generation is complete. Completed process "Generate Programning File" Ln 19 cal 65 图2.l Proiect Navigator的主界而 【F】菜单的主要功能是新建、打开和保存一个工程或者资源文件 【Ed】菜单主要包含了一些与文本编辑相关的功能选项。 【View】莱单的主要功能是隐藏或者显示某个视图。 ·【Project】菜单的主要功能是对工程的一些操作。如添加或新建菜种资源文 件,刑除工程实现数据,压缩保存工程等。 【S0u©】单的主要功能是对资源文件的相关操作。这里的资源文件主要指 代秘 工程说明文件、CORE Generator生成的IP核、原理图、状态转 移图、测武藏励波形和块RAM映射文件(BMM文件)等。 ·【Process】莱单包含了一些对当前资源探作的命令,如运行(Run)、重运行 (Reun)、所有步骤重运行(Rerun All)、停止(Stop)、视图(View)和属性 (Pro 【Wdov】菜单的主要功能是排列规划所有窗口,使窗口易读易管理。通过这 个莱单可以看到当前打开的所有窗口的名称,并能直接切换到某个打开的窗口。 ·【Help】莱单包含了ISE和Project Navigator的帮助信息。使用EL健可以打 开Project Navigator的在线帮助窗口。 3.工具栏(Tool Bar) 工具栏中包含了常用命令的快捷按钮。Project Navigator的工具栏分为标准工具栏和编 33
ISE 工程管理器──Project Navigator 33 图2-1 Project Navigator 的主界面 • 【File】菜单的主要功能是新建、打开和保存一个工程或者资源文件。 • 【Edit】菜单主要包含了一些与文本编辑相关的功能选项。 • 【View】菜单的主要功能是隐藏或者显示某个视图。 • 【Project】菜单的主要功能是对工程的一些操作。如添加或新建某种资源文 件,删除工程实现数据,压缩保存工程等。 • 【Source】菜单的主要功能是对资源文件的相关操作。这里的资源文件主要指 源代码文件、工程说明文件、CORE Generator 生成的 IP 核、原理图、状态转 移图、测试激励波形和块 RAM 映射文件(BMM 文件)等。 • 【Process】菜单包含了一些对当前资源操作的命令,如运行(Run)、重运行 (Rerun)、所有步骤重运行(Rerun All)、停止(Stop)、视图(View)和属性 (Properties)等。 • 【Window】菜单的主要功能是排列规划所有窗口,使窗口易读易管理。通过这 个菜单可以看到当前打开的所有窗口的名称,并能直接切换到某个打开的窗口。 • 【Help】菜单包含了 ISE 和 Project Navigator 的帮助信息。使用 F1 键可以打 开 Project Navigator 的在线帮助窗口。 3. 工具栏(Tool Bar) 工具栏中包含了常用命令的快捷按钮。Project Navigator 的工具栏分为标准工具栏和编