FPGA综合详细教程_第1页
FPGA综合详细教程_第2页
FPGA综合详细教程_第3页
FPGA综合详细教程_第4页
FPGA综合详细教程_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

FPGA系统设计与实践

FPGA综合详细教程第五章综合内容提要

本章介绍了Xilinx公司的ISE5.2中的综合工具XST的综合属性、HDL代码参数设置、专用参数选项设置,使用XST综合设计、实行设计的步骤与方法。ISE5.2集成的下载配置工具iMPACT的结构、操作步骤与方法。Altera公司的QuartusII3.0编译器和编程器的使用步骤与方法。第五章综合知识要点:综合,实行,配置,综合工具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中的综合工具XST5.1ISE5.2中的综合工具XST

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

5.1ISE5.2中的综合工具XSTISE中XST设计流程的综合阶段约束文件与实现阶段约束文件的概念并不清楚,综合阶段的约束条件常常通过实现阶段的约束文件来完成。5.1ISE5.2中的综合工具XSTXST的综合约束文件是XCF〔XSTConstrainFile〕,而在布局布线阶段,最重要的约束文件是用户约束文件UCF〔UserConstraintFile〕,两者有着千丝万缕的关系,UCF几乎支持XCF的所有约束语言与命令。通常在使用XST综合流程时,仅仅通过综合属性设置来设置全局性的综合策略与参数,细化的约束是通过实现阶段的约束文件UCF完成的。5.1.1XST的综合属性

XST是内嵌在ISE中的,使用起来也非常方便。XST综合是自动完成的,但是用户可以对其相关的参数进行设置。参数设置的目的是使XST根据设计者的需要完成综合过程,以便到达设计要求。1.选择XST综合工具选择综合工具2.XST综合属性XST的可设置参数比较多,适当的设置综合参数,可以在一定程度上提高综合质量。综合参数主要是一些综合策略,大局部是通过选择来完成参数的设定。下面对XST中的参数进行简单的介绍。在Processforcurrentsources中的Synthesize图标上单击鼠标右键,然后选择Properties,弹出的综合属性设置对话框如下图。2.XST综合属性综合对话框2.XST综合属性〔1〕综合目标〔OptimizationGoal〕综合目标设置可以确定综合时的全局优化目标是面积〔Area〕还是速度〔Speed〕。由于大多数情况下,系统运行的速度是相当重要的,所以在缺省〔默认〕状态下,此属性的值为速度〔Speed〕。2.XST综合属性〔2〕综合难度〔OptimizationEffort〕综合难度用来指定XST的综合工作的程度,有两个值可供选择,如果对速度或者面积要求不是很高可以选择Normal,否那么选择High。这里有一个问题需要注意,设计者不要寄希望于XST的综合效果,并不是选择High就一定得到好的综合结果,真正重要的是设计者要保证设计的质量。2.XST综合属性〔3〕综合约束文件〔SynthesisConstraintFile〕SynthesisConstraintFile用于指定综合约束文件的所在路径。〔4〕使用综合约束文件〔UseSynthesisConstraintFile〕如果设计中有综合约束文件,那么在指定综合约束文件的所在路径后在此参数后打上勾,使XST在综合时受到综合约束文件的约束。2.XST综合属性〔5〕全局优化目标〔GlobalOptimizationGoal〕全局优化目标参数仅对FPGA有效,它用于一些时钟优化策略,包括的优化属性有:所有时钟节点约束〔ALLCLOCKNETS〕输入偏移约束〔OFFSET_IN_BEFORE〕输出偏移约束〔OFFSET_OUT_AFTER〕网线最大延迟约束〔MAXIMUM_DELAY〕输入到输出约束〔INPAD_TO_OUTPAD〕2.XST综合属性这些约束主要用于指定存放器之间,输入引脚到第一级存放器之间,末级存放器到输出引脚之间,输入引脚到输出引脚之间的约束策略。2.XST综合属性〔6〕生成存放器传输级原理图〔GenerateRTLSchematic〕XST可以将综合结果生成RTL视图。通过RTL视图可以分析设计和修改设计。选择YES或NO确定是否需要生成RTL视图。2.XST综合属性〔7〕写时序约束条件〔WriteTimingConstrains〕WriteTimingConstrains参数仅对FPGA有效,用以指定在HDL源代码或是XST约束文件中指定的时序约束关系是否对Xilinx的NGC网表有效。3.HDL代码参数设置

HDL代码参数设置与XST的编译有关,也就是说告诉编译工具如何理解HDL代码。HDL代码参数选项对话框如右图所示。3.HDL代码参数设置〔1〕有限状态机编码方式〔FSMEncodingAlgorithm〕有限状态机有多种编码方式,比较常见的有:一位热码〔One-Hot〕、顺序编码〔Sequential〕、格雷码〔Gray〕等,在默认状态下,XST的有限状态机编码方式为自动编码〔Auto〕,即根据器件中的资源进行有效的编码。3.HDL代码参数设置〔2〕RAM的提取方式〔RAMExtraction〕RAMExtraction参数用来指定是否使用RAM宏单元。〔3〕RAM实现的类型〔RAMStyle〕RAMStyle参数仅对FPGA有效。FPGA中含BlockRAM〔有块RAM〕和可以形成DistributedRAM〔分布式RAM〕,可以通过设置RAMStyle使XST从代码中提取需要的RAM类型。3.HDL代码参数设置〔4〕ROM的提取方式〔ROMExtraction〕ROMExtraction参数用来指定是否使用RAM宏单元。〔5〕ROM实现的类型〔ROMStyle〕ROMStyle参数仅对FPGA有效。FPGA中含有块RAM〔BlockRAM〕和可以形成分布式RAM〔DistributedRAM〕,可以通过设置ROMStyle使XST从代码中提取需要的ROM类型。3.HDL代码参数设置〔6〕多路选择器提取方式〔MUXExtraction〕MUXExtraction参数仅对FPGA有效,有以指定是否使用多路选择器宏单元。〔7〕多路选择器实现类型〔MUXStyle〕MUXStyle参数仅对FPGA有效,有以指定多路选择器宏单元的类型。缺省状态下为自动〔Auto〕。3.HDL代码参数设置〔8〕译码器提取方式〔DecoderExtraction〕DecoderExtraction参数仅对FPGA有效,用于指定是否使用译码器〔Decoder〕宏单元。〔9〕优先编码器提取方式〔PriorityEncoderExtraction〕PriorityEncoderExtraction参数仅对FPGA有效,用于指定是否使用优先编码器〔PriorityEncoder〕宏单元。缺省为自动〔Auto〕。3.HDL代码参数设置〔10〕移位存放器提取方式〔ShiftRegisterExtraction〕ShiftRegisterExtraction参数仅对FPGA有效,用于指定是否使用移位存放器〔ShiftRegister〕宏单元。〔11〕逻辑移位存放器提取方式〔LogicalShifterExtraction〕LogicalShifterExtraction参数仅对FPGA有效,用于指定是否使用逻辑移位存放器〔LogicalShifter〕宏单元。3.HDL代码参数设置〔12〕异或单元合并方式〔XORCollapsing〕XORCollapsing参数仅对FPGA有效,用于指定相关联的异或〔XOR〕单元是否合并为一个较大的异或宏单元。〔13〕资源共享〔ResourceSharing〕ResourceSharing参数用于指定是否要求XST复用运算模块。3.HDL代码参数设置〔14〕乘法器实现类型〔MultiplierStyle〕MultiplierStyle参数仅对FPGA有效,用于指定XST综合乘法器的类型,是基于查找表的〔LUT〕乘法器还是基于块乘法器〔BlockMultiplier〕。4.Xilinx专用参数选项Xilinx专用参数选项对话框中包含了一些Xilinx专有的结构中可以设置的属性。Xilinx专用参数选项对话框如右图所示。

4.Xilinx专用参数选项〔1〕添加I/O缓冲器〔AddIOBuffers〕AddIOBuffers参数用于指定是否需要在I/O上加上I/O缓冲器〔IOBuffers〕〔2〕最大扇出数〔MaxFanout〕MaxFanout参数仅对FPGA有效,用于指定信号和网线的最大扇出数。4.Xilinx专用参数选项〔3〕存放器复制〔RegisterDuplication〕RegisterDuplication参数仅对FPGA有效,用于指定是否允许进行存放器复制〔RegisterDuplication〕。〔4〕等效存放器删除〔EquivalentRegisterRemoval〕EquivalentRegisterRemoval参数用于指定是否把存放器传输级功能相等的存放器删除,以减少资源占用。4.Xilinx专用参数选项〔5〕存放器配平〔RegisterBalancing〕RegisterBalancing参数仅对FPGA有效,用于指定是否需要存放器配平。存放器配平是使较长路径缩短,较短路径加长,使其到达平衡从而提高工作频率的一种技术。4.Xilinx专用参数选项〔6〕Slice打包〔SlicePacking〕

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论