데이터베이스 라이브러리 생성 및 정의
개요
- DbLib 및 SVNDbLib 파일의 역할과 생성 위치를 알아봅니다.
- Access 및 Excel 간편 연결, 연결 문자열, Microsoft Data Link 파일 등 다양한 데이터베이스 연결 옵션을 살펴봅니다.
- 연결된 테이블을 탐색하고 편집하는 방법, 라이브러리 포함 여부를 제어하는 방법, 테이블별로 컴포넌트 일치 기준을 정의하는 방법을 알아봅니다.
데이터베이스 라이브러리 기능의 핵심은 데이터베이스 라이브러리 파일입니다. 이 파일은 표준 데이터베이스 라이브러리를 사용하는지, 버전 관리형 데이터베이스 라이브러리를 사용하는지에 따라 두 가지 형태로 나뉩니다.
- Standard Database Library - Database Library 파일입니다. 이 파일은 Altium Designer의 DatabaseLib Editor를 사용하여 생성하고 관리합니다. 기본 설계 창의 활성 문서가 *.DbLib 파일일 때 이 Editor를 사용할 수 있습니다.
- Version-Controlled Database Library - SVN Database Library 파일입니다. 이 파일은 Altium Designer의 SVNDatabaseLib Editor를 사용하여 생성하고 관리합니다. 기본 설계 창의 활성 문서가 *.SVNDbLib 파일일 때 이 Editor를 사용할 수 있습니다.
DatabaseLib Editor에 열린 DbLib 파일의 예입니다. 이미지 위에 마우스를 올리면 SVNDatabaseLib Editor에 열린 SVNDbLib 파일의 예를 볼 수 있습니다.
이러한 유형의 새 파일을 생성하려면 기본 메뉴에서 File » New » Library 명령을 선택한 다음, 열리는 New Library 대화 상자의 Database 영역에서 Database Library 또는 SVN Database Library 옵션을 선택합니다.
외부 데이터베이스에 연결하기
활성 Database Library/SVN Database Library 파일이 필요한 외부 데이터베이스에 성공적으로 연결된 후에만 Editor의 기본 표시 창에 테이블과 매핑 데이터가 나타납니다. Connection은 Source of Connection 영역에 제공되는 컨트롤을 사용하여 정의합니다.
DbLib 파일을 통해 외부 데이터베이스 연결을 지정하는 모습입니다. 이미지 위에 마우스를 올리면 SVNDbLib 파일을 통한 연결을 볼 수 있습니다.
OLE DB를 지원하는 모든 데이터베이스에 연결할 수 있습니다. 이 영역에 제공되는 각 옵션은 OLE DB 연결 문자열을 사용하여 타겟 데이터베이스에 연결합니다. 일부 데이터베이스는 OLE DB를 지원하지 않을 수 있습니다. 하지만 현재 사용되는 거의 모든 데이터베이스 관리 시스템은 ODBC(Open Database Connectivity) 인터페이스를 통해 액세스할 수 있습니다. 데이터베이스 링크 기능은 Microsoft의 ODBC 공급자를 사용하므로 ADO(ActiveX Data Object)를 모든 ODBC 데이터 소스에 연결할 수 있습니다. 따라서 모든 ODBC 데이터베이스에 연결할 수 있습니다. ODBC 데이터베이스용 OLE DB 공급자는 연결 문자열의 일부로 지정됩니다.
기본 메뉴에서 Tools » Database Connection 명령을 선택하거나 Advanced 버튼(영역 하단의 Connect 버튼 오른쪽)을 클릭하여 여는 Database Connection 대화 상자의 Connection 탭에서도 Connection을 정의할 수 있습니다.
데이터베이스 연결 대화 상자의 옵션 및 컨트롤
Connection 탭
-
Source of Connection
- Use Data Link File - 연결 문자열은 데이터베이스 연결 정보를 문자열로 표현한 것으로, Microsoft Data Link 파일이라고 하는 .udl 확장자의 별도 파일로 저장할 수 있습니다. 데이터 링크 파일을 데이터베이스 연결의 소스로 사용하려면 이 옵션을 선택한 다음 Browse 을 클릭하여 Select Data Link File 대화 상자를 열거나 드롭다운을 사용하여 원하는 .udl 파일을 검색합니다.
- Use Connection String - 이 옵션을 선택한 다음 Build을 클릭하여 데이터 링크 속성 대화 상자를 열고, 부품 파라미터 매핑에 사용할 데이터베이스 연결 문자열을 다시 구성합니다. 연결 문자열에 지정되는 정보는 지정된 OLE DB 공급자에 따라 달라질 수 있습니다.
고급 탭
-
SQL Options
-
Quote Tables - 테이블을 인용하는 데 특정 인용 문자를 사용하려면 활성화합니다.
- Left Quote Character - 왼쪽 인용 문자를 지정합니다. 기본값은 "["입니다.
- Right Quote Character - 오른쪽 인용 문자를 지정합니다. 기본값은 "]"입니다.
-
Quote Tables - 테이블을 인용하는 데 특정 인용 문자를 사용하려면 활성화합니다.
- Include Table Schema Names - 테이블 스키마 이름이 있는 테이블을 포함하려면 이 옵션을 활성화합니다. 기본적으로 이 옵션은 꺼져 있으며, 일반 테이블 이름만 있는 테이블이 사용됩니다.
- Field Data Type - 새 필드의 데이터 유형을 지정합니다. 예를 들어 MS Access 또는 MySQL 데이터베이스에는 TEXT(N) 또는 VARCHAR(N)를 사용할 수 있으며, Oracle 데이터베이스에는 VARCHAR2(N)를 사용할 수 있습니다.
Access 및 Excel 데이터베이스에 빠르게 연결하기
Select Database Type 옵션을 사용하면 타겟 데이터베이스가 Microsoft Access 또는 Microsoft Excel로 생성된 경우 연결 문자열을 빠르게 생성할 수 있습니다. 이 옵션을 사용할 때는 데이터베이스 유형을 선택한 다음 필요한 데이터베이스 파일을 찾아 선택합니다. 해당 연결 문자열이 자동으로 구성되어 Use Connection String 옵션의 필드에 입력됩니다.
연결 문자열 구성하기
회사 데이터베이스가 Access 또는 Excel 기반이 아니고 연결 문자열을 직접 구성하려는 경우 Use Connection String 옵션을 활성화한 다음 오른쪽에 있는 관련 Build 버튼을 클릭합니다. Data Link Properties 대화 상자가 나타납니다.
Data Link Properties 대화 상자를 통해 연결 문자열을 구성하는 모습입니다.
대화 상자는 Connection 탭이 열린 상태로 표시됩니다. 대화 상자의 Provider 탭에는 OLE DB 공급자 Microsoft Office <Version> Access Database Engine OLE DB Provider이 기본적으로 설정되어 있습니다. 이는 새 Database Library/SVN Database Library 파일의 기본 공급자 설정이며, Access 데이터베이스 파일(*.mdb)에 연결할 때도 사용됩니다. 필요에 따라 공급자를 변경합니다.
Connection 탭에서 연결하려는 데이터베이스의 이름(경로 포함)을 입력합니다.
데이터베이스에 로그인 권한이 필요한 경우 필요한 로그인 정보를 입력하고, 대화 상자의 Advanced 탭에서 사용할 수 있는 기타 고급 설정도 지정합니다. All 탭에는 정의된 링크 옵션의 요약 목록과 선택한 OLE DB 공급자에 관련된 확장 옵션이 제공됩니다. 이 탭에서 필요에 따라 옵션을 수정할 수 있습니다.
링크 옵션을 정의한 후에는 Test Connection 버튼(Connection 탭에 있음)을 클릭하여 연결 성공 여부를 확인할 수 있습니다. 연결에 성공하면 이를 알리는 확인 대화 상자가 표시됩니다.
데이터 링크 파일 지정하기
연결하려는 데이터 소스가 Microsoft Data Link 파일(*.udl)로 정의되어 있는 경우 세 번째 연결 옵션인 Use Data Link File을 활성화하고 관련 Browse 버튼을 클릭하여 필요한 파일을 찾습니다. 데이터 링크 파일은 기본적으로 연결 문자열을 저장하는 파일입니다.
연결 진행하기
외부 데이터베이스에 대한 연결을 정의하면 Connect 버튼의 텍스트가 굵게 표시되어 연결을 진행할 수 있음을 나타냅니다. 연결 정보가 올바르면 타겟 데이터베이스의 테이블 및 매핑 정보가 Database Library/SVN Database Library 파일에 로드됩니다. Connect 버튼의 텍스트는 Connected(으)로 변경되고 버튼은 회색으로 비활성화됩니다.
연결 문자열이 잘못 구성되었거나 경로가 잘못 입력되는 등 연결 정보에 문제가 있으면 연결에 실패하고 이를 알리는 메시지가 표시됩니다. 연결 설정을 확인하고 Connect 버튼을 다시 클릭하세요.
데이터베이스 라이브러리에서 연결 실패를 알리는 예.
최초 연결에 성공한 후 Database Library/SVN Database Library 파일을 저장하면, 타겟 데이터베이스의 위치와 파일 이름이 변경되지 않는 한 파일을 열 때마다 자동으로 연결됩니다.
버전 관리 저장소 링크 지정(SVNDbLib만 해당)
DbLib의 경우 심볼 및 모델 라이브러리는 하드 디스크나 기타 로컬/네트워크 매체에 저장됩니다. SVNDbLib의 경우 이러한 라이브러리는 Subversion 저장소에서 버전 관리된다는 점을 기억하세요. SVNDbLib 파일의 일부로 이 저장소에 대한 링크를 정의해야 합니다. SVN 저장소 연결은 Database Library Options 대화 상자(Tools » Options)의 SVN Repository 탭에서 정의합니다. 이 대화 상자는 문서 보기의 Field Settings 영역에서 Options 버튼을 클릭하여 열 수도 있습니다.
파일 기반 SVN 저장소 연결 예.
데이터베이스 테이블 목록
외부 데이터베이스에 성공적으로 연결되면 테이블 및 매핑 데이터가 로드됩니다. DbLib/SVNDbLib 문서의 왼쪽에는 연결된 데이터베이스에 있는 모든 테이블이 나열됩니다.
연결된 데이터베이스에 있는 테이블.
각 테이블 항목 옆의 Enable 옵션을 통해 해당 테이블을 최종 데이터베이스 라이브러리에 포함할지 여부를 제어할 수 있습니다. 컴포넌트 패널에서 탐색할 수 있도록 데이터베이스 라이브러리를 사용 가능한 파일 기반 라이브러리 목록에 추가하면 각 테이블이 별도의 라이브러리 항목으로 표시됩니다. 따라서 실제로는 데이터베이스 라이브러리를 하나만 추가했더라도 Components 패널에서는 서로 다른 여러 라이브러리를 추가한 것처럼 보입니다. 자세한 내용은 파일 기반 및 데이터베이스 라이브러리에서 컴포넌트 검색을 참조하세요.
목록에서 테이블 항목을 클릭하면 현재 활성 테이블임을 구분할 수 있도록 아이콘이
에서
(으)로 변경됩니다. 테이블과 그 안의 모든 데이터는 문서의 Table Browser 탭에 표시됩니다. 이 테이블 보기는 편집이 가능하므로 외부 데이터베이스 자체를 실행하지 않고도 내용을 빠르게 확인하고 필요에 따라 편집할 수 있습니다.
일치 기준 지정
외부 데이터베이스에서 컴포넌트를 배치한 후에는 배치된 컴포넌트와 해당 컴포넌트를 생성하는 데 사용된 정보가 있는 데이터베이스 레코드 사이의 링크를 유지할 방법이 필요합니다. 즉, 두 항목을 서로 일치시켜야 합니다.
컴포넌트를 배치하면 데이터베이스 레코드의 해당 필드를 사용하여 파라미터 정보가 즉시 생성됩니다. 배치 후 회로도 컴포넌트와 데이터베이스 레코드 간의 링크는 이러한 파라미터 중 하나 이상을 사용하여 설정됩니다. 문서의 Field Settings 영역에서는 간단한 싱글 키 조회 또는 Where 절을 사용하는 고급 일치 방식으로 일치 기준을 정의할 수 있습니다.
배치 후 일치 기준 제어.
싱글 키 조회
Single key lookup 옵션을 활성화하면(기본값) Database field 및 Part parameter 필드를 사용할 수 있습니다. 전자에는 데이터베이스의 활성 테이블에서 사용 가능한 모든 필드 이름(열 머리글)이 나열됩니다. 회로도 컴포넌트의 파라미터는 배치 시 추가되므로 Part parameter 필드에는 선택한 데이터베이스 필드가 반영됩니다.
일반적으로 조회 키 필드로는 부품 번호와 같이 외부 데이터베이스의 각 컴포넌트를 고유하게 식별하는 항목을 사용합니다. 선택한 조회 필드는 문서의 Field Mappings 탭에서 회색으로 비활성화되어 표시되는 Design Parameter 항목으로 구분됩니다.
부품 번호를 이용한 싱글 키 매핑.
배치 후 어느 시점에 Update Parameters From Database 기능을 사용하면 배치된 회로도 컴포넌트에서 선택한 키 파라미터의 정보를 읽은 다음, 활성화된 모든 테이블에 걸쳐 데이터베이스의 선택된 (키) 필드에서 해당 정보를 검색합니다. 일치하는 항목이 있으면 해당 테이블의 레코드에 있는 다른 셀의 정보를 회로도 컴포넌트의 매핑된 파라미터로 가져올 수 있습니다.
고급 일치 - Where 절
Single key lookup 옵션은 일치 여부를 확인할 고유한 부품 번호/ID가 있는 경우에는 잘 작동하지만, 정전 용량이나 저항값처럼 고유하지 않은 파라미터로 일치 여부를 확인할 때는 효과적이지 않습니다. 이 경우에는 고급 기능인 Where 절을 사용해야 합니다. 이를 통해 여러 키를 이용한 일치 기준을 지정하여 회로도 컴포넌트를 원본 데이터베이스 레코드에 연결할 수 있습니다.
가장 단순한 형태의 Where 절(SQL 구문으로 작성)은 싱글 키 조회를 정의하도록 선택한 항목을 반영합니다. 예를 들어 Database field을(를) 기본값인 Part Number(으)로 선택하면 Part parameter 필드도 자동으로 Part Number(으)로 설정되며, Where 절의 항목은 다음과 같습니다.
[Part Number] = '{Part Number}'
데이터베이스 필드(테이블 열)를 둘러싼 대괄호는 데이터베이스 연결 대화 상자의 Advanced 탭에 지정된 인용 문자입니다. 이 대화 상자는 문서의 Source of Connection 영역에서 Advanced 버튼을 클릭하거나 기본 Tools 메뉴에서 열 수 있습니다.
Database Connection 대화 상자의 Advanced 탭에서는 구성된 Where 절에서 테이블을 인용 문자로 묶거나
테이블 스키마 이름을 사용하기 위한 추가 SQL 옵션을 제공합니다.
중괄호는 참조하는 항목이 설계 파라미터임을 나타냅니다. 작은따옴표는 설계 파라미터를 숫자(따옴표 없음)가 아닌 문자열로 처리하도록 지정하는 데 사용됩니다. SQL은 데이터 형식을 구분하므로 형식을 일치시키는 것이 매우 중요합니다. 설계 파라미터는 데이터베이스의 열과 동일한 형식으로 설정해야 합니다.
표준 SQL 구문을 사용하면 Where 절을 확장하여 여러 Database field/Part parameter 항목을 기준으로 일치 여부를 확인할 수 있습니다. 예:
[Capacitance] = '{Capacitance}' AND [Tolerance] = {Tolerance} AND [Manufacturer] = '{Manufacturer}'
이 경우 서로 다른 세 개의 설계 파라미터를 사용하여 데이터베이스의 해당 테이블에 있는 하나의 레코드에 연결합니다. Tolerance 설계 파라미터의 항목은 따옴표로 묶여 있지 않다는 점에 유의하세요. 이는 데이터베이스의 관련 테이블에서 열 형식이 String이 아니라 Number임을 의미합니다.
표준 SQL 구문을 사용하면 Where 절을 원하는 만큼 간단하게 또는 복잡하게 구성할 수 있습니다.
데이터베이스 필드를 설계 파라미터에 매핑
데이터베이스 라이브러리에서 배치한 컴포넌트의 설계 파라미터는 배치 시 생성/추가됩니다. 실제로 생성되는 파라미터와 배치 후 Tools » Update Parameters From Database 명령을 사용하여 해당 정보를 업데이트할 때 적용되는 옵션은 Database Library/SVN Database Library 파일에 지정된 매핑 및 업데이트 정보에 따라 결정됩니다. 이러한 설정은 기본 문서 뷰의 Field Mappings 탭에서 수행합니다.
DbLib/SVNDbLib 문서의 Field Mappings 탭에서 파라미터 매핑 및 업데이트 옵션을 지정합니다.
모델 및 파라미터 매핑
Field Mappings 탭의 왼쪽 첫 번째와 두 번째 열은 데이터베이스의 어떤 정보를 컴포넌트의 속성, 모델 및 파라미터에 매핑할지 제어하는 데 사용됩니다.
- Database Field Name - 이 열에는 데이터베이스에서 현재 활성화된 테이블의 모든 필드(열) 이름이 나열됩니다.
- Design Parameter - 이 열은 데이터베이스의 각 해당 필드를 어떻게 사용할지 정의합니다. 컴포넌트의 심볼 또는 풋프린트 모델을 가져오는 데 사용할 수도 있고(대괄호로 묶여 표시됨), 컴포넌트 파라미터로 포함할 수도 있습니다(괄호 없이 표시됨).
데이터베이스에 연결하면 모든 데이터베이스 필드를 대상으로 초기 매핑이 자동으로 수행됩니다.
속성 및 모델
데이터베이스 필드 이름이 다음 예약된 이름 중 하나인 경우 해당 속성/모델 매핑 항목이 Design Parameter 필드에 자동으로 설정됩니다.
- Description → [Description]
- Footprint Ref → [Footprint Ref]
- Footprint Path → [Footprint Path]
- Footprint Ref n → [Footprint Ref n]
- Footprint Path n → [Footprint Path n]
- Library Ref → [Library Ref]
- Library Path → [Library Path]
- Orcad Footprint → [Orcad Footprint]
- Orcad Library → [Orcad Library]
- PCB3D Ref → [PCB3D Ref]
-
PCB3D Path → [PCB3D Path]
- Sim Description → [Sim Description]
- Sim Excluded Parts → [Sim Excluded Parts]
- Sim File → [Sim File]
- Sim Kind → [Sim Kind]
- Sim Model Name → [Sim Model Name]
- Sim Netlist → [Sim Netlist]
- Sim Parameters → [Sim Parameters]
- Sim Port Map → [Sim Port Map]
- Sim Spice Prefix → [Sim Spice Prefix]
-
Sim SubKind → [Sim SubKind]
이러한 매핑은 컴포넌트의 속성 및 모델 정보를 정의합니다. 컴포넌트를 배치하면 해당 데이터베이스 레코드의 [Library Ref] 필드에 지정된 회로도 심볼이 지정된 회로도 라이브러리에서 추출됩니다. 마찬가지로 레코드에 저장된 PCB 풋프린트 및 시뮬레이션 모델 정보는 각각 연결된 풋프린트 및 시뮬레이션 모델로 컴포넌트에 추가됩니다.
Database Library/SVN Database Library에서 회로도에 컴포넌트를 배치하려면 Design Parameter 열에 [Library Ref] 항목이 있어야 하며, 이 항목이 회로도 심볼을 지정하는 Database Field Name에 매핑되어 있어야 합니다. 데이터베이스 테이블에 심볼 참조가 다른 Database Field Name(예: SCH Symbol)으로 저장되어 있다면 해당 셀의 드롭다운 목록을 사용하여 이 필드의 관련 Design Parameter 항목을 [Library Ref]으로 수동 설정해야 합니다.
마찬가지로 데이터베이스에 모델 참조 정보가 다른 필드 이름으로 입력되어 있다면 각 필드의 드롭다운 목록에서 적절한 Design Parameter 항목([Footprint Ref], [Footprint Ref n], [PCB3D Ref], [Sim Model Name] 등)을 선택하여 수동으로 매핑해야 합니다.
배치 시 컴포넌트의 심볼 및 모델 정보를 정의하는 데 핵심적인 매핑 대상은 데이터베이스의 심볼 및 모델 참조 필드입니다.
정의된 매핑에 심볼과 하나 이상의 PCB 풋프린트 참조가 포함되어 있는지 확인하세요.
시뮬레이션 모델 매핑
이 섹션에서는 컴포넌트 배치 시 생성되는 시뮬레이션 모델 링크를 정의하기 위해 외부 데이터베이스 테이블에 추가할 수 있는 각 데이터베이스 필드를 설명합니다.
-
Sim Model Name – 사용할 모델의 이름입니다. 컴포넌트를 배치하면 이 정보가 Sim Model 대화 상자의 Model Name 필드에 표시됩니다.
- Sim Description – 연결된 모델에 대한 설명입니다. 이 정보는 선택 사항이며 시뮬레이션 모델 링크의 작동에 영향을 주지 않습니다.
-
Sim File – Sim Model Name 필드에 지정된 시뮬레이션 모델을 찾을 특정 모델 파일입니다. 이 필드는 다음과 같은 여러 방법으로 사용할 수 있습니다.
-
모델 파일의 절대 경로를 입력할 수 있습니다(예:
C:\DbLibs\Switching Diodes\Libraries\JAS33.mdl). 이 파일에서 Sim Model Name 필드에 지정된 모델을 검색하고, 찾으면 해당 모델을 사용합니다. -
모델 파일의 상대 경로(DbLib 파일 기준)를 입력할 수 있습니다(예:
Libraries\JAS33.mdl). 이 파일에서 Sim Model Name 필드에 지정된 모델을 검색하고, 찾으면 해당 모델을 사용합니다. -
모델 파일 이름만 입력할 수 있습니다(예:
JAS33.mdl)). DbLib 파일에 정의된 검색 경로를 사용하여, 지정한 이름과 일치하면서 Sim Model Name 필드에 지정된 모델을 포함하는 첫 번째 모델 파일을 찾습니다. - 필드를 비워 둘 수 있습니다. DbLib 파일에 정의된 검색 경로를 사용하여 Sim Model Name 필드에 지정된 모델을 포함하는 첫 번째 모델 파일을 찾습니다.
-
모델 파일의 절대 경로를 입력할 수 있습니다(예:
- Sim Kind – 연결할 모델의 Parent 범주입니다.
- Sim SubKind – 연결할 모델의 유형입니다.
-
Sim Netlist – 연결할 모델 유형에 따른 넷리스트 템플릿 정보입니다. 이 필드는 자체 넷리스트 템플릿을 지정하고 Sim SubKind 필드를
Generic Editor로 설정한 경우 특히 중요하며, 넷리스트에 포함할 정보를 더욱 세밀하게 제어할 수 있습니다.넷리스트 템플릿 구문
넷리스트 템플릿을 정의할 때는 SPICE 요구 사항과 아래에 설명된 구문 규칙에 따라 정보를 입력해야 합니다.
템플릿에 입력한 문자는 다음 특수 문자를 제외하고 SPICE 넷리스트에 그대로 기록됩니다.
% 백분율 기호 @ 앳 기호 & 앰퍼샌드 ? 물음표 ~ 물결표 # 번호 기호 이러한 문자는 넷리스트 생성 시 다음 표와 같이 변환됩니다.
넷리스트 템플릿의 구문... 넷리스트 생성기가 대체하는 내용... @<param> <param>의 값입니다. 이 이름의 파라미터가 없거나 할당된 값이 없으면 오류가 발생합니다. &<param> <param>의 값입니다. 파라미터가 정의되지 않아도 오류가 발생하지 않습니다. ?<param>s...s <param>이 정의되어 있으면 s...s 구분자 사이의 텍스트입니다. ?<param>s...ss...s <param>이 정의되어 있으면 첫 번째 s...s 구분자 사이의 텍스트이고, 그렇지 않으면 두 번째 s...s 구분자 사이의 텍스트입니다. ~<param>s...s <param>이 정의되어 있지 않으면 s...s 구분자 사이의 텍스트입니다. ~<param>s...ss...s <param>이 정의되어 있지 않으면 첫 번째 s...s 구분자 사이의 텍스트이고, 그렇지 않으면 두 번째 s...s 구분자 사이의 텍스트입니다. #<param>s...s <param>이 정의되어 있으면 s...s 구분자 사이의 텍스트를 사용하지만, <param>이 정의되어 있지 않으면 템플릿의 나머지 부분을 무시합니다. #s...s 넷리스트 템플릿의 후속 Entry에서 XSpice 넷리스트에 입력할 텍스트가 있으면 s...s 구분자 사이의 텍스트를 사용합니다. %<pin id> <pin id>에 매핑된 Schematic 핀이 연결되는 Net의 이름입니다. %% 백분율 문자 자체입니다. 위 표에서,
- s는 구분 문자(, . ; / |)를 나타냅니다.
- <param>은 파라미터의 이름을 나타냅니다.
파라미터 이름에 영숫자 이외의 문자가 포함되어 있으면 큰따옴표로 묶어야 합니다. 예:
@"DC Magnitude"- 이름에 공백이 포함되어 있으므로 큰따옴표를 사용합니다.
&"Init_Cond"- 이름에 밑줄이 포함되어 있으므로 큰따옴표를 사용합니다.파라미터 이름에 영숫자 접두사를 추가하려는 경우에도 큰따옴표를 사용해야 합니다. 예:
@"DESIGNATOR"A- 큰따옴표를 사용하면 컴포넌트 Designator에 A가 추가됩니다.다음은 앞의 표에 나온 특수 문자 구문 Entry의 예입니다. 각 예에서는 넷리스트 생성기가 해당 구문 Entry를 어떻게 변환하는지 설명합니다.
@"AC Phase"파라미터 이름 AC Phase에는 공백이 있으므로 중괄호로 묶여 있습니다. 이 항목은 넷리스트에서 AC Phase 파라미터의 값으로 대체됩니다. 이 이름의 파라미터가 없거나 값이 비어 있으면 오류가 발생합니다.
&AreaArea라는 파라미터가 존재하고 값이 있으면 해당 값이 넷리스트에 입력됩니다. 파라미터가 정의되어 있지 않으면(즉, 존재하지 않거나 할당된 값이 없으면) 넷리스트에 아무것도 기록되지 않지만 오류도 발생하지 않습니다. 이 구문은 선택적 파라미터에 사용할 수 있습니다.
?IC|IC=@IC|IC라는 파라미터가 정의되어 있으면 || 구분자 안의 텍스트가 넷리스트에 삽입됩니다. 예를 들어 IC 파라미터의 값이 0.5이면 이 Entry 대신 IC=0.5가 넷리스트에 삽입됩니다. 파라미터가 정의되어 있지 않으면 넷리스트에 아무것도 삽입되지 않습니다.
?IC/IC=@IC//IC=0/이전 예제와 동일하지만, 파라미터 IC가 정의되지 않은 경우 IC=0이 넷리스트에 삽입됩니다. 또한 다른 구분 문자가 사용되었다는 점에 유의하십시오.
~VALUE/1k/VALUE라는 이름의 파라미터가 정의되지 않은 경우 텍스트 1k가 넷리스트에 삽입됩니다.
~VALUE/1k//@VALUE/이전 예제와 동일하지만, 파라미터 VALUE가 정의된 경우 해당 텍스트 값이 넷리스트에 삽입됩니다.
#"AC Magnitude"|AC@"AC Magnitude"|@"AC Phase"이 예제는 정현파 전압 소스용으로 미리 정의된 넷리스트 템플릿에서 확인할 수 있습니다.
AC Magnitude 파라미터가 정의된 경우 구분 문자 사이의 내용이 평가되어 넷리스트에 삽입됩니다. 넷리스트에서 그 뒤에 오는 모든 항목도 평가되어 넷리스트에 입력됩니다(이 경우 @"AC Phase").
예를 들어 AC Magnitude=1이고 AC Phase=0이면 AC 1 0이 넷리스트에 삽입됩니다. 그러나 AC Phase가 정의되지 않았다면 오류가 발생합니다.
AC Magnitude 파라미터가 정의되지 않은 경우 넷리스트 템플릿의 #"AC Magnitude" 항목 뒤에 오는 내용은 넷리스트에 입력되지 않습니다.
#|PARAMS:|?Resistance|Resistance=Resistance|?Current|Current=@Current|이 예제는 파라미터화된 서브회로용으로 미리 정의된 넷리스트 템플릿에서 확인할 수 있습니다(Fuse.PrjPcb의 F1 참조).
Resistance와 Current 파라미터가 모두 정의되지 않은 경우 #|PARAMS:| 항목 뒤에 넷리스트에 삽입할 텍스트가 없으므로 구분 문자 사이의 텍스트도 생략됩니다.
예를 들어 파라미터 값이 Resistance=1k 및 Current=5mA이면 #|PARAMS:| 항목 뒤에 텍스트가 생성되며, 넷리스트에는 PARAMS: Resistance=1k Current=5mA가 입력됩니다.
@DESIGNATOR%1%2@VALUE이 예제는 % 문자의 사용법을 보여줍니다.
예를 들어 파라미터 값이 DESIGNATOR=R1 및 VALUE=1k이고, 다음 표에 따라 Sim Model 대화 상자의 Pin Mapping 영역에서 핀이 매핑된 경우:
Schematic 핀 모델 핀 Schematic 핀이 연결되는 네트 이름 1 (N+) 1 (1) GND 2 (N-) 2 (2) OUT 이 컴포넌트의 SPICE 넷리스트에는 R1 GND OUT 1k 텍스트가 입력됩니다.
- Sim Spice Prefix – 연결할 모델 유형의 SPICE 접두사입니다.
-
Sim Port Map – Schematic 컴포넌트의 핀과 연결된 모델의 핀 간 매핑입니다. 컴포넌트를 배치하면 이 정보가 Sim Model 대화 상자의 Pin Mapping 영역에 표시됩니다.
각 핀 쌍은 다음 형식으로 입력해야 합니다:
(SchematicPinNumber:ModelPinNumber),각 매핑 쌍은 쉼표로 구분합니다.
예를 들어 Schematic 핀 1(애노드)을 모델 핀 1(애노드)에 매핑하고 Schematic 핀 3(캐소드)을 모델 핀 2(캐소드)에 매핑해야 하는 다이오드 시뮬레이션 모델의 경우 데이터베이스 필드에 다음과 같이 입력합니다:
(1:1),(3:2) -
Sim Excluded Parts – 다중 파트 컴포넌트의 특정 파트를 시뮬레이션에서 제외하려면 데이터베이스에 이 필드를 생성하십시오. 이 정보는 Sim Model 대화 상자의 Pin Mapping 영역에 있는 Exclude part from simulation 옵션에 해당합니다.
기본적으로 다중 파트 컴포넌트의 모든 파트가 시뮬레이션에 포함되므로 제외할 파트의 번호만 지정하면 됩니다. 제외 목록에 여러 파트를 지정할 때는 쉼표로 구분하십시오. 예를 들어 컴포넌트에 파트가 4개 있고 파트 2와 4를 모든 시뮬레이션에서 제외하려면 데이터베이스 필드에 다음을 입력합니다:
2,4 -
Sim Parameters – 모델의 시뮬레이션 파라미터에 값을 할당하려면 데이터베이스에 이 필드를 생성하십시오. 이러한 파라미터는 모델 파일에 포함할 수 있는 고급 파라미터와 달리 컴포넌트 수준에서 정의할 수 있습니다.
파라미터는 다음 형식으로 입력해야 합니다:
ParameterName=Value,여러 파라미터는 파이프 문자(|)로 구분해야 합니다.
컴포넌트 수준의 시뮬레이션 파라미터는 컴포넌트 파라미터로도 설정할 수 있다는 점을 기억하실 것입니다. 이렇게 설정하면 관련 Component Properties 대화 상자의 Parameters 영역에 표시되며, 이후 Schematic 시트에도 표시할 수 있습니다. 기본적으로 Sim Parameters 필드의 파라미터 항목은 컴포넌트 파라미터로 자동 추가됩니다. 시뮬레이션 파라미터를 컴포넌트 파라미터로 추가하지 않으려면 파라미터 이름 앞에 느낌표를 붙이면 됩니다(예:
!Initial Voltage=100mV).다음과 같은 4개의 컴포넌트 수준 파라미터가 있는 다이오드 모델을 살펴보겠습니다:
- 면적 계수
- 시작 조건
- 초기 전압
- 온도.
이제 데이터베이스에 면적 계수 값(예: 2)과 온도 값(예: 22°C)을 추가한다고 가정해 보겠습니다. 또한 이 두 값을 모두 컴포넌트 파라미터로 추가하지 않으려 합니다. 이 경우 Sim Parameters 필드에는 다음과 같이 입력합니다:
!Area Factor=2|!Temperature=22
파라미터
그 밖의 모든 데이터베이스 필드 이름은 동일한 이름의 설계 파라미터에 자동으로 매핑됩니다. 예를 들어 데이터베이스의 필드 이름이 Tolerance이면 Tolerance이라는 이름의 설계 파라미터가 해당 필드에 매핑됩니다. 설계 파라미터의 이름은 해당 셀을 클릭하고 새 이름을 직접 입력하여 변경할 수 있습니다. 컴포넌트를 Schematic 시트에 배치하면 이러한 설계 파라미터 이름이 컴포넌트의 관련 속성 대화 상자에 있는 Parameters 영역에 표시됩니다.
데이터베이스의 컴포넌트에는 많은 데이터 필드가 연결되어 있을 수 있지만, Schematic 시트에 배치할 때 이 모든 필드를 컴포넌트의 설계 파라미터로 추가할 필요는 없습니다. 이러한 정보 중 상당수는 BOM을 생성할 때만 필요할 수 있습니다. Report Manager 대화상자에서는 연결된 데이터베이스에서 직접 BOM에 파라미터 정보를 추가할 수 있으므로, Schematic 소스 문서에 '포함되어 전달되는' 정보의 양을 줄일 수 있습니다. 자세한 내용은 Report Manager에서 BOM 준비하기 섹션을 참조하십시오.
데이터베이스에서 매핑하지 않으려는 필드는 Design Parameter 항목을 [None]로 설정하십시오. 매핑되지 않은 데이터베이스 필드는 탭에서 빨간색 X 아이콘으로 구분됩니다. 매핑된 데이터베이스 필드는 녹색 체크 아이콘으로 구분됩니다.
필요에 따라 파라미터 매핑을 구성하십시오. 데이터베이스의 파라미터가 배치된 컴포넌트에 매핑되지 않도록 하려면 [None]로 설정하십시오. 매핑되지 않은 파라미터도 필요한 경우 BOM에 직접 포함할 수 있습니다.
파라미터 업데이트 옵션
Field Mappings 탭의 나머지 열에서는 데이터베이스 라이브러리에서 컴포넌트를 처음 배치하거나, 배치 후 Tools » Update Parameters From Database 명령을 사용하여 컴포넌트를 업데이트할 때 파라미터에 수행할 작업을 지정할 수 있습니다.
네 개의 열은 다음과 같습니다.
- Update Values - 이 열의 셀은 파라미터가 Schematic 시트와 데이터베이스 모두에 존재하지만 현재 값이 서로 다른 경우 수행할 작업을 결정하는 데 사용됩니다. 배치된 컴포넌트의 파라미터를 데이터베이스에 저장된 값으로 업데이트하거나(Update), 전혀 업데이트하지 않도록(Do not update) 선택할 수 있습니다. 이 옵션은 컴포넌트를 배치한 후 Update Parameters From Database 명령을 사용할 때 적용됩니다.
- Add To Design - 이 열의 셀은 파라미터가 데이터베이스에는 있지만 배치된 컴포넌트에는 없는 경우 수행할 작업을 결정하는 데 사용됩니다. 파라미터를 추가하거나(Add), 추가하지 않거나(Do not add), 데이터베이스에 값이 할당되어 있는 경우에만 추가하도록(Add only if not blank in database) 선택할 수 있습니다. 이 옵션은 데이터베이스 라이브러리에서 컴포넌트를 처음 배치할 때와 배치 후 Update Parameters From Database 명령을 사용할 때 모두 적용됩니다.
- Visible On Add - 이 열의 체크박스는 최초 배치 또는 배치 후 업데이트로 새로 추가된 파라미터를 Schematic 시트의 컴포넌트에 표시할지(활성화), 표시하지 않을지(비활성화) 결정하는 데 사용됩니다.
- Remove From Design - 이 열의 셀은 파라미터가 배치된 컴포넌트에는 있지만 데이터베이스에는 없거나, 데이터베이스에 있더라도 값이 없는 경우 수행할 작업을 결정하는 데 사용됩니다. 파라미터를 전혀 제거하지 않거나(Do not remove), 데이터베이스에 값이 할당되어 있지 않은 경우에만 제거하도록(Remove only if blank in database) 선택할 수 있습니다. 이 옵션은 컴포넌트를 배치한 후 데이터베이스에서 파라미터 업데이트 명령을 사용할 때 적용됩니다.
처음에는 다음 이미지와 같이 매핑된 각 데이터베이스 필드의 Update Values, Add To Design, Remove From Design 필드가 Default 항목으로 설정되고, Visible On Add 옵션은 비활성화됩니다.
초기(기본) 파라미터 업데이트 옵션.
이미지에서 업데이트 옵션과 관련하여 주목할 점은 다음 네 가지입니다.
- 매핑되지 않은 데이터베이스 필드에는 연결된 업데이트 옵션이 없습니다.
- 속성 및 모델 기반 매핑(Design Parameter 열에서 대괄호로 표시된 항목)은 설계 파라미터가 아니므로 연결된 업데이트 옵션이 없습니다.
- 키 필드(예: 이미지의 Part Number)에는 연결된 업데이트 옵션이 없습니다. 이 필드는 파라미터 일치 확인 용도로만 사용됩니다.
- Default로 설정하면 업데이트 옵션은 Database Library Options 대화상자의 Default Actions 탭에서 지정한 해당 기본 정의를 따릅니다(기본 메뉴의 Tools » Options 또는 Table Browser 탭의 마우스 오른쪽 버튼 클릭 메뉴에 있는 Options). 이 대화상자는 문서 보기의 Field Settings 영역에서 Options 버튼을 클릭하여 열 수도 있습니다.
DbLib의 기본 파라미터 업데이트 옵션을 한곳에서 정의합니다. 이미지 위에 마우스 포인터를 올리면 SVNDbLib의 해당 화면을 볼 수 있습니다.
네 번째 항목의 장점은 업데이트 옵션을 한곳에서 지정한 다음, 매핑된 각 필드의 업데이트 옵션을 정의할 때 해당 설정을 참조할 수 있다는 것입니다. 따라서 데이터베이스 필드를 설계 파라미터에 매핑하면 관련 업데이트 필드에 Default 항목이 자동으로 입력됩니다.
업데이트 옵션의 기본 설정을 재정의하려면 Field Mappings 탭에서 해당 업데이트 필드 내부를 클릭한 다음, 다시 클릭하여 적용 가능한 업데이트 선택 항목이 있는 드롭다운을 여십시오.
필요한 경우 파라미터 업데이트 옵션을 수동으로 재정의할 수 있습니다.
이와 같은 방식으로 설계의 파라미터가 업데이트되는 방식을 완전히 제어할 수 있습니다. 모든 필드를 Default로 설정하고 Database Library Options 대화상자에서 필요한 업데이트를 결정하거나, 각 업데이트 필드를 개별적으로 설정하거나, 두 방식을 혼합하여 사용할 수 있습니다. 필요에 따라 원하는 방식을 선택하면 됩니다. 배치된 컴포넌트의 업데이트는 Engineering Change Order 대화상자를 통해 수행됩니다. 이 단계에서 원하지 않는 업데이트가 있다면 해당 변경 사항을 포함하지 않도록 선택할 수 있으므로, 어떤 설계 파라미터를 업데이트할지 최종적으로 결정할 수 있습니다.
심볼 및 모델 라이브러리 위치 지정
데이터베이스 라이브러리에서 컴포넌트를 배치하면 [Library Ref] 매핑으로 지정된 심볼이 지정된 Schematic 라이브러리(*.SchLib)에서 추출됩니다. 마찬가지로 데이터베이스에 지정된 모델 참조(풋프린트, PCB3D, 시뮬레이션)는 해당 PCB 라이브러리(*.PcbLib), PCB3D 라이브러리(*.PCB3DLib), 시뮬레이션 모델(*.mdl, *.ckt) 파일에 있습니다. 데이터베이스에서 다음과 같은 방법으로 이 파일들의 경로를 명시적으로 지정할 수 있습니다.
- 파일의 절대 경로를 입력합니다.
- 파일의 상대 경로를 입력합니다.
데이터베이스에 경로 정보용 필드를 정의했다면 이러한 필드를 적절한 설계 파라미터([Library Path], [Footprint Path], [PCB3D Path], [Sim File] 등)에 매핑해야 합니다(모델 및 파라미터 매핑 참조).
데이터베이스 테이블에 경로를 입력하는 방식은 상대 경로를 사용하더라도 다소 제약이 있을 수 있습니다. 라이브러리 또는 모델 파일의 위치를 옮기면 그에 맞게 데이터베이스 테이블도 업데이트해야 합니다. 더 유연하게 사용할 수 있도록 DbLib/SVNDbLib 파일 자체에 라이브러리 검색 정보를 지정할 수 있습니다. 이렇게 하면 데이터베이스에 소스 라이브러리 또는 모델 파일의 이름만 지정하거나, 아예 정의하지 않을 수도 있습니다.
데이터베이스 라이브러리의 경우
DbLib의 라이브러리 검색 경로는 Database Library Options 대화 상자(Tools » Options)의 Symbol and Model Search Paths 탭에서 정의합니다. 문서 보기의 Field Settings 영역에서 Options 버튼을 클릭하여 이 대화 상자에 액세스할 수도 있습니다.
심볼 및 모델 라이브러리의 검색 경로 지정.
목록에 경로를 추가하려면:
-
라이브러리 검색 경로 영역 아래의 필드에 경로를 직접 입력하거나,
버튼을 클릭하여 Browse for Folder 대화 상자에 액세스한 다음 필요한 라이브러리/모델 파일이 있는 디렉터리를 찾습니다.
- 전체 경로 또는 상대 경로(DbLib 파일 위치 기준)로 추가할 수 있습니다. Add/Update As Relative Path 옵션을 사용하여 이를 설정합니다.
- 필요한 경로를 지정한 후 Add 버튼을 클릭하여 검색 경로 목록에 추가합니다.
- 필요에 따라 검색 경로를 계속 추가합니다.
라이브러리 검색 경로는 데이터베이스 라이브러리에서 배치할 때와 배치 후 모델을 검색할 때 라이브러리 및 모델 파일을 찾을 위치를 결정합니다. 실제로 사용되는 모델은 라이브러리 검색 경로의 설정 방식과 데이터베이스에 특정 라이브러리 정보를 추가했는지 여부에 따라 달라집니다. 검색은 다음 순서로 진행됩니다.
- 심볼 또는 모델에 대해 매핑된 경로 필드에 전체 경로가 있으면, 해당 라이브러리/모델 파일을 사용하고 해당 참조 필드에 지정된 심볼 또는 모델을 추출합니다.
- 심볼 또는 모델에 대해 매핑된 경로 필드에 상대 경로가 있으면, 해당 라이브러리/모델 파일을 사용하고 해당 참조 필드에 지정된 심볼 또는 모델을 추출합니다.
- 심볼 또는 모델에 대해 매핑된 경로 필드에 라이브러리/모델 파일 이름만 있으면, 검색 경로를 사용하여 지정된 이름과 일치하고 해당 참조 필드에 지정된 심볼 또는 모델을 포함하는 첫 번째 라이브러리/모델 파일을 찾습니다.
- 데이터베이스에 라이브러리/모델 파일 정보가 없으면, 검색 경로를 사용하여 해당 참조 필드에 지정된 심볼 또는 모델을 포함하는 첫 번째 라이브러리/모델 파일을 찾습니다.
SVN 데이터베이스 라이브러리의 경우
SVNDbLib에서는 심볼과 풋프린트 모델이 있는 Subversion 저장소 내 기본 디렉터리를 Database Library Options 대화 상자(Tools » Options)의 SVN Repository 탭에서 지정합니다. 문서 보기의 Field Settings 영역에서 Options 버튼을 클릭하여 이 대화 상자에 액세스할 수도 있습니다.
심볼 및 풋프린트의 기본 저장소 디렉터리 지정.
Models Location 영역의 필드를 사용하여 심볼과 풋프린트의 기본 디렉터리를 지정합니다. 필드 오른쪽의
버튼을 클릭하면 연결된 저장소를 볼 수 있는 Browse for directory 대화 상자에 액세스할 수 있습니다. 이 대화 상자를 사용하여 필요한 폴더를 선택합니다.
연결된 SVN 저장소에서 관련 디렉터리 찾아보기.
모델 위치는 버전 관리되는 데이터베이스 라이브러리에서 배치할 때와 배치 후 모델을 검색할 때 라이브러리 및 모델 파일을 찾을 위치를 결정합니다. 실제로 사용되는 Schematic 심볼과 풋프린트 모델은 이러한 위치의 설정 방식과 데이터베이스에 특정 라이브러리 정보를 추가했는지 여부에 따라 달라집니다. 검색은 다음 순서로 진행됩니다.
- 심볼 또는 풋프린트 모델에 대해 매핑된 경로 필드에 전체 경로(예: http://MyServer/svn/MyCompany/ParentDirectory/SchematicSymbols/Capacitor_NonPolarized.SchLib)가 있으면, 해당 라이브러리 파일을 사용하고 해당 참조 필드에 지정된 심볼 또는 풋프린트를 추출합니다.
- 심볼 또는 풋프린트 모델에 대해 매핑된 경로 필드에 상대 경로(저장소 루트 기준, 예: /ParentDirectory/SchematicSymbols/Capacitor_NonPolarized.SchLib)가 있으면, 해당 라이브러리 파일을 사용하고 해당 참조 필드에 지정된 심볼 또는 풋프린트를 추출합니다. 대화 상자의 저장소 서버 Connection 영역에 지정된 저장소 URL이 입력한 경로 앞에 추가되어 절대 주소가 만들어집니다.
- 심볼 또는 풋프린트 모델에 대해 매핑된 경로 필드에 라이브러리 파일 이름만 있으면(예: Capacitor_NonPolarized.SchLib), 저장소 내에 지정된 모델 위치를 사용하여 지정된 이름과 일치하고 해당 참조 필드에 지정된 심볼 또는 풋프린트 모델을 포함하는 첫 번째 라이브러리 파일을 찾습니다.
- 데이터베이스에 라이브러리 파일 정보가 없으면, 지정된 모델 위치를 사용하여 해당 참조 필드에 지정된 심볼 또는 풋프린트 모델을 포함하는 첫 번째 라이브러리 파일을 찾습니다.
