芯片Block的划分问题

在芯片设计的floorplan阶段,后端工程师面临如何均衡摆放macro以优化block的utilization。前端与后端需协同工作,前端提供hierarchical netlist,后端根据物理信息划分block。为提升效率,后端也可使用flatten netlist预估并划分block,或利用机器学习方法预测std cell信息,减少迭代次数,缩短设计周期,但可能牺牲准确性。

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

后端在floorplan阶段,如何摆放macro是一个很重要的问题。如果采用层次化设计,对于每一个block来说都需要在block内部把所分配的macro摆好。如果某一个block里的macro很多,又很大,std cell再多一些,utilization就会很大,相应的这个block的floorplan就比较难做,而其他block的utilization很小,这样的design就不太好。我们总是希望所有的block都能有差不多的utilization,平均且充分地利用芯片的每一块面积,这就需要在block划分初期就做好预估。

这个问题需要前端与后端协调配合,block的划分是需要前端提供带有hierarchical结构的netlist,然而前端在做hierarchical的综合的时候,并不会过多考虑后端物理层面的信息,因此可能综合出的netlist各个block物理上不是那么均衡。当然,这种netlist也是可以物理实现的,只是对于有些要求比较高的design来说,最后出来的芯片性能可能会有所不足。这个时候后端工程师就可以反馈,比如说,把某个block的某个macro综合到另一个block里去,或者两个block就直接merge变为综合成一个block。收到反馈以后,前端工程师就可以重新综合,再给我们新的netlist来做物理实现。

以上这个过程可能需要迭代几次才能达到最佳效果,但这样会需要花费很多时间,导致芯片设计周期变长。一种更快速的方案是,前端首先综合出flatten的netlist,就是不带任何h

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值