FPGA布局布线优化(二)

本文讨论了逻辑复制技术在FPGA布局中的使用,以减少布线延时,同时指出应仅限于关键路径。跨层次优化涉及模块间接口的改进,以节省面积。特别提到ZYNQ设计时,门级仿真和诊断的需求影响了是否采用这些优化策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

点击蓝字关注我们

关注、星标公众号,精彩内容每日送达
来源:网络素材

3.逻辑复制

逻辑复制在布局过程的早期发生,为了扇出到其他逻辑元件的结构,这些元件不可以(由于任何理由)存在于相同的近邻。这里强调的问题在图16-4中说明。在这种情况下,D2的输出扇出到两个相互有一定距离的结构,不管驱动放置在哪里最终的布线是到驱动元件之一的长度,为了消除潜在的长布线延时将复制驱动器,如图16-5所示。

638bbdec3c55adac116969a45d0c27ab.png

逻辑复制应该只利用在关键路径网线,它带有不可能实际放置的多个负载。

这个复制的效果是各个驱动器可以放置更接近于每个负载,所以最小化布线长度和布线的延时。明显地,这个优化将减少布线延时,但增加面积。如果器件的利用率已经很高时,这个优化可能引起差的结果。如果布局工具不是足够智能到只是对关键路径布线执行这个优化,这个选项可能需要禁止,复制用相应的“don't touch”属性添加到RTL保证综合工具不优化这个复制的结构。

4.跨层次优化

跨层次边界的优化将允许任何布局算法在路径跨模块边界扩展时进行操作,如图16-6所示

7d3cbf13bbcdf7cdb82526076dc62d8d.png

一般地,如果希望一个特定的优化,把它应用到模块之间的接口以及简化模块本身内部的路径是有好处的。常常在模块边界的逻辑没有完全占用整个LUT。一个例子表示在图16-7中。

dd1ad978e1d0b1efbf7b13b5dc571d69.png

在这个图的上部,分开的LUT用来在每个模块边界中实现与非(NAND)操作,通过跨边界的优化,每一个逻辑操作可以组合进单个LUT,所以减少这个操作的一半面积利用率。

不希望出现的主要情况是门级仿真需要在实现后的网表上运行。在这个情况中,原封不动的一个层次是十分合乎需要的。

在要求门级仿真时跨层次优化不是合乎需要的。

如果在反向注释的网表上要求诊断,一个保持的层次允许设计者不仅横跨设计,并且也方便识别在模块边界可以为诊断利用的信号。

7d1390c6a3603986a5af3dd730e8ff3c.jpeg

想要了解FPGA吗?这里有实例分享,ZYNQ设计,关注我们的公众号,探索

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值