ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:351.96KB ,
资源ID:6008110      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6008110.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(XILINX 时序约束使用指南中文翻译.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

XILINX 时序约束使用指南中文翻译.docx

1、XILINX 时序约束使用指南中文翻译XILINX时序约束使用指南笔记(UG612)第一章 时序约束介绍第二章 时序约束方法第三章 时序约束原则第四章 在XST中指定时序约束第五章 在Synplify中指定时序约束方法第六章 时序约束分析第一章 时序约束介绍基本的时序约束包括:“PERIOD Constraints”“OFFSET Constraints”“FROM:TO(Multi-Cycle)约束”第二章 时序约束方法1,简介:2,基本的约束方法 根据覆盖的路径不同,时序要求变成一些不同的全局约束。最普通的路径类型包括:1,输入路径2,同步元件到同步元件路径3,指定路径4,输出路径XILI

2、NX的时序约束与每一种全局约束类型都有关。最有效的方法就是一开始就指定全局约束然后再加上指定路径的约束。在很多案例中,只要全局约束就可满足需求。FPGA器件执行工具都是由指定的时序要求驱动的。如果时序约束过头的话,就会导致内存使用增加,工具运行时间增加。更重要的是,过约束还会导致性能下降。因此,推荐使用实际设计要求的约束值。3,输入时序约束输入时序约束包括2种“系统同步输入”“源同步输入”输入时钟约束覆盖了输入数据的FPGA外部引脚到获取此数据的寄存器之间的路径。输入时钟约束经常用”OFFSET IN”约束。指定输入时钟要求的最好方法,取决于接口的类型(源/系统同步)和接口是SDR还是DDR。

3、OFFSET IN定义了数据和在FPGA引脚抓取此数据的时钟沿之间的关系。在分析OFFSET IN约束时,时序分析工具自动将影响时钟和数据延迟的因素考虑进去。这些因素包括:时钟的频率和相位转换时钟的不确定数据延迟调整除了自动调整,还可以在与接口时钟相关的”PERIOD”约束中另外增加时钟不确定。关于增加”INPUT_JITTER”的更多信息,参见第三章的”PERIOD Constraints”。“OFFSET IN”与单输入时钟有关,默认情况下,OFFSET IN约束覆盖了从输入pad到内部同步元件之间的所有路径。用于抓取那些从pad输入的数据的同步元件由指定的OFFSET IN时钟触发。应用

4、OFFSET IN约束被称为”global”方法。这是指定输入时序的最有效的方法。系统同步输入 在体统同步接口中,发送和抓取数据共用一个系统时钟。板上的布线延迟和时钟倾斜限制了接口的工作频率。更低的频率也会导致系统同步输入接口典型的采用SDR应用。系统同步SDR应用例子,见图2-1。系统同步SDR应用中,在时钟上升沿从源器件发送数据,下一个时钟上升沿在FPGA中抓取数据。全局”OFFSET IN”约束是对一个系统同步接口指定输入时序的最有效的方法。用这种方法,对每一个系统同步输入接口时钟都定义了一个”OFFSET IN”约束。这种单个约束覆盖了所有被同步元件抓取到的输入数据位的路径,这些同步元

5、件由指定输入时钟触发。指定输入时序:1, 定义接口相关的输入时钟的时钟”PERIOD”约束;2, 定义接口的全局”OFFSET IN”约束;例子理想的系统同步SDR接口的时序图见图2-2。全局”OFFSET IN”约束是:OFFSET = IN VALID BEFORE clock;在”OFFSET IN”约束中,IN 决定了数据一开始有效的起始时间到抓取数据的时钟沿之间的时间。在这个系统同步例子中,数据在抓取数据的时钟沿之前5ns有效。VALID 决定了数据有效时间。在这个例子中,数据有效时间为5ns。对这个例子,完整的”OFFSET IN”约束和相关的PERIOD约束如下:NET”SysC

6、lk”TNM_NET = “Sysclk”;TIMESPEC “TS_Sysclk” = PERIOD”SysClk” 5ns HIGH 50%;OFFSET = IN 5ns VALID 5ns BEFORE “SysClk”;源同步输入在源同步输入接口中,会重新产生时钟,重新生成的时钟和数据从源器件从相似的路径一起被传送出去。这个时钟然后会被用来在FPGA中抓取数据。电路板上的线路延时和板上的时钟倾斜都不会再限制接口的运行频率了。更高的频率会导致源同步输入接口典型的被应用为双数据速率(DDR)的应用。典型的源同步DDR应用见图2-3。在时钟上升沿和下降沿都会从源器件发送数据。 全局”OFF

7、SET IN”约束是对源同步接口指定输入时序的最有效的方法。在DDR接口,为每一个输入接口时钟的沿都会定义OFFSET IN约束。这些约束覆盖了输入数据位的路径,这些数据由指定输入时钟沿的触发的寄存器来抓取。 要指定输入时序必须:1, 为接口相关的输入时钟,定义时钟PERIOD约束;2, 为接口上升沿定义全局OFFSET IN约束;3, 为接口下降沿定义全局OFFSET IN约束;例源同步DDR接口的时序图见图2-4,接口时钟是周期为5ns占空比为50%的时钟。数据的每一位在半个周期内都有效。对DDR全局OFFSET IN的约束如下:OFFSET = IN VALIDBEFORE clock

8、RISING;OFFSET = INVALIDBEFORE clock FALLING;在OFFSET IN约束中,OFFSET = IN决定了从抓取时钟的时钟沿到数据开始有效的时间点之间的时间段。以此源同步输入为例,上升沿传送的数据在时钟上升沿之前1.25ns有效。同样下降沿传送的数据在时钟下降沿之前1.25ns有效。在OFFSET IN约束中,VALID决定了数据的有效时间。在这个例子中,上升沿和下降沿的数据都保持了2.5ns。此例中,OFFSET IN和与之相关的PERIOD约束如下:NET “SysCLK” TNM_NET = “SysCLK”;TIMESPEC “TS_SysClk”

9、 = PERIOD “SysClk” 5ns HIGH 50%;OFFSET = IN 1.25ns VALID 2.5ns BEFORE “SysClk” RISING;OFFSET = IN 1.25ns VALID 2.5ns BEFORE”SysClk”FALLING;4,寄存器到寄存器时序约束寄存器到寄存器或者“同步元件到同步元件”的路径约束覆盖了内部寄存器之间的同步数据路径。PERIOD约束包含以下方面:1, 定义了时钟域的时序要求;2, 分析单时钟域里的路径;3, 分析相关时钟域里的所有路径4, 考虑不同时钟域中所有的频率,相位和时钟不确定性的不同点。约束同步时钟域的应用和方法有

10、以下几种,这些策略包括:1,“自动相关同步DCM/PLL时钟域”2,“手动相关同步时钟域”3,“异步时钟域”通过允许工具自动创造DLL/DCM/PLL和输出时钟之间的关系,和手动定义外部相关时钟之间关系,所有同步跨时钟域路径都有合适的约束覆盖,和合理的分析。使用这些方法进行PERIOD约束就免去了额外的跨时钟域约束的必要。自动相关同步DCM/PLL时钟域时钟电路最普通的形式是下面之一:1, 输入时钟连接DLL/DCM/PLL;2, 输出用来作为期间内部同步路径的时钟在这个例子中,推荐对连接到DLL/DCM/PLL的输入时钟做PERIOD约束。通过对输入时钟进行PERIOD约束,XILINX工具

11、自动:1, 自动给每一个DLL/DCM/PLL的输出时钟派生出一个新的PERIOD约束;2, 决定了输出时钟域之间的时钟关系,自动分析这些时钟域自己的任何路径例输入时钟驱动DCM的电路如图2-5;本例的PERIOD约束语法如下:NET”ClockName” TNM_NET = “TNM_NET_Name”;TIMESPEC “TS_name” = PERIOD”TNM_NET_Name” PeriodValue HIGH HighValue%;在PERIOD约束中,”PeriodValue”定义了时钟周期的有效时间。在本例中,DCM的输入时钟周期为5ns。”HighValue”表示时钟波形为“

12、HIGH”在一个时钟周期中所占的百分比。本例的语法如下:NET “ClkIn” TNM_NET = “ClkIn”;TIMESPEC “TS_ClkIn” = PERIOD “ClkIn” 5 ns HIGH 50%;基于以上给出的输入时钟PERIOD约束,DCM自动:1,为DCM输出创造2个时钟约束2,在2个时钟域之间分析性能手动相关同步时钟域在某些情况下,同步时钟域之间关系不能由工具自动指定。例如,当相关的时钟从两个独立的引脚进入FPGA时,碰到这种情况,XILINX推荐你用下面的步骤:1, 为每一个输入时钟定义PERIOD约束;2, 手动定义时钟之间关系;一旦你定义了手动关系,两个同步域

13、之间的所有路径都会被自动分析。分析将会把所有的,频率,相位和不确定信息考虑进去。XILINX约束系统允许使用包含时钟频率和相位传送的PERIOD约束来定义时钟域之间complex manual relationship。如果要使用PERIOD约束来定义时钟域之间的complex manual relationship,需要:1, 为主时钟定义PERIOD约束;2, 以第一个PERIOD约束作为参考,为相关时钟定义PERIOD约束;两个相关的时钟从2个独立的引脚进入FPGA,见图2-61, clk1x是主时钟2, clk2x180是相关时钟本例的PERIOD约束语法如下:NET”PrimaryC

14、lock” TNM_NET = “TNM_Primary”;NET”RelatedClock” TNM_NET = “TNM_Related”;TIMESPEC “TS_primary” = PERIOD “TNM_Primary” PeriodValue HIGH HighValue%;TIMESPEC”TS_related” = PERIOD “TNM_Related” TS_Primary_relation PHASE value;在related PERIOD定义中,PERIOD值被定义为与主时钟的一个时间单元(period)关系。这种关系以主时钟TIMESPEC的形式表达。在本例中,

15、CLK2X180的频率是CLK1X的2倍,这就导致PERIOD是其一半。在related PERIOD定义中,相位值定义了源时钟和相关时钟在上升时钟沿的时间差异。在本例中,因为CLK2X180时钟是180度相移,所以上升沿比主时钟的上升沿晚1.25ns。本例的约束语法如下:NET”Clk1X” TNM_NET = “Clk1X”;NET “Clk2X180” TNM_NET = “Clk2X180”;TIMESPEC “TS_Clk1X” = PERIOD “Clk1X” 5 ns;TIMESPEC “TS_Clk2X180” = PERIOD”Clk2X180” TS_Clk1X/2 PHA

16、SE +1.25ns;异步时钟域异步时钟域是指那些源和目的时钟频率或者相位关系不同的时钟域。因为时钟不相关,所以无法决定setup和hold时钟分析的最终关系。鉴于此,XILINX推荐使用合适的异步设计技术来确保能够成功抓取数据。合适的异步设计技术的例子是用FIFO来抓取异步时钟域之间的传输数据。如果没有特别要求,可以不用考虑时钟路径评论或相位关系,而在封闭的区域中约束最大数据路径延迟。XILINX约束系统允许不用考虑源和目的时钟的频率和相位关系来约束最大数据路径延迟。这个要求用带”DATAPATHONLY”关键词的FROM-TO约束来指定。不用考虑源和目的时钟频率和相位关系的最大路径延时约束

17、如下:1, 为源同步元件定义时钟组;2, 为目的同步元件定义时钟组;3, 用带”DATAPATHONLY”关键词的FROM-TO在两个时钟组之间定义最大数据路径延时;例子两个不相关的时钟从外部2根独立的管脚进入FPGA如下图1, CLKA是源时钟2, CLKB是目的时钟这个例子的语法如下:NET “CLKA” TNM_NET = FFS “GRP_A”;NET”CLKB” TNM_NET = FFS”GRP_B”;TIMESPEC TS_Example = FROM “GRP_A” TO”GRP_B” 5ns DATAPATHONLY;5,输出时序约束输出时序覆盖了,从FPGA内部寄存器到FP

18、GA外部管脚之间的数据路径。OFFSET OUT约束指定了输出时序。指定输出时序要求的最好方式取决于type(源/系统同步)和接口的SDR/DDR。OFFSET OUT 定义了从FPGA发送的数据的最大允许时间。输出延时路径从FPGA的输入时钟管脚开始,通过输出寄存器到FPGA的数据管脚。见图2-8。 当分析OFFSET OUT约束时,时序工具自动将影响时钟延迟和数据路径的内部因素考虑进去。这些因素包括:1, 时钟的频率和相位变化2, 时钟的不确定性3, 数据路径延迟调整系统同步输出 系统同步输出接口中,一个共同的系统时钟既用来传输也用来抓取数据。因为这个接口使用一个共同的系统时钟, FPGA

19、只发送数据。如果必须约束这些路径,全局OFFSET OUT约束是指定系统同步接口输出时序的最有效的方式。这个单约束覆盖了所有从寄存器输出的数据的路径,这些寄存器是由指定的输入时钟触发的。要指定这些输出时序需:1,为输出时钟定义时钟名称(TNM)来创建个时钟组,这个组包含了所有由输入时钟触发的输出寄存器。2,定义接口的全局OFFSET OUT约束。例系统同步SDR输出接口的时序图见图2-10。此例中的数据必须在输入时钟沿最长5ns之后有效。系统同步接口的全局OFFSET OUT语法如下:OFFSET = OUT value AFTER clock;OFFSET OUT约束中,OFFSET = O

20、UT 决定了从FPGA输入端口时钟上升沿到FPGA输出端口数据开始有效的最大时间。在此系统同步例子中,输出数据最多在输入时钟边沿的5ns之后有效。本例,完整的OFFSET OUT约束如下:NET”ClkIn” TNM_NET = “ClkIn”;OFFSET = OUT 5ns AFTER “ClkIn”;源同步输出源同步输出接口内会重新生成时钟,新生成的时钟和数据一起从FPGA送出。接口的性能主要由系统噪声和新生成的时钟和数据位之间的倾斜限制。在本接口中,从输入时钟边沿到输出数据有效开始,这段时间没有输出数据位之间的倾斜重要,在大部分的例子中,可以不约束它。全局OFFSET OUT约束是对源

21、同步接口指定输出时序的最有效的方法。在DDR接口,输出接口时钟的每一个沿都指定了OFFSET OUT约束。这些约束覆盖了所有又触发器传输的数据位的所有路径,这些触发器由指定输出时钟沿触发。欲指定输入时序需:1,为输出时钟定义个时钟名(TNM)来创建一个时钟组,这个组包含了所有由输出时钟触发的寄存器;2,为接口时钟上升沿定义全局OFFSET OUT约束;3,为接口时钟下降沿定义全局OFFSET OUT约束;例子理想的源同步DDR接口时序图见图2-12。在OFFSET OUT约束中,OFFSET = OUT决定了从输入时钟端口的上升沿到FPGA输出端口数据开始有效之间的最大时间。当从OFFSET

22、OUT约束忽略掉的时候,报告输出总线倾斜的约束变成了report-only specification。关键词REFERENCE_PIN定义重新生成的输出时钟作为参考点,而输出数据管脚倾斜的报告就是根据这个参考点生成的。对于本例,时钟上升沿和下降沿的完整的OFFSET OUT约束如下:NET “CLKIn” TNM_NET = “ClkIn”;OFFSET = OUT AFTER “ClkIn” REFERENCE_PIN “ClkOut” RISING;OFFSET = OUT AFTER “ClkIn” REFERENCE_PIN “ClkOut” FALLING;6,时序异常用输入,寄存

23、器-寄存器,和输出时序的全局约束,或许可以约束大部分的路径。在特定的例子中,全局约束规则不适合某些特定的少数路径。异常的最普遍的形式是:“False Paths”“Multi-Cycle Paths”False Paths在某些情况下,如果你确定某些路径不会影响时序性能,那么你就会想将这些路径从时序约束中移除出去。最常用的方法是用带有timing ignore (TIG)关键词的FROM-TO约束。这允许你去:1, 在一个源时钟组中指定一组寄存器2, 在一个目的时钟组中指定一组寄存器3, 自动将这些时钟组之间的所有路径从分析中移除掉要用这种方法来指定timing ignore(TIG)约束,定

24、义:1, 源时钟组的一组寄存器2, 目的时钟组的一组寄存器3, 带有TIG关键词的FROM-TO约束移除两个时钟组之间的路径例子 假设两个寄存器之间的路径并不影响设计的时序,希望将这条路径移除掉。见图2-13 两个时钟组之间定义一个TIG的通用语法如下: TIMESPEC “TSid” = FROM “SRC_GRP” TO ”DST_GRP” TIG;在FROM-TO TIG例子中,SRC_GRP定义了一组源寄存器,这组寄存器是这条时序路径的起点。DST_GRP定义了一组目的寄存器,这组寄存器是这条时序路径的终点。所有从SRC_GRP开始到DST_GRP结束的路径都被忽略了。本例的语法如下:

25、NET “CLK1” TNM_NET = FFS “GRP_1”;NET “CLK2” TNM_NET = FFS ”GRP_2”;TIMESPEC TS_Example = FROM “GRP_1” TO “GRP_2” TIG;多周期路径在多周期路径中,数据以低于PERIOD定义的时钟频率从源同步元件传输到目的同步元件。当同步元件用一个共同的时钟使能信号作为门控时,上面这种情况最常见。通过定义一个多周期路径,这些同步元件的时序约束将比默认的PERIOD约束宽松。多周期路径约束可以考虑PERIOD约束标识符(TS_clk125)时钟周期的数量(TS_clk125*3)。执行工具然后就能够合理

26、的分配执行这些路径的优先级。指定一组多周期路径的共同方法是用时钟使能信号定义一个时钟组。这允许你:1, 用一个公用的时钟使能信号定义一个包含了源和目的同步元件的时钟组。2, 自动将多周期约束应用到这些同步元件之间的所有路径如果要用这种方法指定FROM:TO(多周期)约束,需要定义:1, 公用时钟域的PERIOD约束;2, 基于公用时钟使能信号的一组寄存器;3, 描述新的时钟需求的FROM:TO(多周期)约束例子图2-14显示了一种假想的情况。在这种情况下两个寄存器共用一个时钟使能信号。在本例中,时钟使能信号的切换频率是参考时钟频率的一半。 在不同时钟组之间定义多周期路径的通用语法如下: TIM

27、ESPEC “TSid” = FROM “MC_GRP” TO “MC_GRP” ;在FROM:TO(多周期)的例子中,MC_GRP定义了一组由公用时钟驱动的寄存器。所有从MC_GRP开始到MC_GRP结束的路径,可以应用多周期时序要求。进出MC_GRP的路径可以用合适的PERIOD约束来分析。本例约束的语法如下:NET”CLK1”TNM_NET = “CLK1”;TIMESPEC “TS_CLK1” = PERIOD “CLK1” 5ns HIGH 50%;NET”Enable” TNM_NET = FFS “MC_GRP”;TIMESPEC TS_Example = FROM “MC_GR

28、P” TO “MC_GRP” TS_CLK1*2;第三章 时序约束原则本章讨论了时序约束的根本,包括:“PERIOD Constraints”“OFFSET Constraints”“FROM:TO (Multi-Cycle) Constraints”为了更好的理解约束系统子系统,讨论了组元件的能力。这一章包括:“约束系统“约束优先级“时序约束“时序约束语法“建立时序约束“约束系统 这部分讨论了约束系统,包含以下内容: “约束系统简介“DLL/DCM/PLL/BUFR/PMCD元件“用TNM/TNM_NET创建时序组“组约束“约束系统简介约束系统是解析和理解设计的物理和时序约束的执行工具(NG

29、DBUILD)部分。约束系统有如下特性:1,从NCF,XCF,EDN,EDF,EDIF,NGC,NGO等文件中解析出约束信息并将这些信息送到其它执行工具。2,验证设计的约束是否正确3, 将必要的特性应用到相应的元件上4, 为不正确的约束生成错误和告警信息DLL/DCM/PLL/BUFR/PMCD元件本节讨论了DLL/DCM/PLL/BUFR/PMCD元件,包含以下方面内容:1,“DLL/DCM/PLL/BUFR/PMCD元件简介”2,“转变条件”3,“DCM输出的新的PERIOD约束”4,“同步元件”5,“用NET PERIOD分析”6,“PHASE 关键词”7,“用PHASE控制DLL/DC

30、M/PLL”DLL/DCM/PLL/BUFR/PMCD元件简介如果对输入时钟网络指定TIMESPEC PERIOD约束,那么输出时钟要用新PERIOD约束。为了产生目的元件时序组,在转换时候,每一个时钟修改模块的时钟输出脚被给定:1, 一个新的TIMESPEC PERIOD约束2, 一个相应的TNM_NET约束新的TIMESPEC PERIOD约束是基于时钟修改模块的基础上修改的。转变:1, 考虑到时钟输出的相位关系因素;2, 为PERIOD要求的值设置合适的乘数或除数转换条件当时钟修改模块的CLKIN管脚有TIMESPEC PERIOD约束且满足下面条件时候,会产生转换:1, 当与PERIOD约束相关的组刚好被用在一个PERIOD中2, 与PERIOD约束相关的组没有被用在其它的时序约束中,包括 FROM:TO(多周期)或者OFFSET约束。3, 与PERIOD约束相关的组与其它的用户组定义无关DCM输出的新PERIOD约束如果“转换条件“满足了,TIMESPEC “TS_clk20” = PERIOD “clk20_ep” 20ns HIGH 50%; 约束翻译成了下面的约束,下面的约束是基于图3-1的时钟结构的。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1