DC综合时的High Fanout Nets问题

本文介绍 DC 综合阶段 High-Fanout Nets 可能遇到的相关问题

问题描述

综合时候可能出现 TIM-134 Warning

Design ‘Test’ containts 2 high-fanout nets. A fanout number of 1000 will be used for delay calculations involving these nets. (TIM-134)

使用man查看相关信息,发现 high-fanout nets的delay在综合时候,使用简化的delay model。该方法特别对于一些没有约束的网络(global reset nets, scan enable nets, and so o)有比较好的作用。

与此相关的,有两个参数。high_fanout_net_threshold,默认为1000, 当fanout的值超过该阈值时,net会被认为是high-fanout net,使用简化delay model。 high_fanout_net_pin_capacitance,默认为1, high-fanout nets使用该值作为单个fanout的pin capacitance.

问题在于,high-fanout nets的默认load为以上两个参数相乘,为1000,远远超过大部分电路的实际情况。造成功耗估计的巨大偏差。

问题实例

create_clock 命令建立的时钟,本身被认为是 ideal_network,不计算功耗。但综合时使用 clock_gating,门控时钟之后的时钟网络的功耗会包括在最后的power report中。以lna_readout模块为例,由于使用了大量的寄存器(>10000),而这些寄存器被同一个时钟门控,DC使用1000作为门控时钟net的capacitance,导致power report里时钟网络的 switching power > 4mW。

解决方法

因此,我们修改 high_fanout_net_pin_capacitance为一个合理的值,例如 0.002-0.004.重新综合后,得到 switching power 为 1.46e-02mW.

Notes

  • 如果不使用门控时钟,则clock net本身是ideal_network,power reoprt里功耗为0,不会产生该问题。
  • 如果门控时钟net的fanout不大,小于high_fanout_net_threshold,也不会产生该问题。
  • 在大型设计中,由于整体功耗偏大, 该问题产生的多余功耗的估计,可能因为不明显而不被发现。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值