CN115410935A - 一种ic芯片封装时避免焊线交叉的布线方法及系统 - Google Patents

一种ic芯片封装时避免焊线交叉的布线方法及系统 Download PDF

Info

Publication number
CN115410935A
CN115410935A CN202211051956.5A CN202211051956A CN115410935A CN 115410935 A CN115410935 A CN 115410935A CN 202211051956 A CN202211051956 A CN 202211051956A CN 115410935 A CN115410935 A CN 115410935A
Authority
CN
China
Prior art keywords
points
point
welding
bonding
wires
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211051956.5A
Other languages
English (en)
Other versions
CN115410935B (zh
Inventor
徐祖峰
丁小果
丁铎
张大磊
王德银
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu Taizhi Technology Co ltd
Original Assignee
Jiangsu Taizhi Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jiangsu Taizhi Technology Co ltd filed Critical Jiangsu Taizhi Technology Co ltd
Priority to CN202211051956.5A priority Critical patent/CN115410935B/zh
Publication of CN115410935A publication Critical patent/CN115410935A/zh
Application granted granted Critical
Publication of CN115410935B publication Critical patent/CN115410935B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L24/00Arrangements for connecting or disconnecting semiconductor or solid-state bodies; Methods or apparatus related thereto
    • H01L24/80Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected
    • H01L24/85Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected using a wire connector
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/80Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected
    • H01L2224/85Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected using a wire connector
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L2224/00Indexing scheme for arrangements for connecting or disconnecting semiconductor or solid-state bodies and methods related thereto as covered by H01L24/00
    • H01L2224/80Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected
    • H01L2224/85Methods for connecting semiconductor or other solid state bodies using means for bonding being attached to, or being formed on, the surface to be connected using a wire connector
    • H01L2224/85986Specific sequence of steps, e.g. repetition of manufacturing steps, time sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Wire Bonding (AREA)

Abstract

本发明公开了一种IC芯片封装时避免焊线交叉的布线方法及系统,通过借鉴数控机床上刀补的操作原理,使用刀补算法配置打线区域,同时使用KM算法使得引脚内的焊线均有独立焊点且独立焊点在配置的打线区域内,通过排序与KM算法配合,避免了同一引脚上焊线的交叉,完成引脚上焊线落点的规范化和分离操作。

Description

一种IC芯片封装时避免焊线交叉的布线方法及系统
技术领域
本发明涉及IC芯片封装设计领域,尤其是一种IC芯片封装时避免焊线交叉的布线方法及系统。
背景技术
目前市场上普遍技术是根据图纸获取有焊线相交的引脚,对该引脚上的所有线的落点进行暴力枚举,并找出不相交的组合。
最接近本申请的同类技术通过对芯片进行布局布线获取芯片上布线拥塞区域,获取该区域中的多个标准单元。根据拥塞区域在芯片上的位置,对多个标准单元进行调整最终解决布线拥塞。
最接近的现有技术无法解决焊盘不动的情况下对焊线的不交叉分离操作,因为在IC封装领域中,芯片厂家对其焊盘的位置完全固定。作为封装这部分的设计,需要考虑如何将已有固定位置的焊盘拉线至引脚上。另一方面,引线框的设计也相对固定,没有办法针对每一种芯片产品就设计出一套独立的引线框设计,这样会导致封装成本上的增加。
因考虑到电器元件自身需要留有安全区域,而且焊线自身有半径,所以焊线落点不能过于靠近引脚的边缘。现阶段技术无法控制焊线与引脚边缘的距离,如果一个引脚上的焊线过多,有可能焊线会被分配到距离引脚不到该线型的半径的距离。另一方面,因为打线区域并不是利用所有的引脚空间,现有焊线分离技术不能尽可能控制焊线在打线区域内不会相交,且不兼容这样的安全区域内的分离操作。综上所述,如果遇到不符合设计规范的引脚,需要人工进行拖动,人工操作效率较低,而且可能导致误操作将引线拖动到其他引脚上,人工还需要对该引脚进行焊线分离操作,如果引脚上的焊线众多很有可能花费更多的时间。在每一次操作后仍需要进行图纸的正确性检查,带来更多人力和时间上的成本。
发明内容
发明目的:本发明的目的在于提供一种IC芯片封装时避免焊线交叉的布线方法及系统,通过借鉴数控机床上刀补的操作原理,融合KM配对算法,确保引脚内的焊线落点在配置的打线区域内,且避免同一引脚上焊线的交叉,从而完成一键对引脚上焊线落点的规范化和分离操作。
技术方案:本发明提供的一种IC芯片封装时避免焊线交叉的布线方法,包含以下步骤:
1)配置打线区域和焊线落点间隔的参数,遍历图纸,获取存在多根焊线的引脚,统计该引脚上所有焊线数量;
2)根据配置的打线区域,使用刀补算法计算出该引脚的打线区域轮廓;
3)判断焊线是否在该引脚内,若焊线在该引脚内部则进行下一步,若焊线不在引脚内部,则返回步骤2);
4)获取该引脚上所有焊线数量,统计需要生成多少焊点;
5)判断该引脚位置,获取方向向量,使得焊线垂直于方向向量;
6)查询符合要求的焊点,使得引脚上的焊线均有独立焊点,若均有独立焊点则进入步骤8),否则进入步骤7);
7)根据引脚的标号文字对齐点为中心向两侧寻找符合要求的焊点,方向为计算出的垂直方向向量,每次查找间隔为配置的间隔,每次寻找轮廓线与该垂直方向射线的交点,计算两个交点间的距离,根据间隔判断出能放多少个焊点作为独立焊点并记录,将计算出的独立焊点从所有焊点数中减除,再次判断是否所有在引脚上的焊线均有独立焊点,若均有独立焊点则进入步骤8),否则循环步骤7);
8)根据该引脚上的焊线的另一端落点的坐标进行排序,根据焊线另一端落点的坐标和引脚上现有焊点的坐标分配,计算出相应焊点,将计算出的相应焊点和焊线的另一端落点均按照坐标的x轴和y轴的大小由大到小进行排序,排序后按照焊线另一端最大的落点和引脚上最大的焊点相连,一对一循环连接下来,直至焊线的另一端落点均与引脚上的焊点对应连接,连接后进行焊线交叉检测,如果焊线依然存在交叉现象进入下一个步骤;
9)使用KM算法将仍存在交叉的焊线进行配对,计算得到最大权重,最大权重下的焊线符合配置要求;
10)判断是否仍有交叉的焊线,若无,则结束,若仍存在交叉的焊线,则重新修改打线区域和间隔的配置参数再次尝试。
进一步的,步骤2)中,使用刀补算法计算打线区域的轮廓,刀补包含直线和直线、直线和圆弧、圆弧和直线三种不同的情况,通过每三个点计算出刀补的点位的方式计算出整个多段线所有的对应刀补点位,绘制出轮廓线;
每三个点计算刀补,即取第一、第二段线段/圆弧的起点及终点,共三个点,第一段线段/圆弧的终点等于第二段线段/圆弧的起点,进行计算。
进一步的,步骤3)中,判断焊线是否在引脚内,设定测量点为需判断的焊线落点,多段线为引脚的边框线,包含以下步骤:
3.1)计算测量点距离多段线的最短距离点位,判断最短距离点位是否与测量点相同,若相同则表示测量点在多段线上;
3.2)做一条起点为测量点,方向为从最近点出发朝着到测量点的射线;
3.3)计算该射线与多段线的交点,过滤两个交点距离过近的点位;
3.4)过滤由于射线的反向延长导致的将最近点作为交点的点位;
3.5)若交点为多段线的顶点,将射线旋转角度再次进行判断;
3.6)统计交点个数,若交点为偶数表示测试点在多段线外部,即引脚外部,若交点个数为奇数表示测试点在多段线内部,即引脚内部。
进一步的,步骤9)中,最大权重下的焊线符合配置要求,提取所有交叉焊线的端点,将在引脚内的端点放入一个集合组,将焊线的另一端点放入另一个集合组,计算两个集合组之间的距离,将权重即为距离的导数,距离越小,权重越大。
本发明对应提供一种IC芯片封装时避免焊线交叉的布线系统,包含配置模块、刀补模块、首次判断模块、信息采集模块、获取位置模块、查询模块、补充查询模块、排序模块、KM算法模块、二次判断模块;
配置模块用以配置打线区域和焊线落点间隔的参数,遍历图纸,获取存在多根焊线的引脚,统计该引脚上所有焊线数量;
刀补模块用以根据配置的打线区域,使用刀补算法计算出该引脚的打线区域轮廓;
首次判断模块用以判断焊线是否在该引脚内,若焊线在该引脚内部则进如信息采集模块,若焊线不在引脚内部,则返回刀补模块;
信息采集模块用以获取该引脚上所有焊线数量,统计需要生成多少焊点;
获取位置模块用以判断该引脚位置,获取方向向量,使得焊线垂直于方向向量;
查询模块用以查询符合要求的焊点,使得引脚上的焊线均有独立焊点,若均有独立焊点则进入排序模块,否则进入补偿查询模块;
补充查询模块用以根据引脚的标号文字对齐点为中心向两侧寻找符合要求的焊点,方向为计算出的垂直方向向量,每次查找间隔为配置的间隔,每次寻找轮廓线与该垂直方向射线的交点,计算两个交点间的距离,根据间隔判断出能放多少个焊点作为独立焊点并记录,将计算出的独立焊点从所有焊点数中减除,再次判断是否所有在引脚上的焊线均有独立焊点,若均有独立焊点则进入排序模块,否则循环补充查询模块;
排序模块用以根据该引脚上的焊线的另一端落点的坐标进行排序,根据焊线另一端落点的坐标和引脚上现有焊点的坐标分配,计算出相应焊点,将计算出的相应焊点和焊线的另一端落点均按照坐标的x轴和y轴的大小由大到小进行排序,排序后按照焊线另一端最大的落点和引脚上最大的焊点相连,一对一循环连接下来,直至焊线的另一端落点均与引脚上的焊点对应连接,连接后进行焊线交叉检测,如果焊线依然存在交叉现象则进入KM算法模块;
KM算法模块用以使用KM算法将仍存在交叉的焊线进行配对,计算得到最大权重,最大权重下的焊线符合配置要求;
二次判断模块用以判断是否仍有交叉的焊线,若无,则结束,若仍存在交叉的焊线,则重新修改打线区域和间隔的配置参数再次尝试。
进一步的,刀补模块中,使用刀补算法计算打线区域的轮廓,刀补包含直线和直线、直线和圆弧、圆弧和直线三种不同的情况,通过每三个点计算出刀补的点位的方式计算出整个多段线所有的对应刀补点位,绘制出轮廓线;
每三个点计算刀补,即取第一、第二段线段/圆弧的起点及终点,共三个点,第一段线段/圆弧的终点等于第二段线段/圆弧的起点,进行计算。
进一步的,首次判断模块中,判断焊线是否在引脚内,设定测量点为需判断的焊线落点,多段线为引脚的边框线,包含,计算距离单元、射线单元、计算交点单元、过滤交点单元、旋转角度单元、统计单元;
计算距离单元用以计算测量点距离多段线的最短距离点位,判断最短距离点位是否与测量点相同,若相同则表示测量点在多段线上;
射线单元用以做一条起点为测量点,方向为从最近点出发朝着到测量点的射线;
计算交点单元用以计算该射线与多段线的交点,过滤两个交点距离过近的点位;
过滤交点单元用以过滤由于射线的反向延长导致的将最近点作为交点的点位;
旋转角度单元用以根据交点为多段线的顶点情况,将射线的旋转极小的角度再次进行判断;
统计单元用以统计交点个数,若交点为偶数表示测试点在多段线外部,即引脚外部,若交点个数为奇数表示测试点在多段线内部,即引脚内部。
进一步的,KM算法模块中,最大权重下的焊线符合配置要求,提取所有交叉焊线的端点,将在引脚内的端点放入一个集合组,将焊线的另一端点放入另一个集合组,计算两个集合组之间的距离,将权重即为距离的导数,距离越小,权重越大。
有益效果:本发明与现有技术相比,通过借鉴数控机床上刀补的操作原理,使用刀补算法配置打线区域,同时使用KM算法使得引脚内的焊线均有独立焊点且独立焊点在配置的打线区域内,通过排序与KM算法配合,避免了同一引脚上焊线的交叉,完成引脚上焊线落点的规范化和分离操作。
附图说明
图1是本发明的流程示意图。
图2是本发明中打线区域参数示意图。
图3是本发明中刀补后打线区域轮廓图。
图4是本发明中排序完成后示意图。
图5是本发明中KM算法匹配总示意图。
图6是本发明中KM算法匹配第一及第二轮示意图。
图7是本发明中KM算法匹配第三轮示意图。
图8是本发明中KM算法匹配完成后示意图。
具体实施方式
下面结合附图及具体实施例对本发明做进一步的详细说明。
实施例1
本发明提供的一种IC芯片封装时避免焊线交叉的布线方法,请参阅图1所示,包含以下步骤:
1)配置打线区域和焊线落点间隔的参数,遍历图纸,获取存在多根焊线的引脚,统计该引脚上所有焊线数量,如图2所示,常用的实施方式可以是通过软件界面进行配置或者通过配置文件的方式进行配置。
2)请参阅图3所示,根据配置的打线区域,使用刀补算法计算出该引脚的打线区域轮廓。
使用刀补算法计算打线区域的轮廓,刀补包含直线到直线、直线到圆弧、圆弧到直线三种不同的情况,通过每三个点计算出刀补的点位的方式计算出整个多段线所有的对应刀补点位,绘制出轮廓线;
每三个点计算刀补,即取第一、第二段线段/圆弧的起点及终点,共三个点,第一段线段/圆弧的终点等于第二段线段/圆弧的起点,进行计算。
首先,出现在以下公式中的
Figure 578976DEST_PATH_IMAGE001
为刀具半径,
Figure 309166DEST_PATH_IMAGE002
为圆弧半径。
2.1)直线到直线:
假设第一段直线
Figure 728383DEST_PATH_IMAGE003
的起点为(
Figure 185910DEST_PATH_IMAGE004
),终点为(
Figure 813331DEST_PATH_IMAGE005
),第二段直线
Figure 698110DEST_PATH_IMAGE003
的起点为(
Figure 276728DEST_PATH_IMAGE005
),终点为(
Figure 803524DEST_PATH_IMAGE006
);
直线
Figure 285453DEST_PATH_IMAGE003
的方向矢量为:
Figure 341133DEST_PATH_IMAGE007
Figure 407047DEST_PATH_IMAGE008
其中
Figure 206376DEST_PATH_IMAGE009
为直线
Figure 542810DEST_PATH_IMAGE003
的长度:
Figure 238234DEST_PATH_IMAGE010
同样,直线
Figure 62882DEST_PATH_IMAGE011
的方向矢量为:
Figure 478951DEST_PATH_IMAGE012
Figure 653581DEST_PATH_IMAGE013
其中
Figure 300332DEST_PATH_IMAGE014
为直线
Figure 357149DEST_PATH_IMAGE011
的长度:
Figure 842489DEST_PATH_IMAGE015
根据转接角
Figure 855313DEST_PATH_IMAGE016
分为两种情况:
Figure 954856DEST_PATH_IMAGE017
时,即
Figure 46440DEST_PATH_IMAGE018
,使用如下公式计算刀补转接点坐标值
Figure 240530DEST_PATH_IMAGE019
Figure 655330DEST_PATH_IMAGE020
Figure 676507DEST_PATH_IMAGE021
时,即
Figure 380021DEST_PATH_IMAGE022
,使用如下公式计算刀补转接点坐标值
Figure 395380DEST_PATH_IMAGE023
Figure 930266DEST_PATH_IMAGE024
2.2)直线到圆弧:
假设第一段直线
Figure 856765DEST_PATH_IMAGE025
的起点为(
Figure 578734DEST_PATH_IMAGE004
),终点为(
Figure 114626DEST_PATH_IMAGE005
),第二段圆弧
Figure 238440DEST_PATH_IMAGE026
的起点为(
Figure 132578DEST_PATH_IMAGE005
),终点为(
Figure 607421DEST_PATH_IMAGE006
),圆心相对于圆弧起点的坐标为(
Figure 947005DEST_PATH_IMAGE027
);
直线
Figure 190904DEST_PATH_IMAGE025
的方向矢量为:
Figure 193626DEST_PATH_IMAGE007
Figure 890187DEST_PATH_IMAGE008
其中
Figure 767882DEST_PATH_IMAGE009
为直线
Figure 131867DEST_PATH_IMAGE025
的长度:
Figure 305491DEST_PATH_IMAGE010
圆弧
Figure 754927DEST_PATH_IMAGE026
在起点(
Figure 859149DEST_PATH_IMAGE005
)的方向矢量为:
Figure 67188DEST_PATH_IMAGE028
Figure 926560DEST_PATH_IMAGE029
其中
Figure 348445DEST_PATH_IMAGE002
的定义为:
Figure 584254DEST_PATH_IMAGE030
Figure 640941DEST_PATH_IMAGE031
根据转接角
Figure 671214DEST_PATH_IMAGE016
分为两种情况:
Figure 580395DEST_PATH_IMAGE017
时,即
Figure 151054DEST_PATH_IMAGE018
,使用如下公式计算刀补转接点坐标值
Figure 327826DEST_PATH_IMAGE019
Figure 529000DEST_PATH_IMAGE020
Figure 659898DEST_PATH_IMAGE021
时,即
Figure 971931DEST_PATH_IMAGE022
,使用如下公式计算刀补转接点坐标值
Figure 268789DEST_PATH_IMAGE032
Figure 640864DEST_PATH_IMAGE033
其中
Figure 446009DEST_PATH_IMAGE034
Figure 312465DEST_PATH_IMAGE035
函数表示提取括号内数字的符号,即括号内结果大于0为1,括号内结果小于0为-1。
2.3)圆弧到直线:
假设第一段圆弧
Figure 214562DEST_PATH_IMAGE036
的起点为(
Figure 947DEST_PATH_IMAGE037
),终点为(
Figure 434334DEST_PATH_IMAGE038
),圆心相对于圆弧起点的坐标为(
Figure 353748DEST_PATH_IMAGE039
),第二段直线
Figure 359619DEST_PATH_IMAGE040
的起点为(
Figure 745601DEST_PATH_IMAGE038
),终点为(
Figure 853235DEST_PATH_IMAGE041
);
则圆弧
Figure 795914DEST_PATH_IMAGE036
在终点(
Figure 203762DEST_PATH_IMAGE038
)的方向矢量为:
Figure 806650DEST_PATH_IMAGE042
Figure 136000DEST_PATH_IMAGE043
其中
Figure 944687DEST_PATH_IMAGE002
的定义为:
Figure 613566DEST_PATH_IMAGE030
Figure 184094DEST_PATH_IMAGE031
Figure 740DEST_PATH_IMAGE044
的定义如下:
Figure 550801DEST_PATH_IMAGE045
Figure 136503DEST_PATH_IMAGE046
直线
Figure 883791DEST_PATH_IMAGE025
的方向矢量为:
Figure 922154DEST_PATH_IMAGE012
Figure 541486DEST_PATH_IMAGE013
其中
Figure 247274DEST_PATH_IMAGE047
为直线
Figure 221921DEST_PATH_IMAGE025
的长度:
Figure 29471DEST_PATH_IMAGE015
Figure 373864DEST_PATH_IMAGE048
时,即
Figure 183426DEST_PATH_IMAGE049
,使用如下公式计算刀补转接点坐标值
Figure 751811DEST_PATH_IMAGE050
Figure 46657DEST_PATH_IMAGE051
Figure 991479DEST_PATH_IMAGE052
时,即
Figure 249023DEST_PATH_IMAGE053
,使用如下公式计算刀补转接点坐标值
Figure 4621DEST_PATH_IMAGE054
Figure 504872DEST_PATH_IMAGE055
其中
Figure 254652DEST_PATH_IMAGE056
Figure 789538DEST_PATH_IMAGE057
函数表示提取括号内数字的符号,即括号内结果大于0为1,括号内结果小于0为-1。
3)判断焊线是否在该引脚内,若焊线在该引脚内部则进行下一步,若焊线不在引脚内部,则返回步骤2)。
判断焊线是否在引脚内,引脚都是由多段线组成,所以使用如下描述的射线法进行判断落点是否在多段线内部,设定测量点为需判断的焊线落点,多段线为引脚的边框线。
3.1)计算测量点距离多段线的最短距离点位,判断最短距离点位是否与测量点相同,若相同则表示测量点在多段线上。
3.2)做一条起点为测量点,方向为从最近点出发朝着到测量点的射线。
3.3)计算该射线与多段线的交点,过滤两个交点距离过近的点位;防止由于多端线有小型齿距导致的多个交点而影响判断。
3.4)过滤由于射线的反向延长导致的将最近点作为交点的点位。
3.5)若交点为多段线的顶点,将射线的旋转极小的角度再次进行判断,即考虑射线通过顶点的情况。
3.6)统计交点个数,若交点为偶数表示测试点在多段线外部,即引脚外部,若交点个数为奇数表示测试点在多段线内部,即引脚内部。
4)获取该引脚上所有焊线数量,统计需要生成多少焊点。
5)判断该引脚位置,获取方向向量,使得焊线垂直于方向向量。
获取引脚在引线框哪一侧有很多不同的方式,本实施例1以封装线为依据,判断引脚在封装线的哪一侧,方向向量为2D向量,如果在左侧,方向向量的x值为-1,右侧为1,如果在上侧方向向量y的值为1,下侧为-1。
6)查询符合要求的焊点,使得引脚上的焊线均有独立焊点,若均有独立焊点则进入步骤8),否则进入步骤7)。
7)根据引脚的标号文字对齐点为中心向两侧寻找符合要求的焊点,方向为计算出的垂直方向向量,每次查找间隔为配置的间隔,每次寻找轮廓线与该垂直方向射线的交点,计算两个交点间的距离,根据间隔判断出能放多少个焊点作为独立焊点并记录,将计算出的独立焊点从所有焊点数中减除,再次判断是否所有在引脚上的焊线均有独立焊点,若均有独立焊点则进入步骤8),否则循环步骤7)。
8)请参阅图4所示,根据该引脚上的焊线的另一端落点的坐标进行排序,根据焊线另一端落点的坐标和引脚上现有焊点的坐标分配,计算出相应焊点,将计算出的相应焊点和焊线的另一端落点均按照坐标的x轴和y轴的大小由大到小进行排序,排序后按照焊线另一端最左的落点和引脚上最左的焊点相连,即焊线另一端最大的坐标和引脚上最大的坐标一对一连接,一对一循环连接下来,直至焊线的另一端落点均与引脚上的焊点对应连接,连接后进行焊线交叉检测,如果焊线依然存在交叉现象进入下一个步骤。
9)请参阅图5所示,使用KM算法将仍存在交叉的焊线进行配对,计算得到最大权重,最大权重下的焊线符合配置要求。
最大权重下的焊线符合配置要求,提取所有交叉焊线的端点,将在引脚内的端点放入一个集合组,将焊线的另一端点放入另一个集合组,计算两个集合组之间的距离,将权重即为距离的导数,距离越小,权重越大。
请参阅图4所示,仍有三条线存在相交叉的情况,提取三条线各自的两个端点,将在引脚内的端点放入一个集合组U,不在引脚一侧的端点放入另一个集合组V,这样形成了左右两个点集合,此时寻找左边点集合中每个点权重最大的匹配,以此两两相连形成不交叉的线。
KM算法的思路是尽量找权重最大的边进行连接,首先使用贪心算法初始化集合组U的期望值,如图5所示,
Figure 450458DEST_PATH_IMAGE058
表示
Figure 641268DEST_PATH_IMAGE059
的配对期望值,每个点都倾向于选择距离最近的另一端,所以期望配对值是所有配对值的最大值。
假设匹配的权重如图6所示,每个集合组U中的点与集合组V均有配对的可能性。
第一轮匹配中
Figure 177160DEST_PATH_IMAGE060
选择了
Figure 363291DEST_PATH_IMAGE061
Figure 195112DEST_PATH_IMAGE062
Figure 669956DEST_PATH_IMAGE063
的权重比较重,
Figure 901217DEST_PATH_IMAGE061
不是最理想的选择故这一轮匹配成功。
第二轮匹配中
Figure 191122DEST_PATH_IMAGE062
选择了
Figure 443111DEST_PATH_IMAGE064
Figure 77355DEST_PATH_IMAGE063
的最佳匹配是
Figure 456515DEST_PATH_IMAGE064
,但是因为
Figure 554921DEST_PATH_IMAGE064
已经匹配过,故匹配失败,相应的
Figure 227080DEST_PATH_IMAGE062
Figure 676515DEST_PATH_IMAGE063
需要调整期望值,即
Figure 390525DEST_PATH_IMAGE058
;调整的值为参与匹配的
Figure 609016DEST_PATH_IMAGE062
Figure 457936DEST_PATH_IMAGE063
,选择
Figure 801192DEST_PATH_IMAGE064
与各自第二好,第二好为
Figure 37002DEST_PATH_IMAGE062
Figure 595153DEST_PATH_IMAGE063
次优选择,之间的差的最小值,即:
Figure 625426DEST_PATH_IMAGE065
Figure 829880DEST_PATH_IMAGE064
则因匹配出现了问题,
Figure 72643DEST_PATH_IMAGE064
的期望值会增加调整的值,即
Figure 282038DEST_PATH_IMAGE066
第三轮选择情况如图7所示,
Figure 483212DEST_PATH_IMAGE062
降低了期望值,尝试更换选择
Figure 378225DEST_PATH_IMAGE067
,而
Figure 690258DEST_PATH_IMAGE063
则因选择
Figure 223001DEST_PATH_IMAGE064
的权重值最大,故最终选择配对
Figure 267181DEST_PATH_IMAGE064
,在整个流程结束后,所有选择权重的和是最大的,即我们找到了每个点权重最大的匹配,如图8所示。
10)判断是否仍有交叉的焊线,若无,则结束,若仍存在交叉的焊线,则重新修改打线区域和间隔的配置参数再次尝试。
实施例2
对应实施例1所述的一种IC芯片封装时避免焊线交叉的布线方法,本实施例2提供一种IC芯片封装时避免焊线交叉的布线系统,请参阅图1所示,包含配置模块、刀补模块、首次判断模块、信息采集模块、获取位置模块、查询模块、补充查询模块、排序模块、KM算法模块、二次判断模块。
配置模块用以配置打线区域和焊线落点间隔的参数,遍历图纸,获取存在多根焊线的引脚,统计该引脚上所有焊线数量,如图2所示,常用的实施方式可以是通过软件界面进行配置或者通过配置文件的方式进行配置。
刀补模块用以根据配置的打线区域,使用刀补算法计算出该引脚的打线区域轮廓。
请参阅图3所示,使用刀补算法计算打线区域的轮廓,刀补包含直线到直线、直线到圆弧、圆弧到直线三种不同的情况,通过每三个点计算出刀补的点位的方式计算出整个多段线所有的对应刀补点位,绘制出轮廓线;
每三个点计算刀补,即取第一、第二段线段/圆弧的起点及终点,共三个点,第一段线段/圆弧的终点等于第二段线段/圆弧的起点,进行计算。
首先,出现在以下公式中的
Figure 977385DEST_PATH_IMAGE001
为刀具半径,
Figure 93109DEST_PATH_IMAGE002
为圆弧半径。
直线到直线:
假设第一段直线
Figure 745938DEST_PATH_IMAGE068
的起点为(
Figure 554494DEST_PATH_IMAGE069
),终点为(
Figure 887081DEST_PATH_IMAGE070
),第二段直线
Figure 478600DEST_PATH_IMAGE068
的起点为(
Figure 235203DEST_PATH_IMAGE070
),终点为(
Figure 230972DEST_PATH_IMAGE071
);
直线
Figure 338605DEST_PATH_IMAGE068
的方向矢量为:
Figure 779820DEST_PATH_IMAGE007
Figure 63034DEST_PATH_IMAGE008
其中
Figure 947813DEST_PATH_IMAGE072
为直线
Figure 824633DEST_PATH_IMAGE068
的长度:
Figure 554692DEST_PATH_IMAGE010
同样,直线
Figure 957991DEST_PATH_IMAGE073
的方向矢量为:
Figure 262940DEST_PATH_IMAGE012
Figure 610744DEST_PATH_IMAGE013
其中
Figure 160805DEST_PATH_IMAGE047
为直线
Figure 153032DEST_PATH_IMAGE073
的长度:
Figure 176352DEST_PATH_IMAGE015
根据转接角
Figure 463983DEST_PATH_IMAGE016
分为两种情况:
Figure 473527DEST_PATH_IMAGE074
时,即
Figure 710473DEST_PATH_IMAGE075
,使用如下公式计算刀补转接点坐标值
Figure 124268DEST_PATH_IMAGE019
Figure 384348DEST_PATH_IMAGE020
Figure 463163DEST_PATH_IMAGE076
时,即
Figure 13005DEST_PATH_IMAGE077
,使用如下公式计算刀补转接点坐标值
Figure 581389DEST_PATH_IMAGE023
Figure 610656DEST_PATH_IMAGE024
直线到圆弧:
假设第一段直线
Figure 352216DEST_PATH_IMAGE025
的起点为(
Figure 750705DEST_PATH_IMAGE069
),终点为(
Figure 958833DEST_PATH_IMAGE070
),第二段圆弧
Figure 6554DEST_PATH_IMAGE026
的起点为(
Figure 489488DEST_PATH_IMAGE070
),终点为(
Figure 430900DEST_PATH_IMAGE071
),圆心相对于圆弧起点的坐标为(
Figure 590354DEST_PATH_IMAGE078
);
直线
Figure 374640DEST_PATH_IMAGE025
的方向矢量为:
Figure 411997DEST_PATH_IMAGE007
Figure 535811DEST_PATH_IMAGE008
其中
Figure 131746DEST_PATH_IMAGE072
为直线
Figure 13114DEST_PATH_IMAGE025
的长度:
Figure 837851DEST_PATH_IMAGE010
圆弧
Figure 629220DEST_PATH_IMAGE026
在起点(
Figure 881210DEST_PATH_IMAGE070
)的方向矢量为:
Figure 515454DEST_PATH_IMAGE028
Figure 145148DEST_PATH_IMAGE029
其中
Figure 40291DEST_PATH_IMAGE002
的定义为:
Figure 213915DEST_PATH_IMAGE030
Figure 397772DEST_PATH_IMAGE031
根据转接角分为两种情况:
Figure 501994DEST_PATH_IMAGE074
时,即
Figure 704174DEST_PATH_IMAGE075
,使用如下公式计算刀补转接点坐标值
Figure 94704DEST_PATH_IMAGE019
Figure 437961DEST_PATH_IMAGE020
Figure 893344DEST_PATH_IMAGE076
时,即
Figure 497501DEST_PATH_IMAGE077
,使用如下公式计算刀补转接点坐标值
Figure 934298DEST_PATH_IMAGE032
Figure 138752DEST_PATH_IMAGE033
其中
Figure 319198DEST_PATH_IMAGE034
Figure 512282DEST_PATH_IMAGE057
函数表示提取括号内数字的符号,即括号内结果大于0为1,括号内结果小于0为-1。
圆弧到直线:
假设第一段圆弧
Figure 995347DEST_PATH_IMAGE036
的起点为(
Figure 109933DEST_PATH_IMAGE037
),终点为(
Figure 94070DEST_PATH_IMAGE038
),圆心相对于圆弧起点的坐标为(
Figure 922086DEST_PATH_IMAGE039
),第二段直线
Figure 966266DEST_PATH_IMAGE040
的起点为(
Figure 364886DEST_PATH_IMAGE038
),终点为(
Figure 965763DEST_PATH_IMAGE041
);
则圆弧
Figure 274384DEST_PATH_IMAGE036
在终点(
Figure 348520DEST_PATH_IMAGE038
)的方向矢量为:
Figure 640961DEST_PATH_IMAGE079
Figure 81081DEST_PATH_IMAGE080
其中
Figure 837685DEST_PATH_IMAGE081
的定义为:
Figure 958088DEST_PATH_IMAGE082
Figure 82033DEST_PATH_IMAGE083
Figure 211663DEST_PATH_IMAGE084
的定义如下:
Figure 822772DEST_PATH_IMAGE085
Figure 487978DEST_PATH_IMAGE086
直线
Figure 223853DEST_PATH_IMAGE040
的方向矢量为:
Figure 281807DEST_PATH_IMAGE087
Figure 419528DEST_PATH_IMAGE088
其中
Figure 960362DEST_PATH_IMAGE089
为直线
Figure 573746DEST_PATH_IMAGE040
的长度:
Figure 45178DEST_PATH_IMAGE090
Figure 614569DEST_PATH_IMAGE091
时,即
Figure 372309DEST_PATH_IMAGE092
,使用如下公式计算刀补转接点坐标值
Figure 348355DEST_PATH_IMAGE093
Figure 233266DEST_PATH_IMAGE094
Figure 407895DEST_PATH_IMAGE095
时,即
Figure 477482DEST_PATH_IMAGE096
,使用如下公式计算刀补转接点坐标值
Figure 783568DEST_PATH_IMAGE097
Figure 862382DEST_PATH_IMAGE098
其中
Figure 688256DEST_PATH_IMAGE099
Figure 7373DEST_PATH_IMAGE100
函数表示提取括号内数字的符号,即括号内结果大于0为1,括号内结果小于0为-1。
首次判断模块用以判断焊线是否在该引脚内,若焊线在该引脚内部则进如信息采集模块,若焊线不在引脚内部,则返回刀补模块。
判断焊线是否在引脚内,设定测量点为需判断的焊线落点,多段线为引脚的边框线,包含,计算距离单元、射线单元、计算交点单元、过滤交点单元、旋转角度单元、统计单元。
计算距离单元用以计算测量点距离多段线的最短距离点位,判断最短距离点位是否与测量点相同,若相同则表示测量点在多段线上。
射线单元用以做一条起点为测量点,方向为从最近点出发朝着到测量点的射线。
计算交点单元用以计算该射线与多段线的交点,过滤两个交点距离过近的点位。
过滤交点单元用以过滤由于射线的反向延长导致的将最近点作为交点的点位。
旋转角度单元用以根据交点为多段线的顶点情况,将射线的旋转极小的角度再次进行判断。
统计单元用以统计交点个数,若交点为偶数表示测试点在多段线外部,即引脚外部,若交点个数为奇数表示测试点在多段线内部,即引脚内部。
信息采集模块用以获取该引脚上所有焊线数量,统计需要生成多少焊点。
获取位置模块用以判断该引脚位置,获取方向向量,使得焊线垂直于方向向量。
获取引脚在引线框哪一侧有很多不同的方式,本实施例1以封装线为依据,判断引脚在封装线的哪一侧,方向向量为2D向量,如果在左侧,方向向量的x值为-1,右侧为1,如果在上侧方向向量y的值为1,下侧为-1。
查询模块用以查询符合要求的焊点,使得引脚上的焊线均有独立焊点,若均有独立焊点则进入排序模块,否则进入补偿查询模块。
补充查询模块用以根据引脚的标号文字对齐点为中心向两侧寻找符合要求的焊点,方向为计算出的垂直方向向量,每次查找间隔为配置的间隔,每次寻找轮廓线与该垂直方向射线的交点,计算两个交点间的距离,根据间隔判断出能放多少个焊点作为独立焊点并记录,将计算出的独立焊点从所有焊点数中减除,再次判断是否所有在引脚上的焊线均有独立焊点,若均有独立焊点则进入排序模块,否则循环补充查询模块。
排序模块用以根据该引脚上的焊线的另一端落点的坐标进行排序,根据焊线另一端落点的坐标和引脚上现有焊点的坐标分配,计算出相应焊点,将计算出的相应焊点和焊线的另一端落点均按照坐标的x轴和y轴的大小由大到小进行排序,排序后按照焊线另一端最左的落点和引脚上最左的焊点相连,即焊线另一端最大的坐标和引脚上最大的坐标一对一连接,直至焊线的另一端落点均与引脚上的焊点对应连接,连接后进行焊线交叉检测,如果焊线依然存在交叉现象则进入KM算法模块。
KM算法模块用以使用KM算法将仍存在交叉的焊线进行配对,计算得到最大权重,最大权重下的焊线符合配置要求。
最大权重下的焊线符合配置要求,提取所有交叉焊线的端点,将在引脚内的端点放入一个集合组,将焊线的另一端点放入另一个集合组,计算两个集合组之间的距离,将权重即为距离的导数,距离越小,权重越大。
请参阅图4所示,仍有三条线存在相交叉的情况,提取三条线各自的两个端点,将在引脚内的端点放入一个集合组U,不在引脚一侧的端点放入另一个集合组V,这样形成了左右两个点集合,此时寻找左边点集合中每个点权重最大的匹配,以此两两相连形成不交叉的线。
KM算法的思路是尽量找权重最大的边进行连接,首先使用贪心算法初始化集合组U的期望值,如图5所示,
Figure 426853DEST_PATH_IMAGE058
表示
Figure 168413DEST_PATH_IMAGE059
的配对期望值,每个点都倾向于选择距离最近的另一端,所以期望配对值是所有配对值的最大值。
假设匹配的权重如图6所示,每个集合组U中的点与集合组V均有配对的可能性。
第一轮匹配中
Figure 989738DEST_PATH_IMAGE060
选择了
Figure 972432DEST_PATH_IMAGE061
Figure 3842DEST_PATH_IMAGE062
Figure 237509DEST_PATH_IMAGE063
的权重比较重,
Figure 349559DEST_PATH_IMAGE061
不是最理想的选择故这一轮匹配成功。
第二轮匹配中
Figure 72795DEST_PATH_IMAGE062
选择了
Figure 794764DEST_PATH_IMAGE064
Figure 127394DEST_PATH_IMAGE063
的最佳匹配是
Figure 860995DEST_PATH_IMAGE064
,但是因为
Figure 925771DEST_PATH_IMAGE064
已经匹配过,故匹配失败,相应的
Figure 213664DEST_PATH_IMAGE062
Figure 355845DEST_PATH_IMAGE063
需要调整期望值,即
Figure 209531DEST_PATH_IMAGE058
;调整的值为参与匹配的
Figure 38685DEST_PATH_IMAGE062
Figure 282715DEST_PATH_IMAGE063
,选择
Figure 645564DEST_PATH_IMAGE064
与各自第二好,第二好为
Figure 321133DEST_PATH_IMAGE062
Figure 930975DEST_PATH_IMAGE063
次优选择,选择之间的差的最小值,即:
Figure 335123DEST_PATH_IMAGE065
Figure 642607DEST_PATH_IMAGE064
则因匹配出现了问题,
Figure 907104DEST_PATH_IMAGE064
的期望值会增加调整的值,即
Figure 376263DEST_PATH_IMAGE066
第三轮选择情况如图7所示,
Figure 765525DEST_PATH_IMAGE062
降低了期望值,尝试更换选择
Figure 79963DEST_PATH_IMAGE067
,而
Figure 621803DEST_PATH_IMAGE063
则因选择
Figure 494818DEST_PATH_IMAGE064
的权重值最大,故最终选择配对
Figure 607262DEST_PATH_IMAGE064
,在整个流程结束后,所有选择权重的和是最大的,即我们找到了每个点权重最大的匹配,如图8所示。
二次判断模块用以判断是否仍有交叉的焊线,若无,则结束,若仍存在交叉的焊线,则重新修改打线区域和间隔的配置参数再次尝试。

Claims (10)

1.一种IC芯片封装时避免焊线交叉的布线方法,其特征在于,包含以下步骤:
1)配置打线区域和焊线落点间隔的参数,遍历图纸,获取存在多根焊线的引脚,统计该引脚上所有焊线数量;
2)根据配置的打线区域,使用刀补算法计算出该引脚的打线区域轮廓;
3)判断焊线是否在该引脚内,若焊线在该引脚内部则进行下一步,若焊线不在引脚内部,则返回步骤2);
4)获取该引脚上所有焊线数量,统计需要生成多少焊点;
5)判断该引脚位置,获取方向向量,使得焊线垂直于方向向量;
6)查询符合要求的焊点,使得引脚上的焊线均有独立焊点,若均有独立焊点则进入步骤8),否则进入步骤7);
7)根据引脚的标号文字对齐点为中心向两侧寻找符合要求的焊点,方向为计算出的垂直方向向量,每次查找间隔为配置的间隔,每次寻找轮廓线与该垂直方向射线的交点,计算两个交点间的距离,根据间隔判断出能放多少个焊点作为独立焊点并记录,将计算出的独立焊点从所有焊点数中减除,再次判断是否所有在引脚上的焊线均有独立焊点,若均有独立焊点则进入步骤8),否则循环步骤7);
8)根据该引脚上的焊线的另一端落点的坐标进行排序,根据焊线另一端落点的坐标和引脚上现有焊点的坐标分配,计算出相应焊点,将计算出的相应焊点和焊线的另一端落点均按照坐标的x轴和y轴的大小由大到小进行排序,排序后按照焊线另一端最大的落点和引脚上最大的焊点相连,一对一循环连接下来,直至焊线的另一端落点均与引脚上的焊点对应连接,连接后进行焊线交叉检测,如果焊线依然存在交叉现象进入下一个步骤;
9)使用KM算法将仍存在交叉的焊线进行配对,计算得到最大权重,最大权重下的焊线符合配置要求;
10)判断是否仍有交叉的焊线,若无,则结束,若仍存在交叉的焊线,则重新修改打线区域和间隔的配置参数再次尝试。
2.根据权利要求1所述的IC芯片封装时避免焊线交叉的布线方法,其特征在于,步骤2)中,使用刀补算法计算打线区域的轮廓,刀补包含直线和直线、直线和圆弧、圆弧和直线三种不同的情况,通过每三个点计算出刀补的点位的方式计算出整个多段线所有的对应刀补点位,绘制出轮廓线;
每三个点计算刀补,即取第一、第二段线段/圆弧的起点及终点,共三个点,第一段线段/圆弧的终点等于第二段线段/圆弧的起点,进行计算。
3.根据权利要求1所述的IC芯片封装时避免焊线交叉的布线方法,其特征在于,步骤3)中,判断焊线是否在引脚内,设定测量点为需判断的焊线落点,多段线为引脚的边框线,包含以下步骤:
3.1)计算测量点距离多段线的最短距离点位,判断最短距离点位是否与测量点相同,若相同则表示测量点在多段线上;
3.2)做一条起点为测量点,方向为从最近点出发朝着到测量点的射线;
3.3)计算该射线与多段线的交点,过滤两个交点距离过近的点位;
3.4)过滤由于射线的反向延长导致的将最近点作为交点的点位;
3.5)若交点为多段线的顶点,将射线的旋转角度再次进行判断;
3.6)统计交点个数,若交点为偶数表示测试点在多段线外部,即引脚外部,若交点个数为奇数表示测试点在多段线内部,即引脚内部。
4.根据权利要求1所述的IC芯片封装时避免焊线交叉的布线方法,其特征在于,步骤9)中,最大权重下的焊线符合配置要求,提取所有交叉焊线的端点,将在引脚内的端点放入一个集合组,将焊线的另一端点放入另一个集合组,计算两个集合组之间的距离,将权重即为距离的导数,距离越小,权重越大。
5.一种IC芯片封装时避免焊线交叉的布线系统,其特征在于,包含配置模块、刀补模块、首次判断模块、信息采集模块、获取位置模块、查询模块、补充查询模块、排序模块、KM算法模块、二次判断模块;
配置模块用以配置打线区域和焊线落点间隔的参数,遍历图纸,获取存在多根焊线的引脚,统计该引脚上所有焊线数量;
刀补模块用以根据配置的打线区域,使用刀补算法计算出该引脚的打线区域轮廓;
首次判断模块用以判断焊线是否在该引脚内,若焊线在该引脚内部则进如信息采集模块,若焊线不在引脚内部,则返回刀补模块;
信息采集模块用以获取该引脚上所有焊线数量,统计需要生成多少焊点;
获取位置模块用以判断该引脚位置,获取方向向量,使得焊线垂直于方向向量;
查询模块用以查询符合要求的焊点,使得引脚上的焊线均有独立焊点,若均有独立焊点则进入排序模块,否则进入补偿查询模块;
补充查询模块用以根据引脚的标号文字对齐点为中心向两侧寻找符合要求的焊点,方向为计算出的垂直方向向量,每次查找间隔为配置的间隔,每次寻找轮廓线与该垂直方向射线的交点,计算两个交点间的距离,根据间隔判断出能放多少个焊点作为独立焊点并记录,将计算出的独立焊点从所有焊点数中减除,再次判断是否所有在引脚上的焊线均有独立焊点,若均有独立焊点则进入排序模块,否则循环补充查询模块;
排序模块用以根据该引脚上的焊线的另一端落点的坐标进行排序,根据焊线另一端落点的坐标和引脚上现有焊点的坐标分配,计算出相应焊点,将计算出的相应焊点和焊线的另一端落点均按照坐标的x轴和y轴的大小由大到小进行排序,排序后按照焊线另一端最大的落点和引脚上最大的焊点相连,一对一循环连接下来,直至焊线的另一端落点均与引脚上的焊点对应连接,连接后进行焊线交叉检测,如果焊线依然存在交叉现象则进入KM算法模块;
KM算法模块用以使用KM算法将仍存在交叉的焊线进行配对,计算得到最大权重,最大权重下的焊线符合配置要求;
二次判断模块用以判断是否仍有交叉的焊线,若无,则结束,若仍存在交叉的焊线,则重新修改打线区域和间隔的配置参数再次尝试。
6.根据权利要求5所述的IC芯片封装时避免焊线交叉的布线系统,其特征在于,刀补模块中,使用刀补算法计算打线区域的轮廓,刀补包含直线和直线、直线和圆弧、圆弧和直线三种不同的情况,通过每三个点计算出刀补的点位的方式计算出整个多段线所有的对应刀补点位,绘制出轮廓线;
每三个点计算刀补,即取第一、第二段线段/圆弧的起点及终点,共三个点,第一段线段/圆弧的终点等于第二段线段/圆弧的起点,进行计算。
7.根据权利要求5所述的IC芯片封装时避免焊线交叉的布线系统,其特征在于,首次判断模块中,判断焊线是否在引脚内,设定测量点为需判断的焊线落点,多段线为引脚的边框线,包含,计算距离单元、射线单元、计算交点单元、过滤交点单元、旋转角度单元、统计单元;
计算距离单元用以计算测量点距离多段线的最短距离点位,判断最短距离点位是否与测量点相同,若相同则表示测量点在多段线上;
射线单元用以做一条起点为测量点,方向为从最近点出发朝着到测量点的射线;
计算交点单元用以计算该射线与多段线的交点,过滤两个交点距离过近的点位;
过滤交点单元用以过滤由于射线的反向延长导致的将最近点作为交点的点位;
旋转角度单元用以根据交点为多段线的顶点情况,将射线的旋转极小的角度再次进行判断;
统计单元用以统计交点个数,若交点为偶数表示测试点在多段线外部,即引脚外部,若交点个数为奇数表示测试点在多段线内部,即引脚内部。
8.根据权利要求5所述的IC芯片封装时避免焊线交叉的布线系统,其特征在于,KM算法模块中,最大权重下的焊线符合配置要求,提取所有交叉焊线的端点,将在引脚内的端点放入一个集合组,将焊线的另一端点放入另一个集合组,计算两个集合组之间的距离,将权重即为距离的导数,距离越小,权重越大。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至权利要求4所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至权利要求4所述的方法的步骤。
CN202211051956.5A 2022-08-30 2022-08-30 一种ic芯片封装时避免焊线交叉的布线方法及系统 Active CN115410935B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211051956.5A CN115410935B (zh) 2022-08-30 2022-08-30 一种ic芯片封装时避免焊线交叉的布线方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211051956.5A CN115410935B (zh) 2022-08-30 2022-08-30 一种ic芯片封装时避免焊线交叉的布线方法及系统

Publications (2)

Publication Number Publication Date
CN115410935A true CN115410935A (zh) 2022-11-29
CN115410935B CN115410935B (zh) 2023-09-26

Family

ID=84164233

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211051956.5A Active CN115410935B (zh) 2022-08-30 2022-08-30 一种ic芯片封装时避免焊线交叉的布线方法及系统

Country Status (1)

Country Link
CN (1) CN115410935B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000031197A (ja) * 1998-07-08 2000-01-28 Nec Ic Microcomput Syst Ltd ワイヤボンディングパッドの自動検索装置及び検索方法
JP2004287681A (ja) * 2003-03-20 2004-10-14 Hitachi Ltd 配線設計支援システム、および、配線設計支援方法
US20060161873A1 (en) * 2005-01-14 2006-07-20 Shinji Hara Method for designing integrated circuit package and method for manufacturing same
US20060294487A1 (en) * 2005-06-23 2006-12-28 International Business Machines Corporation Auto connection assignment system and method
US20070245276A1 (en) * 2002-07-12 2007-10-18 Kabushiki Kaisha Toshiba System, method and computer program product for designing connecting terminals of semiconductor device
CN101131978A (zh) * 2006-08-21 2008-02-27 南茂科技股份有限公司 集成电路封装构造及其使用的多层导线架
US20100007005A1 (en) * 2008-07-04 2010-01-14 Nec Electronics Corporation Semiconductor device
CN102169855A (zh) * 2010-01-28 2011-08-31 瑞萨电子株式会社 互连结构及其设计方法
CN103117263A (zh) * 2013-01-31 2013-05-22 建荣集成电路科技(珠海)有限公司 一种集成电路封装
US8558398B1 (en) * 2012-10-22 2013-10-15 Avago Technologies General Ip (Singapore) Pte. Ltd. Bond wire arrangement for minimizing crosstalk
WO2017157048A1 (zh) * 2016-03-15 2017-09-21 厦门亿力吉奥信息科技有限公司 电网系统图自动化布局克服交叉的方法及系统、存储介质
CN109273425A (zh) * 2018-10-26 2019-01-25 星科金朋半导体(江阴)有限公司 一种引线框架封装结构的布线方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000031197A (ja) * 1998-07-08 2000-01-28 Nec Ic Microcomput Syst Ltd ワイヤボンディングパッドの自動検索装置及び検索方法
US20070245276A1 (en) * 2002-07-12 2007-10-18 Kabushiki Kaisha Toshiba System, method and computer program product for designing connecting terminals of semiconductor device
JP2004287681A (ja) * 2003-03-20 2004-10-14 Hitachi Ltd 配線設計支援システム、および、配線設計支援方法
US20060161873A1 (en) * 2005-01-14 2006-07-20 Shinji Hara Method for designing integrated circuit package and method for manufacturing same
US20060294487A1 (en) * 2005-06-23 2006-12-28 International Business Machines Corporation Auto connection assignment system and method
CN101131978A (zh) * 2006-08-21 2008-02-27 南茂科技股份有限公司 集成电路封装构造及其使用的多层导线架
US20100007005A1 (en) * 2008-07-04 2010-01-14 Nec Electronics Corporation Semiconductor device
CN102169855A (zh) * 2010-01-28 2011-08-31 瑞萨电子株式会社 互连结构及其设计方法
US8558398B1 (en) * 2012-10-22 2013-10-15 Avago Technologies General Ip (Singapore) Pte. Ltd. Bond wire arrangement for minimizing crosstalk
CN103117263A (zh) * 2013-01-31 2013-05-22 建荣集成电路科技(珠海)有限公司 一种集成电路封装
WO2017157048A1 (zh) * 2016-03-15 2017-09-21 厦门亿力吉奥信息科技有限公司 电网系统图自动化布局克服交叉的方法及系统、存储介质
CN109273425A (zh) * 2018-10-26 2019-01-25 星科金朋半导体(江阴)有限公司 一种引线框架封装结构的布线方法

Also Published As

Publication number Publication date
CN115410935B (zh) 2023-09-26

Similar Documents

Publication Publication Date Title
US7496878B2 (en) Automatic wiring method and apparatus for semiconductor package and automatic identifying method and apparatus for semiconductor package
CN104809264A (zh) 用于创建集成电路布局方法、计算机系统及可读储存媒介
CN110164789A (zh) 晶圆测试方法及晶圆测试装置
US20100110078A1 (en) Method and computer program product for plotting distribution area of data points in scatter diagram
CN110968983B (zh) 一种交互式布线方法
US6976236B1 (en) Method for automatically routing connections between top side conductors and bottom side conductors of an integrated circuit package
US8225268B2 (en) Wiring design method for wiring board
CN109783956A (zh) 基于区域划分的最大跳变时间违例修复方法及系统
CN107306151A (zh) 一种bob设备的校准方法及其装置
US8440474B2 (en) Chip quality determination method and marking mechanism using same
CN114861581A (zh) 基于图像识别的可编程逻辑器件的辅助编程设计方法
CN115410935A (zh) 一种ic芯片封装时避免焊线交叉的布线方法及系统
CN116796691A (zh) 一种多电压域SoC芯片中数模接口绕线处理方法及系统
CN113591430B (zh) 检测版图布线线网违例的方法
CN112800716B (zh) 一种集成电路版图布线中线网开路检测方法
WO2022110114A1 (zh) 电路版图的识别方法及识别设备
CN113966080A (zh) 一种串扰及走线阻抗突变的标识方法及相关装置
JP4311244B2 (ja) 配線経路決定方法及びシステム
CN109697117A (zh) 终端控制方法、装置以及计算机可读存储介质
JP2004258869A (ja) 実装回路設計方法、実装回路設計システムおよび実装回路設計プログラム
CN115763342A (zh) 芯片位置的调整方法、装置、终端及存储介质
US7397256B2 (en) Automatic design method for semiconductor device
JP3335916B2 (ja) ワイヤボンディングパッドの自動検索装置及び検索方法
CN113966084A (zh) 坐标文件和Gerber文件中焊盘的自动对位方法
WO2015039339A1 (en) Apparatus and method for fanout of flip chip

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant