ICC - Route
1. 关于 Route
- Route的主要目标
- 满足timing的要求,如setup/hold/removal/recovery等。
- 满足DRC的要求,例如:transition/capacitance,以及不能有short/open。
- Route 绕线规则
-
standard cell 的 pg rail可以采用M1,M2,M3。standard cell 的pin脚一般采用M1.
-
Width and Spacing Rule
- 原有一个最小宽度和间距对应的规则要求,如下图蓝色模块所示。
- 但是若两侧金属宽度增加,那么间距也需要相对应的增加。即Width-Based Spacing。
- 原有一个最小宽度和间距对应的规则要求,如下图蓝色模块所示。
-
需要满足DRC。
-
- Pre - Route 基本过程
-
(1)Global Route
- Router会将整个区域划分为若干个大小相等的小格子GRC(Global Routing Cell),每个小格子能通过的绕线资源是有限的。 如果超过这个能承受的值,就认为是发生阻塞。
- GR阶段,router会绕开congested区域,而且也会绕开P/G-Shape(Rings/Straps/Rails)和Routing Blockages。
-
(2)Track Assign
- 分配track,并尽量走较长的直线,避免多处拐弯。尽量减少通孔数量。
- TA这步并不做DRC检查或修正。
-
(3)Detail Route
- 主要修复TA阶段产生的physical drc violation。
- route通过遍历一个个特定大小的区域(SBox)去修复drc。
- 主要修复TA阶段产生的physical drc violation。
-
(4)Search & Repair
- 主要用于修剩下的drc Violation。算法是不断的增加SBox的Size,去遍历修。
- 即使Route的DRC Violation都清掉了,之后还是需要做Signoff的DRC。原因有下面三点:
- Routing DRC是complete technology DRC的子集。
- 我们需要统一Routing DRC和complete technology DRC的版本,可能存在两个版本不一致的情况。
- ICC中placement和routing使用的都是一个FRAM view,而不是CEL view,可能有些细节并没有被检查到,所以之后还需要CEL View进行signoff DRC检查。
-
2. Crosstalk
- Crosstalk的危害
- delta delay
-
如下图所示,串扰可能会影响受害者信号,导致增加/减小延时。
-
延时的改变可能会导致setup/hold出现违例,使电路无法正常工作。所以无论是ICC/PT,都需要将delta delay的延时考虑在内。
-
可以使用下面指令查看delta_delay值的大小。
report_timing -crosstalk_delta ...
-
可能Launch路和Capture路都有delta delay的影响,工具会根据是setup/hold分析,决定一个最保守的加/减法运算于原先时序路径上。
-
- glitch/bump
- Crosstalk导致的glich/bump可能会出现Logic Failure,可能会进一步导致芯片功能的错误。
- 所以在PT的时候,需要去考虑signal integrity。在后面的文章有详细介绍。
- delta delay
-
如何修复Crosstalk