ODB++ 의 구조
ODB++ 를 읽는 일은 디렉터리를 따라 내려가며 텍스트 파일을 읽는 일이다. 어느 파일이 무엇을 담는지 알면 구조가 그대로 드러난다.
1. 트리의 구성
섹션 제목: “1. 트리의 구성”| 자리 | 담는 것 |
|---|---|
| 최상위 | 제품 이름으로 된 디렉터리 |
| 층 목록 | 층의 이름 · 종류 · 순서 · 면 |
| 스텝(step) | 보드 하나 또는 패널 하나 |
| 스텝 / 외곽(board outline) | 보드 재단선 |
| 스텝 / 층 | 층마다 하나씩, 그 층의 피처(feature) 파일 |
| 스텝 / 넷 자료 | 넷과 그 단자의 좌표 |
| 스텝 / 부품 | 부품 배치와 속성 |
| 심볼(symbol) | 반복해 쓰는 모양의 정의 |
| 글꼴 · 기타 | 문자 정의와 작업 정보 |
스텝이 반복 단위다. 패널 스텝은 보드 스텝을 여러 자리에 배치한 것으로 적히므로, 같은 보드 형상이 되풀이되지 않는다.
2. 층 목록
섹션 제목: “2. 층 목록”층마다 이름 · 종류 · 면 · 순서가 적힌다. 종류는 구리인지, 솔더마스크인지, 실크인지, 드릴인지를 말한다.
이 파일이 있기 때문에 파일 이름 규칙이 필요 없다. 받는 쪽은 목록을 읽어 어느 층이 무엇인지 판정한다.
3. 피처 파일 — 형상이 담기는 자리
섹션 제목: “3. 피처 파일 — 형상이 담기는 자리”층 하나의 형상은 한 줄에 도형 하나씩 적힌 텍스트다. 줄의 첫 글자가 종류를 말한다.
| 첫 글자 | 도형 |
|---|---|
L | 선 — 시작점과 끝점 |
P | 패드(pad) — 한 점에 모양을 배치한다 |
A | 호 |
S | 채움면의 시작(윤곽이 뒤따르고 끝 표시로 닫는다) |
T | 문자 |
B | 바코드 |
3.1 선 레코드
섹션 제목: “3.1 선 레코드”선 레코드는 좌표 넷 · 심볼 번호 · 극성(polarity) · 코드 순으로 적힌다.
| 자리 | 뜻 |
|---|---|
| 좌표 넷 | 시작 x · 시작 y · 끝 x · 끝 y |
| 심볼 번호 | 굵기와 모양을 가리키는 번호 |
| 극성 | P 는 그린다, N 은 지운다 |
| 코드 | 옛 도구와의 호환을 위한 번호 |
굵기가 줄에 없다는 점이 핵심이다. 굵기는 심볼 표에 있고, 줄은 번호로 그것을 가리킨다. 같은 굵기를 쓰는 선 수천 개가 번호 하나를 공유한다.
3.2 패드 레코드
섹션 제목: “3.2 패드 레코드”패드는 좌표 · 모양 참조 · 극성 · 코드 · 방향 순이다. 모양 참조가 심볼 번호이거나, 그 자리에서 정의한 모양일 수 있다.
3.3 채움면
섹션 제목: “3.3 채움면”채움면은 시작 레코드와 끝 표시 사이에 윤곽을 적는다. 윤곽은 시작점과 이어지는 선분·호로 이루어지며, 안쪽 구멍은 별도 윤곽으로 적는다. 동판(copper pour)과 마스크 개구가 이렇게 표현된다.
3.4 속성
섹션 제목: “3.4 속성”피처 줄 뒤에는 속성을 붙일 수 있다. 속성 이름과 값은 표로 따로 두고 번호로 가리킨다 — 같은 속성이 수만 줄에 되풀이되지 않게 하기 위해서다.
4. 심볼
섹션 제목: “4. 심볼”심볼은 모양의 정의다. 원·사각·둥근사각처럼 규격화된 것과, 사용자가 그린 것이 있다.
| 축 | 내용 |
|---|---|
| 규격 심볼 | 이름이 곧 정의다 — 지름·가로·세로를 이름이 담는다 |
| 사용자 심볼 | 별도 디렉터리에 형상으로 정의한다 |
| 참조 | 피처 줄은 번호로만 가리킨다 |
5. 넷 자료
섹션 제목: “5. 넷 자료”넷 자료는 넷마다 그 넷에 속한 단자의 좌표를 적는다. 한 줄이 단자 하나이고, 다음을 담는다.
| 자리 | 뜻 |
|---|---|
| 넷 번호 | 어느 넷인가. 어디에도 속하지 않으면 그 사실을 적는다 |
| 반지름과 좌표 | 그 단자의 위치와 크기 |
| 면 | 앞면 · 뒷면 · 양면 |
| 끝점·중간점 | 그 점이 넷의 끝인가 중간인가 |
| 노출 | 마스크로 덮였는가 |
| 표시 | 비아(via) · 기준점 · 시험점 여부 |
시험점 표시가 자료에 있다는 점이 전기 시험 준비를 빠르게 한다.
6. 부품 자료
섹션 제목: “6. 부품 자료”부품마다 참조 지정자(reference designator) · 패키지 · 위치 · 회전 · 면과, 핀마다의 넷이 적힌다. 조립 자료를 따로 만들지 않아도 되는 근거다.
7. 읽을 때의 순서
섹션 제목: “7. 읽을 때의 순서”| 순서 | 하는 일 |
|---|---|
| 1 | 층 목록을 읽어 무엇이 있는지 파악한다 |
| 2 | 스텝을 고른다 — 보드인가 패널인가 |
| 3 | 심볼 표를 읽어 번호 → 모양 을 만든다 |
| 4 | 층마다 피처 파일을 읽으며 번호를 모양으로 바꾼다 |
| 5 | 넷 자료를 읽어 형상과 맞춘다 |
| 6 | 부품 자료를 읽는다 |
3 을 먼저 하지 않으면 4 에서 아무것도 그릴 수 없다. 피처 줄은 모양을 번호로만 갖고 있기 때문이다.
8. 확정 전 점검 항목
섹션 제목: “8. 확정 전 점검 항목”| 축 | 확인 |
|---|---|
| 층 | 층 목록의 순서와 종류가 스택업(stackup)과 맞는가 |
| 스텝 | 보드와 패널 스텝의 관계가 의도대로인가 |
| 심볼 | 쓰지 않는 심볼이 남거나 참조가 깨지지 않았는가 |
| 넷 | 넷 자료가 최신 형상과 맞는가 |
| 부품 | 부품의 면과 회전이 실제와 맞는가 |
| 압축 | 트리 전체가 빠짐없이 묶였는가 |