电脑单机游戏网

当前位置:龙8官网long8 > 电脑单机游戏网 > 设计总结

设计总结

来源:http://www.sketchydesignstudio.com 作者:龙8官网long8 时间:2019-11-05 11:09
  1. set_input_delay和set_output_delay的选项-max和-min的理解

   首先 input/output其实是仿照数据在端口外的延时,是三个表面节制规范,指标是为着节制FPGA输入端口到个中贮存器数据输入端也许个中寄放器输出端到FPGA输出端口之间允许的延时。总括max时酌量的是成立刻间的情状,总括min时思量的是涵养时间的状态,delay参数来自于PCB走线。

2. 对此FPGA石英钟同步规划,FPGA仿真最多到回顾网表,更下层的虚伪是适得其反,不杀跌耗费时间间,同期FPGA存在库参数或布线时延反馈不标准的相当多主题素材。对于PA奥迪Q3的结果首先将在保障其挂钟同步的性状。必需满足FPGA器件综合和布线后的setup和hold要求。后生可畏旦出现timing-error必须通过种种门路肃清error,因为error的留存,意味着石英钟同步的大前提已经被毁坏,那时候,simulation拿到的结果和FPGA是不等价的,不消除时序难题,别的艺术毫无意义了。

3. 外界接口也供给重视思忖。如前所述,FPGA内部倘若timing没失常来讲,日常和虚假结果是毫发不爽的,难点是外界的接口,包括cable连线等,极度提到数量大幅度和频率,建议接纳降频和先同步输入等办法来先行清除。

4. 讲究syn和pr进度中的全体warning以致error,warning的源委不是一丝一毫能够忽视的。要特别关切综合报表中的以下内容:unused ports, reMOVal of redundant logic, latch inference,simulation mismatch等等,着重解析和消灭。

  1. 假若FPGA 验证必要不高,比喻职业频率十分的低,同一时间能源也比较充足时,除了石英钟加要求的封锁,尽量不要开端就完了二个到家的自律文件,幸免不须要的限定,和早期难题的觉察。如若在这里种状态下,还是一时序难题:

*   *  1.时序标题hold,setup,极度是hold,首先检核查应的时钟域的挂钟是还是不是思考周密,setup timing 难点至关主要是总体数据路径延时太大引致,hold timing难题主要性是挂钟延时太大以致,具体见6;

     2.第风流倜傥关切设计作者存在品质难题;

     3.有标准化参见准确工程,综合和达成设置碰到差别,并打开调节尝试难点是不是能够化解。
     4.有个别调治综合参数,如hierarchy从构造保持变成优化平铺综合,扩张BUFG数量,将输出Fan out 改更加小的合理性范围等,重新编写翻译和布局布线,检查时序难点是或不是消释。

     5.貌似是先消除setup难点,后解除hold难点,hold难点一蹴而就完的时候平时都是到了要tapout的时候了,最终大器晚成段时间即使开掘存hold难题,经常会采取在满意setup的情状下将数据以后推,独有无语的景况下才会筛选动机械钟,因为石英钟更改不仅影响本级DFF的时序,还恐怕会潜移暗化下超级DFF的时序;

     6. 当FPGA用来促成ASIC的评释时,门控时钟就是不可防止的,比方ASIC上电重新苏醒设置时,不是怀有的逻辑都同不常间工作起来,即唯有大器晚成部分Flip-Flop开首工作,不小片段可能一直未有吸取有效的时钟,这种场地适合ASIC上电boot的流程,所以在FPGA上证实时要保存的;再比方ASIC专门的工作在某一场景下供给减少功耗,会停业有些module的机械钟,这种为了收缩耗电作用而留存的clock gate就足以一贯优化掉,并不会影响FPGA验证ASIC的功能。所以在得到ASIC RTL后要先将这种能够优化掉的clock gate挑拣出来并拍卖,再对拍卖后的RTL进行归结

6.重视和重大检查clock设计,原则下,机械钟优先接入ibufg,对xilinx 7多种FPGA来讲便是有MRCC和SRCC属性的引脚,那类引脚可以一直驱动BUFG,若无,内部手动第三回九转接BUFG

  • PLL/MMCME + BUFG,注意输出使用时也要接BUFG,再作为系统时钟给全局使用。限制时钟除了输入外,还要对BUFG输出系统石英钟举行注重限定。故完整的机械钟链 IBUFG/BUFG + PLL/MMCME + BUFG, 对于石英钟不是IBUFG输入,vivado xdc还索要充实:

set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets clk_in_IBUF] 便于布线器顺遂完毕布线,这里clk_in 指顶层模块输入 port。针对种种这种情景的输入机械钟都亟需在自律文件中插入, create_generated_clock:创立衍生机械钟的牢笼相通不行常用,在FPGA中的design超少只专门的学业在同不时钟下,所以create_generated_clock平日用来对MMCM恐怕PLL,以致Flip-Flop分频暴发的机械钟扩大限制,三个pin定义了五遍create_generated_clock,这几个pin很只怕是个clk_mux的输出,它会职业在二种以上的时钟频率,所以对那四次定义的create_generated_clock要做二个set_clock_groups -logically_exclusive 的封锁,表达这五个石英钟不会同不常候设有。

7.针对FPGA Inter-Clock 帕特hs 时序难题:

   内部挂钟域间常常未有一直的关联时,最棒将其时钟域之间设置成ffalse_path,xilinx fpga xdc具体是:

   set_false_path from [get_clocks clk0] -to [get_clocks {clk1 clk2 clk3}]

   ...

    set_false_path from [get_clocks clk3] -to [get_clocks {clk0 clk1 clk2}]

 

 

本文由龙8官网long8发布于电脑单机游戏网,转载请注明出处:设计总结

关键词: