본문 바로가기

전자회로/PCB & Artwork

Gerber파일의 검사를 위한 몇가지 기능

Gerber파일의 Verification

검사방법

원본 Gerber파일과 수정된 Gerber파일의 비교 검사에는 다음과 같은 방법이 있겠다.

1. 원본 파일과 수정 파일의Graphic적인 비교

비교적 원시적인 방법으로 사용자가 수작업에 의해서 2개의 파일의 차이점을 찾아내는 방법을 그대로 프로그램이 대신하는 방법이다. 그러나 아직 구체적으로 현존하는 프로그램이 있는지 파악이 되지 않고 있다. Graphic적인 비교 방법이기 때문에 Copper 모양이 틀린 부분도 쉽게 찾을 있다.

2. Vender 제공한 Netlist CAM350에서 만들어진 Netlist 비교하는 방법

Vender Netlist 제공하여 준다면 아주 확실하게 검사를 있다. 그러나 문제는 Vender 어떠한 형식의 Netlist 것인가가 문제이다. CAM350에서는 IPC-D-356(국제 표준 형식의 Netlist)형식의 Netlist 지원하는 문제가 있다. 이러한 문제점 때문에 별도의 전용 프로그램을 사용하는 경우가 많다.

3. 원본 파일에 만들어진 Netlist 만들어 2번의 항목과 같이 비교하는 방법

2번의 항목에서 제공하는 Netlist 지원되지 않을 경우에 원본 파일에서 Netlist 추출하여 데이터를 기준으로 수정된 파일을 검사하는 방법이다. 그러나 방법에도 문제가 있다. 먼저 원본 파일에서 Netlist 추출할 때에 정확한 Netlist 만들어져야 한다. 그렇지 않으면 수정된 파일의 오류를 발견하지 못할 있다.

 

 

원본 파일에서 Netlist 출력 후 수정된 데이터와 비교하는 방법

여기서는 3번의 항목의 검사 방법을 이용하여 보도록 한다. 주의해야 부분은 원본 파일의 기준점(0,0) 수정 파일의 기준점(0,0) 동일해야 한다. 가장 편한 방법은 두개의 파일에서 같은 지점으로 판단되는 Pad 0,0 이동시키는 방법이 가장 편리하겠다.

우선 먼저 원본 Gerber파일에서 Netlist 추출한 다음 만들어진 Netlist 저장하는 방법을 알아보자. Netlist 만드는 방법은 뒷부분에 설명이 되어 있다.

Netlist 추출이 완료되면 File>Export>Netlist명령을 선택하면 다음 그림과 같은 대화상자가 나타난다.

 

 

그림과 같이 설정하고 하단의 OK버튼을 누르면 파일의 이름을 물어오는데 적당한 이름을 부여하자.

다음은 수정된 파일에서 Netlist 만든다.(뒷부분 참고) Netlist 만들어 졌으면 원본 파일에서 제작된 Netlist 읽는 과정이 남아 있다. File>Import>Netlist명령을 선택하면 오른쪽의 그림과 같은 대화상자가 나타난다.

 

 

 

 

 

 

 

설정 내용을 그림과 같이 설정한 다음 하단의 OK버튼을 누르고 읽고자 하는 파일의 이름을 넣으면 된다.

여기서 만일 원본과 수정본이 다른 경우에 Error 발생되며 발생된 Error 레포트로 나타난다.

 

Layer Align(Layer정렬)

두개 이상의 Layer 서로 틀어져(영점이 틀린 경우) 있는 경우에 서로 맞추어 주는 방법이다. 방법을 이용하려면 반드시 기준 포인트가 필요하다. 여기서 기준 포인트란 2장의 필름을 눈으로 보고 맞추기 위한 것으로 보면 된다. 하지만 기준 포인트로 하지 않고 Pad 이용하여 수도 있다. 또는 기판의 외곽선을 이용할 수도 있다.

 

위의 그림은 1 Layer 2 Layer 서로 틀어져 있는 것을 있다. 이것을 정렬하는 작업을 해보자 우선 기준점을 선택해야 한다. 기준점은 앞에서 말한 기준 포인트나 Pad, 외곽선 등이 해당된다. 그런데 위의 그림은 기준점으로 Pad 선택하는 것이 편리하기 때문에 기준점을 Pad 설정하였다.

메뉴에서 Edit>Layers>Align명령을 선택하면 화면 하단에 "[ALIGN LAYERS]:Select alignment point, Rt.Btn to commit"라는 메시지가 나타난다. 기준점을 마우스로 클릭(왼쪽 버튼)하고 선택한 기준점이 맞다면 오른쪽 버튼을 누른다. 만일 선택한 기준점이 선택되지 않고 다른 부분이 선택되었다면 그대로 새로운 기준점을 선택한다. 마우스의 오른쪽 버튼을 한번 누를 까지 계속하여 기준점을 선택할 있도록 되어 있다.

기준점의 선택이 완료되어 마우스의 오른쪽 버튼을 눌렀다면 이번에는 대상지점이 부분을 마우스로 클릭한다. 앞의 경우와 같이 잘못 선택이 되었다면 오른쪽 버튼을 누를 까지 계속하여 대상지점을 선택할 있도록 되어 있다. 대상 지점의 선택이 올바르게 되었으면 마우스의 오른쪽 버튼을 누른다.

계속하여 기준점으로 이동할 대상Layer 추가로 있다면 Layer 대상지점을 선택한다. 방법은 동일하게 맞게 선택되었으면 오른쪽 버튼을 누른다.

최종적으로 모두 선택이 완료되었으면 완료의 의미로 마우스의 오른쪽 버튼을 한번 누른다.

 

위의 그림과 같은 메시지가 나타나면 "확인"버튼을 누른다. 주의사항은 한번 정렬한 Layer 실행취소가 되지 않는 점이다.

Netlist Extract(Gerber파일에서 Netlist추출)

Gerber파일에서 Netlist 추출하기 위해서는 다음의 사항이 준비되어 있어야 된다.

1. posite 되어있는 Layer 모두 하나의 Layer 만들어야 한다.

2. Signal Layer 대해서 Layer Type 지정하여야 된다.

3. ll 있어야 정확한 Netlist 만들어 진다.

4. nd & buried via 사용되었다면 내층에 사용될 Drill 지정해야 한다.

 

앞의 순서에 준하여 Netlist 만들어 보도록 하자.

1. posite 되어 있는 Layer 하나의 Layer 만들기

 

Netlist 만들기 위해서는 Composite 합성되어 있는 Layer들을 하나의 Layer 변환해야 Layer Type 설정할 있고 Layer Type 설정되어야 Netlist 만들 있다. 먼저 Composite 정의되어 있는지를 확인하기 위해서 Tables>Composites명령을 선택하면 위의 그림과 같은 대화상자가 나타난다. 만일 대화상자의 왼쪽의 목록이 바로 Composite 정의된 이름이 나타나있다. C1, C2등의 이름이 바로 그것이다. 목록이 확인되었으면 메뉴에서 Utilities>Convert Composite명령을 선택한다. 명령을 선택하면 다음과 같은 대화상자가 나타난다.

Composite부분에 C1이라고 되어 있는 부분이 변환하려는 Composite 이름이고 Target Layer 변환이 되어 만들어질 Layer 이름으로 New Layer 특정 Layer 지정하거나 New Layer 설정하여 새롭게 Layer 만들 있다. Accuracy 변환되는 정밀도라고 보아야 한다. 1 설정되면 정밀하게 변환되어 지지만 속도가 느리고 4 설정되면 거칠게 변환되지만 속도는 빠르다.

대화상자의 하단에 OK버튼을 누르면 변환이 된다. 예를 들어 VCC층에 3개의 Layer Composite 되어 있다면 Layer Type설정이 애매하다. 따라서 Composite 것을 변환하여 생성된 Layer Pos Plane Type으로 설정하여 Netlist 만들 있다.

 

2. Layer Type지정

Gerber파일의 모양을 사용자가 보았을 때에는 눈으로 파악하고 Layer Signal Layer인지 Silk screen, Board outline인지를 구분할 있을 것이다. 그러나 프로그램은 그렇지 못하기 때문에 사용자가 Layer 종류가 어떤 것인지를 알려주어야 한다.

Tables>Layers명령을 선택하면 아래 그림과 같은 대화상자가 나타난다.

나타난 Layer 이름에 적절한 Type 설정하면 된다. 설정이 완료되면 하단의 OK버튼을 누른다.

3. Drill 참고

Netlist 만들 때에는 기본적으로 Round Flash Top면과 Bottom면에 동시에 같은 위치에 존재하면 곳은 Plate 연결된 것으로 간주 되어 진다. 그러나 이것을 좀더 정확히 하기 위해서 Drill 필요하다. Drill 없어도 Netlist 만들어 지지만 잘못 만들어질 있다. 따라서 가급적이면 Drill 있는 것이 좋다. 또한 UnPlate 지정된 Drill 있어도 Netlist에는 영향을 미치지 않는다.

4. Blind & buried via 설정

내층비아(Blind & buried via) 사용되었으면 그것에 대한 설정을 해야 한다.

먼저 Tables>Layer Sets>Blind and Buried명령을 선택하면 아래의 그림과 같은 대화상자가 나타난다.

 

오른쪽의 동그란 표시가 되어 있는 4개의 Layer 서로 하나의 via 연결되는 것을 의미하고 하단의 Drill Layer 4개의 Layer 만들어질 Drill 된다. 것들을 묶어서 왼쪽의 목록에서 LS1으로 지정된 것이다. 또한 LS2에도 지정이 되어 있을 것이다. 그리고 전체적인 드릴은 아래의 Thru Drill 지정된다.

이런 설정이 완료되면 하단의 Check버튼을 누른다.

그럼 본격적으로 Netlist 만들어 보자. 우선 메뉴에서 Utilities>Netlist Extract명령을 선택하면 아래 그림과 같이 대화상자가 나타난다.

 

그림에서 Allow nets without pads부분에는 Pad 없는 선만 존재하는 것도 Net 인식하는 것을 의미한다. 원래의 CAM350에서는 모든 Net Pad에서 Pad 연결을 원칙으로 한다. 따라서 선만 존재하는 것은 Net라고 없는데 부분을 체크 표시하면 Net 인식하게 된다.

Single Point Net부분은 앞의 Allow nets without pads 반대로 선은 없고 Pad 존재하는 것에 Net 인식함의 의미한다.

Detected Technology에서는 Blind & buried via 사용한 경우와 그렇지 않은 경우를 표시하여 준다.

대화상자의 하단에 OK버튼을 누르면 Netlist 추출하는 작업이 진행된다.

키보드 단축 명령"T"

Transparency기능으로 서로 다른 Layer 색상이 겹친 부분의 색상을 XOR 표시하여 준다. 아래의 표는 XOR 진리표이다.

A 

B 

Y 

0 

0 

0 

0 

1 

1 

1 

0 

1 

1 

1 

0 

표에서 보듯이 입력 A,B(2개의 Layer 색상이라고 있다) 모두 1(같은 색상으로 있다)이면 출력 Y 0(화면에 나타나는 색상)이다.

이러한 기능을 이용하여 원본 파일과 수정된 파일을 서로 겹쳐 놓고 같은 색상으로 바꾸어준 다음 T키를 누르면 다른 부분만 화면에 표시될 것이다.