一、贡献:
框架能够在考虑特定约束的同时,高效地完成复杂AMS设计的布线,并实现签署质量的性能。
- 提出了一种对称性约束的分配算法,根据引脚位置分配合适的网络匹配要求
- 新的引脚聚类策略,以实现规律性的布线模式,这可以显著提高整体布线的美观度。
- 健壮的分层拆除和重新布线方案,它能够处理工业设计规则和模拟特定的约束,并缓解布线拥塞。
二、设计规则:
-
物理约束:
-
Parallel run spacing
根据两根平行布线的长度,规定了它们之间所需的最小间距,这个最小间距是基于这两根线的最大宽度来确定的。简单来说,就是两条平行电线越长,考虑到电磁干扰等因素,根据它们的最大宽度,就需要保持一定的最小距离。图2(a)展示了平行布线间距约束。
- End-of-line spacing
End-of-line(EOL) spacing 指定了在任何小于eolWithin距离的地方,除了线尾(即宽度小于eolWidth的金属端)之外,所需的最小间距eolSpace。如果任何其他平行于EOL的边缘出现在通过将EOL侧向扩展parSpace、向前扩展eolWithin、向后扩展parWithin构建的平行边缘窗口中,则应用EOL间距约束。图2(b)显示了EOL间距规则的一个例子
- Min-area
最小面积规则规定,金属多边形的面积应该大于或等于一个指定的阈值。如图2(c)
- Min-step
为了确保在制造阶段掩模创建过程中光学图案校正(OPC)的正确性,规定了最小步长规则。最小步长规则指出,金属多边形上不允许有超过最大边数(maxEdge)连续的、长度小于最小步长(minStep)的边缘。图2(d)展示了一个最小步长违规的例子
- 电气约束
IR-induced voltage drop会导致模拟电路性能显著下降。可以通过电路仿真推测出最小布线宽度。
- 关键线网:分配更大的metal width以及更多的via
- 布局前仿真,提取最大可容忍的寄生电阻,进一步定义出了最小线宽和过孔cut的数量。
- 对称约束
- mirror-symmetry
- cross-symmetry
- self-symmetry
- partial-symmetry
三、Routing frame work
3.1、Preprocessing
3.1.1. Symmetry constraint allocation
- 考虑给定的Symmetry constraint
- 识别layout中对称的Pin
- 对称约束的考虑: 几何约束与电气约束。
- mirror-symmetry
- cross-symmetry
- self-symmetry
- partial-symmetry
-
算法:
-
符号表
-
自对称度计算
- n e t i net_i neti关于坐标 x x x的对称度: f i ( x ) = ∑ k a i , k ( x ) ∣ P i ∣ f_{i}(x) = \frac{\sum\limits_{k}a_{i,k}(x)}{|P_i|} fi(x)=∣Pi∣k∑ai,k(x)
- n e t i net_i neti自对称度最大的对称轴: λ i = a r g m a x 1 < = k , k ′ < = ∣ P i ∣ f i ( x i , k + x i , k ′ 2 ) \lambda_{i}=\mathop{argmax}\limits_{1<=k, k^{'}<=|P_i|}f_{i}(\frac{x_{i,k}+x_{i,k^{'}}}{2}) λi=1<=k,k′<=∣Pi∣argmaxfi(2xi,k+xi,k′)
- n e t i net_i neti关于 λ i \lambda_{i} λi的自对称度: ψ i = f i ( λ i ) \psi_{i}=f_i(\lambda_{i}) ψi=fi(λi)
- 相互对称度计算
- n e t i net_i neti 和 n e t j net_j netj关于对称轴 λ i , j \lambda_{i,j} λi,j的对称度: ψ i , j = f i , j ( λ i , j ) \psi_{i,j} = f_{i,j}(\lambda_{i,j}) ψi,j=fi,j(λi,j)
- n e t i net_i neti 和 n e t j net_j netj间对称度最大的对称轴: λ i , j = a r g m a x 1 < = k < = ∣ P i ∣ , 1 < = k ′ < = ∣ P j ∣ f i , j ( x i , k + x j , k ′ 2 ) \lambda_{i,j} = \mathop{argmax}\limits_{1<=k<=|P_{i}|,1<=k^{'}<=|P_j|} f_{i,j}(\frac{x_{i,k}+x_{j,k^{'}}}{2}) λi,j=1<=k<=∣Pi∣,1<=k′<=∣Pj∣argmaxfi,j(2xi,k+xj,k′)
- 计算当前坐标x的对称度: f i , j ( x ) = m a x ( ∑ k b i , k j ( x ) , ∑ k ′ b j , k ′ i ( x ) ) m a x ( ∣ P i ∣ , ∣ P j ∣ ) f_{i,j}(x) = \frac{max(\sum\limits_{k}b^j_{i,k}(x), \sum\limits_{k^{'}}b^i_{j,k^{'}}(x))}{max(|P_i|,|P_j|)} fi,j(x)=max(∣Pi∣,∣Pj∣)max(k∑bi,kj(x),k′∑bj,k′i(x))
- 案例:
图a为实际版图,图b为net构建的匹配网络图,每个net作为一个顶点
-
n i n_i ni自对称度的计算:
n 1 n_1 n1内部在对称轴 λ i \lambda_{i} λi出相互对称的pin为 [ ( p 1 , 1 , p 1 , 4 ) , ( p 1 , 2 , p 1 , 3 ) ] [(p_{1,1}, p_{1,4}),(p_{1,2},p_{1,3})] [(p1,1,p1,4),(p1,2,p1,3)],所以 ∑ k a 1 , k ( x ) \sum\limits_{k}a_{1,k}(x) k∑a1,k(x)=4, 而pin的总数 ∣ P 1 ∣ |P_1| ∣P1∣=5,计算得 ψ 1 = 4 5 \psi_{1}=\frac{4}{5} ψ1=54。构建匹配图边( e : v 1 − v 1 ′ , w = 4 5 ) e: v_1-v_1^{'}, w=\frac{4}{5}) e:v1−v1′,w=54) -
n i , n j n_i,n_j ni,nj间对称的计算
如 n 2 , n 3 n_2, n_3 n2,n3, 能关于对称轴 λ i , j \lambda_{i,j} λi,j最多大相互对称得pin为 [ ( p 2 , 2 , p 3 , 2 ) , ( p 2 , 3 , p 3 , 3 ) ] [(p_{2,2}, p_{3,2}),(p_{2,3},p_{3,3})] [(p2,2,p3,2),(p2,3,p3,3)],所以 m a x ( ∑ k b 2 , k 3 ( x ) , ∑ k ′ b 3 , k ′ 2 ( x ) ) = 4 max(\sum\limits_{k}b^3_{2,k}(x), \sum\limits_{k^{'}}b^2_{3,k^{'}}(x))=4 max(k∑b2,k3(x),k′∑b3,k′2(x))=4 , m a x ( ∣ P 2 ∣ , ∣ P 3 ∣ ) = 3 max(|P_2|,|P_3|)=3 max(∣P2∣,∣P3∣)=3, 所以 ψ 2 , 3 = 4 3 \psi_{2,3}=\frac{4}{3} ψ2,3=34。构建匹配图的边:( e : v 2 − v 3 , w = 4 3 e:v_2-v_3, w=\frac{4}{3} e:v2−v3,w=34) -
寻找symmetry的网络:Edmond’s blossom 算法,在构建的带权无向图中寻找最大权重匹配。然后将匹配结果转换为指定网络的对称约束。
- 时间复杂度分析:
- 边权计算: O ( ∣ P ∣ 2 ) O(|P|^2) O(∣P∣2)
- 最大权重匹配: O ( ∣ V ∣ 2 ∣ E ∣ , ∣ V ∣ = 2 ∣ N ∣ , ∣ E ∣ < = ( ∣ N ∣ 2 + ∣ N ∣ ) / 2 O(|V|^2|E|, |V|=2|N|, |E|<=(|N|^2+|N|)/2 O(∣V∣2∣E∣,∣V∣=2∣N∣,∣E∣<=(∣N∣2+∣N∣)/2,
实际应用中,图 𝐺 𝐺 G是稀疏的,因为 𝑁 𝑁 N中的许多子集是互斥的,并且大量的 n e t net net是自解关联的。电路层次结构将整个网络列表进一步划分为多个分区。因此,该算法的执行效率很高
- 相关定义:
- net互斥: n i n_i ni 和 n j n_{j} nj间的对称度为0
- net自解关联: n i n_i ni自对称度为0
2. Pin Access assignment
分析Pin的形状, 根据首选Access方向的确定Pin Access point。方便后续布线过程中的Pin的连接。
3.2、Core procedures
1. Routing
- 算法:obstacle-aware path-finding algorithm。
- 在对称轴两侧同时执行Obstacel-aware path-finding, 实现对称布线。
- 查找过程中考虑设计规则(parallel run spacing,end-of-line spacing,Min-area,Min-step)
- 无法找到路径时,进入rip-up & reroute优化迭代,直到找到可行方案。
2. Rip-up
- Viaolated net removal
3.3、Post-refinement
在布线结果中寻找违反Design rule。通过向metal shapes中增加补丁,解决Min-step违例。
参考文献:Toward Silicon-Proven Detailed Routing for Analog and Mixed-Signal Circuits