全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 可编程逻辑 >

加法进位链的手动约束

时间:2024-05-20 11:38

人气:

作者:admin

标签:

导读:在激光雷达中,使用FPGA实现TDC时需要手动约束进位链的位置。这里简单记录下。 在outflow下会生成一个.qplace文件 。用于指示布线的各个原语资源的分布位置 。 它的内容主是 是原语的...

在激光雷达中,使用FPGA实现TDC时需要手动约束进位链的位置。这里简单记录下。

在outflow下会生成一个.qplace文件。用于指示布线的各个原语资源的分布位置 。

023701b2-10c1-11ef-b759-92fbcf53809c.png

它的内容主是

是原语的单元名

表示水平位置,对应floorplan.

表示垂直位置 ,对应floorplan.

表示子块的位置 。目前只DSP24和DSP12可以有子块。在一个block可以指定多个字块。

是给block的一个编号,从0开始往下排。

024b3056-10c1-11ef-b759-92fbcf53809c.png

锁定过程如下:

stp1:并把outflow下面的.qplace文件得到到工程目录下(可以修改名字也可以不修改,假如我们修改为carrychain.qplace)。把该qplace文件中想要锁定的block保留,其余可以删除。

stp2:在工程目录下建一个efx_pnr_settings.ini文件 。

stp3:在efx_pnr_settings.ini文件中输入

fix_pins=carrychain_prj.qplace

stp4:重新编译。

以加法进位链为例 ,上面我们生成了一个4级的加法进位链。具体约束在哪个位置可以在floorplan中确认位置 。

比如这里我们把它的位置约束到第8列。看下面的语句,第二行是进位链的输入位置用于进入进位链,第3,4,5,6依次约束进位链的carry_tap[0][x]~FF即可。

之前也有一个疑问是是否应该约束加法器,但是资源列表中并没有相应的资源,而且经过分析也认为只需要约束寄存器即可。

#block name x y subblk block number#---------- -- -- ------ ------------carry_tap[0][0]~FF  8 3 0 #0carry_tap[0][1]~FF  8 4 0 #1carry_tap[0][2]~FF  8 5 0 #2carry_tap[0][3]~FF  8 6 0 #3tdc[0].carry_chain_inst/CHAIN_GEN[0].genblk1.EFX_ADD_inst 8 2 0 #2605

约束的效果如下:

02558826-10c1-11ef-b759-92fbcf53809c.png


温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信