KR100380909B1 - 외형 검사 장치 및 외형 검사 방법 - Google Patents

외형 검사 장치 및 외형 검사 방법 Download PDF

Info

Publication number
KR100380909B1
KR100380909B1 KR10-2001-0022894A KR20010022894A KR100380909B1 KR 100380909 B1 KR100380909 B1 KR 100380909B1 KR 20010022894 A KR20010022894 A KR 20010022894A KR 100380909 B1 KR100380909 B1 KR 100380909B1
Authority
KR
South Korea
Prior art keywords
image data
threads
cpu
inspection
processing
Prior art date
Application number
KR10-2001-0022894A
Other languages
English (en)
Other versions
KR20010098929A (ko
Inventor
사사끼요시히꼬
나가오마사히꼬
Original Assignee
엔이씨 일렉트로닉스 코포레이션
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 엔이씨 일렉트로닉스 코포레이션 filed Critical 엔이씨 일렉트로닉스 코포레이션
Publication of KR20010098929A publication Critical patent/KR20010098929A/ko
Application granted granted Critical
Publication of KR100380909B1 publication Critical patent/KR100380909B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/302Contactless testing
    • G01R31/308Contactless testing using non-ionising electromagnetic radiation, e.g. optical radiation
    • G01R31/311Contactless testing using non-ionising electromagnetic radiation, e.g. optical radiation of integrated circuits
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L22/00Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
    • H01L22/10Measuring as part of the manufacturing process
    • H01L22/12Measuring as part of the manufacturing process for structural parameters, e.g. thickness, line width, refractive index, temperature, warp, bond strength, defects, optical inspection, electrical measurement of structural dimensions, metallurgic measurement of diffusions

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Electromagnetism (AREA)
  • Toxicology (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • Multi Processors (AREA)

Abstract

외형 검사 장치는 메모리(14), 드레드(threads) 형성기 및 복수의 CPU(10 내지 13)로 구성된다. 메모리(14)는 IC의 외형의 화상 데이터를 저장한다. 드레드 형성기는 메모리(14)에 저장된 화상 데이터를 독립적으로 처리하고 그 처리 결과를 메모리(14)에 저장하기 위한 과정이 기재되어 있는 드레드를 형성한다. 복수의 CPU(10 내지 13)는 드레드 형성기에 의해 형성된 복수의 드레드를 병렬로 실행한다. 따라서, 이로 인해 간단한 형태에도 상관 없이, 외형 검사를 고속으로 실행할 수 있는 외형 검사 장치 및 외형 검사 방법을 제공할 수가 있다.

Description

외형 검사 장치 및 외형 검사 방법{APPEARANCE INSPECTION APPARATUS AND APPEARANCE INSPECTION METHOD}
본 발명은 대량의 화상 데이터를 처리하여 외형 검사를 실행하기 위한 외형 검사 장치 및 외형 검사 방법에 관한 것으로, 더욱 특히는 화상 데이터를 병렬 처리하기 위한 기술에 관한 것이다.
종래에는, IC를 포토그래핑하여 형성된 외형을 검사하기 위한 외형 검사 장치가 알려져 있다. 이러한 외형 검사 장치로서, 예를 들면 일본 특허 공개 (JP-A-평성11-269434)는 "병렬 데이터 프로세서 및 이를 포함하는 외형 검사 장치" (이하, 제1 종래 기술로 언급함)을 개시하고 있다. 이 외형 검사 장치에서는, 구동 신호 버스로부터의 동기 펄스에 의해 구동된 데이터 입력부가 화상 데이터를 수신한 다음에 이를 데이터 버스를 통해 전달한다. 프로세스 분산부 및 프로세서 소자는 구동 신호 버스의 상태를 모니터하여, 펄스 주기, 즉 동기 펄스의 고레벨 주기 내에서 통신 버스를 통해 서로간의 통신을 실행한다.
프로세스 분산부는 프로세서 소자의 상태를 모니터하여, 동기 펄스의 펄스 주기 내에서 데이터 입력부로부터 전달되는 유닛 화상 데이터를 처리하기 위한 하나의 프로세서 소자를 할당한다. 이 할당된 프로세서 소자는 유닛 화상 데이터를 데이터 버스로부터 포획하여 이 포획된 유닛 화상 데이터를 처리하여, 펄스 주기 내에서 프로세스 분산부로 프로세싱되고 있다고 보고한다. 이 프로세싱이 완료되면, 프로세서 소자는 다음 동기 펄스 주기에서 프로세스 분산부를 대기하고 있다고 보고한다. 상술된 구성은 각 프로세서 소자의 효율비를 증진시킬 수 있다. 따라서, 특히 화상 데이터 등의 연속적으로 대량 입력되는 데이터를 고속으로 프로세싱할 수가 있게 된다.
일본 특허 공개 (JP-A-평성11-135054)는 "병렬 화상 프로세서를 갖는 충전 전자빔 장치" (이하, 제2 종래 기술로 언급함)를 개시한다. 이 장치에서는, 데이터 전달을 제어하기 위한 하나의 마스터 CPU 및 데이터 프로세싱을 실행하기 위한 복수의 슬레이브 CPU로 이루어지는 병렬 화상 프로세서가 화상 프로세싱부 내에 장치된다. 화상 프로세싱을 위한 연산 프로그램이 제어 컴퓨터로부터 마스터 CPU와 슬레이브 CPU들에 다운로드된다. 병렬 화상 프로세서의 개수는 가변이다. 병렬 CPU의 최적의 개수는 화상 프로세싱의 컨텐트에 따라서 미리 결정된다. 또한, 처리되는 화상 데이터를 분할하는 방법은 가변이며 화상 프로세싱과 프로세싱 컨텐트의 종류에 따라서 결정된다. 이 장치에 따르면, 기본 화상 프로세싱 뿐만 아니라 개선된 연산을 필요로 하는 화상 프로세싱을 고속으로 실행할 수 있다.
더구나, 일본 특허 공개 (JP-A-평성10-304184)는 "화상 프로세싱 장치 및 화상 프로세싱 방법" (이하, 제3 종래 기술로 언급)을 개시한다. 이 제3 종래 기술에서는, 화상 데이터의 분할 영역 데이터는 복수의 분할 입력 소자에 입력된다. 다음에, 각 분할 영역에 대해 독립적으로 처리될 수 있는 화상 프로세싱이 파이프라인 프로세스를 이용하여 각 입력 분할 영역 데이터 상에 실행된다. 이들 파이프라인 프로세스의 결과를 통합한다.
이들 프로세스는 제1 통합 프로세싱부의 제어 하에서 실행된다. 즉, 제1 통합 프로세싱부는 파이프라인에 명령을 발하여 화상 프로세싱을 시작한다. 또한, 제1 통합 프로세싱부는 파이프라인으로부터 출력된 처리된 부분 화상 데이터를 수신하고, 위치 결정 동작을 실행하고, 전체 화상 데이터를 형성하여, 이를 화상 메모리에 저장한다.
또한, 화상의 회전 등과 같이, 광영역의 참조를 필요로 하는 화상 프로세싱을 위해서, 복수의 화상 프로세싱부와 이들을 제어하기 위한 제2 통합 프로세싱부를 구비한다. 이 제2 통합 프로세싱부는 복수의 화상 프로세서에 의해 처리된 결과를 통합하여, 이를 화상 메모리에 저장한다. 고속에서의 화상 프로세싱은 각 분할 영역에 대해 독립적으로 실행되는 화상 프로세싱 및 광영역을 참조하는 화상 프로세싱을 어느 순서로도 실행하는 것으로 성취될 수 있다.
제1 종래 기술에서, 화상 데이터가 입력될 때 마다, 프로세스 분산부는 소자프로세서를 할당한다. 따라서, 이 할당을 위한 오버헤드는 대량이어서 고속의 프로세싱에 제한을 가하게 된다. 각 소자 프로세서에 의해 처리된 결과를 통합하기 위한 프로세스가 상세하게 기재되지는 않았지만 이를 필요로 할 것으로 기대된다.
제2 종래 기술에서, 슬레이브 CPU는 제1 종래 기술과 유사하게, 마스터 CPU의 제어하에서 순차적으로 할당된다. 각 슬레이브 CPU들은 화상 데이터를 병렬로 처리한다. 따라서, 이 제2 종래 기술은 제1 종래 기술의 것과 유사한 문제를 갖는다.
제3 종래 기술에서, 제1 및 제2 통합 프로세싱부는 화상 프로세싱의 시작, 처리된 화상 데이터의 통합 등과 같은 동작을 실행한다. 따라서, 오버헤드는 대량이어서 화상 데이터의 고속 프로세싱에 제한을 가한다는 결과를 초래한다. 또한, 각 분할 영역에 대한 화상 프로세싱을 실행하는 섹션과 광영역을 참조하기 위한 화상 프로세서를 실행하는 섹션 등의 두 종류를 필요로 한다. 따라서, 화상 프로세서의 구성이 복잡하게 되어, 그 규모가 방대해진다.
일본 특허 번호 2500649는 IC의 리드 사이에 배치된 몰드 프래그먼트와 파이버 더스트 등의 이물질을 검출할 수 있는 IC 이물질 검사 장치를 개시한다.
따라서, 본 발명의 목적은 외형 검사를 간단한 형태에도 상관 없이 고속으로 실행할 수 있는 외형 검사 장치 및 외형 검사 방법을 제공하는 것이다.
상기 목적을 달성하기 위해서, 본 발명의 일 형태에 따른 외형 검사 장치는 메모리, 드레드 형성기 및 복수의 CPU를 포함한다.
메모리는 검사 타겟 외형의 화상 데이터를 저장한다. 드레드 형성기는 메모리에 저장된 화상 데이터를 독립적으로 처리하여 프로세싱 결과를 메모리에 저장하는 과정이 각각 기재되어 있는 복수의 드레드를 형성한다. 복수의 CPU는 드레드 형성기에 의해 형성된 복수의 드레드를 각각 병렬로 실행한다.
본 발명의 제1 형태에 따른 외형 검사 장치에서는, 메모리에 저장된 화상 데이터를 독립적으로 처리하기 위한 복수의 드레드가 복수의 CPU 각각에 의해 실행된다. 여기에서, 독립적인 프로세싱은 각 드레드의 자기 완성 프로세스, 다시 말해, 자기 소유 데이터에 기초하여 실행되며 자기 소유 데이터에 기초한 위치에 처리 결과를 기록하는 것으로 완성되는 프로세스를 포함한다. 따라서, 종래의 화상 프로세싱 장치와 같이, 외부로부터 주어진 데이터에의 응답후에 프로세스를 실행한 다음에 이 처리된 결과를 외부에서 통합할 필요가 없다. 결과적으로, 외형 검사 장치의 형태는 간단하게 되며 이로 인해 화상 데이터의 고속 프로세싱을 가능하게 할 수 있다.
본 발명의 제1 형태에 따른 외형 검사 장치에서, 드레드 형성기는 메모리에 저장된 화상 데이터에 대한 일 검사 영역을 분할하여 취득된 부영역의 화상 데이터를 각각 처리하기 위한 과정이 기재되어 있는 k세트의 n 드레드 (k는 양의 정수 n은 2 이상의 정수)를 형성할 수 있으며, 복수의 CPU는 드레드 형성기에 의해 형성된 k세트의 n 드레드를 각각 병렬로 실행한다.
또한, 이 외형 검사 장치에서, 드레드 형성기는 또한 n개의 서브 영역의 화상 데이터를 집합적으로 처리하기 위한 과정이 각각 기재되어 있는 m개의 드레드(m은 양의 정수)를 형성할 수 있으며, 복수의 CPU는 드레드 형성기에 의해 형성된 k세트의 n 드레드를 각각 실행하며, 복수의 CPU 중 하나는 드레드 형성기에 의해 형성된 m개의 드레드를 실행한다.
이들 경우, n와 m은 실행되는 화상 프로세싱의 종류나 검사 영역의 크기에 기초하여 결정될 수 있다. 또는, n과 m은 임의의 n과 m의 조합하에서 복수의 CPU의 프로세싱 회수의 실제 측정 결과에 기초하여 결정된다.
n개의 드레드 각각에는, 미리 정해진 종류의 화상 프로세싱과 다른 종류의 화상 프로세싱을 연속하여 실행하기 위한 과정이 기재되어 있다. 또는, n개의 드레드 각각에는, 미리 정해진 종류의 화상 프로세싱 및 다른 종류의 화상 프로세싱을 연속하여 실행하기 위한 과정이 기재되어 있다.
또한, 본 발명의 제1 형태에 따른 외형 검사 장치에서, 드레드 형성기는 상기 메모리에 저장된 상기 화상 데이터 상의 n개의 검사 영역의 상기 화상 데이터를 각각 처리하기 위한 과정이 기재되어 있는 적어도 n개의 드레드 (n은 2와 동일하거나 더 큰 정수)를 형성하고, 상기 복수의 CPU는 상기 드레드 형성기에 의해 형성된 상기 n개의 드레드를 각각 병렬로 실행한다.
또한, 상술된 목적을 달성하기 위해서, 본 발명의 제2 형태에 따른 외형 검사 방법은, 저장 단계, 형성 단계 및 실행 단계를 포함한다. 저장 단계에서, 검사 타겟의 회형의 화상 데이터를 메모리에 저장한다. 형성 단계에서는 메모리에 저장된 상기 화상 데이터를 독립적으로 처리하고 이 처리된 결과를 상기 메모리에 저장하기 위한 과정이 각각 기재되어 있는 복수의 드레드를 형성한다. 실행 단계에서는, 이 형성된 복수의 드레드가 병렬로 실행된다.
본 발명의 제2 형태에 따른 외형 검사 방법에서, 드레드 형성 단계는 메모리에 저장된 화상 데이터 상의 하나의 검사 영역을 분할하여 취득된 n개의 부영역의 화상 데이터를 각각 처리하기 위한 과정이 기재되어 있는 k세트의 n개의 드레드 (k는 양의 정수이고 n은 2와 동일하거나 더 큰 정수)를 형성하고, 실행 단계는 상기 형성된 k세트의 n개의 드레드를 병렬로 실행한다.
이 방법에서, 드레드 형성 단계는 n개의 부영역의 상기 화상 데이터를 집합적으로 처리하기 위한 과정이 각각 기재되어 있는 m개의 드레드 (m은 양의 정수)를 더 형성하고, 실행 단계는 이 형성된 m개의 드레드를 직렬로 더욱 실행한다.
이들 경우, n과 m은 실행되는 화상 프로세싱의 종류 또는 검사 영역의 크기에 기초하여 결정된다. 또는 n과 m은 임의의 n과 m 조합하에서 실행되는 실제의 처리 회수의 측정 결과에 기초하여 결정된다.
n개의 드레드 각각에는, 미리 정해진 종류의 화상 프로세싱과 다른 종류의 화상 프로세싱을 연속하여 실행하기 위한 과정이 기재되어 있다. 또는, n개의 드레드 각각에는, 미리 정해진 종류의 화상 프로세싱 및 다른 종류의 화상 프로세싱을 연속하여 실행하기 위한 과정이 기재되어 있다.
본 발명의 제2 형태에 따른 외형 검사 방법에서는, 드레드 형성 단계는 메모리에 저장된 화상 메모리에 대해 n개의 검사 영역의 화상 데이터를 각각 처리하기 위한 과정이 각각 기재되어 있는 적어도 n개의 드레드 (n은 2이상의 정수)를 형성하고, 실행 단계는 이 형성된 n개의 드레드를 병렬로 실행한다.
도 1은 본 발명의 제1 내지 제4 실시예에 따른 외형 검사 장치의 개략적 형태를 나타내는 블럭도.
도 2는 본 발명의 제1 및 제2 실시예에 따른 외형 검사 장치에서 메모리에 저장된 IC의 화상 데이터의 예를 나타내는 도면.
도 3은 본 발명의 제1 실시예에 따른 외형 검사 장치에서 보이드 검사를 위해 형성된 드레드의 예를 나타내는 도면.
도 4는 본 발명의 제1 실시예에 따른 외형 검사 장치에서 보이드 검사의 동작을 설명하는 도면.
도 5a 및 도 5b는 본 발명의 제2 실시예에 따른 외형 검사 장치에서 보이드 검사를 위해 형성된 드레드의 예를 나타내는 도면.
도 6은 본 발명의 제3 실시예에 따른 외형 검사 장치에서 메모리에 저장된 IC의 화상 데이터의 예를 나타내는 도면.
도 7a, 7b 및 7c는 본 발명의 제4 실시예에 따른 외형 검사 장치에서 회전 프로세싱의 동작을 설명하는 도면.
도 8은 본 발명의 제1 내지 제3 실시예에 따른 외형 검사 장치의 전체 프로세스의 흐름을 나타내는 플로우챠트.
<도면의 주요 부분에 대한 간단한 설명>
10, 11, 12, 13, 14 : CPU
10a, 11a, 12a, 13a, 14 : 메모리
15 : 하드 디스크 드라이브
16 : 디스플레이 컨트롤러
18 : 데이터 입력 컨트롤러
19 : 카메라
20 : 시스템 버스 메모리
본 발명의 실시예를 첨부한 도면을 참조하여 이하 상세히 설명한다. 각 실시예에서, 집적 회로 (IC)가 검사 타겟으로 사용되고 있는 실시예를 설명한다.
도 1은 본 발명의 제1 내지 제3 실시예에 따른 외형 검사 장치의 개략 형태를 나타내는 블럭도이다. 이 외형 검사 장치는 복수의 CPU, 워크스테이션 및 서버를 갖는 퍼스널 컴퓨터 등의 범용 컴퓨터로 구성될 수 있다. 이 경우, 범용 컴퓨터를 제어하기 위한 소프트웨어로서, 윈도우 NT(R), 윈도우 2000(R) 및 UNIX 등의 멀티드레드 환경 하에서 작업되는 연산 시스템 (OS)을 사용할 수 있다.
이 외형 검사 장치는 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 제4 CPU(13), 메모리(14), 하드 디스크 드라이브(15), 디스플레이 컨트롤러(16) 및 데이터 입력 컨트롤러(18) 등의 부재가 시스템 버스(20)에 의해 서로 접속되도록 구성된다. 시스템 버스(20)는 부재 사이의 데이터 전송을 실행하는 데에 사용된다. 또한, 디스플레이 소자(17)는 디스플레이 컨트롤러(16)에 접속되어 있다. 카메라(19)는 데이터 입력 컨트롤러(18)에 접속되어 있다.
제1 CPU(10), 제2 CPU(11), 제3 CPU(12) 및 제4 CPU(13) 각각은 동시에 OS의 제어하에서 독립적으로 동작된다. 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 및 제4 CPU(13)는 OS로부터 전달된, 소 프로그램 모듈로 구성된 드레드에 따라서 동작된다. OS는 드레드를 단순히 CPU(10 내지 13)에 전달하도록 하는 제어를 실행하는 데에 유의해야 한다. 따라서, 종래 기술에 설명된 프로세스 분산부, 마스터 CPU 및 통합 프로세싱와 같이, OS는 각 CPU에 프로세스 컨텐트를 명령하고, 각 CPU들로부터 처리된 결과를 통합하여 전체 화상 데이터를 형성하기 위한 동작을 실행할 필요가 없다.
제1 CPU(10), 제2 CPU(11), 제3 CPU(12) 및 제4 CPU(13)는 각각 메모리(10a, 11a, 12a, 및 13a)를 갖는다. 이들 메모리(10a, 11a, 12a 및 13a) 각각은 상술한 드레드를 저장한다.
각 드레드에는 과정, 즉 화상 프로세싱을 실행하기 위한 프로그램이 기술되어 있다. 제1 CPU(10)는 메모리(10a)에 저장된 드레드에 기초하여 화상 프로세싱을 실행한다. 제2 CPU(11)는 메모리(11a)에 저장된 드레드에 기초하여 화상 프로세싱을 실행한다. 제3 CPU(12)는 메모리(12a)에 저장된 드레드에 기초하여 화상 프로세싱을 실행한다. 제4 CPU(13)는 메모리(13a)에 저장된 드레드에 기초하여 화상 프로세싱을 실행한다. 제1 CPU(10) 내지 제4 CPU(13) 각각은 메모리(14)로부터 화상의 데이터를 판독하고, 판독된 화상 데이터에 대해 미리 정해진 프로세스를 실행하고, 이 처리된 결과를 메모리(14)에 저장하기 위한 동작들을 병렬로 실행한다.
메모리(14)는 데이터 입력 컨트롤러(18)를 통해 카메라(19)로부터 입력된 화상 데이터, 이 화상 데이터의 처리 결과 등을 저장한다. 메모리(14)의 구체적인 이용 방법을 이하 설명한다.
하드 디스크 (HC) 드라이브(15)는 이 외형 검사 장치 전체를 제어하기 위한 프로그램 및 외형 검사를 위해 사용되는 검사 데이터를 저장한다. 드레드는 하드 디스크 드라이브(15)로부터 판독된 프로그램을 실행함으로써 형성된다. 이 형성된 드레드는 제1 CPU(10), 제2 CPU(11), 제3 CPU(12) 및 제4 CPU(13)의 메모리(10a,11a, 12a, 및 13a)에 각각 전달된다.
디스플레이 컨트롤러(16)는 디스플레이 소자(17)를 제어한다. 이 디스플레이 소자(17)는 예를 들어, 카메라(19)로부터 취득된 화상 데이터에 기초한 IC의 외형의 화상, 처리된 결과를 나타내는 메세지 등을 표시한다.
카메라(19)는 IC의 외형을 포토그래프하는 데에 사용된다. 이 카메라(19)는 예를 들어, CCD 카메라로 구성될 수 있다. IC의 외형이 카메라(19)를 이용하여 포토그래프될 때 형성되는 아날로그 화상 데이터는 데이터 입력 컨트롤러(18)에 보내진다.
데이터 입력 컨트롤러(18)는 카메라(19)로부터의 아날로그 화상 데이터를 예를 들어 256 그라디에이션을 갖는 픽셀의 세트로 구성되는 디지털 화상 데이터 (이하, 단순히 "화상 데이터"로 언급함)로 변환한다. 데이터 입력 컨트롤러(18)로 형성되는 이 화상 데이터는 예를 들어, DMA 유닛 (도시 생략)의 제어하에서, 시스템 버스(20)를 통해 메모리(14)에 전달된다.
상술된 형태를 갖는 외형 검사 장치는 보이드 검사, 리드간 이물질 검사, 및 시일 검사 등의 각종 검사에 사용된다. 보이드 검사에서는, 보이드가 IC 패키지를 형성하는 몰드에 존재하는지의 여부가 검사된다. 리드간 이물질 검사시에는, 이물질이 리드에 피착되지 않았는지가 검사된다. 리드 검사시에는, 리드에 이상이 있는지의 여부가 검사된다. 몰드 검사시에는, 몰드에 이상에 있는지가 검사된다. 시일 검사시는, 시일이 정상인지가 검사된다.
이하, 상술한 형태를 갖는 외형 검사 장치의 동작을 설명한다.
(제1 실시예)
본 발명의 제1 실시예에 따른 외형 검사 장치에서는, 화상 데이터 상의 일 검사 영역이 네 개의 부영역으로 분할된다. 각 부영역에 대한 화상 데이터는 네 개의 CPU에 의해 병렬 처리된다. 보이드 검사의 경우를 일 예로서 이하 설명한다. 이 제1 실시예예서, 본 발명의 "n"은 "4"이고, 본 발명의 "k"는 "3"이고, 본 발명의 "m"은 "1"임에 유의해야 한다.
이 보이드 검사에서는, "이진 변환 프로세스", "반전 프로세스", "에어리어 측정 프로세스", 및 "검사 판정 프로세스"가 순차적으로 실행된다. "이진 변환 프로세스"에서, 데이터 입력 컨트롤러(18) 및 시스템 버스(20)를 통해 카메라로부터 보내져 메모리(14)에 저장된 화상 데이터는 이진값으로 변환된다. "반전 프로세스"에서는, 이진값이 반전되어 이진 화상 데이터를 형성한다. "에어리어 측정 프로세스"에서는, 반전된 이진 화상 데이터의 에어리어가 측정된다. "검사 판정 프로세스"에서는, 측정된 에어리어가 부가되어 이에 따라 보이드의 존재나 부재를 판정하게 된다.
보이드 검사가 실행될 때, 드레드가 먼저 다음의 과정에 따라서 형성된다. 도 2는 메모리(14)에 저장된 IC의 화상 데이터 예를 나타낸다. 보이드 검사시, 보이드 검사 영역은 화상 데이터의 패키지부 상에 세트되어 있다. 세트된 보이드 검사 영역은 제1 부영역, 제2 부영역, 제3 부영역 및 제4 부영역의 네 부영역으로 분할된다. 다음에, 각 부영역에서 화상 데이터를 처리하기 위한 드레드가 형성된다.
도 3은 보이드 검사를 위해 형성된 드레드의 예를 나타낸다. 이 예에서, 각각 "드레드 1" 내지 "드레드 13"으로 이름 붙혀진 13개의 드레드가 형성된다. 각 드레드는 명령과 어드레스를 포함한다. 명령은 화상 프로세싱의 컨텐트가 실행되도록 지령한다. 어드레스는 메모리(14) 상에서 처리되는 화상 데이터의 위치를 특정한다. 드레드에 포함되는 어드레스는: 처리되는 화상 데이터가 저장되어 있는 메모리(14) 상의 위치를 나타내는 판독 어드레스 단독; 처리된 화상 데이터가 저장되어 있는 메모리(14) 상의 위치를 나타내는 판독 어드레스 및 기록 어드레스 둘다; 및 기록 어드레스 단독 중 어느 하나일 수 있다.
드레드에 판독 어드레스만이 포함되어 있는 경우, 기록 어드레스는 이 판독 어드레스 및 명령에 기초하여 형성된다는 데에 유의해야 한다. 유사하게, 기록 어드레스만이 드레드에 포함되어 있는 경우에는, 판독 어드레스는 이 기록 어드레스와 명령에 기초하여 형성되게 된다.
드레드 1 내지 4에는, 제1 내지 제4 부영역의 화상 데이터를 이진값으로 변환하기 위한 과정이 각각 기재되어 있다. 드레드 5 내지 8에는, 제1 내지 제4 부영역의 이진 화상 데이터를 반전시키기 위한 과정이 각각 기재되어 있다. 드레드 9 내지 12에는, 제1 내지 제4 부영역의 반전 화상 데이터의 에어리어를 측정하기 위한 과정이 각각 기재되어 있다. 또한, 드레드 13에는 제1 내지 제4 에어리어의 측정 영역을 첨가하여, 보이드의 존재나 부재를 판정하기 위한 과정이 기재되어 있다.
상술된 바와 같이 형성된 드레드는 OS에 의해 제1 CPU(10), 제2 CPU(11), 제3 CPU(12) 및 제4 CPU(13) 중 어느 것에나 순차적으로 할당된다. 즉, OS는 빈상태에 있는 CPU의 메모리에 드레드를 전달한다. 따라서, 보이드 검사가 시작된다.
도 4는 보이드 검사의 동작을 설명하는 도면이다. 그 후, 각 드레드가 판독 어드레스와 기록 어드레스를 갖는다고 가정해 보자. 또한, 카메라(19)로부터 포착된 화상 데이터가 메모리(14)의 원 화상 저장 영역에 저장되어 있다고 가정해 보자.
초기 상태에서, 제1 CPU(10), 제2 CPU(11), 제3 CPU(12) 및 제4 CPU(13) 모두는 빈 상태에 있게 된다. 따라서, OS는 드레드 1을 제1 CPU(10)의 메모리(10a)에, 드레드 2를 제2 CPU(11)의 메모리(11a)에, 드레드 3를 제3 CPU(12)의 메모리(12a)에, 드레드 4를 제4 CPU(13)의 메모리(13a)에 각각 전달한다.
드레드 1를 수신하는 제1 CPU(10)는 드레드 1에 기재된 과정에 따라서 프로세스를 실행한다. 즉, 이것은 메모리(14)의 원화상 저장 영역의 판독 어드레스에 의해 지정된 위치 (제1 부영역의 상부에 대응하는 위치)로부터 화상 데이터 A1를 순차적으로 판독하여, 이 판독된 화상 데이터를 이진값으로 변환한다. 즉, 화상 데이터에 적합한 임계치 레벨에 기초하여 판독된 화상 데이터를 구성하는 각 화소를 슬라이스하여, "0"이나 "1"의 데이터로 변환하고, 이로 인해 이진 화상 데이터 A1를 형성한다. 이 형성된 이진 화상 데이터 A2는 메모리(14)의 반전 화상 저장 영역의 기록 어드레스에 의해 지정된 위치 (제1 부영역의 상부에 대응하는 위치)에 순차적으로 저장된다.
유사하게, 제2 CPU(11)는 메모리(14)의 원화상 저장 영역의 기록 어드레스에의해 지정된 위치 (제2 부영역의 상부에 대응하는 위치)로부터 화상 데이터 B1를 순차적으로 판독하여, 이진값으로 변환하여 이진 화상 데이터 B2를 형성한 다음에, 이 형성된 이진 화상 데이터 B2를 메모리(14)의 반전 화상 저장 영역의 기록 어드레스에 의해 지정된 위치 (제1 부영역의 상부에 대응하는 위치)에 저장한다. 제3 CPU(12) 및 제4 CPU(13)도 또한 상술된 경우와 유사하다. 제1 CPU(10), 제2 CPU(11), 제3 CPU(12) 및 제4 CPU(13)에서의 상술된 이진 변환은 서로 병렬로 실행된다. 각 CPU들이 이진 변환 처리를 완료하면, 이진 화상 데이터가 메모리(14)의 반전 화상 저장 영역에 저장된다.
다음에, OS는 이진 변환 프로세스를 완료한 CPU의 순서대로 CPU들의 메모리에 드레드 5, 6, 7, 및 8을 순차적으로 전달한다. 따라서, 각 CPU가 반전 프로세스를 시작하게 된다. 여기에서, 이진 변환 프로세스가 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 및 제4 CPU(13)의 순서대로 완료되었다고 가정해 보자. 그러면, 제1 CPU(10)는 메모리(14)의 반전 저장 영역의 판독 어드레스에 의해 지정된 위치 (제1 부영역의 상부에 대응하는 위치)로부터 화상 데이터 A2를 순차적으로 판독하여, 이를 반전하여 반전 화상 데이터 A3를 형성한다. 이 반전된 화상 데이터 A3는 메모리(14)의 에어리어 측정 값 저장 영역의 기록 어드레스에 의해 지정된 위치 (제1 부영역의 상부에 대응하는 위치)에 순차적으로 저장된다.
유사하게, 제2 CPU(11)는 메모리(14)의 반전 저장 영역의 판독 어드레스에 의해 지정된 위치 (제1 부영역의 상부에 대응하는 위치)로부터 화상 데이터 B2를 순차적으로 판독하여, 이를 반전하여 반전 화상 데이터 B3를 형성한다. 이 반전된화상 데이터 B3는 메모리(14)의 에어리어 측정 값 저장 영역의 기록 어드레스에 의해 지정된 위치 (제1 부영역의 상부에 대응하는 위치)에 저장된다. 제3 CPU(12) 및 제4 CPU(14)도 또한 상술한 경우와 유사하다. 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 및 제4 CPU(13)에서의 상술한 반전 프로세서는 서로 병렬로 실행된다. 각 CPU가 반전 프로세스를 완료하면, 이 반전된 화상 데이터가 메모리(14)의 에어리어 측정값 저장 영역에 저장된다.
다음에, OS는 반전 처리를 완료한 CPU의 순서대로 CPU의 메모리에 드레드(9, 10, 11 및 12)를 순차적으로 전달한다. 따라서, 각 CPU는 에어리어 측정 프로세서를 시작하게 된다. 여기에서, 반전 프로세스가 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 및 제4 CPU(13)의 순서대로 완료되었다고 가정해보자, 제1 CPU(10)는 메모리(14)의 에어리어 측정값 저장 영역의 판독 어드레스에 의해 지정된 위치 (즉, 제1 부영역의 상부에 대응하는 위치)로부터 화상 데이터 A3를 순차적으로 판독하여, 에어리어를 연산한다. 이 연산 결과는 메모리(14)의 에어리어 전체 영역의 기록 어드레스에 의해 지정된 위치에 저장된다.
유사하게, 제2 CPU(11)는 메모리(14)의 에어리어 측정값 저장 영역의 판독 어드레스에 의해 지정된 위치 (즉, 제1 부영역의 상부에 대응하는 위치)로부터 화상 데이터 B3를 순차적으로 판독하여, 에어리어를 연산한다. 이 연산 결과는 메모리(14)의 에어리어 전체 영역의 기록 어드레스에 의해 지정된 위치에 저장된다. 제3 CPU(12) 및 제4 CPU(13)도 또한 상술한 경우와 유사하다. 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 및 제4 CPU(13)에서의 상술한 에어리어 측정 프로세스는 서로 병렬로 실행된다. 각 CPU들이 에어리어 측정 프로세스를 완료하면, 보이드 검사 영역의 제1 부영역, 제2 부영역, 제3 부영역 및 제4 부영역은 메모리(14)의 에어리어 전체 영역에 저장된다.
모든 CPU들이 에어리어 측정 프로세스를 완료하면, OS는 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 및 제4 CPU(13) 중 임의의 것을 선택하여, 이 선택된 CPU의 메모리에 드레드(13)를 전달한다. 따라서, 선택된 CPU는 메모리(14)의 에어리어 전체 영역의 판독 어드레스에 의해 지정된 위치로부터 에어리어 측정 값을 판독하고, 이 판독된 에어리어 측정값을 첨가하여 에어리어의 전체값을 연산한다. 다음에, 이 선택된 CPU는 총값을 미리 정해진 판정값과 비교한다. 선택된 CPU는 전체 값이 미리 정해진 판정값 보다 큰 경우 보이드 결함이 존재한다고 판정한다. 이런 사실을 나타내는 메시지를 디스플레이 소자(17) 상에 표시한다. 보이드 검사는 상술한 바와 같이 종료된다.
이 제1 실시예에서, 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 및 제4 CPU(13)의 성능이 서로 동일하고 제1 부영역, 제2 부영역, 제3 부영역, 및 제4 부영역의 크기가 서로 동일하면, 각 CPU에서의 이진 변환 프로세스, 반전 프로세스 및 에어리어 측정 프로세스에 필요한 시간은 서로 동일하게 된다. 따라서, 이진 변환 프로세스, 반전 프로세스 및 에어리어 측정 프로세스에 필요한 시간은 하나의 CPU로 이들 프로세싱을 실행할 때의 약 1/4로 감소한다. 따라서, 화상 데이터의 고속 프로세싱을 성취할 수 있다.
또한, 각 드레드의 기록 어드레스는 원 화상 저장 영역의 화상 데이터, 반전화상 저장 영역의 화상 데이터 및 에어리어 측정값 저장 영역의 화상 데이터가 서로 대응하도록 결정된다. 따라서, 종래의 화상 프로세서에서 실행되는 바와 같이, 각 CPU에 의해 처리되는 화상 데이터의 위치 결정 등의 통합 프로세스를 실행할 필요가 없다. 결과적으로, 화상 프로세싱을 간략화하며 또한 화상 데이터의 고속 프로세싱을 성취하는 것이 가능하다.
더구나, 제1 실시예에 따른 외형 검사 장치는 범용 컴퓨터를 이용하며, 이 범용 컴퓨터를 제어하기 위한 소프트웨어는 유통되는 OS를 사용할 수 있다. 따라서, 이 장치를 저가로 구성할 수 있다는 장점을 갖게 된다.
제1 실시예에서, 보이드 검사 영역은 네 개의 부영역으로 분할되어 있다는 것에 유의해야 한다. 드레드는 각 부영역에 대한 이진 변환 프로세스, 반전 프로세스 및 에어리어 측정 프로세스를 실행하기 위해 형성되어 있다. 그러나, 각 프로세스에서는, 하나의 화소에 기초하여 다른 하나의 화소가 형성된다. 따라서, 이진 변환 프로세스, 반전 프로세스 및 에어리어 측정 프로세스를 연속적으로 실행하는 드레드가 각 부영역에 대해 형성되고, 이들 드레드가 복수의 CPU를 이용하여 서로 병렬로 처리되도록 설계할 수 있다.
또한, 제1 실시예는 보이드 검사 영역이 네 개의 부영역으로 분할되고, 하나의 CPU는 각 부영역에 상관되어 있으며, 화상 프로세스는 총 네 개의 CPU를 이용하여 실행되도록 설계되어 있다. 그러나, 보이드 검사 영역의 개수 및 CPU의 개수는 "4"에 한정되지 않는다. 분할수 및 CPU의 개수는 임의로 결정될 수 있다.
이 경우, 보이드 검사를 위한 드레드 형성시 외형 검사 장치에 장착된 CPU개수를 취득한 다음에 각 프로세스에 대해 CPU의 개수에 대응하는 드레드를 형성하도록 설계될 수 있다. 이 설계에 따르면, 장착된 CPU의 개수가 서로 다른 컴퓨터가 외형 검사 장치로서 사용되는 경우에도, 드레드를 한 유형의 소프트웨어로 형성할 수 있다. 따라서, 각 개수의 CPU에 대해 소프트웨어를 제조할 필요가 없다는 장점이 있다.
더구나, 제1 실시예에서는, 보이드 검사의 경우를 일 예로 기재한다. 그러나, 이것은 보이드 검사에만 제한되지 않고, 다른 각종 외형 검사에도 적용될 수 있다.
(제2 실시예)
본 발명의 제2 실시예에 따른 외형 검사 장치를 이하 설명한다. 제1 실시예예 따른 외형 검사 장치는 이진 변환 프로세스, 변환 프로세스 및 에어리어 측정 프로세스 등의 모든 프로세스들이 복수의 드레드에 의해 서로 병렬로 실행되도록 설계되어 있다. 그러나, 제2 실시예에 따른 외형 검사 장치는 상술한 복수의 프로세스에서의 특정 프로세스가 단일의 드레드에 의해 실행되도록 설계되어 있다. 이 제2 실시예에서는, 본 발명의 "n"이 "4"이고, 본 발명의 "k"는 "2"이고 본 발명의 "m"은 "1"인 것에 유의해야 한다.
보이드 검사시 실행되는 드레드 형성 프로세스는 먼저 보이드 검사 영역의 크기를 연산한다. 다음에, 이 연산된 크기가 미리 정해진 설정치 α보다 큰지의 여부가 체크된다. 연산된 크기가 설정치 α 보다 크다고 판정되면, 보이드 검사 영역은 제1 실시예에서의 설명과 유사하게, 네 개의 부영역으로 분리된다. 도 3에서 나타낸 바와 같이, 13개의 드레드는 이진 변환 프로세스, 반전 프로세스 및 에어리어 측정 프로세스가 복수의 드레드에 의해 각 부영역의 각 화상 데이터에 대해 실행되고, 검사 판정 프로세스가 단일의 드레드에 의해 실행되도록 형성되어 있다.
한편, 연산된 크기가 미리 정해진 설정치 α와 동일하거나 이 보다 작다고 판정되면, 도 5a에서 나타낸 바와 같이, 9개의 드레드는 이진 변환 프로세스와 반전 프로세스가 각 부영역의 각 화상 데이터에 대해 실행되고 에어리어 측정 프로세스 및 검사 판정 프로세스가 단일의 드레드에 의해 실행되도록 형성되어 있다. 다음에, 이렇게 형성된 9개의 드레드는 제1 실시예에서 설명한 것과 유사한 과정으로 실행된다.
이 제2 실시예예 따른 외형 검사 장치에서는, 보이드 검사 영역의 크기가 미리 정해진 설정치 α와 동일하거나 이보다 더 작은 경우, 에어리어 측정 프로세스 및 검사 판정 프로세스가 하나의 드레드로 실행될 때의 프로세싱 시간이 에어리어 측정 프로세스가 네 개의 드레드로 실행된 다음에 검사 판정 프로세스가 하나의 드레드로 실행되는 경우의 것 보다 더 짧다. 따라서, 전체적으로 외형 검사의 시간을 단축할 수 있다.
또한, 상술한 외형 검사 장치는 복수의 프로세스 중에서 특정 프로세스가 단일 드레드에 의해 실행되도록 설계되어 있다. 그러나, 외형 검사 장치는 모든 프로세스들이 단일의 드레드에 의해 실행되도록 변형될 수 있다.
이 변형에 따른 외형 검사 장치에서는, 보이드 검사시 실행되는 드레드 형성 프로세스는 먼저 보이드 검사 영역의 크기를 연산한다. 다음에, 이 연산된 크기가미리 정해진 설정치 β 보다 더 큰지의 여부가 체크된다. 연산된 크기가 설정치 β 보다 더 크다고 판정되면, 보이드 검사 영역은 제1 실시예에서의 설명과 유사하게, 네 개의 부영역으로 분할된다. 도 3에서 나타낸 바와 같이, 13개의 드레드는 이진 변환 프로세스, 반전 프로세스 및 에어리어 측정 프로세스가 복수의 드레드에 의해 각 부영역의 각 화상 데이터에 대해 실행되고, 검사 판정 프로세스가 단일의 드레드에 의해 실행되도록 형성되어 있다.
한편, 연산된 크기가 미리 정해진 설정치 β와 동일하거나 이보다 더 작다고 판정되면, 도 5b에서 나타낸 바와 같이, 하나의 드레드는 모든 이진 변환 프로세스, 반전 프로세스, 에어리어 측정 프로세스 및 검사 판정 프로세스가 단일의 드레드에 의해 실행되도록 형성되어 있다. 다음에, 이렇게 형성된 하나의 드레드는 제1 실시예에서 설명된 것과 유사한 과정으로 실행된다.
이 변형에 따른 외형 검사 장치에서는, 보이드 검사 영역의 크기가 미리 정해진 설정치 β와 동일하거나 이보다 더 작으면, 모든 프로세스들이 하나의 드레드에 의해 실행되는 경우는 최단 프로세싱 시간을 갖는다. 따라서, 외형 검사 시간이 빨라질 수 있다. 이 변형에 따른 외형 검사 장치는 크기가 작은 복수의 보이드 외형 영역이 있는 경우 효율적이다.
본 발명의 제2 실시예에 따른 외형 검사 장치는 다음과 같이 변형될 수 있음에 유의해야 한다. 즉, 보이드 검사 영역의 크기가 설정치 α보다 큰 경우, 제1 실시예에서의 설명과 유사하게, 보이드 검사 영역은 네 개의 부영역으로 분할된다. 다음에, 13개의 드레드는 이진 변환 프로세스, 반전 프로세스 및 에어리어 측정 프로세스가 복수의 드레드에 의해 각 부영역의 각 화상 데이터에 대해 실행되고, 검사 판정 프로세스가 단일의 드레드에 의해 실행되도록 형성되어 있다. 보이드 검사 영역의 크기가 설정치 α와 동일하거나 이보다 더 작고 설정치 β(α>β) 보다 더 큰 경우, 9개의 드레드는 이진 변환 프로세스와 반전 프로세스가 복수의 드레드에 의해 각 부영역의 각 화상 데이터에 대해 실행되고, 에어리어 측정 프로세스와 검사 판정 프로세스가 단일의 드레드에 의해 실행되도록 형성되어 있다. 또한, 보이드 검사 영역의 크기가 설정치 β와 동일하거나 이보다 더 작은 경우, 하나의 드레드는 이진 변환 프로세스, 반전 프로세스, 에어링 측정 프로세스 및 검사 판정 프로세스 모두가 단일의 드레드에 의해 실행되도록 형성되어 있다.
상술한 외형 검사 장치는 보이드 검사시에, 보이드 검사 영역의 크기가 미리 정해진 설정치 보다 더 큰지의 여부를 체크함으로써 드레드가 형성되었는지를 판정한다. 그러나, 이들은 외형 검사가 프로세싱 시간을 실제로 측정함으로써 최단 시간 내에 외형 검사를 실행할 수 있는 드레드의 조합을 먼저 결정한 다음에, 검사 데이터로서 하드 디스크 드라이브(15)에 저장하도록 설계될 수 있다.
예를 들어, 먼저, 미리 정해진 프로세스를 네 개의 CPU 및 네 개의 드레드를 이용하여 실행하여, 이의 실행 시간을 측정한다. 다음에, 미리 정해진 프로세스를 하나의 CPU와 하나의 드레드를 이용하여 실행하여, 이의 실행 시간을 측정한다. 다음에, 이들을 서로 비교한다. 그래서, CPU와 드레드의 개수를 미리 정해진 프로세스를 실행함으로써 판정하여, 검사 데이터로서 하드 디스크 드라이브(15)에 저장한다. 이 검사 데이터는 미리 정해진 프로세스가 실행될 때 하드 디스크드라이브(15)로부터 판독되어, 드레드 형성시에 참조된다.
이 형태에 따르면, 보이드 검사시의 드레드 형성 프로세스는 드레드를 형성하며, 여기에서는 실재 측정에 의해 최단 시간 내에 외형 검사를 실행할 수 있다는 것이 증명된다. 따라서, 외형 검사를 최단 시간에 실행할 수 있다.
미리 정해진 프로세스가 이진 변환 프로세스, 반전 프로세스, 에어리어 측정 프로세스 및 검사 판정 프로세스 중 하나로 구성될 수 있거나, 이들 중 몇 개의 프로세스의 조합으로 구성될 수 있거나, 이들 프로세스 모두로 구성될 수도 있다. 간략히 말하면, 상기 경우 중에서 외형 검사를 최단 시간에 실행할 수 있는 경우를 찾아내어, 검사 데이터를 형성할 수가 있다.
(제3 실시예)
본 발명의 제3 실시예에 따른 외형 검사 장치는 다음과 같이 설계된다. 즉, 예를 들어, 히스토그램 프로세스나 프로젝션 프로세스 등의, 병렬 프로세스를 실행하기 어려운 프로세스를 실행할 때에, 복수의 검사 영역이 있으면, 각 부영역은 하나의 드레드로 처리된다.
도 6은 이 제3 실시예에서 사용되는 IC의 화상 데이터의 예를 나타낸다. 보이드 검사시, 보이드 검사 영역은 제1 및 제2 실시예에서 나타낸 바와 같이, IC의 패키지부 상에 설정되어 있다.
리드간 이물질 검사시에는, 제1 내지 제4 리드간 이물질 검사 영역이 IC의 리드부에서, 각 측면에 대해 설정되어 있다. 다음에, 네 개의 드레드가 제1 내지 제4 리드간 이물질 검사 영역에 대응하여 형성되어 있다. 각 드레드에는, 리드간이물질 검사를 실행하기 위한 과정이 설명되어 있다.
OS는 이렇게 형성된 네 개의 드레드를 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 제4 CPU(13)에 각각 할당한다. 즉, OS는 빈 상태에 있는 CPU의 메모리에 드레드를 전달한다. 다음에, 리드간 이물질 검사가 시작된다. 이 리드간 이물질 검사는 예를 들어, 일본 특허 출원 공개 (JP-A-평성7-128249) 또는 일본 특허 번호 2500649에 상세하게 설명되어 있다.
이 리드간 이물질 검사시에는, 리드간 이물질 검사 영역을 복수의 부영역으로 분할하여 복수의 CPU를 이용하여 병렬 프로세스를 실행하는 것이 어려운 프로세스가 실행된다. 따라서, 상술한 바와 같이, 리드간 이물질 검사 영역은 IC의 각 네 측면에 대해 실행되며, 네 개의 CPU는 리드간 이물질 검사를 실행한다. 따라서, CPU 이용 효율성을 개선시킬 수 있으며 또한 고속 프로세싱을 성취할 수가 있다.
또한, 리드 검사시, 제1 내지 제100 리드검사 영역이 도 6에서 나타낸 바와 같이, 각 리드의 선단에 대해 설정되어 있다. 다음에, 100개의 드레드가 제1 내지 제100 리드 검사 영역 각각에 대해 형성되어 있다. 각 드레드에서는, 리드 검사를 실행하기 위한 과정이 기재되어 있다.
OS는 이렇게 형성된 100개의 드레드를 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 제4 CPU(13)에 할당한다. 즉, OS는 빈 상태에 있는 CPU의 메모리에 드레드를 순차적으로 전달한다. 다음에, 리드 검사가 시작된다. 이 리드 검사는 예를 들어, 리드 선단에서의 화상을 템플릿 화상으로 이용하고, 각 리드 선단에 형성된리드 검사 영역을 검색한 다음에, 리드 좌표를 검출하는 방법에 의해 실행된다.
이 리드 검사에 사용되는 리드 검사 영역의 크기는 매우 작다. 따라서, 리드 검사 영역이 복수의 부영역으로 분할된 다음에 병렬 프로세스가 복수의 CPU를 이용함으로써 실행될 때, 프로세싱 시간이 반대로 증가되는 경우가 있을 수 있다. 따라서, 리드 검사 영역은 각 리드 선단에 대해 설정되고, 총 100개의 리드 검사가 네 개의 CPU에 의해 순차적으로 실행된다. 따라서, CPU 이용 효율성을 증진시키며 또한 고속의 프로세싱을 성취할 수 있다.
(제4 실시예)
검사 영역을 복수의 부영역으로 분할한 다음에 이들을 복수의 CPU를 이용함으로써 처리하기가 어려운 프로세스로서는, 화상 전체나 일부를 회전시키기 위한 회전 프로세스가 있다. 이 회전 프로세스에서는, 화상 데이터 전체를 참조할 필요가 있다. 그러나, 복수의 CPU를 이용하는 병렬 프로세스는 판독 어드레스와 기록 어드레스를 지정하는 방법, 리드 어드레스만을 지정하는 방법, 및 기록 어드레스만을 지정하는 방법 중 어느 것을 이용하더라도 성취할 수 있다.
본 발명의 제4 실시예에 실행되는 회전 프로세스를 90도 우측 회전의 경우를 예시화하는 것으로 도 7A, 7B 및 7C를 참조하여 이하 설명한다. 도 7a 내지 도 7c는 4로우×4컬럼으로 구성되는 16개의 화소의 화상 데이터가 우측 방향으로 90도 회전하는 각각의 예를 나타내고 있다. 그러나, 이 제4 실시예에서 취급될 수 있는 화소의 개수는 16개로 제한하지 않고, 임의대로이다.
이 회전 프로세스에 대한 드레드 형성 프로세스에서는, 원화상 저장 영역이나 회전 화상 저장 영역의 각 로우나 컬럼에 대해 드레드가 형성된다. 어드레스를 지정하는 각 방법에 대한 회전 프로세스의 동작을 이하 설명한다.
먼저, 판독 어드레스와 기록 어드레스 둘 다가 드레드에 유지되어 있을 때의 동작을 도 7a를 참조하여 설명한다. 이 경우, 네 개의 드레드는 원 화상 저장 영역에서의 Y4 로우 프로세싱에 대해 드레드 1, Y3 로우 프로세싱에 대해 드레드 2, Y2 로우 프로세싱에 대해 드레드 3, 및 Y1 로우 프로세싱에 대해 드레드 4 등과 같이 형성되어 있다.
드레드 1에 유지된 판독 어드레스는 원화상 저장 영역의 좌표 (X1, Y4)의 어드레스이고, 기록 어드레스는 회전 화상 저장 영역의 좌표 (X4, Y4)의 어드레이다. 유사하게, 드레드 2에 유지된 리드 어드레스는 원화상 저장 영역의 좌표 (X1, Y3)의 어드레스이고, 기록 어드레스는 회전 화상 저장 영역의 좌표 (X3, Y4)의 어드레스이다. 드레드 3과 4에 유지되어 있는 판독 어드레스와 기록 어드레스는 또한 상술한 규칙과 유사한 규칙에 따라서 결정된다.
OS는 상술한 바와 같이 형성된 드레드 1 내지 4를 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 제4 CPU(13) 중 하나에 할당한다. 즉, OS는 빈 상태에 있는 CPU의 메모리에 드레드를 전달한다. 따라서, 회전 프로세스는 동시에 네 개의 CPU에서 시작된다. 그 후, 드레드 1, 2, 3 및 4이 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 제4 CPU(13)에 각각 할당된다고 가정해보자.
제1 CPU(10)는 드레드 1에 기재되어 있는 과정에 따라서 프로세스를 실행한다. 즉, 화상 데이터 B1은 메모리(14)의 원화상 저장 영역의 판독 어드레스에 의해 지정된 위치, 즉 좌표 (X1, Y4)로부터 판독되어, 회전 화상 저장 영역의 기록 어드레스로 지정된 위치, 즉 좌표 (X4, Y4)에 기록된다. 그 후, 순차적으로, 원화상 저장 영역의 좌표 (X2, Y4)로부터 판독된 화상 데이터 B2가 회전 화상 저장 영역의 좌표 (X4, Y3)에 기록되고, 원화상 저장 영역의 좌표 (X3, Y4)로부터 판독된 화상 데이터 B3가 회전 화상 저장 영역의 좌표 (X4, Y2)에 기록되고, 원화상 저장 영역의 좌표 (X4, Y4)로부터 판독된 화상 데이터 B4가 회전 화상 저장 영역의 좌표 (X4, Y1)에 기록된다.
또한, 제2 CPU(11)는 드레드 2에 기재되어 있는 과정에 따라서 프로세스를 실행한다. 즉, 화상 데이터는 메모리(14)의 원화상 저장 영역의 판독 어드레스에 의해 지정된 위치, 즉 좌표 (X1, Y3)로부터 판독되어, 회전 화상 저장 영역의 기록 어드레스로 지정된 위치, 즉 좌표 (X3, Y4)에 기록된다. 그 후, 순차적으로, 원화상 저장 영역의 좌표 (X2, Y3)로부터 판독된 화상 데이터가 회전 화상 저장 영역의 좌표 (X3, Y3)에 기록되고, 원화상 저장 영역의 좌표 (X3, Y3)로부터 판독된 화상 데이터가 회전 화상 저장 영역의 좌표 (X3, Y2)에 기록되고, 원화상 저장 영역의 좌표 (X4, Y3)로부터 판독된 화상 데이터가 회전 화상 저장 영역의 좌표 (X3, Y1)에 기록된다. 드레드 3을 수신하는 제3 CPU(12)의 동작 및 드레드 4를 수신하는 제4 CPU(13)의 동작은 상술한 경우의 것들과 유사하다.
다음에, 판독 어드레스만이 드레드에 유지되어 있을 때의 동작을 도 7b를 참조하여 설명한다. 이 경우, 원화상 저장 영역에서의 Y4 로우 프로세싱에 대한 드레드 1, Y3 로우 프로세싱에 대한 드레드 2, Y2 로우 프로세싱에 대한 드레드 3 및Y1 로우 프로세싱에 대한 드레드 4 등과 같은 네 개의 드레드가 형성되어 있다.
드레드 1에 유지된 판독 어드레스는 원화상 저장 영역의 좌표 (X1, Y4)의 어드레스이고, 드레드 2에 유지된 판독 어드레스는 원화상 저장 영역의 좌표 (X1, Y3)의 어드레스이고, 드레드 3에 유지된 판독 어드레스는 원화상 저장 영역의 좌표 (X1, Y2)의 어드레스이고, 드레드 4에 유지된 판독 어드레스는 원화상 저장 영역의 좌표 (X1, Y1)의 어드레스이다.
여기에서, 상술된 바와 같이 형성된 드레드 1 내지 4를 상술된 경우와 유사하게 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 제4 CPU(13) 중 어느 것에나 할당한다고 가정해보자.
드레드 1을 수신하는 제1 CPU(10)는 드레드 1에 기재되어 있는 과정에 따라서 프로세스를 실행한다. 여기에서, 먼저 기록 어드레스를 연산한다. 즉, 메모리(14)의 원화상 저장 영역의 좌표 (X1, Y4)가 우측 방향으로 90도 회전될 때의 좌표가 좌표 (X4, Y4)라는 사실을 연산한다. 회전 화상 저장 영역의 좌표 (X4, Y4)의 어드레스를 기록 어드레스로 결정한다. 다음에, 화상 데이터 B1는 메모리(14)의 원화상 저장 영역의 판독 어드레스에 의해 지정된 위치, 즉 좌표 (X1, Y4)로부터 판독되어, 회전 화상 저장 영역의 기록 어드레스에 의해 지정된 위치, 즉 좌표 (X4, Y4)에 기록된다. 그 후, 유사하게, 원화상 저장 영역의 좌표 (X2, Y4)로부터 판독된 화상 데이터 B2는 회전 화상 저장 영역의 좌표 (X4, Y3)에 기록되고, 원화상 저장 영역의 좌표 (X3, Y4)로부터 판독된 화상 데이터 B3는 회전 화상 저장 영역의 좌표 (X4, Y2)에 기록되고, 원화상 저장 영역의 좌표 (X4, Y4)로부터 판독된 화상 데이터 B4는 회전 화상 저장 영역의 좌표 (X4, Y1)에 순차적으로 기록된다.
또한, 드레드 2를 수신하는 제1 CPU(11)는 드레드 2에 기재되어 있는 과정에 따라서 프로세스를 실행한다. 여기에서, 먼저 기록 어드레스를 연산한다. 즉, 메모리(14)의 원화상 저장 영역의 좌표 (X1, Y3)가 우측 방향으로 90도 회전될 때의 좌표가 좌표 (X3, Y4)라는 사실을 연산한다. 회전 화상 저장 영역의 좌표 (X3, Y4)의 어드레스를 기록 어드레스로 결정한다. 다음에, 화상 데이터는 메모리(14)의 원화상 저장 영역의 판독 어드레스에 의해 지정된 위치, 즉 좌표 (X1, Y3)로부 판독되어, 회전 화상 저장 영역의 기록 어드레스에 의해 지정된 위치, 즉 좌표 (X3, Y4)에 기록된다. 그 후, 유사하게, 원화상 저장 영역의 좌표 (X2, Y3)로부터 판독된 화상 데이터는 회전 화상 저장 영역의 좌표 (X3, Y3)에 기록되고, 원화상 저장 영역의 좌표 (X3, Y3)로부터 판독된 화상 데이터는 회전 화상 저장 영역의 좌표 (X3, Y2)에 기록되고, 원화상 저장 영역의 좌표 (X4, Y3)로부터 판독된 화상 데이터는 회전 화상 저장 영역의 좌표 (X3, Y1)에 순차적으로 기록된다. 드레드 3을 수신하는 제3 CPU(12) 및 드레드 4를 수신하는 제4 CPU(13)의 동작은 상술한 경우의 것들과 유사하다.
다음에, 기록 어드레스만이 드레드에 유지되어 있을 때의 동작을 도 7c를 참조하여 설명한다. 이 경우, 회전 화상 저장 영역에서의 Y4 로우 프로세싱에 대해 드레드 1, Y3 로우 프로세싱에 대해 드레드 2, Y2 로우 프로세싱에 대해 드레드 3 및 Y1 로우 프로세싱에 대해 드레드 4 등과 같이 네 개의 드레드가 형성되어 있다.
드레드 1에 유지된 기록 어드레스는 회전 화상 저장 영역의 좌표 (X1, Y4)의 어드레스이고, 드레드 2에 유지된 기록 어드레스는 회전 화상 저장 영역의 좌표 (X1, Y3)의 어드레스이고, 드레드 3에 유지된 기록 어드레스는 회전 화상 저장 영역의 좌표 (X1, Y2)의 어드레스이고, 드레드 4에 유지된 기록 어드레스는 회전 화상 저장 영역의 좌표 (X1, Y1)의 어드레스이다.
여기에서, 상술된 경우와 유사하게, OS는 상술된 바와 같이 형성된 드레드 1 내지 4를 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 제4 CPU(13) 중 어느 하나에 할당한다고 가정해보자.
드레드 1을 수신한 제1 CPU(10)는 드레드 1에 기재된 과정에 따라서 프로세스를 실행한다. 여기에서, 판독 어드레스를 먼저 연산한다. 즉, 메모리(14)의 회전 화상 저장 영역의 좌표 (X1, Y4)가 좌측 방향으로 90도 회전될 때의 좌표가 좌표 (X1, Y1)라는 사실을 연산한다. 원화상 저장 영역의 좌표 (X1, Y1)의 어드레스를 기록 어드레스로서 결정한다. 다음에, 화상 데이터 B1는 메모리(14)의 원화상 저장 영역의 연산된 판독 어드레스에 의해 지정된 위치, 즉 좌표 (X1, Y1)로부터 판독되어, 회전 화상 저장 영역의 기록 어드레스에 의해 지정된 위치, 즉 좌표 (X1, Y4)에 기록된다. 그 후, 유사하게, 원화상 저장 영역의 좌표 (X1, Y2)로부터 판독된 화상 데이터 B2는 회전 화상 저장 영역의 좌표 (X2, Y4)에 기록되고, 원화상 저장 영역의 좌표 (X1, Y3)로부터 판독된 화상 데이터 B3는 회전 화상 저장 영역의 좌표 (X3, Y4)에 기록되고, 원화상 저장 영역의 좌표 (X1, Y4)로부터 판독된 화상 데이터 B4는 회전 화상 저장 영역의 좌표 (X4, Y4)에 순차적으로 기록된다.
또한, 드레드 2를 수신하는 제2 CPU(11)는 드레드 2에 기재되어 있는 과정에 따라서 프로세스를 실행한다. 여기에서, 먼저 기록 어드레스를 연산한다. 즉, 메모리(14)의 회전 화상 저장 영역의 좌표 (X1, Y3)가 좌측 방향으로 90도 회전될 때의 좌표가 좌표 (X2, Y1)라는 사실을 연산한다. 원화상 저장 영역의 좌표 (X2, Y1)의 어드레스를 기록 어드레스로 결정한다. 다음에, 화상 데이터는 메모리(14)의 원화상 저장 영역의 판독 어드레스에 의해 지정된 위치, 즉 좌표 (X2, Y1)로부 판독되어, 회전 화상 저장 영역의 기록 어드레스에 의해 지정된 위치, 즉 좌표 (X1, Y3)에 기록된다. 그 후, 유사하게, 원화상 저장 영역의 좌표 (X2, Y2)로부터 판독된 화상 데이터는 회전 화상 저장 영역의 좌표 (X2, Y3)에 기록되고, 원화상 저장 영역의 좌표 (X2, Y3)로부터 판독된 화상 데이터는 회전 화상 저장 영역의 좌표 (X3, Y3)에 기록되고, 원화상 저장 영역의 좌표 (X2, Y4)로부터 판독된 화상 데이터는 회전 화상 저장 영역의 좌표 (X4, Y3)에 순차적으로 기록된다. 드레드 3을 수신하는 제3 CPU(12) 및 드레드 4를 수신하는 제4 CPU(13)의 동작은 상술한 경우의 것들과 유사하다.
상술된 바와 같이, 본 제4 실시예에 따르면, 전체 화상 데이터의 참조를 필요로 하는 프로세스의 경우에도, 복수의 CPU(드레드)에서 프로세스를 병렬로 실행할 수 있다. 따라서, 고속의 프로세싱을 성취하는 것이 가능하다. 더구나, 제3 종래 기술의 경우와 같이, 전체 화상을 참조하기 위해 프로세스에 대해 통합 프로세싱부를 개별적으로 장착할 필요가 없다. 따라서, 외형 검사 장치를 간단하고 저렴하게 구성할 수 있다.
본 발명에 따른 외형 검사 장치는 제1 내지 제3 실시예의 프로세스들을 연속적으로 실행한다. 도 8은 이 외형 검사 장치에서의 전체 프로세스의 흐름을 나타낸다.
외형 검사시, 사용되는 CPU의 개수를 먼저 결정한다 (단계 S10). 미리 정해진 고정값이 이 개수의 CPU로 이용되도록 설계될 수 있거나, 사용자가 임의의 값을 CPU의 개수로 입력하도록 설계될 수 있다. 또는, 외형 검사 장치에 설비된 CPU의 개수는 프로그램을 이용하여 자동으로 취득되도록 설계될 수 있다.
다음에, 검사 데이터가 하드 디스크 드라이브(15)로부터 판독된다 (단계 S11). 다음에, 화상 데이터는 카메라(19)로부터 페치된다 (단계 S12). 다음에, 보이드 검사용 드레드가 검사 데이터와 화상 데이터에 기초하여 형성된다 (단계 S13). 즉, 보이드 검사를 실행하는 13개의 드레드는 제1 및 제2 실시예에서 설명된 바와 같이 형성된다. 이렇게 형성된 드레드는 OS의 제어하에서, 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 제4 CPU(13)에 보내진다. 이에 의해, 보이드 검사가 실행된다.
다음에, 리드간 이물질 검사를 위한 드레드가 검사 데이터와 화상 데이터에 따라서 형성된다 (단계 S14). 즉, 리드간 이물질 검사를 실행하는 네 개의 드레드가 제3 실시예에 기재된 바와 같이 형성되어 있다. 이렇게 형성된 드레드는 OS의 제어하에서, 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 제4 CPU(13)에 보내진다. 이에 의해, 리드간 이물질 검사가 실행된다.
다음에, 리드 검사를 위한 드레드가 검사 데이터와 화상 데이터에 따라서 형성되어 있다 (단계 S15). 즉, 리드 검사를 실행하는 400개의 드레드가 제3 실시예에서 기재된 바와 같이 형성된다. 이렇게 형성된 드레드는 OS의 제어하에서, 제1 CPU(10), 제2 CPU(11), 제3 CPU(12), 제4 CPU(13)에 보내진다. 이에 의해 리드 검사가 실행된다. 본 발명의 드레드 형성기는 상술한 단계 S13, S14 및 S15의 프로세싱으로 이루어진다.
상술한 프로세스의 완성 후에, 보이드 검사, 리드간 이물질 검사, 및 리드 검사의 각 결과들이 출력된다 (단계 S16). 그 후, 시퀀스는 다시 단계 S12로 돌아간다. 다음에, 외형 검사는 다음 IC에서 실행된다.
상술된 바와 같이, 제1 내지 제4 실시예에 따른 외형 검사 장치는 이들 각각이 화상 데이터를 저장하기 위한 유일한 하나의 메모리(14)를 구비하고, 모든 CPU들이 이 메모리(14)에 억세스하도록 설계되어 있다. 이 형태는 종래 기술과 같이, 화상 데이터가 분할되어 각 CPU에 대응하여 장착된 복수의 메모리에 저장되어 있을 필요가 없다. 그 결과, 이 형태는 화상 데이터를 분할하는 프로세스를 필요로 하지 않는다. 따라서, 프로세싱 속도를 개선할 수 있다. 또한, 복수의 메모리들을 장치할 필요가 없다. 따라서, 외형 검사 장치를 간단하고 저렴하게 구성할 수 있다.
또한, 이 외형 검사 장치에서는, 전체 프로세스가 OS에 의해 CPU에 대해 할당된 드레드가 각각 처리되는 것으로 완성되게 된다. 따라서, 이것은 종래 기술에서 설명한 바와 같이, 프로세스 분산부, 마스터 CPU 및 통합 프로세싱부 등의 전체시스템을 관리할 부재를 필요로 하지 않는다. 그 결과, 이는 부재의 동작에 필요한 시간도 필요로 하지 않게 한다. 따라서, 외형 검사 장치에서의 고속 프로세싱을 취득할 가능성이 있으며 또한 외형 검사 장치를 간단하고 저렴하게 구성하는 것이 가능하다.
상술된 바와 같이, 본 발명은 간단한 형태에도 상관 없이, 외형 검사를 고속으로 실행할 수 있는 외형 검사 장치 및 외형 검사 방법을 제공할 수 있다.

Claims (14)

  1. 외형 검사 장치에 있어서,
    검사 타겟의 외형의 화상 데이터를 저장하는 메모리;
    상기 메모리에 저장된 상기 화상 데이터를 독립적으로 처리하고 이 처리된 결과를 상기 메모리에 저장하기 위한 과정이 각각 기재되어 있는 복수의 드레드(threads)를 형성하는 드레드 형성기; 및
    상기 드레드 형성기에 의해 형성된 상기 복수의 드레드를 각각 병렬로 실행하는 복수의 CPU
    를 포함하는 외형 검사 장치.
  2. 제1항에 있어서, 상기 드레드 형성기는 상기 메모리에 저장된 상기 화상 데이터 상의 하나의 검사 영역을 분할하여 취득된 n개의 부영역의 상기 화상 데이터를 각각 처리하기 위한 과정이 기재되어 있는 k세트의 n개의 드레드 (k는 양의 정수이고 n은 2와 동일하거나 더 큰 정수)를 형성하고,
    상기 복수의 CPU는 상기 드레드 형성기에 의해 형성된 상기 k세트의 n개의 드레드를 각각 실행하는 외형 검사 장치.
  3. 제2항에 있어서, 상기 드레드 형성기는 상기 n개의 부영역의 상기 화상 데이터를 집합적으로 처리하기 위한 과정이 각각 기재되어 있는 m개의 드레드 (m은 양의 정수)를 더 형성하고,
    상기 복수의 CPU는 상기 드레드 형성기에 의해 형성된 상기 k세트의 상기 n개의 드레드를 각각 실행하고, 상기 복수의 CPU 중 하나는 상기 드레드 형성기에 의해 형성된 상기 m개의 드레드를 단독으로 실행하는 외형 검사 장치.
  4. 제3항에 있어서, 상기 n과 m은 실행되는 화상 프로세싱의 종류 및 상기 검사 영역의 크기에 기초하여 결정되는 외형 검사 장치.
  5. 제3항에 있어서, 상기 n과 m은 임의의 n과 m 조합하에서 상기 복수의 CPU의 실제 프로세싱 회수의 측정 결과에 기초하여 결정되는 외형 검사 장치.
  6. 제2항 또는 제3항에 있어서, 상기 n개의 드레드 각각에는, 미리 정해진 종류의 화상 프로세싱 및 다른 종류의 화상 프로세싱을 연속하여 실행하기 위한 과정이 기재되어 있는 외형 검사 장치.
  7. 제1항에 있어서, 상기 드레드 형성기는 상기 메모리에 저장된 상기 화상 데이터 상의 n개의 검사 영역의 상기 화상 데이터를 각각 처리하기 위한 과정이 기재되어 있는 적어도 n개의 드레드 (n은 2와 동일하거나 더 큰 정수)를 형성하고,
    상기 복수의 CPU는 상기 드레드 형성기에 의해 형성된 상기 n개의 드레드를 각각 병렬로 실행하는 외형 검사 장치.
  8. 외형 검사 방법에 있어서,
    검사 타겟의 외형의 화상 데이터를 메모리에 저장하는 단계;
    상기 메모리에 저장된 상기 화상 데이터를 독립적으로 처리하고 이 처리된 결과를 상기 메모리에 저장하기 위한 과정이 각각 기재되어 있는 복수의 드레드를 형성하는 단계; 및
    상기 형성된 복수의 드레드를 병렬로 실행하는 단계
    를 포함하는 외형 검사 방법.
  9. 제8항에 있어서, 상기 드레드 형성 단계는 상기 메모리에 저장된 상기 화상 데이터 상의 하나의 검사 영역을 분할하여 취득된 n개의 부영역의 상기 화상 데이터를 각각 처리하기 위한 과정이 기재되어 있는 k세트의 n개의 드레드 (k는 양의 정수이고 n은 2와 동일하거나 더 큰 정수)를 형성하고,
    상기 실행 단계는 상기 형성된 k세트의 n개의 드레드를 병렬로 실행하는 외형 검사 방법.
  10. 제9항에 있어서, 상기 드레드 형성 단계는 상기 n개의 부영역의 상기 화상 데이터를 집합적으로 처리하기 위한 과정이 각각 기재되어 있는 m개의 드레드 (m은 양의 정수)를 더 형성하고,
    상기 실행 단계는 상기 형성된 m개의 드레드를 직렬로 더욱 실행하는 외형검사 방법.
  11. 제10항에 있어서, 상기 n과 m은 실행되는 화상 프로세싱의 종류 및 상기 검사 영역의 크기에 기초하여 결정되는 외형 검사 방법.
  12. 제10항에 있어서, 상기 n과 m은 임의의 n과 m 조합하에서 상기 복수의 CPU의 실제 프로세싱 회수의 측정 결과에 기초하여 결정되는 외형 검사 방법.
  13. 제9항 또는 제10항에 있어서, 상기 n개의 드레드 각각에는, 미리 정해진 종류의 화상 프로세싱 및 다른 종류의 화상 프로세싱을 연속하여 실행하기 위한 과정이 기재되어 있는 외형 검사 방법.
  14. 제8항에 있어서, 상기 드레드 형성 단계는 상기 메모리에 저장된 상기 화상 데이터 상의 n개의 검사 영역의 상기 화상 데이터를 각각 처리하기 위한 과정이 기재되어 있는 적어도 n개의 드레드 (n은 2와 동일하거나 더 큰 정수)를 형성하고, 상기 실행 단계는 상기 형성된 n개의 드레드를 병렬로 실행하는 외형 검사 방법.
KR10-2001-0022894A 2000-04-28 2001-04-27 외형 검사 장치 및 외형 검사 방법 KR100380909B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000-129041 2000-04-28
JP2000129041A JP4693074B2 (ja) 2000-04-28 2000-04-28 外観検査装置及び外観検査方法

Publications (2)

Publication Number Publication Date
KR20010098929A KR20010098929A (ko) 2001-11-08
KR100380909B1 true KR100380909B1 (ko) 2003-04-18

Family

ID=18638377

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0022894A KR100380909B1 (ko) 2000-04-28 2001-04-27 외형 검사 장치 및 외형 검사 방법

Country Status (3)

Country Link
US (1) US6987894B2 (ko)
JP (1) JP4693074B2 (ko)
KR (1) KR100380909B1 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7963448B2 (en) 2004-12-22 2011-06-21 Cognex Technology And Investment Corporation Hand held machine vision method and apparatus
US9552506B1 (en) 2004-12-23 2017-01-24 Cognex Technology And Investment Llc Method and apparatus for industrial identification mark verification
KR100740250B1 (ko) * 2005-12-26 2007-07-18 (주) 인텍플러스 비전 검사 시스템 및 그를 이용한 검사 방법
US8108176B2 (en) 2006-06-29 2012-01-31 Cognex Corporation Method and apparatus for verifying two dimensional mark quality
US7984854B2 (en) * 2006-07-17 2011-07-26 Cognex Corporation Method and apparatus for multiplexed symbol decoding
CA2640884C (en) * 2006-07-20 2010-02-23 Optosecurity Inc. Methods and systems for use in security screening, with parallel processing capability
JP4865653B2 (ja) * 2006-08-08 2012-02-01 Juki株式会社 画像処理装置
US8169478B2 (en) 2006-12-14 2012-05-01 Cognex Corporation Method and apparatus for calibrating a mark verifier
US8462369B2 (en) * 2007-04-23 2013-06-11 International Business Machines Corporation Hybrid image processing system for a single field of view having a plurality of inspection threads
US8675219B2 (en) * 2007-10-24 2014-03-18 International Business Machines Corporation High bandwidth image processing with run time library function offload via task distribution to special purpose engines
US9734376B2 (en) 2007-11-13 2017-08-15 Cognex Corporation System and method for reading patterns using multiple image frames
US20090132582A1 (en) * 2007-11-15 2009-05-21 Kim Moon J Processor-server hybrid system for processing data
US9135073B2 (en) 2007-11-15 2015-09-15 International Business Machines Corporation Server-processor hybrid system for processing data
US9332074B2 (en) * 2007-12-06 2016-05-03 International Business Machines Corporation Memory to memory communication and storage for hybrid systems
US20090150556A1 (en) * 2007-12-06 2009-06-11 Kim Moon J Memory to storage communication for hybrid systems
US8553040B2 (en) 2009-06-30 2013-10-08 Apple Inc. Fingerprinting of fragment shaders and use of same to perform shader concatenation
KR101088588B1 (ko) 2010-12-03 2011-12-06 삼성전자주식회사 멀티 칩 패키지 테스트 장치 및 테스트 방법
JP6299640B2 (ja) 2015-03-23 2018-03-28 横河電機株式会社 通信装置
JP6097910B2 (ja) * 2016-01-21 2017-03-22 国立大学法人 東京大学 並列データ処理システム、計算機および並列データ処理方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5179702A (en) * 1989-12-29 1993-01-12 Supercomputer Systems Limited Partnership System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling
US5293481A (en) * 1987-02-18 1994-03-08 Canon Kabushiki Kaisha Data parallel processing apparatus
JPH08227364A (ja) * 1994-12-20 1996-09-03 Nec Corp 順序付きマルチスレッド実行方法とその実行装置
JPH1021384A (ja) * 1997-03-12 1998-01-23 Hitachi Ltd レンダリングプロセッサ
JPH11328383A (ja) * 1998-05-20 1999-11-30 Hitachi Ltd 画像処理装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0616855U (ja) * 1992-08-06 1994-03-04 株式会社エルム マルチcpuラインセンサコントローラ
JP2500649B2 (ja) 1993-11-04 1996-05-29 日本電気株式会社 Ic異物検査装置
US5936224A (en) * 1996-12-11 1999-08-10 Intermec Ip Corporation Method and apparatus for reading machine-readable symbols by employing a combination of multiple operators and/or processors
JPH10304184A (ja) 1997-05-02 1998-11-13 Fuji Xerox Co Ltd 画像処理装置および画像処理方法
JP3581242B2 (ja) 1997-10-30 2004-10-27 株式会社日立製作所 並列画像処理プロセッサを備えた荷電粒子ビーム装置
JP3893210B2 (ja) 1998-03-13 2007-03-14 株式会社日立製作所 並列データ処理装置とそれを用いた外観検査装置
US6272437B1 (en) * 1998-04-17 2001-08-07 Cae Inc. Method and apparatus for improved inspection and classification of attributes of a workpiece
JP2000047995A (ja) * 1998-07-28 2000-02-18 Hitachi Ltd 並列処理方法及び装置、並びにそれを用いた外観検査装置
JP2000047887A (ja) * 1998-07-30 2000-02-18 Toshiba Corp 投機的マルチスレッド処理方法および投機的マルチスレッド処理装置
US6728419B1 (en) * 2000-02-17 2004-04-27 Xerox Corporation Multi-tasking multi-threaded image processing system and method for image capture devices

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5293481A (en) * 1987-02-18 1994-03-08 Canon Kabushiki Kaisha Data parallel processing apparatus
US5179702A (en) * 1989-12-29 1993-01-12 Supercomputer Systems Limited Partnership System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling
JPH08227364A (ja) * 1994-12-20 1996-09-03 Nec Corp 順序付きマルチスレッド実行方法とその実行装置
JPH1021384A (ja) * 1997-03-12 1998-01-23 Hitachi Ltd レンダリングプロセッサ
JPH11328383A (ja) * 1998-05-20 1999-11-30 Hitachi Ltd 画像処理装置

Also Published As

Publication number Publication date
US6987894B2 (en) 2006-01-17
JP4693074B2 (ja) 2011-06-01
US20010042065A1 (en) 2001-11-15
KR20010098929A (ko) 2001-11-08
JP2001311692A (ja) 2001-11-09

Similar Documents

Publication Publication Date Title
KR100380909B1 (ko) 외형 검사 장치 및 외형 검사 방법
US5790881A (en) Computer system including coprocessor devices simulating memory interfaces
KR101454990B1 (ko) 외관 검사 장치 및 외관 검사 방법
US4860375A (en) High speed cellular processing system
US20180232254A1 (en) Migrating accelerators between compute systems
JPS6027964A (ja) メモリアクセス制御回路
JP3923574B2 (ja) 並列データ処理機能を備えた検査装置及び検査方法
KR20070122172A (ko) 래스터화 방법 및 시스템
JP2000514213A (ja) 画像収集システム
US20060164419A1 (en) Image drawing device and image drawing method
JP2005134976A (ja) 外観検査装置用画像処理装置
US20200372332A1 (en) Image processing apparatus, imaging apparatus, image processing method, non-transitory computer-readable storage medium
EP1456749A2 (en) Method and apparatus to generate a stream of non-contiguous memory addresses
JPH11312098A (ja) プログラム検査方法、プログラム検査装置及びプログラム検査プログラムを記録した記録媒体
CN1232219A (zh) 流水线型多处理器系统
JP4772287B2 (ja) 外観検査装置、外観検査方法および外観検査プログラム
JP5147448B2 (ja) 半導体外観検査装置用画像処理装置及び半導体外観検査装置、並びに画像処理方法
JP2013506898A (ja) 複数の入力/出力コントローラと補助演算ユニットとを備えるマルチプロセッサアーキテクチャにおけるソフトウェアアプリケーションの実行を最適化するための方法および装置
TWI845008B (zh) 基於同質多核心架構的工件檢測方法及邊緣運算設備
JP2000047995A (ja) 並列処理方法及び装置、並びにそれを用いた外観検査装置
JP2009086789A (ja) 並列型画像処理装置
JP6911587B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JPH0251783A (ja) 並列画像処理装置
JPS6249590A (ja) 高速画像処理装置
CN113010281A (zh) 多相机检测系统的线程处理方法、装置、存储介质和终端

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20090326

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee