数字ASIC设计概要:Placement 简介
Coarse Placement
夫天下之事,能一蹴而就者,鲜有闻矣。欲成大厦,必先成其大概,而后成其屋室。
Cell 的 Placement 亦如是。在进行 Legalize 之前,需要把 Cell 的大致位置先确定下来。这个确定Cell大致位置的过程就叫做 Coarse Placement.
Coarse Placement 可以描述为这样一个问题:在指定的平面空间(Floorplan)内,确定各个标准单元Cell的位置,以使时序等设计指标最优。
Coarse Placement 通常由EDA工具根据设计者的要求自动完成。设计者的任务是给EDA工具以足够的指导以做出尽可能好的结果来。
如何影响Coarse Placement的结果?
夫治水之道,唯疏堵二法而已。天下之理同也。
所谓设计者的“要求”,就Placement来说,归结起来,大的方面无非两类:
- 堵:指定Cell不能放在某个区域。这个称之为 Blockage
- 疏:指定Cell只能放在某个区域。这个称之为 Bound
关于 Placement 的物理约束基本上都由此演变而来。
Placement大法之“堵”
Hard Blockage:
“清场!清场!所有人员不得进入划定区域!”
Soft Blockage:
“清场!清场!所有人员未经允许,不得进入指定区域!”
Keepout Margin:
“我需要宽敞的空间,我周围谁也不许呆。”
Cell Density:
“这里的容积率需要控制!”
Placement大法之“疏”
Bound:
“请呆在指定的区域内,不要出来。”
Exclusive Bound:
“请呆在指定的区域内,不要出来。其它人不得进入!”
Group Bound:
“去哪我不管。但所有人员请务必呆在指定大小的区域内!”
Fixed:
“你给我呆在那里别动!哪也别去!”
Relative Placement:
“她去哪里,我就去哪里。我就要和她在一起!”