当前位置:   article > 正文

xilinx fpga学习笔记7:实现属性参数的功能_xilinx 禁止优化

xilinx 禁止优化
7.5 实现属性参数设置选项功能
1)翻译属性(Translate Properties):

a、使用位置约束(Use LOC Constraints):指定在输入网表或者UCF文件中是否使用位置约束,当设置为否时,NGDBuild忽略任何会导致错误的无效位  置信息,

      在命令行中用-r选项运行NGDBuild同样可以设置此属性为Flase。默认情况下,此属性是设置为True,表示翻译过程中使用源文件或UCF文件  的LOC约束。

b、网表翻译类型(Netlist Translation Type):说明如何使用NGDBuild源文件,该NGDBuild程序调用这些程序把设计的EDIF文件转换为xilinx软件工  具所要求的格      式。从下拉菜单中选择

(1)时间戳:网表生成器启动程序开始检查源文件和响应的NGO文件,如果NGO时间戳比源文件网表晚,则网表生成器启动程序为NGDBuild返回found状态;

  如果没有发现NGD文件,则网表生成器启动程序从网表源文件中建立NGO文件(默认设置)。

(2)打开:总是翻译(转换)。

(3)关闭:从不翻译。

c、宏搜索路径(Macro Search Path):指定用于解析文件的搜索路径,这些文件引用了例化设计模块,这些引用对应于EDIF或者NGC/NGO文件,这个选 项也支持

      哪些用于宏或者在原理图上使用FILE=filename属性指定的文件路径。指定多个查找路径使用“|”。

   d、从端口创建I/O pad(Creat I/O Pads from ports):指定是否为所有顶层端口添加PAD属性,如果仿真网表格式是由PAD符号转换成端口的EDIF文件 则选择此项,

      如果涉及不包括路径,NGDBuild将插入这些,默认选择为否。

f、允许非扩展的模块(Allow Unexpanded Blocks):当遇到涉及中的块不能扩展为NGD原语时,指定NGDBuild是否继续进行,通常当块不能展开时,不会写NGD

     文件。当属性设置为True时,NGDBuild产生警告而不产生错误,并且写包含非扩展块的NGD文件,如果设计不包括所有低级别的模块,这个属  性允许设计通过

     NGDBuild而不会产生错误,默认情况为False。

g、网表生成器启动程序用户规则文件(User Rules File for Netlist Launcher):指定一个文件,用于控制NGDBuild解析文件。这个文件决定个接收 的网表输入文

      件,网表阅读程序读这些程序和默认的网表阅读程序选项,这些文件也允许指定第三方工具命令来处理设计。输入想要使用的用户规则  文件的位置和文件名或者点

     击浏览按钮来添加文件。

注意:用户规则文件必须是.urf扩展名文件,如果指定的规则文件没有扩展名,NGDBuild会为文件添加扩展名,如果指定的文件不是.urf文件,则会报错,

    NGDBuild会停止运行。

h、允许不匹配的LOC约束(Allow Unmatched LOC Constraints):当UCF文件网表中的网络名与UCF文件中的位置约束不匹配的时候,指定NGDBuild时候 忽略

      UCF文件中的位置约束。着个属性与尚未完成设计相关。在设计完成前,在UCF文件内分配了引脚,则引脚可能和网表不匹配,这是由于XST优化 时从网表中删除

      任何未用的输入和输出端口。当选项设置为True时,则当引脚不匹配的时候NGDBuild不会报错。默认情况时False。

i、其他NGDBuild命令行选项(Other NGDBuild Command Line Option):输入额外命令行选项,多个选项用空格分开。在这个属性输入的选项首先会出 现命令行,

                     即放在图形界面中指定的其他属性之前。避免重复设置属性选项。



2)映射属性(Map Properties):

a、时序驱动的填充和布局(Perform Timing-Driven Packing and placement,只支持V4、S3、S3A和S3E):在映射过程的填充过程中,是否对时序关 键路径指定

      优先级。用户产生的时间约束被用来驱动填充和布局操作。通常在UCF文件中描述时序约束。在翻译时,注解到设计中。在这个过程结束  后,结果是已经完成的布

      局设计,然后准备布线。如果在没有用户时间约束的情况下,选择时序驱动填充和布局,工具则为内部所有模块自动产生和  动态调整时序约束,才功能称为性能评

      估模式。这种模式所达到的性能不一定是每个时钟可以达到最好的性能。相反,它是在权衡所有时钟的性能后  给出的最优设计,默认情况是Flase。

b、执行时序驱动填充(Perform Timing-Driven Packing,只支持V4和SII):在映射过程进行填充时,是否对时序的关键路径指定优先级,用户生成的 时间约束被用

      来驱动填充操作,时序约束通常在UCF文件中描述,在翻译时被附件到设计中,默认情况时False,时序驱动不会被执行。

c、映射努力等级(Map Effort Level只支持V4、S3、S3A和S3E):只有当执行时序驱动填充和布局选项为True时,此选项才可用,指定在映射过程中的 努力级别,

      努力级别通过选择CPU密集算法来控制填充和布局的时间。从下拉菜单中选择优化等级:

(1)Standard:提供最快的运行时间和最低映射努力等级,适合不是很复杂的设计(默认设置)。

(2)High:提供最长的运行时间和最高的映射努力等级,适合比较复杂的设计。
d、额外努力(Extra Effort,只支持V4、S3、S3A和S3E):这个选项仅当布局优化等级设置为High时可用。指定映射是否要花费额外运行时间,来满足 困难时序约       束。从下拉菜单中选择:
(1)None:没有使用其他额外的努力级别(默认)
(2)Normal:一直运行到满足时序约束为止,除非发现此时序约束不可能满足。这个选项主要是满足时序约束。
(3)Continue on Impossible:尽管时序约束时不可能的,但一直运行来改善时序,直到没有进展为止。这个选项主要是接近满足时序。

f、布局器的努力级别(Placer Effort Level,只支持V5、V6、S6和S7):指定在映射过程中的努力等级,努力等级通过选择CPU密集算法来控制填充和 布局时间,可

     以将努力等级从Standard设置到High进行选择。

(1)Standard:提供最快的运行时间和最低映射努力等级,适合不是很复杂的设计(默认设置)。
(2)High:提供最长的运行时间和最高的映射努力等级,适合比较复杂的设计。

g、额外布局器优化(Placer Extra Effort,只支持V5、V6、S6和S7):这个选项仅当布局优化等级设置为High时可用。这个属性为时间驱动的填充,设置额外的努

         力级别。

(1)None:没有使用其他额外的努力级别(默认)
(2)Normal:一直运行到满足时序约束为止,除非发现此时序约束不可能满足。这个选项主要是满足时序约束。
(3)Continue on Impossible:尽管时序约束时不可能的,但一直运行来改善时序,直到没有进展为止。这个选项主要是接近满足时序。

h、启动布局器代价表(Start Placer Cost Table,1~100):这个选项仅当时序驱动的打包和布局属性被设置为True时可用。指定映射初始化值,然后开始尝试映射,

       随后的每一次尝试,是在初始值的基础上分配一个增加的值,默认情况下为1。

i、组合逻辑优化(Combinaorial Logic Optimization):这个选项仅当时间驱动的填充和布局属性被设置为True时可用。指定是否要运行一个过程, 重新检查组合逻

     辑设计看是否可以做出改进整体设计性能。当运行着一个过程时,时序约束和逻辑填充信息被考虑其中。这个属性是ISE中物理综合  工具的一部分。默认选择为

     Flase,在设计中不运行这个过程。

j、寄存器复制:这个选项仅当时序驱动填充和布局属性被设置为True时可用。指定是否要复制进村器以帮助控制扇出。默认选择为Flase。

k、全局优化(Global Optimization,只支持V5、V6、S6和S7):此选项被设置为True,在对整个设计进行映射前,映射对完全组装的网表编译执行全  局优化例程。

         全局优化包括:逻辑重映射和裁剪,逻辑和寄存器复制和优化,以及三态逻辑的替换。因为额外的处理,这些例程将延长映射的时间,  默认外off:

(1)Off:禁止优化,当使用正式的验证流程时,建议设置为None。
(2)Speed:优化逻辑,以改善性能。
(3)Area:优化逻辑,以减少面积的利用率;这个选项只使用于V4。
(4)Power:优化逻辑,以减少动态功耗。
注意:当运行全局优化时,必须设置裁剪无连接信号和复制逻辑运行逻辑层减少为True。

l、重定时(Retiming,只支持V5、V6、S6和S7):只有当全局优化选项被设置为True时此选项可用。当此选项被设置为True时,寄存器通过逻辑向前或向后移动来

    平衡输出延时,提高全局的时钟频率。由于这个过程,寄存器的整体数目可能被改动,默认选择是Flase。

m、移除等效寄存器(Equivalent Register Removal,只支持V5、V6、V4和S7):只有当全局优化选项被设置为True时此选项可用。当此选项被设置为True时,通

      过检查有冗余功能的寄存器,看移除后是否增加时钟频率。此选项默认为True。

n、忽略用户时序约束(Ignore User Timing Constraints):此属性在布线过程中控制用户时序约束。指定时序约束的基本方法是在UCF文件中输入它 们。查看详细的

      时间约束信息。如果此属性选择为Flase,根据用户UCF文件内指定的时序约束、映射填充和布局。如果为True,在映射过程中,忽略  UCF文件中指定的时序约

     束。

(1)对于V4器件,布局布线会在无时序约束的情况下运行。时序模式属性会是无时序驱动模式。
(2)对于V5器件,时序模式属性的设置决定映射是否自动产生时序约束文件来控制填充和布局,还是在无时序约束下运行。
o、时序模式(Timing Mode):当使能忽略用户约束属性,此功能可用:

(1)无时序驱动(None Timing Driven):在此模式时,忽略用户约束文件(UCF)中指定的而时序约束。填充和布局会在无时序约束的情况下运行。这个选项

  会使映射过程更快,但是产生的输出的时候不考虑时序约束。

(2)性能评估(Performance Evalution):这个选项启动性能评估属性。在此模式时,忽略在用户约束文件中指定的时序约束。相反,在映射的过程中,自动生

  成用于所有内部时钟的时序约束和动态调整以提高性能。这种模式时用来评价设计中的真实器件的性能。

注意:默认时,属性设置为性能评估,用于V5器件;对于其他器件,属性设置为无时序驱动。

p、移除无连接信号(Trim Unconnected Signals):在映射前指定是否去除设计中的无连接元件和网络。当不选择此选项时,可以估计逻辑设计所要求资源和获取部

      分完成设计的时序信息。当执行一个未完成的设计,设置此属性为Flase来映射未连接的元件和网络。默认设置为True。

q、复制逻辑来允许减少逻辑门(Repicate Logic to Allow Logic Level Reduction):指定是否复制逻辑,例如,复制一个驱动多个负载的驱动器,每个单独的元件驱

      动一些负载。才选项可用来建立映射策略。可能更容易的满足设计者的时序约束。它减少了一些信号必须通过的逻辑单元,从而消  除路径延误。默认为True,复制

      逻辑。

r、允许跨层次逻辑优化(Allow Logic Optimization Across Hierachy):当此属性为True时,映射忽略任何保持层次的综合过程的属性设置,映射可以通过任何层次

     界限进行优化,这个属性是用来保留那些为了仿真而跨越边界的信号。通过执行这个优化来得到更好的时序性能。默认为Flase。

s、映射到输入函数(Map to Input Function):指定覆盖Fpga结构的最大函数的大小,从下拉列表中在4(F4MUX)和8(F8MUX)中选择,对V5器件默认设置为

      6,而其他器件默认为4。

t、优化策略(Optimization Strategy):指定在映射中覆盖阶段的标准,在覆盖期间,映射过程分配逻辑到CLB函数发生器,从下拉列表中选择:
(1)Area:减少Lut的数量具有最高的优先级(默认)。

(2)Speed:减少LUT级的数量(一个路径穿过LUT的数量)具有最高优先级。在布局布线后,这个设置让你的设计容易达到时序约束要求。对于大多数设计,

    会增加少量的LUT,而有的情况会增加很多。

(3)Balanced:权衡两个优先级。
(4)Off:禁止优化。

u、产生详细的映射报告(Generate Detailed MAP Report):指定时候显示详细的报告,详细的映射报告显示被移除的多余块和在映射过程中合并的信号。它也显示

      扩展的逻辑,信号交叉引用,符号交叉引用。默认为Flase。

v、使用RLOC约束(Use RLOC Constraints):指定是否使用包括CLB之间的相对布局的RLOC信息。
(1)Yes:映射使用RLOC信息,包含可能导致映射过程错误的非法信息。
(2)No:映射不使用RLOC信息。
(3)FOr Packing Only:值在填充的时候使用RLOC信息。

w、填充I/O寄存器/锁存器到IOB(Package I/O Register/Latches into IOBs):控制在I/O单元内的触发器和锁存器的填充,通常情况下,仅当设计人员的设计输入方法

       指定时,映射器在一个I/O单元填充触发器或者锁存器。这个选项允许设计者在设计入口阶段后,控制填充。

(1)Off:通过你的设计入口方法,选择填充的触发器或者锁存器。
(2)For Input Only:填充触发器或者锁存器到输入I/O单元。
(3)For output Only:填充触发器或者锁存器到输出I/O单元。
(4)For Input and Ouput:填充触发器或者锁存器到输入输出I/O单元。
注意:默认为Off。

x、禁止寄存器排序(Disable Register Ordering):控制寄存器排序,当你映射包含寄存器的设计,映射器优化寄存器成组放进CLB的方式,这个优化布局被称为寄

     存器排序。默认为Off。

y、最大压缩(Maxim Compreesion,支持V5/6,S6/7):当设置为真时,这个选项引导映射尽可能的高密度的填充设计逻辑,这是以牺牲布局布线性能为代价的。默

      认为Off。

z、CLB填充打包因子百分比(CLB Package Factor Percentage):执行时序驱动填充和布局属性为Flase时,这个属性可用。通过百分比来说明要备分隔的逻辑密

     度。高百分比导致低密度填充,高的CLB填充百分比影响布局布线的性能,导致较高的时延和更多的不能布线网络。在此属性选项中输入  数值,默认设置为

    100%,表示所有CLB可用。

!:LUT组合(LUT Combining,高级选项,只支持V5、V6、S6和7系列):LUT连接将带有共同输入LUT对合并到单个的双输入和6输入的LUT,以改善设计面积。

        这个优化进程会降低设计速度:

(1)NO:禁止LUT组合(默认)。
(2)Auto:映射在面积和速度上折中。
(3)Area:在实现中尽可能连接LUT。

@:映射切片逻辑到未使用的BRAM(Map Slice Logic into Unused Block RAMs,高级选项):指明映射是否将LUT和触发器放到BRAM块中实现。默认情况为

Flase。

#:降低功耗(Power Reduction):对于S3、S3a、S3e和V4器件,当执行时序驱动填充和布局属性为Ture时,这个属性是可用的,在时序驱动填充和布局时,降低

      功耗用来控制映射是否优化布局来减少功耗:

(1)Off/False:禁止功率优化。

(2)On/True:在布局器件,指定使用功率优化算法来减少数据和时钟网络上的容性负载,用于降低动态功耗。这个选项的主要权衡是额外的运行时间和修

     改布局,可能会导致性能的轻微降低。

(3)High:注意这个设置只应用于S6,V6和7的起器件。指定使用智能的门控算法,减少整个的切换,来降低设计中的动态功耗。这个选项主要权衡是额外

       的运行时间、最小面积的增加,增加系统存储器要求和在数据和控制路径上的额外逻辑,可能导致性能的降低。然后,该设置选项比On设置能更

      加的节约功耗。

(4)Extra Effort:注意这个设置只应用于S6,V6和7的起器件。指定使用On和High算法,用于最大降低动态功耗的优化。这个选项对运行时间、面积、存储

   器和性能方面有最大的影响可能导致性能的降低。当最大资源运行时,才使用这个选项。

¥:功率活动文件(Power Active File):如果功率降低属性设置为On/True时,该属性可用。当优化设计降低功耗时,这个属性允许指定.vcd或者.saif仿真文件来引

        导映射。这个文件使运行设计仿真的时候输出的。为了降低功耗,映射使用这个文件去设置信号的活动率,这个信号不是输入或者输出的,而是到设计的内部。智

能门控时钟优化并不受功率活动文件的影响。

%:使能多线程(只支持v5/v6/s6/s7):指定是否使用多个处理器来使能在布局器和布线器中的多个线程的能力。当设置为Off时,使用一个处理器。当设置为2时,使

用2个处理器,默认为Off。

&:其他映射命令选项:输入附加的命令行选项,多个选项用空格分开,这些属性的选项首先出现在命令行,放在图形界面中指定的其他属性以前,避免重复设置。


3)布局布线属性(Place & Route Properties):下列属性适用于布局布线过程和设计实现过程。对于所有的FPGA芯片,这些属性是一样的。
a、布局布线模式(Place and Route Mode):指定在设计中想要实现的布局布线方式。从下拉列表中选择一个属性:
(1)Normal Place and Route:由用户指定的努力级,或默认选项运行PAR。该设置对S6、V6和V7不可用。
(2)Place Only:由用户指定的努力级,或默认选项运行PAR。不运行布线器。使用此选项,PAR进程至少运行一次。

(3)Route Only:由用户指定的努力级,或默认选项运行PAR。不运行布局器(保持当前的布局)。使用此选项,PAR进程至少运行一次,对S3/S3A/S3E和V4

  器件,如果设计由布局和布线进程布局,则只使用这个选项。如果布局设计使用映射过程中执行时序驱动填充和布局属性,不使用这个属性。取而代之,使

  用Normal Place and Route选项,它从映射中取出布局过的设计,自动只运行布线。

(4)Reentrant Route:可重入的布局布线。如果以任意布线作为起点,布线器使用存在的布线可重入模型中运行一次。布线器由努力级控制。对于一般的设计,

  不推荐使用此选项。默认情况下,对于V5/V6/S6/S7系列,该属性设置为Route Only。其他器件设置为Normal Placeand Route。

b、布局布线努力级(Place and Route Effort Level,overall):指定想要应用于布局布线过程中的努力级,努力级通过选择用于布局布线多或少的CPU密集算法,以控

      制布局布线的次数:

(1)Standard:通过最少的布局布线努力,给出最快的运行时间,适用于不太复杂的设计。
(2)High:有最好的布局布线结果,运行实际也长,适用于复杂设计(默认设置)。
c、布局器努力级(Placer Effort Level,只支持S3/S3A/S3E/V4):指定布局设计时所用的布局努力级。指定这一属性将覆盖布局布线工作级属性中布 局努力级设置。
(1)None:不应用任何布局努力级(默认)。
(2)Standard:最少的布局努力,工作时间最短,适用于不太复杂的设计。
(3)High:有最好的布局结果,运行时间也最长。适用于更复杂的设计。
d、布线器努力级(Router Effort Level,只支持S3/S3A/S3E/V4):指定布线计时所用的布线努力级。指定这一选项将覆盖布局布线努力级选项中的布 线努力级。
(1)None:不应用任何布局努力级(默认)。
(2)Standard:最少的布局努力,工作时间最短,适用于不太复杂的设计。
(3)High:有最好的布局结果,运行时间也最长。适用于更复杂的设计。

4)映射后静态时序报告属性(Pose-Map Static Timing Report Properties):

  下列属性适用于设计实现过程和生成前映射静态时序报告过程。
   1、报告类型:指定想要运行的报告的类型。
   (1)Error Report:列出时序错误和相关网络/路径延迟信息。从最坏情况到最好情况一一列出失败路径。
   (2)Verbose Report:和Error Report类似,但是为设计中的所有约束路径和网络提供了详细的延迟信息(默认)。
  2、错误/详细报告中的项目数(Number of Paths in Error/Verbose Report):指定在错误/详细报告中显示路径的数目。输入0~20亿之间的一个数。默认情况下,该属性设置为3。
3、执行高级分析(Perform Advanced Analysis):指定是否为时序约束生成一个高级分析。高级分析将给出一个列出所有时钟和每个时钟要求的OFFSET的分析表。还包含一个只有组合逻辑的路径的分析(按延迟排序)。仅在PCF文件中没有提供任何时序约束的条件下,选择该选项。默认情况下,该属性设置为False,不执行高级分析。
4、更改芯片的速度到(Change Device Speed To):不需要运行重新布局布线而为设计制定一个新的速度等级。该变速度等级可以帮助确定是否需要一个更快的目标芯片以满足时序要求,或者使用更慢的速度等级时,是否仍然能满足时序约束。在目标芯片可行的情况下,也可以通过选择Absolute MIN来用最少的时序值创建一个时序仿真网表。该属性会显示所使用芯片所有有效的速度等级,默认已经为设计选择了速度等级。
5、报告未约束的路径(Report Unconstrainted Paths):在PCF约束文件中报告显示没有被时间约束所覆盖的延迟。当输入值时,一个未约束路径的分析的约束添加到已经存在的约束中。这个约束在任意一个没有使用其他约束的路径上,执行一个默认路径的列举。输入的数字,确定了需要报告的没有约束路径的最大数量。默认情况下该属性为空。
6、由端点的报告路径(Report Patch by Endpoint):根据每个约束的端点的数目,指定出现在报告中的最坏情况路径的个数。如果输入值,报告在一个约束中,每个端点的最坏情况路径。在报告中出现的路径的个数是基于每约束端点的个数和每端点路径个数的乘积。输入的数决定了需要报告的,每个约束总端点的数量或者每个端点的路径个数。
7、在每个约束中报告快速路径(Report Fastest Path in Each Constraint):设置为Ture时,该属性报告了对OFFSET OUT和FROM:TO的最快的路径约束,或者OFFSET IN和PERIOD约束中保持路径上的松弛(Slack)。还将显示在保持冲突之前出现多少个松弛(Slack)。该属性也报告用于生成在时序报告中的建立/保持数据表中的保持要求的等式。默认情况下,该属性设置为False。
8、生成数据手册部分(Generate Datasheet Section):产生和添加一个数据手册报告部分到时序报告中,这部分总结了用于设计的额外的时序参数。默认时,产生数据手册部分。
9、产生时间组部分(Generate Timegroups Section):产生和添加一个时间组部分到时序报告中,这部分列出了指定用于设计的时间组。默认时,不产生时间组部分。
10、产生约束互动报告文件(Generate Constraints Interaction Report File):当创建时序报告时,指定是否产生一个约束交互报告。约束交互报告描述了每个时序约束所覆盖的电路和如何间隙重叠的时序约束。当设置为True时,生成一个TSI文件,文件名字为top_module_name_preroute.tsi。默认时,不产生报告。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/896830
推荐阅读
相关标签
  

闽ICP备14008679号