File-based Component Libraries
컴포넌트와 그 연결 방식이야말로 여러분만의 고유한 전자 제품을 만들어냅니다. 컴포넌트는 그 제품을 구성하는 기본 빌딩 블록입니다. 그렇다면 컴포넌트란 정확히 무엇이며, 어디에 저장될까요?
현실 세계에서 컴포넌트는 실체가 있는 물체이므로 비교적 쉽게 식별할 수 있습니다. 하지만 설계라는 가상 세계에서는, 컴포넌트를 다양한 설계 도메인 전반에서 사용할 수 있는 여러 모델로 추상화해야 합니다. 설계 캡처 및 구현 과정에서 컴포넌트는 회로도에서 심볼로, PCB에서 풋프린트로, 시뮬레이션을 위한 SPICE 모델로, 신호 품질을 분석하기 위한 신호 무결성 설명으로, 그리고 3D 컴포넌트 및 PCB 시각화를 위한 3차원 모델로 표현됩니다. 하나의 컴포넌트가 설계 도메인마다 서로 다른 표현을 갖는 것입니다.
각 설계 도메인에는 전용 모델이 필요합니다. 회로도 캡처에서는 이 모델을 심볼(symbol)이라고 부릅니다. 설계 환경은 설계가 회로도에서 시작된다는 개념을 중심으로 구축되어 있으므로, 회로도 심볼이 다양한 모델을 서로 묶어주는 기준점으로 사용됩니다.
그 다음 파라미터가 와트수, 허용오차, 구매 정보, 데이터시트 참조 등 현실 세계의 물리적 컴포넌트를 식별하는 데 필요한 추가 세부 정보를 더해줍니다.

심볼 모델은 다른 모델들과 연결되어 각 도메인에서 해당 컴포넌트를 완전하게 설명합니다. 3D 모델은 실제로 풋프린트 안에 배치됩니다.
모델과 모델 라이브러리
각 유형의 모델과 컴포넌트는 모델 파일 또는 라이브러리에 저장되어야 합니다. 이 중 일부는 SPICE처럼 표준화된 파일 형식을 사용하지만, 다른 일부는 회로도 심볼 또는 컴포넌트를 저장하는 데 사용되는 회로도 라이브러리 파일처럼 독점 형식을 사용합니다.
SPICE 같은 일부 모델 종류는 파일당 모델 1개로 저장되며, 이를 모델 파일(model files)이라고 합니다. 반면 PCB 풋프린트처럼 어떤 것들은 하나 또는 여러 풋프린트를 수용하는 파일에 저장되며, 이를 모델 라이브러리(model libraries)라고 합니다.
모델 및 라이브러리 유형 요약
전자 개발 프로세스 전반에서 수행되는 광범위한 설계 작업을 지원하려면 수많은 모델 종류와 라이브러리 형식이 필요합니다.
아래는 각 모델 및 라이브러리 종류에 대한 요약입니다.
| 설계 도메인 | 모델 또는 라이브러리 종류 | 파일 확장자 | 비고 |
|---|---|---|---|
| Schematic capture | 심볼 | *.SchLib | Altium 회로도 심볼; 심볼만 있을 수도 있고, 다른 모델을 링크하고 파라미터를 추가하여 완전한 컴포넌트를 정의할 수도 있습니다. |
| PCB design | 풋프린트 | *.PcbLib | PCB에서 컴포넌트의 실장 및 접속 지점을 정의하는 풋프린트(또는 패턴); 제작 요소(패드, 실크, 마스크 등)뿐 아니라, 선택적으로 장착된 컴포넌트의 3D 표현도 저장할 수 있습니다. |
| 3D PCB design | 3D 바디 | *.PcbLib | Altium 설계 객체; 풋프린트에 하나 이상의 3D 바디를 배치하여 *.PcbLib 파일에서 컴포넌트의 3D 모델을 구성합니다. |
| STEP | *.STEP, *.STP | 표준 STEP 형식 3D 모델; PCB 3D 바디 객체로 가져와 *.PcbLib 파일의 풋프린트에 배치할 수 있습니다. | |
| Parasolid 3D© | *.X_T, *.X_B | Parasolid 형식 3D 모델(ASCII 또는 바이너리); PCB 3D 바디 객체로 가져와 *.PcbLib 파일의 풋프린트에 배치할 수 있습니다. | |
| SOLIDWORKS 3D© | *.SldPrt | SOLIDWORKS 형식 3D 모델; PCB 3D 바디 객체로 가져와 *.PcbLib 파일의 풋프린트에 배치할 수 있습니다. | |
| Circuit simulation | SPICE3f5 / XSpice / PSpice 모델 | *.mdl | SPICE 3f5 모델 파일; SPICE 문법을 사용해 컴포넌트의 동작을 설명합니다. |
| *.ckt | SPICE 서브서킷 파일; 컴포넌트의 동작을 모델링하는 회로를 상세히 기술한 SPICE 형식 넷리스트입니다. | ||
| SimCode 모델 | *.txt + *.mdl | ASCII 디지털 SimCode 모델 파일/라이브러리와, 디지털 모델을 심볼에 매핑하는 데 필요한 중간 모델 링크(MDL) 파일; 혼합 신호 회로 시뮬레이션에서 디지털 컴포넌트를 모델링하는 데 사용됩니다. | |
| *.scb + *.mdl | 컴파일된 디지털 SimCode 모델 파일/라이브러리와, 디지털 모델을 심볼에 매핑하는 데 필요한 중간 모델 링크(MDL) 파일; 혼합 신호 회로 시뮬레이션에서 디지털 컴포넌트를 모델링하는 데 사용됩니다. | ||
| Signal Integrity analysis | IBIS 모델 | *.ibis | Input/output Buffer Information Specification 파일; 입력 또는 출력 핀의 전기적 특성을 설명하는 동작(behavioral) 모델입니다. |
| Component creation | Altium Integrated Library | *.IntLib | 컴파일된 라이브러리; 모든 모델 종류를 내부에 저장합니다. IntLib는 LibPkg 프로젝트의 컴파일 출력물입니다. |
| Component creation | Altium database linked library | *.DbLink | 데이터베이스 링크 인터페이스 파일; SchLib 컴포넌트에 저장된 파라메트릭 데이터를 사용해 외부 ODBC 데이터 소스에서 적합한 레코드(예: 부품 번호, 또는 저항값/와트수/패키지)를 조회합니다. DbLink에서 매핑된 필드의 데이터가 검색되어 배치 시 컴포넌트에 추가됩니다. |
| Component creation | Altium database library | *.SVNDbLib | 버전 관리가 포함된 DbLib - 회로도 및 PCB 모델의 버전 관리를 위해 SVN 저장소와 인터페이스합니다. |
컴포넌트
컴포넌트는 2핀 저항처럼 단순한 것부터 수백, 수천 개의 핀을 가진 대형 커넥터까지 다양합니다. 회로도 시트에서 컴포넌트를 구성하는 방식을 유연하게 하기 위해, 소프트웨어에는 표시와 관련된 여러 유용한 기능이 포함되어 있습니다.
심볼인가, 컴포넌트인가?
다른 도메인 모델을 링크하고 파라미터를 추가하면, 심볼은 컴포넌트가 됩니다. 많은 설계자들은 회로도에서 보이는 것이 심볼이기 때문에 계속 심볼이라고 부르지만, 그 심볼에는 다른 도메인 모델과 파라메트릭 세부 정보가 붙어 있어 컴포넌트로 정의됩니다. 이 문서에서는 회로도 라이브러리 편집기에서 배치되는 그래픽 객체와 핀을 설명할 때 symbol 용어를 사용합니다. 그 외 모든 상황에서는 component로 지칭합니다.
심볼은 회로도 라이브러리 편집기에서 생성됩니다. 모델 링크를 추가하고 파라미터를 추가하는 즉시 컴포넌트가 됩니다. 컴포넌트 세부 정보는 회로도 라이브러리 편집기에서 추가할 수도 있고, DbLink 또는 DbLib 유형 라이브러리를 사용하는 경우 데이터베이스에서 세부 정보를 추출해 회로도에 배치하는 동안 심볼에 추가할 수도 있습니다(이에 대해서는 뒤에서 더 다룹니다). 또는 심볼을 회로도 시트에 배치한 후에 세부 정보를 추가할 수도 있습니다.
심볼
심볼은 회로도 라이브러리 편집기에서 생성됩니다. 필요한 형태를 만들기 위해 그래픽 객체를 배치한 다음 핀을 추가하여 생성합니다. 컴포넌트에 전기적 지능을 부여하는 것은 핀입니다. 소프트웨어가 전기적 연결 지점으로 식별하는 것도 핀이며, PCB 풋프린트의 패드에 매핑되는 것도 핀입니다.

심볼은 작고 단순한 것부터, 여러 파트에 걸쳐 생성되는 고핀수 컴포넌트까지 다양합니다.
파일 기반 라이브러리
Altium Designer는 아래에 설명된 여러 유형의 파일 기반 라이브러리를 지원합니다.
회로도 및 PCB 모델과 모델 라이브러리
Main pages: 회로도 라이브러리, PCB 라이브러리
전자 설계 자동화의 초기에는 두 가지 설계 도메인이 있었습니다: 회로도 캡처와 PCB 레이아웃. 회로도 캡처의 출력은 인쇄된 회로도 시트 묶음이었고, PCB 레이아웃의 출력은 PCB 제작 및 조립 파일이었습니다.
이를 지원하기 위해 설계자는 회로도 시트에 배치할 수 있도록 회로도 심볼을 생성하고 저장할 수 있어야 했습니다. 컴포넌트 값, 전압, 와트수, 풋프린트 등의 세부 정보는 종종 심볼 라이브러리에서 심볼을 회로도 시트에 배치한 후에 추가되었습니다.
풋프린트의 경우, 편집 기능의 초점은 포토 툴에 필요한 형상을 포함하는 레이어 집합으로 설계를 구현하는 데 있었습니다. 이러한 출력 중심의 초점은 지원되는 형상을 규정했으며, 심지어 레퍼런스(Designator)와 기타 실크스크린 문자열에 사용되는 폰트까지도 좌우했습니다.
이러한 단순한 심볼과 풋프린트는 라이브러리에 생성되어 저장되었고, 두 유형 모두 처음에는 파일 확장자가 *.Lib였습니다. Windows에서 파일 확장자의 3자 제한이 완화되자, 회로도 심볼은 *.SchLib로, 풋프린트는 *.PcbLib로 변경되었습니다.

회로도 및 PCB 라이브러리는 모델을 저장하는 컨테이너입니다.
통합 라이브러리
Main page: 통합 라이브러리
시간이 지나면서 컴포넌트 생성 프로세스를 제품 설계 프로세스와 분리하고자 하는 요구가 커졌습니다. 회로도 시트에 심볼을 배치한 뒤에 컴포넌트 세부 정보를 추가하는 대신, 설계 팀은 라이브러리에서 컴포넌트를 완전히 정의하길 원했습니다. 회로 시뮬레이션 같은 다른 설계 도메인도 개발되고 있었기 때문에, 이러한 도메인의 모델도 지원되어야 했습니다. 즉시 사용 가능한 컴포넌트를 만들기 위해서는 심볼-모델 매핑을 검증할 수 있어야 하며, 그런 다음 이 컴포넌트들을 단일한 ‘즉시 사용 가능한’ 라이브러리 파일로 제공할 수 있어야 합니다.
이러한 요구 사항을 충족하기 위해 통합 라이브러리(*.IntLib)가 개발되었습니다. 통합 라이브러리는 모든 종류의 모델을 단일 파일에 담습니다. 통합 라이브러리의 소스는 라이브러리 패키지(*.LibPkg)이며, 이는 소스 심볼, 풋프린트, 시뮬레이션 모델을 한데 모아 구성하는 설계 프로젝트입니다. 라이브러리 패키지 프로젝트를 컴파일하면 심볼-모델 매핑이 검증되고 통합 라이브러리가 생성됩니다. IntLib를 사용하면 라이브러리는 즉시 사용 가능한 컴포넌트를 배치하는 “소스”가 되며, 이는 컴포넌트 생성과 제품 설계를 분리하고자 하는 중대형 조직에 적합한 솔루션을 제공합니다.
용어집
|
컴포넌트 |
컴포넌트는 보드에 배치되는 물리적 장치(예: 집적회로 또는 저항)입니다. 이러한 컴포넌트에는 단일 파트가 있을 수도 있고, 함께 패키징된 파트들의 집합이 있을 수도 있습니다. |
|
3D 바디 |
3D 바디는 활성화된 어떤 기계 레이어에도 풋프린트에 추가할 수 있는 다각형 형태의 객체입니다. 수평 및 수직 평면에서 컴포넌트의 물리적 크기와 형상을 정의하는 데 사용할 수 있으며, 이를 통해 컴포넌트 간 간격(클리어런스) 검사를 더 정밀하게 수행하고 3D 시각화를 개선할 수 있습니다. 또한 3D 바디 객체는 컴포넌트 풋프린트에 가져온(임포트된) 모델의 자리표시자 역할을 하거나, 하우징 및 어셈블리처럼 PCB에 장착되지 않고 떠 있는(free-floating) 비장착 객체로도 사용할 수 있습니다. |
|
디지그네이터 |
디지그네이터는 PCB에서 한 컴포넌트를 다른 컴포넌트와 구분하기 위해 사용하는 고유 식별자입니다. 알파벳, 숫자 또는 둘의 조합일 수 있습니다. 패드에도 컴포넌트 핀 번호에 대응하는 고유 디지그네이터가 있습니다. |
|
풋프린트 |
풋프린트는 컴포넌트를 PCB에 실장하기 위해 필요한 공간을 정의(또는 모델링)합니다. 컴포넌트의 풋프린트 모델은 PCB 라이브러리에 저장됩니다. 풋프린트에는 디바이스 핀에 연결하기 위한 패드와, 실크스크린(오버레이) 레이어에서 트랙 및/또는 아크 세그먼트로 생성된 패키지의 물리적 외곽선이 포함될 수 있습니다. 디바이스 실장 관련 특징도 포함될 수 있습니다. PCB 라이브러리의 풋프린트에는 디지그네이터나 코멘트가 없습니다. PCB 시트에 배치되어 디지그네이터와 코멘트가 할당될 때 컴포넌트가 됩니다. |
|
라이브러리 |
회로도 라이브러리는 컴포넌트들의 집합이며, 그 파트들은 개별 시트에 저장됩니다. PCB 라이브러리에는 컴포넌트 풋프린트가 포함됩니다. 각 라이브러리 유형에는 전용 편집기가 있습니다. 통합 라이브러리는 회로도 라이브러리와 관련 모델을 결합한 것이며, 라이브러리 편집기에서 직접 편집할 수 없습니다. |
|
객체 |
객체는 라이브러리 편집기 설계 공간에 배치할 수 있는 모든 개별 항목을 의미합니다. |
|
패드 |
패드는 일반적으로 풋프린트에서 컴포넌트 핀을 위한 접속 패드를 생성하는 데 사용됩니다. |
|
파트 |
파트는 다중 디바이스 컴포넌트의 한 부분을 나타내는 그래픽 객체들의 모음입니다. 파트는 회로도 컴포넌트 라이브러리에서 컴포넌트 내부의 별도 시트에 저장됩니다. |
|
핀 |
컴포넌트 핀은 컴포넌트에 전기적 특성을 부여하고, 컴포넌트의 연결 지점을 정의합니다. |