Xilinx FPGA编程技巧之常用时序约束详解.docxVIP

Xilinx FPGA编程技巧之常用时序约束详解.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Xilinx FPGA编程技巧之常用时序约束详解 1. 基本的约束方法 为了保证成功的设计,所有路径的时序要求必须能够让执行工具获取。最普遍的三种路径为: . 输入路径(Input Path),使用输入约束 . 寄存器到寄存器路径(Register-to-Register Path),使用周期约束 . 输出路径(Output Path),使用输出约束 . 具体的异常路径(Path specific exceptions),使用虚假路径、多周期路径约束 1.1. 输入约束Input Constraint   OFFSET IN约束限定了输入数据和输入时钟边沿的关系。 1.1.1. 系统同步输入约束System Synchronous Input   在系统同步接口中,同一个系统时钟既传输数据也获取数据。考虑到板子路径延时和时钟抖动,接口的操作频率不能太高。 11简化的系统同步输入SDR接口电路图 12SDR系统同步输入时序 上述时序的约束可写为:   NET SysClk TNM_NET = SysClk;   TIMESPEC TS_SysClk = PERIOD SysClk 5 ns HIGH 50%;   OFFSET = IN 5 ns VALID 5 ns BEFORE SysClk; 1.1.2. 源同步输入约束Source Synchronous Input   在源同步接口中,时钟是在源设备中和数据一起产生并传输。 13简化的源同步输入DDR接口电路 14DDR源同步输入时序 上图的时序约束可写为:   NET SysClk TNM_NET = SysClk;   TIMESPEC TS_SysClk = PERIOD SysClk 5 ns HIGH 50%;   OFFSET = IN 1.25 ns VALID 2.5 ns BEFORE SysClk RISING;   OFFSET = IN 1.25 ns VALID 2.5 ns BEFORE SysClk FALLING; 1.2. 寄存器到寄存器约束Register-to-Register Constraint 寄存器到寄存器约束往往指的是周期约束,周期约束的覆盖范围包括: . 覆盖了时钟域的时序要求 . 覆盖了同步数据在内部寄存器之间的传输 . 分析一个单独的时钟域内的路径 . 分析相关时钟域间的所有路径 . 考虑不同时钟域间的所有频率、相位、不确定性差异 1.2.1. 使用DLL, DCM, PLL, and MMCM等时钟器件自动确定同步关系   使用这一类时钟IP Core,只需指定它们的输入时钟约束,器件将自动的根据用户生成IP Core时指定的参数约束相关输出,不需用户手动干预。 15输入到DCM的时钟约束 上图的时序约束可写为:   NET “ClkIn” TNM_NET = “ClkIn”;   TIMESPEC “TS_ClkIn” = PERIOD “ClkIn” 5 ns HIGH 50%; 1.2.2. 手动约束相关联的时钟域   在某些情况下,工具并不能自动确定同步的时钟域之间的时钟时序关系,这个时候需要手动约束。例如:有两个有相位关系的时钟从不同的引脚进入FPGA器件,这个时候需要手动约束这两个时钟。 16通过两个不同的外部引脚进入FPGA的相关时钟 上图的时序约束可写为:   NET“Clk1XTNM_NET=“Clk1X;   NET“Clk2X180TNM_NET=“Clk2X180;   TIMESPECTS_Clk1X=PERIODClk1X 7 5ns;   TIMESPECTS_Clk2X180=PERIODClk2X180“TS_Clk1X/2PHAS2 +1.25ns; 1.2.3. 异步时钟域   异步时钟域的发送和接收时钟不依赖于频率或相位关系。因为时钟是不相关的,所以不可能确定出建立时间、保持时间和时钟的最终关系。因为这个原因,Xilinx推荐使用适当的异步设计技术来保证对数据的成功获取。Xilinx约束系统允许设计者在不需考虑源和目的时钟频率、相位的情况下约束数据路径的最大延时。 异步时钟域使用的约束方法的流程为: . 为源寄存器定义时序组 . 为目的寄存器定义时序组 . 使用From-to和DATAPATHDELAY关键字定义寄存器组之间的最大延时 1.3. 输出约束Output Constraint   输出时序约束约束的是从内部同步元件或寄存器到器件管脚的数据。 1.3.1. 系统同步输出约束System Synchronous Output Constraint   系统同步输出的简化模型如图所示,在系统同步输出接口中,传输和获取数据是基于同一个时钟的。 17系统同步输

文档评论(0)

hkfgmny + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档