tag 标签: timequest

相关博文
  • 热度 27
    2015-5-8 11:25
    1191 次阅读|
    0 个评论
    附件里面把TimeQuest cookbook的翻译重新整理了一遍,并配上的详细的注释已经自己的一些理解,分享给广大学习FPGA时序约束的盆友们,一起学习,一起进步
  • 热度 22
    2015-4-29 17:41
    3197 次阅读|
    1 个评论
    TimeQuest Timing Analyzer 工具使用一例 作者: RyudoYang   工具版本: Quartus II 13.1+ TimeQuest Timing Analyzer 同事在进行 SDR SDRAM 时序约束时遇到工具使用和概念上的诸多问题,有些问题具有代表性,这里一并总结。 (1)     问题抽象 图 1 SDR SDRAM 约束问题抽象 图 1 是 SDR SDRAM 接口电路的抽象(以输入数据为例进行分析)。 由 PLL 产生 2 个 133MHz 的时钟,其中 C0 输出作为 SDR SDRAM 的芯片时钟使用,另一个时钟经过 270 °的移相,作为 SDR SDRAM 输入数据的锁存时钟使用。注意,这里时钟的用法也是解决很多时序问题的技巧之一。 以上是该问题的抽象,不需要过多解释。   (2)     TimeQuest Timing Analyzer 使用与分析过程 对图 1 所示的小工程进行全编译之后,打开 TimeQuest Timing Analyzer (以下简称为 TQ )进行分析。 首先进行时钟设置。 图 2 时钟约束 第 2 步,对 SDR SDRAM 用到的时钟进行约束,该时钟是通过 PLL 的 C0 输出得到的。采用的约束是: create_generated_clock -name clkout -source }] ,然后更新网表,检查约束是否生效。 图 2 新的时钟约束已经生效 第 3 步,对外部输入延时进行设置,为了简化,采用的约束是: set_input_delay -clock { clkout } 5 ,生效后检查建立时间,发现违规。   图 3 建立时间违规 通过分析得出,违规路径有三个参数延时很大,分别是时钟延时,外部固有延时,数据输入延时。在一般情况中,外部固有延时是固定的,可更改的余地有限,主要是通过减小另外两个延时来达到时序收敛。这里假设另外两个延时也不可以更改,那么如何达到时序收敛呢?通过观察违规波形,发现如果使用 锁存时钟的第 3 个时钟沿 来锁存数据是可以满足时序收敛的,带来的影响就是必须对设计进行调整,使用锁存时钟的第 3 个时钟沿锁存的数据来进行后续处理,简单来说就是增加了有效数据的潜伏期。 第 4 步,更改设计之后重新进行时序分析,这里必须使用多周期约束把设计意图告知 TQ ,使其能够进行正确的时序分析。采用的约束是: set_multicycle_path -from -to -setup -end 3 。生效后重新检查结果,发现已经符合预期。 图 4 时序已经收敛   (3)     问题总结 通过以上例子,总结一下使用 TQ 时应该注意的问题: 第一,使用 TQ 之前必须弄清楚相关概念的含义与他们之间的关系,比如 Setup Time 、 Hold Time 、 Data Arrival Time 、 Data Required Time 等概念,这样才能看懂 TQ 生成的波形图; 第二,先抽象出电路,再开始约束。约束对象往往比较复杂纷繁,先把其实际表达的电路,尤其是电路路径抽象出来,可以很好的辅助分析; 第三,开始约束之后,首先约束的内容必须是时钟,这些时钟包含由 PLL 直接产生的时钟以及各类派生时钟和虚拟时钟,只有时钟建立正确,后面的结果才有分析的价值与意义; 第四,约束必须符合设计意图,违背设计意图的约束即使达到了时序收敛,也毫无意义。这里以上面的多周期约束为例,通过分析违规时序可知必须更改设计,完成修改之后,必须把这一设计意图通过多周期约束告知 TQ ,使其按设计意图进行约束,否则 TQ 还会按默认的“单周期”进行约束,结果就是无论如何都不能达到时序收敛。
  • 热度 16
    2014-5-16 21:57
    2097 次阅读|
    1 个评论
      写了一年的FPGA代码,项目到了中期,感觉还是有很多的东西要学要写。   但是明白了一开始写verilog时的一些迷惑和语言。菜鸟入门的时候就听别人说,FPGA一定要知道自己写的代码的综合出来的电路是怎样的,后来写了几个东西,发现不知道综合出来的电路是怎么样的也没关系,并且verilog这种EDA工具就是给人们去掉繁琐的电路设计,变成一种简单的语言设计。   随着项目的深入和verilog代码熟知,发现原来FPGA的最基本的两个基本功其中之一就是要明白自己的代码会综合出怎样的电路。开发FPGA要能做到基本的工程可以跑通,通过认证,最起码要掌握两种基本能力。  一种是根据时序写出verilog代码。再设计接口信号或者算法信号的波形图时,一定要知道哪个时钟程序中设计的变量会产生怎样的变化,一个时钟也不要含糊,不然会导致边界出现问题。通过软件仿真,可以验证你的代码是否符合自己设计的时序波形图。这里,波形图写出代码基本不会出差错,因为实现波形的verilog代码段就那么几种,很好掌握。   另外一种,就是对我写出的verilog代码有很深的电路综合理解。这个基本功主要用在设计的优化上,包括时序约束是否满足条件和电路资源是否够用。因为verilog无非就是组合逻辑和时序逻辑的代码段,组合逻辑在ALtera的FPGA中就是查找表,而时序逻辑的设计就是组合逻辑+D触发器。我声明了几位的寄存器变量,实际上我就用了几个D触发器。而当我在always模块中对这个reg变量赋值的时候,实际上我是在给这个D触发器的输入信号连线,如:cnt = cnt + 1‘d1 ; 这个cnt是一个寄存器,这种写法实际上表明了具有反馈回路,也就是cnt寄存器的输出又通过了一个组合逻辑连到了cnt的输入,而这个组合逻辑就是 + 1’d1;同样,对时序逻辑的verilog代码想要更深刻的理解要先清楚同步计数器的设计,可以有很好的启发。   明白了verilog代码综合出的电路后,就基本上可以理解TimeQuest的努力方式了。这个工具就是先把电路综合成以上模型(TEchnology MAP VIEW可以查看)然后对每一条路径进行分析。明白了这个就能对不满足时序的电路进行代码或者布线上的调整,以来满足内部的时序。   这应该就是FPGA中最最基本的两个能力了。只有具有这两个基本功,才是设计出稳定可靠的电路的基础。否则即使偶尔实现了一个小项目,也只能是瞎猫碰上死耗子了   
  • 热度 20
    2013-2-17 11:30
    2350 次阅读|
    1 个评论
    时序分析 TimeQuest 之多周期约束 .         网上有很多讲 ALTERA 时序约束( TimeQuest )的文章,其中关于多周期约束 set_multicycle_path 的,有一点很多文章包括ALTERA的官方教程都没有说明,导致很多朋友按照文章上的方法去约束,可能导致数据在多周期传送的时候会出现亚稳态。     举个 launc_clk 和 latch_clk 同频同相位( launch_clk 和 latch_clk 频率有倍数关系、有相移等的情况也是同样的分析结果)的例子,数据的有效长度是三个时钟周期,缺省的 setup 和 hold 的分析沿如下图所示:                         如果设置多周期约束 set_multicycle_path -setup 3 、 set_multicycle_path -hold 2   则 setup 和 hold 的分析沿如下图所示:                                  问题是在这种情况下,上面的多周期约束是正确的约束吗, latch_clk 能正确的采样 DATA 数据吗,如果 DATA 数据的延时刚好是一个时钟周期、数据的变化沿刚好是 latch_clk 的第二个时钟的上升沿呢?如下图所示: latch_clk 的第二个时钟的上升沿采样输出的数据就有可能出现亚稳态。解决的方法是加入一个寄存器使能信号(如下图的 data_en ) 在该采样的时钟沿采样才能避免上述问题。                 launch_clk 和 latch_clk 频率有倍数关系、有相移等的情况做多周期约束的时候也要做如上处理。
  • 热度 23
    2013-1-12 21:09
    1387 次阅读|
    1 个评论
    首先大声的向akuei2说声谢谢!!雪野漫步者佩服你… 随着FPGA的基础的学习… 随着Verilog基础的学习… 随着工作的“乏味”… 随着时间的推移… 随着就开始了NIOS的学习,刚开始,可能是初生牛犊不怕虎,还是眼高手低,反正感觉自己学学NIOS还是比较有优势,因为硬件软件都都通“吃”的缘故吧,可是,转折了,肯定不好了,从软件遇到的问题,到下载的问题,到SDRAM时序的问题,等等… 最后自己还是被撞的头破血流,所以又回来了,回到了时序的分析,时序的建模,就开始了TimeQuest的学习。自己以前也看过特权同学的《深入浅出玩转FPGA》一书,也看了看时序的静态分析,可能是笨的缘故,没有一点点的感觉,之后看了特权同学的《爱上FPGA...》一书的时序分析四部曲,对时序分析确实有感觉了,可是基础还是欠缺一点,那就好好看看--瞎搞TimeQuest和无责任笔记,感觉自己和时序分析的那张纸视乎真的被捅破了,真的假的,就让下面几张图和几个公式证明。 所谓的时序建立就是从时钟启动的那一刻开始到数据所存的那一刻所经过的时间。 上面三幅图将时序的建立时序分析的已经很清楚了,我们只需加以记忆,加以分析,就OK!! 下面我们看看保持时间的建立过程:   这是一张用屁股来求保持余量的公式图。最后我们用一张头和屁股的合体来看看数据保持的余量建立时序图。 最后真正理解了这几张图之后,我发现自己真的有点感觉了,哪怕是一点,反正就是有,真的,呵呵…
相关资源
  • 所需E币: 0
    时间: 2021-3-23 23:19
    大小: 3.35MB
    上传者: stanleylo2001
    时序分析之2Timequest教程
  • 所需E币: 0
    时间: 2020-9-28 19:25
    大小: 3.28MB
    上传者: LGWU1995
    时序分析之2Timequest教程
  • 所需E币: 5
    时间: 2019-12-25 10:04
    大小: 899.83KB
    上传者: 微风DS
    06_self_study_传统时序分析器TAN到基于SDC的Timequest时序分析器转换……
  • 所需E币: 3
    时间: 2019-12-25 10:04
    大小: 630.75KB
    上传者: 微风DS
    04_使用Timequest约束和分析源同步电路……
  • 所需E币: 3
    时间: 2019-12-25 10:04
    大小: 992.5KB
    上传者: givh79_163.com
    03_TimeQuest_应用实验……
  • 所需E币: 4
    时间: 2019-12-25 10:05
    大小: 1.13MB
    上传者: quw431979_163.com
    02_使用QuartusIITimequest时序分析器约束分析设计……
  • 所需E币: 4
    时间: 2020-1-6 12:44
    大小: 226.54KB
    上传者: givh79_163.com
    High-PerformanceFPGAPLLAnalysiswithTimeQuest……
  • 所需E币: 3
    时间: 2019-12-24 23:06
    大小: 541.36KB
    上传者: quw431979_163.com
    本应用笔记介绍了MAX®II和MAXV器件中的外部与内部时序参数以及时序模型。Altera®器件提供了与仿真到应用相符合的可预测器件性能。在进行器件编程前,您可以确定设计中最差情况下的时序延迟。您可以使用以下几种方式来估算传播延迟:■Quartus®IITimeQuest时序分析器■本应用笔记提供的时序模型■MAXII器件手册的DCandSwitchingCharacteristics章节和MAXV器件手册的DCandSwitchingCharacteristicsforMAXVDevices章节中列出的时序参数。理解AlteraCPLD中的时钟AN-629-1.0应用笔记本应用笔记介绍了MAXII和MAXV器件中的外部与内部时序参数以及时序模型。Altera器件提供了与仿真到应用相符合的可预测器件性能。在进行器件编程前,您可以确定设计中最差情况下的时序延迟。您可以使用以下几种方式来估算传播延迟:■QuartusIITimeQuest时序分析器■本应用笔记提供的时序模型■MAXII器件手册的DCandSwitchingCharacteristics章节和MAXV器件手册的DCandSwitchingCharacteristicsforMAXVDevices章节中列出的时序参数。1……
  • 所需E币: 3
    时间: 2019-12-24 21:38
    大小: 516.59KB
    上传者: rdg1993
    本白皮书介绍导致系统级时序不确定因素的信号完整性(SI)机制,以及怎样在Quartus®IITimeQuest时序分析器中对这些机制进行建模,从而使外部存储器接口设计达到时序收敛。通过使用QuartusII开发软件9.1以及更高版本的软件,在外部存储器接口上达到时序收敛,设计人员按照良好的电路板设计习惯,在实现典型外部存储器用户接口时,不需要针对Stratix®IV和Arria®IIFPGA等Altera®倒装焊器件系列同时开关输出(SSO)、同时开关输入(SSI)、符号间干扰(ISI)和电路板级交叉串扰来分配单独的SI时序余量。对系统信号完整性不确定因素进行建模本白皮书介绍导致系统级时序不确定因素的信号完整性(SI)机制,以及怎样在QuartusIITimeQuest时序分析器中对这些机制进行建模,从而使外部存储器接口设计达到时序收敛。通过使用QuartusII开发软件9.1以及更高版本的软件,在外部存储器接口上达到时序收敛,设计人员按照良好的电路板设计习惯,在实现典型外部存储器用户接口时,不需要针对StratixIV和ArriaIIFPGA等Altera倒装焊器件系列同时开关输出(SSO)、同时开关输入(SSI)、符号间干扰(ISI)和电路板级交叉串扰来分配单独的SI时序余量。引言FPGA、微处理器和存储器之间越来越大的性能差异,越来越多的应用需要大量的存储器,这些因素都推动了对快速存储器技术的需求。带宽需求增长的同时,FPGA和存储器的信号数量和信号速率也在不断增长。为进一步提高带宽,器件生产商不断降低供电电压。开始时,业界标准DIMM工作电压是5V。但是,随着DRAM存储密度的增加,工作电压降到3.3V(SDR),然后是2.5V(DDR)、1.8V(DDR2)、1.5V(DDR3)和1.35V(DDR3),因此,存储器运行速度更快,功耗更低。目前正在规划DDR4芯片,预计其运行电压在1.2V到1.0V之间。由于工作电压的降低以及时序预算的减小,如果设计人员对系统设计没有足够的重视,那么,很有可能会出现错误,例如,过孔引出层、电路板走线间距、引脚分配和……
  • 所需E币: 3
    时间: 2019-12-24 19:25
    大小: 226.54KB
    上传者: quw431979_163.com
    【应用笔记】高性能FPGA锁相环的TimeQuest时序分析(High-PerformanceFPGAPLLAnalysiswithTimeQuest)锁相环(Phase-lockedloops,PLLs)为最大化系统整个系统的性能提供了健壮的时钟管理和时钟综合能力。Altera公司的高密度Stratix器件系列提供了许多高度灵活的PLL,每个PLL都能被用户作为一个零延时缓冲器、抖动衰减器、低歪斜扇出缓冲器或者作为一个频率合成器。为了充分利用Stratix器件系列所提供的巨大功能特性,你应当对所有由QuartusII软件和TimeQuest时序分析器所产生的PLL相关报告,有一个充分的理解。Phase-lockedloops(PLLs)providerobustclockmanagementandclocksynthesiscapabilitiesformaximumtotalsystemperformance.Altera’shigh-densityStratixdevicefamiliesprovidemanyhighlyversatilePLLs,andeachPLLcanbecustomizedasazerodelaybuffer,jitterattenuator,lowskewfan-outbuffer,orasafrequencysynthesizer.TotakeadvantageofthenumerousfeaturesandcapabilitiesprovidedbytheStratixdevicefamilies,youshouldhaveafullunderstandingofallPLL-relatedreportsgeneratedbytheQuartus®IIsoftwareandtheTimeQuestTimingAnalyzer.ThisapplicationnoteguidesyouthroughconstrainingPLLsandperformingatiminganalysisonthePLLs.EachofthesestepsincludesexamplesandguidelinesonhowtoreadandunderstandthevariousreportsrelatingtoPLLs,andhowtoanalyzeandconstrainPLLsintheTimeQuestTimingAnalyzer.High-PerformanceFPGAPLLAnalysiswithTimeQuestAugust2007,ver.1.0ApplicationNote471IntroductionPhase-lockedloops(PLLs)providerobustclockmanagementandclocksynthesiscapabilitiesformaximumtotalsystemperformance.Altera’shigh-densityStratixdevicefamiliesprovidemanyhighlyversatilePLLs,andeachPLLcanbecustomizedasazerodelaybuffer,jitterattenuator,lowskewfan-outbuffer,orasafrequencysynthesizer.Totakeadvantageofthenumerousfeaturesandcapabilitiesprovidedby……