FPGA系统设计与实践 综合.

Slides:



Advertisements
Similar presentations
高级服务器设计和实现 1 —— 基础与进阶 余锋
Advertisements

SOPC技术 数字逻辑电路 主讲:刘昌华 嵌入式技术研究所
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
实验四 利用中规模芯片设计时序电路(二).
传统数字系统设计流程 设计目标 人工给出真值表 人工化简卡诺图 得到最简表达式 人工使用LSI电路实现 系统调试和验证.
综合布线技术与实践教程 第九章:综合布线系统工程网络分析 课程网站:
《 E D A 技 术》 课 程 教 学 讲授:伍宗富 湖南文理学院电气与信息工程学院 2017年3月22日星期三.
第10章 FPGA硬件设计 <EDA技术与应用> 课程讲义
图表的创建.
在PHP和MYSQL中实现完美的中文显示
FPGA设计时序收敛 天津工业大学-Xilinx 信号传输与处理联合实验室
水煮FPGA 传统FPGA设计流程简介.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
第1章 概 述.
浅谈基于FPGA的电路设计 报告人:吴爱平 2005/11/13
版权所有,禁止未经授权的商业使用行为 何宾 Tel: 北京中教仪装备技术有限公司.
EDA技术实用教程 第1章 概 述.
水煮FPGA 传统FPGA设计流程简介.
学习前的准备工作 讲师:burning.
第八章 菜单设计 §8.1 Visual FoxPro 系统菜单 §8.2 为自己的程序添加菜单 §8.3 创建快捷菜单.
可编程器件与电子设计自动化 上海交通大学电工及电子技术实验中心 一九九九年三月.
EDA 原理及应用 何宾
把COM口设置到没有使用的 COM1 – COM4
大学计算机基础 典型案例之一 构建FPT服务器.
第11章:一些著名开源软件介绍 第12章:服务安装和配置 本章教学目标: 了解当前一些应用最广泛的开源软件项目 搭建一个网站服务器
QUARTUSⅡ使用简介 高级电子系统设计课程 电路与系统 信息学院
EDA 原理及应用 何宾
DM81X 视频采集处理 ——简单采集显示例程讲解 广州创龙电子科技有限公司
Zhao4zhong1 (赵中) C语言指针与汇编语言地址.
Zhao4zhong1 (赵中) C语言指针与汇编语言地址.
本章小结: 可编程逻辑器件(Programmable Logic Device,简称为 PLD)是目前数字系统设计的主要硬件基础。现场可编程门阵列 FPGA(Field Programmable Gate Array)现场可编程门阵列FPGA在结构上由逻辑功能块排列为阵列,功能由逻辑结构的配置数据决定,配置数据可以存放在片外的EPROM或其他存储体上,人们可以控制加载过程,在现场修改器件的逻辑功能。
2019/1/12 GDP设计协同 超级管理员操作手册 GDP项目组.
数据挖掘工具性能比较.
CPU结构和功能.
《EDA技术与PLD设计》 第3章 FPGA/CPLD的结构与应用 通信工程学院 尹廷辉讲师 二五年三月二日.
Windows 7 的系统设置.
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
移相正弦信号发生器设计 采用直接数字综合器DDS发生器的设计 原理:图1是此电路模型图
C语言程序设计 主讲教师:陆幼利.
简单介绍 用C++实现简单的模板数据结构 ArrayList(数组, 类似std::vector)
VisComposer 2019/4/17.
目录标题 01 添加目录一标题 ADD DIRECTORY ONE TITLES 02
工业机器人知识要点解析 (ABB机器人) 主讲人:王老师
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
项目二:HTML语言基础.
《手把手教你学STM32》 主讲人 :正点原子团队 硬件平台:正点原子STM32开发板 版权所有:广州市星翼电子科技有限公司 淘宝店铺:
第4章 Excel电子表格制作软件 4.4 函数(一).
实验三 16位算术逻辑运算实验 不带进位控制的算术运算 置AR=1: 设置开关CN 1 不带进位 0 带进位运算;
第四章 QuartusII软件的应用 本章重点: 本章难点: EDA技术 QuartusII的设计输入 QuartusII软件的综合与编译
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
iSIGHT 基本培训 使用 Excel的栅栏问题
第六章 素材的加工与处理 第13讲 用GoldWave进行音频的截取、合并、淡入淡出操作
Chapter 18 使用GRASP的对象设计示例.
VRP教程 2011.
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
Python 环境搭建 基于Anaconda和VSCode.
工业机器人知识要点解析 (ABB机器人) 主讲人:王老师
《手把手教你学STM32-STemWin》 主讲人 :正点原子团队 硬件平台:正点原子STM32开发板 版权所有:广州市星翼电子科技有限公司
基于列存储的RDF数据管理 朱敏
YOUR SUBTITLE GOES HERE
第8章 创建与使用图块 将一个或多个单一的实体对象整合为一个对象,这个对象就是图块。图块中的各实体可以具有各自的图层、线性、颜色等特征。在应用时,图块作为一个独立的、完整的对象进行操作,可以根据需要按一定比例和角度将图块插入到需要的位置。 2019/6/30.
24 or 1024? PWN Jawbone Up24 手环.
第四章 UNIX文件系统.
第十七讲 密码执行(1).
创建、启动和关闭Activity 本讲大纲: 1、创建Activity 2、配置Activity 3、启动和关闭Activity
反应显微谱仪的飞行时间测量 暨数据获取系统的研究
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
培训课件 AB 变频器的接线、操作及参数的备份 设备动力科.
FPGA系统设计与实践 本章小结(第5章).
四路视频编码器 快速安装手册 1、接口说明 2、安装连接 3、软件下载 4、注意事项 编码器软件下载地址
Presentation transcript:

FPGA系统设计与实践 综合

第五章 综合 内容提要 本章介绍了Xilinx公司的ISE5.2中的综合工具XST的综合属性、HDL代码参数设置、专用参数选项设置,使用XST综合设计、实行设计的步骤与方法。ISE5.2集成的下载配置工具iMPACT的结构、操作步骤与方法。Altera公司的QuartusII3.0编译器和编程器的使用步骤与方法。

第五章 综合 知识要点: 教学建议: 综合,实行,配置,综合工具XST,下载配置工具iMPACT,编译器,编程器 第五章 综合 知识要点: 综合,实行,配置,综合工具XST,下载配置工具iMPACT,编译器,编程器 教学建议: 本章的重点是掌握Xilinx公司 ISE5.2中的综合工具XST和下载配置工具iMPACT,Altera公司的QuartusII3.0编译器的结构特点与使用方法。

第五章 综合 建议学时数为4学时。注意区分Xilinx公司的综合、实行、配置工具与Altera公司的编译与编程工具的不同点。在学习过程中,应结合第8章中的应用实例设计,去掌握ISE5.2综合、实行、配置或者QuartusII3.0编译与编程的步骤、属性设置及技巧。注意综合、实行、配置或者编译与编程中属性参数的设置对设计的影响。应通过大量的实际设计过程加深对ISE5.2综合、实行、配置或者QuartusII3.0编译与编程的理解。

FPGA系统设计与实践 ISE5.2中的综合工具XST

5.1 ISE5.2中的综合工具XST XST(Xilinx Synthesis Technology)是Xilinx ISE内嵌的综合工具。虽然XST与Synplify Pro等业界流行的综合工具相比特点并不突出,功能也不全面,但是Xilinx对自己的FPGA/CPLD内部的结构最为了解,所以XST对Xilinx器件的支持也最为直接,更重要的是XST内嵌在ISE中,安装ISE后可以直接使用,不需要另外付费。

5.1 ISE5.2中的综合工具XST ISE中XST设计流程的综合阶段约束文件与实现阶段约束文件的概念并不分明,综合阶段的约束条件常常通过实现阶段的约束文件来完成。

5.1 ISE5.2中的综合工具XST XST的综合约束文件是XCF(XST Constrain File),而在布局布线阶段,最重要的约束文件是用户约束文件UCF(User Constraint File),两者有着千丝万缕的关系,UCF几乎支持XCF的所有约束语言与命令。通常在使用XST综合流程时,仅仅通过综合属性设置来设置全局性的综合策略与参数,细化的约束是通过实现阶段的约束文件UCF完成的。

5.1.1 XST的综合属性 XST是内嵌在ISE中的,使用起来也非常方便。XST综合是自动完成的,但是用户可以对其相关的参数进行设置。参数设置的目的是使XST根据设计者的需要完成综合过程,以便达到设计要求。

1.选择XST综合工具 选择综合工具

2.XST综合属性 XST的可设置参数比较多,适当的设置综合参数,可以在一定程度上提高综合质量。综合参数主要是一些综合策略,大部分是通过选择来完成参数的设定。下面对XST中的参数进行简单的介绍。在Process for current sources中的Synthesize图标上单击鼠标右键,然后选择Properties,弹出的综合属性设置对话框如图所示。

2.XST综合属性 综合对话框

2.XST综合属性 (1)综合目标(Optimization Goal) 综合目标设置可以确定综合时的全局优化目标是面积(Area)还是速度(Speed)。由于大多数情况下,系统运行的速度是相当重要的,所以在缺省(默认)状态下,此属性的值为速度(Speed)。

2.XST综合属性 (2)综合难度(Optimization Effort) 综合难度用来指定XST的综合工作的程度,有两个值可供选择,如果对速度或者面积要求不是很高可以选择Normal,否则选择High。这里有一个问题需要注意,设计者不要寄希望于XST的综合效果,并不是选择High就一定得到好的综合结果,真正重要的是设计者要保证设计的质量。

2.XST综合属性 (3)综合约束文件(Synthesis Constraint File) (4)使用综合约束文件(Use Synthesis Constraint File) 如果设计中有综合约束文件,那么在指定综合约束文件的所在路径后在此参数后打上勾,使XST在综合时受到综合约束文件的约束。

2.XST综合属性 (5)全局优化目标(Global Optimization Goal) 全局优化目标参数仅对FPGA有效,它用于一些时钟优化策略,包括的优化属性有: 所有时钟节点约束(ALLCLOCKNETS) 输入偏移约束(OFFSET_IN_BEFORE) 输出偏移约束(OFFSET_OUT_AFTER) 网线最大延迟约束(MAXIMUM_DELAY) 输入到输出约束(INPAD_TO_OUTPAD)

2.XST综合属性 这些约束主要用于指定寄存器之间,输入引脚到第一级寄存器之间,末级寄存器到输出引脚之间,输入引脚到输出引脚之间的约束策略。

2.XST综合属性 (6)生成寄存器传输级原理图(Generate RTL Schematic) XST可以将综合结果生成RTL视图。通过RTL视图可以分析设计和修改设计。选择YES或NO确定是否需要生成RTL视图。

2.XST综合属性 (7)写时序约束条件(Write Timing Constrains) Write Timing Constrains参数仅对FPGA有效,用以指定在HDL源代码或是XST约束文件中指定的时序约束关系是否对Xilinx的NGC网表有效。

3.HDL代码参数设置 HDL代码参数设置与XST的编译有关,也就是说告诉编译工具如何理解HDL代码。HDL代码参数选项对话框如右图所示。

3.HDL代码参数设置 (1)有限状态机编码方式(FSM Encoding Algorithm) 有限状态机有多种编码方式,比较常见的有: 一位热码(One-Hot)、顺序编码(Sequential)、格雷码(Gray)等,在默认状态下,XST的有限状态机编码方式为自动编码(Auto),即根据器件中的资源进行有效的编码。

3.HDL代码参数设置 (2)RAM的提取方式(RAM Extraction) RAM Extraction参数用来指定是否使用RAM宏单元。 (3)RAM实现的类型(RAM Style) RAM Style参数仅对FPGA有效。FPGA中含Block RAM(有块RAM)和可以形成Distributed RAM(分布式RAM),可以通过设置RAM Style使XST从代码中提取需要的RAM类型。

3.HDL代码参数设置 (4)ROM的提取方式(ROM Extraction) ROM Extraction参数用来指定是否使用RAM宏单元。 (5)ROM实现的类型(ROM Style) ROM Style参数仅对FPGA有效。FPGA中含有块RAM(Block RAM)和可以形成分布式RAM(Distributed RAM),可以通过设置ROM Style使XST从代码中提取需要的ROM类型。

3.HDL代码参数设置 (6)多路选择器提取方式(MUX Extraction) MUX Extraction参数仅对FPGA有效,有以指定是否使用多路选择器宏单元。 (7)多路选择器实现类型(MUX Style) MUX Style参数仅对FPGA有效,有以指定多路选择器宏单元的类型。缺省状态下为自动(Auto)。

3.HDL代码参数设置 Decoder Extraction参数仅对FPGA有效,用于指定是否使用译码器(Decoder)宏单元。 (9)优先编码器提取方式(Priority Encoder Extraction) Priority Encoder Extraction参数仅对FPGA有效,用于指定是否使用优先编码器(Priority Encoder)宏单元。缺省为自动(Auto)。

3.HDL代码参数设置 (10)移位寄存器提取方式(Shift Register Extraction) Shift Register Extraction参数仅对FPGA有效,用于指定是否使用移位寄存器(Shift Register)宏单元。 (11)逻辑移位寄存器提取方式(Logical Shifter Extraction) Logical Shifter Extraction参数仅对FPGA有效,用于指定是否使用逻辑移位寄存器(Logical Shifter)宏单元。

3.HDL代码参数设置 (12)异或单元合并方式(XOR Collapsing) XOR Collapsing参数仅对FPGA有效,用于指定相关联的异或(XOR)单元是否合并为一个较大的异或宏单元。 (13)资源共享(Resource Sharing) Resource Sharing参数用于指定是否要求XST复用运算模块。

3.HDL代码参数设置 (14)乘法器实现类型(Multiplier Style) Multiplier Style参数仅对FPGA有效,用于指定XST综合乘法器的类型,是基于查找表的(LUT)乘法器还是基于块乘法器(Block Multiplier)。

4. Xilinx专用参数选项 Xilinx专用参数选项对话框中包含了一些Xilinx专有的结构中可以设置的属性。Xilinx 专用参数选项对话框如右图所示。

4. Xilinx专用参数选项 (1)添加I/O缓冲器(Add IO Buffers) Add IO Buffers参数用于指定是否需要在I/O上加上I/O缓冲器(IO Buffers) (2)最大扇出数(Max Fanout) Max Fanout参数仅对FPGA有效,用于指定信号和网线的最大扇出数。

4. Xilinx专用参数选项 (3)寄存器复制(Register Duplication) Register Duplication参数仅对FPGA有效,用于指定是否允许进行寄存器复制(Register Duplication)。 (4)等效寄存器删除(Equivalent Register Removal) Equivalent Register Removal参数用于指定是否把寄存器传输级功能相等的寄存器删除,以减少资源占用。

4. Xilinx专用参数选项 (5)寄存器配平(Register Balancing) Register Balancing参数仅对FPGA有效,用于指定是否需要寄存器配平。寄存器配平是使较长路径缩短,较短路径加长,使其达到平衡从而提高工作频率的一种技术。

4. Xilinx专用参数选项 (6)Slice打包(Slice Packing) Slice Packing参数仅对FPGA有效,用于指定是否使用Slice打包技术(Slice Packing),使相关路径查找表逻辑尽量布局在同一个Slice中,从而缩短查找表之间的布线距离,提高了设计频率。

4. Xilinx专用参数选项 (7)是否使用I/O内部的寄存器实现I/O寄存器 (Pack I/O Register into IOBs) Pack I/O Register into IOBs参数仅对FPGA有效,用于指定是否使用I/O内部的寄存器作为设计的第一级寄存器。