所谓综合,就是将HDL语言、原理图等设计输入翻译成由与、或、非门和RAM、触发器等基本逻辑单元的
逻辑连接(网表),并根据目标和要求(约束条件)优化所生成的逻辑连接,生成EDF文件。
完成了输入、仿真以及管脚分配后就可以进行综合和实现了。在过程管理区双击Synthesize-XST。
如图所示

综合可能有3种结果:如果综合后完全正确,则在Synthesize-XST前面有一个打钩的绿色小圈圈;如果有警
告,则出现一个带感叹号的黄色小圆圈,如本例所示;如果有错误,则出现一个带叉的红色小圈圈。综合
完成之后,可以通过双击View RTL Schematics来查看RTL级结构图,察看综合结构是否按照设计意图来实
现电路。ISE会自动调用原理图编辑器ECS来浏览RTL结构,所得到的RTL结构如图所示,综合结果符合设计
者的意图。

可以得到资源使用的图标
一般在使用XST时,所有的属性都采用默认值。其实XST对不同的逻辑设计可提供丰富、灵活的属性配置。
下面对ISE13.2中内嵌的XST属性进行说明。打开ISE中的设计工程,在过程管理区选中“Synthesis –XST”
并单击右键,弹出界面如图所示。
XST配置页面分为综合选项(Synthesis Options)、HDL语言选项(HDL Options)以及Xilinx特殊选项(Xilinx
Specific Options)等三大类,分别用于设置综合的全局目标和整体策略、HDL硬件语法规则以及Xilinx特有的结
构属性
 
 
 
 
 
 
 
 
 

分别介绍一些选项的意义:
【Optimization Goal】:优化的目标。该参数决定了综合工具对设计进行优化时,是以面积还是以速度作为优
先原则。面积优先原则可以节省器件内部的逻辑资源,即尽可能地采用串行逻辑结构,但这是以牺牲速度为代价
的。而速度优先原则保证了器件的整体工作速度,即尽可能地采用并行逻辑结构,但这样将会浪费器件内部大量
的逻辑资源,因此,它是以牺牲逻辑资源为代价的。
〖Optimization Effort〗:优化器努力程度。这里有【normal】和【high】两种选择方式。对于
【normal】,优化器对逻辑设计仅仅进行普通的优化处理,其结果可能并不是最好的,但是综合和优化流程执行
地较快。如果选择【high】,优化器对逻辑设计进行反复的优化处理和分析,并能生成最理想的综合和优化结
果,在对高性能和最终的设计通常采用这种模式;当然在综合和优化时,需要的时间较长。
【Use Synthesis Constraints File】:使用综合约束文件。如果选择了该选项,那么综合约束文件XCF有效。
【Synthesis Constraints File】:综合约束文件。该选项用于指定XST综合约束文件XCF的路径
【Global Optimization Goal】:全局优化目标。可以选择的属性包括有【AllClockNets】、
【Inpad To Outpad】、【Offest In Before】、【Offest Out After】、【Maximm Delay】。
该参数仅对FPGA器件有效,可用于选择所设定的寄存器之间、输入引脚到寄存器之间、寄存器到输出引脚
之间,或者是输入引脚到输出引脚之间逻辑的优化策略。
【Generate RTL Schematic】:生成寄存器传输级视图文件。该参数用于将综合结果生成RTL视图。 
【Write Timing Constraints】:写时序约束。该参数仅对FPGA有效,用来设置是否将HDL源代码中用于
控制综合的时序约束传给NGC网表文件,该文件用于布局和布线。
Xilinx特殊选项
Xilinx特殊选项用于将用户逻辑适配到Xilinx芯片的特殊结构中,不仅能节省资源,还能提高设计的工作频率.
也给大家介绍一些选项:
       【Add I/O Buffers】:插入I/O缓冲器。该参数用于控制对所综合的模块是否自动插入I/O缓冲器。默认
为自动插入。 
       【Max Fanout】:最大扇出数。该参数用于指定信号和网线的最大扇出数。这里扇出数的选择与设计的
性能有直接的关系,需要用户合理选择。

【Register Duplication】:寄存器复制。该参数用于控制是否允许寄存器的复制。对于高扇出和时序不能
满足要求的寄存器进行复制,可以减少缓冲器输出的数目以及逻辑级数,改变时序的某些特性,提高设计
的工作频率。默认为允许寄存器复制。
【Equivalent Register Removal】:等效寄存器删除。该参数用于指定是否把寄存器传输级功能等效的寄存
器删除,这样可以减少寄存器资源的使用。如果某个寄存器是用Xilinx的硬件原语指定的,那么就不会被删
除。默认为使能。
【Register Balancing】:寄存器配平。该参数仅对FPGA有效,用于指定是否允许平衡寄存器。可选项有
【No】、【Yes】、    【Forward】和【Backward】。采用寄存器配平技术,可以改善某些设计的时序条
件。其中,【Forward】为前移寄存器配平,【Backward】为后移寄存器配平。采用寄存器配平后,所用到
的寄存器数就会相应地增减。默认为寄存器不配平。
【Move First Flip-Flop Stage】:移动前级寄存器。该参数仅对FPGA有效,用于控制在进行寄存器配平
时,是否允许移动前级寄存器。如果【Register Balancing】的设置为【No】,那么该参数的设置无效。

【Move Last Flip-Flop Stage】:移动后级寄存器。该参数仅对FPGA有效,用于控制在进行寄存器配平
时,是否允许移动后级寄存器。如果【Register Balancing】的设置为【No】,那么该参数的设置无效。
【Pack I/O Registers into IOBs】:I/O寄存器置于输入输出块。该参数仅对FPGA有效,用于控制是否
将逻辑设计中的寄存器用IOB内部寄存器实现。在Xilinx系列FPGA的IOB中分别有输入和输出寄存器。如果
将设计中的第一级寄存器或最后一级寄存器用IOB内部寄存器实现,那么就可以缩短IO引脚到寄存器之间
的路径,这通常可以缩短大约1~2ns的传输时延。默认为【Auto】。 
【Slice Packing】:优化Slice结构。该参数仅对FPGA有效,用于控制是否将关键路径的查找表逻辑尽量
配置在同一个Slice或者CLB模块中,由此来缩短LUT之间的布线。这一功能对于提高设计的工作频率、改善
时序特性是非常有用的。 默认为允许优化Slice结构。 
【Optimize Instantiated Primitives】:优化已例化的原语。该参数控制是否需要优化在HDL代码中已例
化的原语。默认为不优化。

转载自:http://bbs.21ic.com/blog-731039-96621.html

XILINX XST综合的选项的含义的更多相关文章

  1. 用 dotTrace 进行性能分析时,各种不同性能分析选项的含义和用途

    对 .NET 程序进行性能分析,dotTrace 能应对绝大多数的场景.在开启一个进程进行性能分析之前,我们会看到一些性能分析选项(Profiler Options).本文将介绍这几个选项的含义,并用 ...

  2. gcc编译器常用选项的含义

    -w: 关闭编译时的警告, 也就是编译后不显示任何warning,因此有时编译中会出现一些诸如数据转换之类的可忽略警告, -Wall: 显示编译后所有警告 -W: 显示警告,但是只是显示编译器认为的会 ...

  3. XST综合、实现过程包含哪些步骤

    2013-06-25 18:53:50 在ISE的主界面的处理子窗口的synthesis的工具可以完成下面的任务: 查看RTL原理图(View RTL schematic) 查看技术原理图(View ...

  4. TortoiseSVN里checkout depth各选项的含义

    代表四种检出深度: 1.Fully recursive——全递归:检出完整的目录树,包含所有的文件或子目录.2.Immediate children,including folders——直接子节点, ...

  5. Xilinx 网站资源导

    Xilinx 网站资源导读 ———版权声明———–本文作者 Ricky Suwww.fpganotes.comrickysu.fpga@gmail.com 欢迎转载,转载请保持原样及署名商业使用须得到 ...

  6. Xilinx 网站资源导读2

    Xilinx 网站资源导读 ———版权声明———–本文作者 Ricky Suwww.fpganotes.comrickysu.fpga@gmail.com 欢迎转载,转载请保持原样及署名商业使用须得到 ...

  7. xilinx 网站资源导读

    [经验整理.01]Xilinx网站资源导读 ISE11版 标签:  ISE  Xilinx  入门  资源  2009-09-01 20:41 序 虽然自己也曾想过,但如果不是向农要求,把曾经写过的文 ...

  8. 基于Xilinx的Synthesize

    所谓综合.就是讲HDL语言.原理图等设计输入翻译成由与.或.非们和RAM.触发器登记本逻辑单元的逻辑连接(即网表).并依据目标和要求(约束条件)优化生成的逻辑连接. ISE-XST XST是Xilin ...

  9. Xilinx 7系列FPGA部分重配置【2】

    在之前的“Xilinx 7系列FPGA部分重配置[1]”中已经较为详细地记录了分别在工程模式(Project Mode)和非工程模式(Non-Project Mode)下.使用7系列的Xilinx F ...

随机推荐

  1. JavaScript 之 回调函数的返回值给全局变量赋值问题

    jQuery 中,会遇到$.get(url,data,callback,type) 或 $.post(url,data,callback,type) 返回值给全局变量赋值的问题: 例如: <sc ...

  2. Android运行机制

    一. Android平台各层 Android平台架构图,如下图:由上到下依次为应用程序.应用程序框架.库.Android运行时.Linux内核. 1.Linux内核: Android系统基于Linux ...

  3. 腾讯云兑现存储获取临时授权C#版

    腾讯官方没有提供C#版的,没办法自己根据java版改写了一个,这里面的坑花了我20多个小时,所以记录下 <%@ WebHandler Language="C#" Class= ...

  4. Java从零开始学十六(多态)

    一.什么是多态 多态性是指允许不同类的对象对同一消息作出响应.多态性包括参数化多态性和包含多态性.多态性语言具有灵活.抽象.行为共享.代码共享的优势,很好的解决了应用程序函数同名问题.多态有两种表现形 ...

  5. 子查询二(在HAVING子句中使用子查询)

    HAVING子句的主要功能是对分组后的数据进行过滤,如果子查询在HAVING中表示要进行分组过滤,一般返回单行单列的数据 示例一.查询部门编号,人数,平均工资,并且要求这些部门的平均工资高于公司的平均 ...

  6. Android——SD卡工具类——SDCardUtils.java

    package com.xdsjs.save.utils; /** * SD卡相关的辅助类 * Created by xdsjs on 2015/10/13. */ import java.io.Fi ...

  7. 解决 在POM配置Maven plugin提示错误“Plugin execution not covered by lifecycle configuration”

    eclipse在其POM文件的一处提示出错如下: Plugin execution not covered by lifecycle configuration: org.apache.maven.p ...

  8. use of _track and track_visibility

    Dosen't work...the followers don't recieve an email when the state is change. Here is the code in th ...

  9. 【Linux】在Linux上查看并替换特殊字符

    现有windows上新建的一个txt文件file01.txt,内容如下: 我们通过ftp上传到Linux,在Linux下使用命令cat –A file01.txt查看文件内容发现该文件的结尾全是^M$ ...

  10. python之函数用法execfile()

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函数用法execfile() #execfile() #说明:用来执行一个文件,相对于双击的效 ...