• FPGA editor 的使用之二 ------ 增加delay之二


           在《FPGA editor 的使用之二 ------ 增加delay之一》这篇博文里,讲述了 一种 增加delay的场景和方法,那个典型的场景就是FPGA内部信号输出到PAD上,为了保证时序要求,增加了延时。在本篇博文里,介绍另一种增加延时的场景。

           在一般的项目中,都会有外部输入到FPGA内部的信号,参入到内部逻辑。此时外部信号从PAD传入FPGA内部,在debug时,为了解决时序问题,可能需要增加输入延迟。那么此时,也可以使用FPGA editor来实现。

            还是以《FPGA editor 的使用之二 ------ 增加delay之一》中的例子来介绍。首先,使用FPGA editor打开项目的 xxxx.ncd(本例中是light_top.ncd)。

     

            这个例子很简单,只有clk 和 rst 两个输入信号,本博文以rst信号为例。本例中,rst输入PAD例化到“B8”引脚。使用下列脚本找到这个PAD。

             select site “B8”   输入enter

             再单击zoom selection,选中它。如下图所示。

            双击这个PAD,发现rst信号经过PAD后,从PAD的 I 端口 输出,送到其他逻辑里使用。如下图所示。

            回到主界面,选中这个PAD的 I 引脚,如下图所示。右击鼠标,选择delete。

     

            在这个PAD附近找一个空闲的slice,单击add,添加一个new component,如下图所示。

         

     双击这个slice,可以看到内部电路图,里面有四个LUT,如下图所示。

           本例中选择最上面一个LUT来增加延时,将rst信号穿过PAD后的信号重新连接到这个slice的D6引脚上。使用如下命令行:

            select pin "SLICE_X13Y63.D6"    回车

            select pin "B8.I"  按住Ctrl键,回车,然后 点击 add

     

           再双击这个slice,修改内部逻辑。如下图所示。

          在config框里做如下修改。

     

          上面的修改,即是将 rst信号经过PAD后的信号送入SLICE_X7Y60的D6LUT,然后从SLICE_X7Y60的D端输出。

           在增加延时之前,rst信号经过PAD后会通过 net rst_IBUF,送给内部其他逻辑使用,在最开始我们只是delete了PAD的 I pin,并未delete掉net rst_IBUF。其实也不能delete掉这个net,因为内部可能有很多地方使用了这个net,如果delete掉,会引起内部逻辑紊乱,这也是只delete PAD的拼,而不delete net的 原因。所以,接下来要将上面传到SLICE_X7Y60的 D端的信号重新连接回net rst_IBUF。使用如下命令行:

           select pin "SLICE_X7Y60.D"   回车

           select net “rst_IBUF”   按住Ctrl键,点击add

            

            保存修改,然后在Tools里面选择 Run bitgen   

      到此为止,所做的修改已经改好了,并生成了 bit stream 文件,可以下载到板子测试了。

           

  • 相关阅读:
    洛谷 U140360 购物清单
    洛谷 U140359 批量处理
    洛谷 U140358 操作系统
    洛谷U140357 Seaway连续
    洛谷 U141394 智
    洛谷 U141387 金
    CF1327F AND Segments
    刷题心得—连续位运算题目的小技巧
    CF743C Vladik and fractions
    洛谷 P6327 区间加区间sin和
  • 原文地址:https://www.cnblogs.com/hxing/p/12805279.html
Copyright © 2020-2023  润新知