计算机科学 ›› 2026, Vol. 53 ›› Issue (9): 188-195.doi: 10.11896/jsjkx.260600137
杨逸轩1,3, 王伟明2,3, 杨周旺1,3
YANG Yixuan1,3, WANG Weiming2,3, YANG Zhouwang1,3
摘要: 针对集成电路版图设计、CAD/CAM、EDA等领域中大规模B样条曲线offset计算及自交消除的高效处理需求,虽然传统B样条offset算法能够在一定程度上控制offset后控制点的数量,但其整体计算流程难以统一在GPU上高效实现。针对这一问题,并综合考虑不同B样条offset算法在offset后控制点数量及OpenCascade中相关算法效率方面的差异,提出了一种GPU-CPU协同加速的B样条曲线 offset 算法。在该框架中,offset计算与求交运算统一在GPU上执行。首先,对offset曲线进行分段,并采用勒让德多项式进行逼近,构建一种包含细分阶段且能够避免分支发散的B样条offset算法,并输出分段Bézier曲线。随后,在GPU上对每一段Bézier曲线进行空间网格划分,根据包围盒平均尺寸自适应确定网格分辨率,并采用压缩稀疏行格式构建空间索引。在候选对筛选阶段,通过规范单元去重策略消除重复候选对,并结合凸包相交测试进行窄相位过滤。最后,对过滤后的候选曲线段并行计算交点,并将交点信息返回CPU进行拓扑重构,从而有效避免offset后产生的自交问题。所提算法在几何结构复杂的曲线以及实际EDA版图数据上进行了实验验证,结果表明,该方法具有良好的有效性和计算效率。
中图分类号:
| [1] TILLER W,HANSON E G.Offsets of two-dimensional profiles[J].IEEE Computer Graphics and Applications,1984,4(9):36-46. [2] KIM R H,HWANG S,OAK A,et al.Curvilinear standard cell design for semiconductor manufacturing[J].IEEE Transactions on Semiconductor Manufacturing,2024,37(2):152-163. [3] Open CASCADE SAS.Open CASCADE Technology Documentation.Version7.9.3[EB/OL].[2026-07-10].https://dev.opencascade.org/doc/overview/html/. [4] LI Y M,HSU V Y.Curve offsetting based on Legendre series[J].Computer Aided Geometric Design,1998,15(7):711-720. [5] PIEGL L A,TILLER W.Computing offsets of NURBS curves and surfaces[J].Computer-Aided Design,1999,31(2):147-156. [6] WU J Y,FENG Z W,ZOU Q.Matrix representation and GPU-optimized parallel B-spline computing[J].Computer-Aided Design,2025,189:103948. [7] KARCANIAS N,MITROULI M,TRIANTAFYLLOU D.Ahybrid approach for normal factorization of polynomials[C] //International Conference on Computational Science-ICCS 2006.Berlin:Springer,2006:399-406. [8] CHRISTOU D,KARCANIAS N,MITROULI M.The ERESmethod for computing the approximate GCD of several polynomials[J].Applied Numerical Mathematics,2010,60:94-114. [9] COQUILLART S.Computing offsets of B-spline curves[J].Computer-Aided Design,1987,19(6):305-309. [10] SEDERBERG TW,BUEHLER D B.Offset of polynomial Bézier curves:Hermite approximation with error bounds[C] //Mathematical Methods in Computer Aided Geometric Design II.San Diego:Academic Press,1992:549-558. [11] KLASS R.An offset spline approximation for plane cubic splines[J].Computer-Aided Design,1983,15(5):297-299. [12] CHEN X J.The Bezier Approximation of Planar offset Curve[J].Journal of Mathematical Study,2005,(2):196-199. [13] ZHANG Z F,LING Z.An Offset Approximation Curve Based on Interval Bézier Curve[J].Journal of Hangzhou Dianzi University(Natural Sciences),2019,39(4):83-87. [14] CHEN X,GUO S,WANG R,et al.B-spline curve fitting based on dynamic adjustment of knot vector using feature points[J].PLoS One,2025,20(6):e0325458. [15] ZOU Q,ZHU L Z,WU J Y,et al.SplineGen:approximating unorganized points through generative AI[J].Computer-Aided Design,2025,178:103809. [16] SEONG J K,ELBER G,KIM M S.Trimming local and global self-intersections in offset curves/surfaces using distance maps[J].Computer-Aided Design,2006,38(3):183-193. [17] GERSHON E,MYUNG-SOO K.Geometric constraint solverusing multivariate rational spline functions[C] //Proceedings of the Sixth ACM Symposium on Solid Modeling and Applications.New York:ACM,2001:1-10. [18] WANG Y.Intersection ofoffsets of parametric surfaces[J].Computer Aided Geometric Design,1996,13:453-465. [19] SHAO W B,CHEN F L,LIU X F.Robust algebraic curve intersections with tolerance control[J].Computer-Aided Design,2022,147:103228. [20] LIN Y B.GPU acceleration in VLSI back-end design:overview and case studies[C] //Proceedings of the IEEE/ACM International Conference on Computer Aided Design(ICCAD).San Diego:IEEE/ACM,2020:1-4. [21] WONG T N,WONG K W.NC toolpath generation for arbitrary pockets with Islands[J].International Journal of Advanced Manufacturing Technology,1996,12(3):174-179. |
|
||