技术领域
[0001] 本
发明涉及
半导体芯片检测领域,尤其涉及SOT封装类芯片引脚三维尺寸缺陷并行检测方法。
背景技术
[0002] SOT封装类芯片尺寸较小,外形简单,生产量大。这种芯片一般具有3至6个引脚。由于芯片引脚是承担芯片对外
接口功能,如果芯片引脚不合格将会直接影响芯片在
电路板上的
焊接质量,影响
电路板的正常工作,因此为了保证芯片出厂质量的可靠性,引脚的缺陷检测是一个重要环节。
[0003] 生产线上的SOT封装类芯片引脚尺寸缺陷检测是在特定工位上完成的。为了全面的检测芯片引脚缺陷,除了检测引脚的平面尺寸(引脚长度、引脚宽度、引脚跨度检测),也需要检测引脚高度(引脚平面度检测),因此在检测过程中,采用了两台摄像机分别对芯片引脚的长宽高进行检测,从而实现三维检测。
[0004] SOT封装类型的芯片生产量大,需检测芯片的数目多,因此对于系统的实时性缺陷检测要求较高,在实际生产中,平均检测周期要达到40ms/片。但是实际的三维检测过程中,两个工位的
数据采集过程导致了检测效率的降低。
[0005] 故需要一种解决方案。
发明内容
[0006] 为了满足SOT封装类型芯片引脚检测系统的实时性和高效性。本发明的发明目的旨在提供一种SOT封装类芯片引脚三维尺寸缺陷并行检测方法。该方法既可以实现芯片检测过程的并行,又可以实现引脚平面尺寸检测与引脚高度检测的并行,令检测速度有明显的提高。
[0007] 本发明的SOT封装类芯片引脚三维尺寸缺陷并行检测方法所采用的技术方案为:将单个SOT封装芯片检测流程封装在7个线程中,所述线程按照检测流程排列,包括串口检测线程,
图像采集线程,图像检测线程,结果分析线程,同步编码线程,界面刷新和
数据库备份线程。多个SOT封装芯片的检测流程可以并行运行。
[0008] 其中图像采集线程、图像检测线程和结果分析线程均包含两个模
块:平面图像检测模块和引脚高度检测模块。两个检测模块可以并行运行。
[0009] 所述串口检测线程用于负责监控串口,实时接收上位机发送的图像采集
信号,并分析串口信号,通过控制代码启动图像采集
进程:当控制代码为“1”时,表示只启动了引脚平面尺寸检测模块;当控制代码为“2” 时,表示只启动了引脚高度检测模块;当控制代码为“3”时,表示系统同时启动了引脚平面尺寸检测模块和引脚高度检测模块;所述图像采集线程用于SOT封装芯片的平面图像采集和引脚高度图像的采集,并将图像传递到各自的内存中;
所述图像检测线程用于SOT封装芯片平面图像和引脚高度图像的预处理、投影分析、模板匹配等计算量较大的图像操作;
所述结果分析线程用于SOT封装芯片平面图像和引脚高度图像的处理结果进行处理,分析引脚尺寸合格与否,如果不合格则需要判断芯片缺陷类型;
所述同步编码线程主要用于控制代码“3”的结果处理,将两个独立运行互不干扰的检测模块的处理结果同步编码,将串口信息发送到上位机,但是如果只启动控制代码“1”或控制代码“2”则不需要进行同步编码线程,直接将检测结果编码通过串口信息发送到上位机并启动界面刷新和数据库备份;
所述界面刷新线程用于将芯片采集的图像、
图像处理后的图像、图形处理关键数据、图像处理结果、数据统计刷新到显示界面上。
[0010] 所述数据库备份线程用于将引脚平面尺寸检测模块和引脚高度模块处理结果和图像处理特征数据保存到数据库,并将原始图像保存到工控机文件系统。
[0011] 本发明的SOT芯片缺陷检测方法的有益效果为:首先将检测过程分为串口检测、图像采集、图像检测、结果分析、同步编码、界面刷新和数据库备份这7个线程,一方面能够将整个检测过程区分清楚,另一方面还能使不同芯片的不同检测步骤并行运行,通过将芯片检测的各个阶段分割到不同的线程中可以在先前缺陷检测没有全部完成时就可以接受下一片芯片的缺陷检测信号,将图像采集、图像处理、写数据库等耗时较长的检测阶段在后台运行,避免影响程序正常运行,并且能够使刷新显示界面和备份数据库等优先级较低的线程推迟运行,提高系统的响应速度。其次,引脚平面尺寸检测模块和引脚高度检测模块令两个流程并行同步运行,提高处理器利用率,缩短单片芯片缺陷检测耗时。
[0012] 同时本方法可以提高CPU利用率,优化程序结构,节省系统开支。相对于进程来讲,线程运行只需要有限的寄存器和堆栈空间,线程自己不拥有系统进程所拥有的全部资源,在线程创建、调度切换和注销等过程中消耗的系统资源较少。
附图说明
[0013] 图1是本发明SOT封装类芯片引脚三维尺寸缺陷并行检测方法的系统检测
流程图;图2是本发明SOT封装类芯片引脚三维尺寸缺陷并行检测方法的检测流程并行图。
具体实施方式
[0014] 下面结合实施实例对本发明做进一步阐述:如图1所示,本发明将单个SOT封装芯片的检测过程封装在7个线程中,包括串口检测线程,图像采集线程,图像检测线程,结果分析线程,同步编码线程,界面刷新线程和数据库备份线程。其中图像采集线程、图像检测线程、结果分析线程各包含两个模块:平面检测模块和引脚高度模块。其中,图像采集线程,图像检测线程,结果分析线程,同步编码线程,界面刷新线程和数据库备份线程采用采用全局变量的线程通信方法,保证各个变量在需要时均可通过全局变量获取;串口检测线程以及串口发送消息采用Message消息机制进行通信的方法,将自定义消息发送到相应主窗口的消息队列,通过消息响应函数开启图像采集线程和串口发送消息的线程。多个SOT封装芯片的检测流程可以并行运行;平面检测模块和引脚高度模块可以并行检测。
[0015] 系统启动后首先是进行系统初始化,包括数据库全局参数加载、串口初始化、初始化相机、
光源配置以及待检测芯片规格设定、字符和引脚区域选择和图像预处理参数等,系统初始化完成之后进行各线程的运行。
[0016] 串口检测线程用于负责监控串口,实时接收上位机发送的图像采集信号,并分析串口信号,通过控制代码启动图像采集进程:当控制代码为“1”时,表示只启动了平面引脚尺寸的缺陷检测;当控制代码为“2” 时,表示只启动了引脚高度检测的缺陷检测模块;当控制代码为“3”时,表示系统同时启动了引脚平面尺寸检测模块和引脚高度检测模块。
[0017] 图像采集线程负责控制图像的采集,并将图像传递到内存。
[0018] 图像检测线线程负责图像部分引脚特征进行预处理、投影分析、模板匹配等计算量较大的图像操作,是图形系统检测的重要部分。使用时其负责控制平面图像和引脚高度图像的采集,通过千兆网线将图像传递到内存,可以在Manta G-031B工业相机二次开发SDK
基础上通过设计一定的逻辑采集图像。
[0019] 结果分析线程负责将图像处理结果进行数据分析,如果不合格则需要判断芯片缺陷类型,对引脚高度图像引脚处理结果进行
数据处理,分析引脚尺寸合格与否。
[0020] 同步编码线程主要用于控制代码3的结果处理,将两个独立运行互不干扰的检测模块的处理结果同步编码,将串口信息发送到上位机。但是如果只启动控制代码1或控制代码2则不需要进行同步编码线程,直接将检测结果编码通过串口信息发送到上位机并启动界面刷新和数据库备份。
[0021] 界面刷新线程用于将芯片采集到的图像、图像处理后的图像、图形处理关键数据、图像处理结果、数据统计刷新到界面上。
[0022] 数据库备份线程用于将引脚平面尺寸检测模块和引脚高度模块处理结果和图像处理特征数据保存到数据库,方便数据查询,并可以将原始图像保存到工控机文件系统。
[0023] 为了使线程与父线程脱离耦合性,避免线程消亡后检测数据丢失的影响,父线程与子线程间采用共享内存的方法传递数据的方式进行通信,即父线程将需要传递的变量或需要脱离耦合的变量保存到一个临时开辟的结构体内存区域,父线程创建子线程时将结构体内存的
指针作为参数传递到子线程,临时开辟的结构体内存区域会继续存在,不会因为父线程的消亡而消失,子线程可以通过指针获得结构体中的变量,并在子线程中及时销毁结构体,释放结构体内存,防止内存泄露。
[0024] 如图2所示,SOT封装类芯片引脚三维尺寸缺陷并行检测方法通过将芯片检测的各个阶段分割到不同的线程中,可以接受多个芯片的检测,并且将图像采集、图像处理、写数据库等耗时较长的检测阶段在后台运行。