PCB 설계 규칙 정의, 범위 지정 및 관리

Altium Training

Altium Essentials: PCB Design Rules Creation

This content is part of the official Altium Professional Training Program. For full courses, materials and certification, visit Altium Training.

What approach do I use for defining design constraints?

Altium Designer는 설계 제약을 정의하는 두 가지 서로 다른 접근 방식을 제공합니다. 즉, PCB Rule and Constraints Editor 대화상자(이 페이지에서 설명)와 Constraint Manager입니다.

Constraint Manager 은(는) 이 프로젝트를 생성할 때 Create Project dialog에서 Constraint Management 옵션이 활성화된 경우에만 PCB 설계 프로젝트에서 사용할 수 있습니다. 참고:

  • PCB 프로젝트에 대해 Constraint Manager 이(가) 활성화된 경우, PCB 편집기에서는 PCB Rule and Constraints Editor 대화상자를 not 사용할 수 없습니다.

  • PCB 프로젝트에 대해 Constraint Manager 이(가) not 활성화되지 않은 경우, 설계 제약을 정의하는 이전 방식(design directives 사용 및 PCB Rule and Constraints Editor 대화상자)만 사용할 수 있습니다.

현재 PCB 프로젝트에서 어떤 설계 제약 관리 방식이 사용되고 있는지 빠르게 확인하려면, 프로젝트의 PCB 문서를 열고 Design 주 메뉴를 클릭한 다음 어떤 명령이 사용 가능한지 확인하십시오:

  • Constraint Manager – 이 프로젝트에는 Constraint Manager 이(가) 사용됩니다.

  • Rules – 이 프로젝트에는 PCB Rule and Constraints Editor 대화상자가 사용됩니다.

PCB 편집기는 설계 요구사항을 정의하기 위해 Design Rules 개념을 사용합니다. 설계 요구사항은 우아한 target these objects and apply those requirementsQuery 기반 접근 방식으로 적용됩니다. Design Rules는 PCB 편집기가 따라야 할 ‘명령 집합’을 집합적으로 구성합니다. 여기에는 배선 폭, 이격, 플레인 연결 스타일, 배선 비아 스타일 등 설계의 모든 측면이 포함되며, 많은 규칙은 온라인 Design Rule Checker (DRC)를 통해 실시간으로 모니터링할 수 있고, 언제든지 배치 테스트를 실행하여 DRC 보고서를 생성할 수도 있습니다. 규칙은 객체와 독립적으로 정의됩니다.

설계 규칙은 특정 객체를 대상으로 하며 계층적 방식으로 적용됩니다. 예를 들어, 보드 전체에 대한 이격 규칙이 있고, 그다음 특정 넷 클래스에 대한 이격 규칙이 있으며, 다시 그 클래스 내 특정 패드 하나에 대한 또 다른 규칙이 있을 수 있습니다. PCB 편집기는 규칙 우선순위와 범위를 사용하여 설계의 각 객체에 어떤 규칙이 적용되는지 결정할 수 있습니다.

규칙은 키워드 기반의 query language를 사용하여 객체를 대상으로 하며, NetClass 또는 All와 같은 광범위한 식별자부터 까다롭고 상황별인 설계 요구사항을 정확히 겨냥하는 매우 엄격하게 정의된 쿼리까지 사용할 수 있습니다.

잘 정의된 설계 규칙 집합이 있으면 다양하고 종종 엄격한 설계 요구사항을 가진 보드 설계를 성공적으로 완료할 수 있습니다. 또한 PCB 편집기는 규칙 기반으로 동작하므로, 설계 초기에 시간을 들여 규칙을 설정해 두면 규칙 시스템이 성공적인 설계를 보장하기 위해 강력하게 작동하고 있다는 확신 속에서 설계 작업 자체에 효과적으로 집중할 수 있습니다.

정의된 설계 규칙의 검사에 대한 자세한 내용은 Design Rule Checking (DRC)를 참조하십시오.

PCB 규칙 시스템의 기초

소프트웨어의 PCB 편집기에 내장된 규칙 시스템에는 다른 PCB 편집 환경에서 사용하는 대부분의 설계 규칙 시스템과 구별되는 몇 가지 기본 기능이 있습니다:

  • Rules are separate from the objects – 규칙은 객체의 속성으로 추가되는 것이 아니라 전체 규칙 집합에 추가된 다음 해당 객체에 적용되도록 범위가 지정됩니다. 이를 통해 규칙을 여러 객체에 적용하고 수정하거나 다른 객체에 적용할 수 있으며, 개별 객체 수준에서 규칙 속성을 변경해야 하는 경우의 번거로움을 피할 수 있습니다.
  • Rules are targeted (scoped) by writing a query – 고정된 사전 정의 규칙 범위 집합을 사용하는 대신, 유연한 쿼리 시스템을 사용하여 규칙이 적용될 객체를 정의합니다. 이를 통해 각각의 모든 설계 규칙 대상에 대해 정밀한 제어가 가능합니다.
  • Rules for any design situation – 동일한 유형의 규칙을 여러 개 정의하고 서로 다른 객체 집합에 대상으로 지정할 수 있으므로 보드 제약 정의를 완전히 제어할 수 있습니다. 예를 들어, 서로 다른 레이어에서 넷을 서로 다른 폭으로 배선하도록 서로 다른 폭 규칙을 정의할 수 있습니다.
  • Each rule has a priority – 모든 설계 객체는 동일한 유형의 여러 규칙의 대상이 될 수 있으므로 일반적인 상황과 더 구체적인 상황을 모두 처리할 수 있습니다. 규칙 충돌을 해결하기 위해 규칙 우선순위가 사용됩니다. 시스템은 가장 높은 우선순위부터 가장 낮은 우선순위까지 규칙을 순서대로 검사하고, 검사 중인 객체와 일치하는 범위 식을 가진 첫 번째 규칙을 선택합니다.
  • There are two types of rules – 단항 규칙(객체의 요구 동작을 정의하는 규칙)과 이항 규칙(두 객체 간 상호작용을 정의하는 규칙).

Altium Designer의 설계 규칙은 이 페이지에서 설명하는 대로 PCB Rules and Constraints Editor 대화상자에서 정의 및 관리됩니다. 설계 제약 규칙을 관리하는 대체 접근 방식으로는 문서 기반의 Constraints Editor([Constraints] 문서 탭)를 사용할 수 있습니다.

설계 규칙 정의 및 관리

PCB Rules and Constraints Editor 대화상자는 주 메뉴에서 Design » Rules 명령을 선택하여 액세스합니다.

Rules 명령이 Design 메뉴에 없습니까? PCB Rules and Constraints Editor 대화상자를 사용할 수 있는지 확인하십시오 – 자세히 알아보기.

PCB Rules and Constraints Editor 대화상자에는 두 개의 섹션이 있습니다:

  • 왼쪽의 트리에는 서로 다른 규칙 범주가 나열됩니다. 범주를 확장하면 사용 가능한 개별 규칙 유형이 표시됩니다. 규칙 유형을 확장하면 현재 정의된 해당 유형의 모든 규칙이 표시됩니다.

    사용 가능한 규칙 유형과 해당 제약에 대한 자세한 내용은 PCB Design Rule Types 페이지 및 그 하위 페이지를 참조하십시오.

  • 대화상자의 오른쪽에는 현재 트리에서 선택된 항목과 관련된 정보가 표시됩니다. 즉, 선택한 규칙 유형 또는 범주의 정의된 규칙 요약, 전체 시스템에 대해 정의된 모든 규칙, 또는 실제 규칙이 선택된 경우 해당 규칙의 제약이 표시됩니다.

    요약 목록에서는 각 규칙이 다음 항목 기준으로 나열됩니다:

    • 루트 폴더를 클릭하면 대화상자의 기본 편집 영역에서 모든 범주에 걸친 모든 설계 규칙 유형에 대해 정의된 모든 개별 규칙의 요약 목록에 액세스할 수 있습니다.

    • 범주 폴더를 클릭하면 해당 범주의 모든 관련 설계 규칙 유형에 대해 정의된 모든 개별 규칙의 요약 목록에 액세스할 수 있습니다.

    • 규칙 유형 폴더를 클릭하면 해당 유형에 대해 정의된 모든 개별 규칙의 요약 목록에 액세스할 수 있습니다.

    • Name - 규칙 이름.

    • Priority - 규칙의 현재 우선순위.

    • Enabled - 규칙이 현재 활성화되어 있는지 또는 비활성화되어 있는지 여부(클릭하여 상태 전환). 비활성화된 규칙은 요약 목록에서 회색으로 표시됩니다.

    • Type - 규칙 유형.

    • Category - 규칙이 속한 범주.

    • Scope - 규칙의 범위(즉, 어떤 객체에 적용되는지).

    • Attributes - 규칙에 대해 정의된 제약 속성.

    폴더 트리 창에서 특정 규칙 항목을 클릭하거나(또는 요약 목록에서 해당 항목을 더블클릭하면) 해당 정의를 관리하는 컨트롤에 액세스할 수 있습니다.

    • Name - 규칙의 현재 이름. 필요에 따라 변경할 수 있습니다.

    • Comment - 이 필드에는 규칙에 추가된 주석이 표시됩니다. 예를 들어, 해당 규칙이 어떤 용도로 사용되는지에 대한 의미 있는 설명이 될 수 있습니다.

    • Unique ID - 규칙의 고유 식별자입니다. 모든 규칙은 그 자체로 설계 객체이며, 따라서 실체가 있는 데이터 조각입니다. ID를 사용하면 고유성이 보장됩니다. Unique ID가 특히 중요한 경우는 회로도 도메인에서 생성된 규칙입니다. 회로도의 객체에 설계 규칙 파라미터를 추가할 때 각 규칙 파라미터에는 고유 ID가 부여됩니다. PCB에서 생성되는 해당 설계 규칙에도 동일한 ID가 부여됩니다. 이 Unique ID를 통해 규칙의 제약을 회로도 측이나 PCB 측 어느 쪽에서든 편집할 수 있으며, 동기화 시 변경 사항을 반영할 수 있습니다.

    • Test Queries - 클릭하면 Test Queries Result dialog가 열리며, 여기에는 사용자가 정의한 규칙 특수화를 고려했을 때 해당 규칙의 영향을 받는 객체 수가 표시됩니다. 이를 통해 쿼리에 응답하는 객체가 있는지 확인하고, 필터와 규칙의 영향을 받는 객체 집합이 원하는 대로인지도 점검할 수 있습니다. 

    • Rule Scoping Controls - 이 영역은 규칙이 적용되는 객체 또는 객체 간 관계 측면에서 규칙의 범위를 결정하는 컨트롤을 제공합니다.

    • Constraints - 대화상자의 이 영역에는 현재 편집 중인 규칙 유형에 적용되는 제약이 표시됩니다. 다양한 컨트롤을 사용하여 필요에 따라 이러한 제약을 구성하십시오. 제약 영역 위의 F1를 눌러 문서의 PCB Design Rule Types 영역 내 해당 규칙 유형 페이지에 액세스할 수 있습니다.

PCB Rules and Constraints Editor 대화상자 – 설계 규칙 관리를 위한 중앙 허브입니다.
PCB Rules and Constraints Editor 대화상자 – 설계 규칙 관리를 위한 중앙 허브입니다.

  • 대화상자의 검색 엔진을 사용하면 기본 Search 필드에 관련 Name, Type, Category 또는 Attribute 키워드를 입력하여 간단한 검색 모드로 사용할 수 있습니다.

  • 대화상자 하단의 Switch to Document View 버튼을 클릭하면 대화형 Rules 문서인 Constraints Editor가 열립니다. 

설계 규칙 검토

소프트웨어가 기본으로 생성하는 새 보드에는 모든 설계에 필요하지 않은 규칙들이 포함되어 있으며, 다른 많은 설계 규칙들도 현재 설계의 요구사항에 맞게 조정해야 합니다. 따라서 설계 규칙을 검토하는 것이 매우 중요합니다. 이는 PCB Rules and Constraints Editor에서 수행할 수 있습니다. 왼쪽 트리 상단에서 Design Rules를 선택한 다음, Attributes 열을 아래로 훑어보면서 모든 규칙을 확인하고 값 조정이 필요한 항목을 빠르게 찾으십시오.

새 보드를 만들면 기본 설계 규칙이 포함되는데, 이 중 일부는 설계에 필요하지 않을 수 있습니다. 불필요한 규칙은 PCB Rules and Constraints Editor에서 Design Rules 항목 또는 특정 카테고리 항목을 클릭한 뒤, 규칙을 비활성화하여 제거할 수 있습니다(Enabled 열의 체크박스를 해제).

기본 보드는 또한 임페리얼 단위를 사용합니다. 보드에서 미터법을 사용하는 경우, 솔더마스크 확장값 같은 많은 규칙 값이 4mil과 같은 반올림된 값에서 0.102mm로 바뀌거나, Minimum Solder Mask Sliver 기본값이 10mil에서 0.254mm로 변경됩니다. 예를 들어 0.002mm와 같은 최하위 자릿수는 출력 생성 시에는 중요하지 않지만, 거슬린다면 설계 규칙에서 이러한 설정을 편집할 수 있습니다.

설계 규칙을 검토할 때 필요에 따라 열 순서를 변경할 수 있다는 점에 유의하십시오.
설계 규칙을 검토할 때 필요에 따라 열 순서를 변경할 수 있다는 점에 유의하십시오.

기본 설계 규칙

새 PCB 문서를 만들면 여러 기본 규칙이 포함되며, 이는 Design Rule Check 시스템이 올바르게 동작하기 위해 반드시 존재해야 합니다. 기본 규칙을 삭제하면 PCB Rules and Constraints Editor를 닫을 때 자동으로 다시 생성됩니다. 사용하지 않으려는 설계 규칙이 있다면, 이러한 규칙을 관리하는 올바른 방법은 비활성화하는 것입니다. 

규칙을 비활성화하려면 PCB Rules and Constraints Editor 대화상자 오른쪽에 있는 요약 목록 중 하나에서 해당 규칙의 Enable 옵션을 전환하십시오. 비활성화된 규칙은 '회색 처리'되어 표시됩니다. 설계 규칙 비활성화에 대해 자세히 알아보십시오.

필요하지 않은 규칙은 Enable 옵션을 사용해 비활성화하십시오. 비활성화된 규칙은 '회색 처리'되어 표시됩니다.필요하지 않은 규칙은 Enable 옵션을 사용해 비활성화하십시오. 비활성화된 규칙은 '회색 처리'되어 표시됩니다.

기본 규칙 값은 내부적으로 mil 단위로 정의되며, 설계에 적합하지 않은 값을 가질 수 있습니다. 사용자 고유의 기본 규칙과 값을 사용하려면 다음과 같이 할 수 있습니다.

  • 프로젝트 템플릿을 만들어 사용하거나,

  • 필요한 규칙이 구성된 적절한 빈 보드 파일을 만든 뒤, 새 프로젝트용으로 해당 보드를 복사해서 사용하거나,

  • 템플릿 규칙 세트를 PCB Rule 파일(*.RUL)로 내보낸 다음, 현재 보드 설계로 해당 규칙을 가져옵니다. 설계 규칙 내보내기 및 가져오기에 대해 자세히 알아보십시오.

Create Default Rules 버튼을 클릭하면 PCB의 기본 설계 규칙 세트를 다시 생성합니다. 규칙을 제거한 경우 이 버튼을 클릭하여 기본 규칙 세트를 복원할 수 있습니다. 기본 규칙이 수정된 경우에는 이를 재설정하거나 대체하지 않습니다.

새 규칙 만들기

PCB Rules and Constraints Editor 대화상자 내에서 새 설계 규칙을 추가하려면, 왼쪽 트리에서 필요한 규칙 유형으로 이동하여 선택한 다음 규칙 요약 목록 아래의 New Rule 버튼을 클릭하거나, 필요한 규칙 유형 위에서 마우스 오른쪽 버튼을 클릭한 후 컨텍스트 메뉴에서 New Rule를 선택하십시오.

새 규칙은 폴더 트리에 추가되며 해당 규칙 유형의 요약 목록에도 표시됩니다. 규칙 이름은 새로 생성되어 아직 '적용'되지 않았음을 구분하기 위해 굵게 표시됩니다.

새 PCB 설계 규칙 생성 예.
새 PCB 설계 규칙 생성 예.

새 규칙이 추가되면 처음에는 해당 규칙 유형에 따라 기본 이름이 부여됩니다. 예를 들어 새 Clearance 규칙을 추가하면 기본 이름은 Clearance가 됩니다. 이 기본 이름을 변경하지 않은 상태에서 같은 유형의 새 규칙을 하나 더 추가하면, 동일한 규칙 이름에 숫자 접미사가 증가된 형태로 생성됩니다(즉, Clearance_1Clearance_2 등).

특정 규칙 유형에 대해 새 규칙이 생성되면 자동으로 우선순위 1(가장 높은 우선순위)이 부여됩니다. 해당 유형의 다른 규칙이 이미 존재하면 그 규칙들의 우선순위는 그에 따라 한 단계씩 밀려납니다(낮아집니다). 그러면 이 규칙들은 범위/제약 수준에서 직접 수정되지 않았더라도 수정된 것으로 간주됩니다. 따라서 해당 유형의 기존 규칙은 모두 수정 상태(별표가 붙은 굵은 글씨)로 표시됩니다.

규칙의 범위 및 제약 속성에 접근하려면 폴더 트리 창에서 해당 규칙 항목을 클릭하거나 요약 목록에서 해당 항목을 더블클릭하십시오. 그러면 대화상자의 기본 편집 창이 변경되어 해당 규칙의 범위 및 제약 속성을 정의하는 컨트롤에 접근할 수 있습니다.

범위 및 제약을 포함한 규칙의 상세 컨트롤에 접근하는 모습.
범위 및 제약을 포함한 규칙의 상세 컨트롤에 접근하는 모습.

새 규칙을 완전히 정의하려면:

  • 규칙을 식별하기 쉽도록 의미 있는 이름을 지정합니다.
  • 드롭다운에서 범위 지정 옵션을 선택하거나, 쿼리(이진 규칙의 경우 쿼리들)를 입력하여 규칙의 범위를 정의합니다.
  • 규칙의 제약 조건을 설정합니다.
  • 규칙의 우선순위를 설정합니다.

Rule Wizard를 사용하여 새 규칙 만들기

새 규칙은 Design Rule Wizard를 사용해서도 만들 수 있습니다. Design » Rule Wizard 명령을 직접 사용하거나 PCB Rules and Constraints Editor 대화상자 하단의 Rule Wizard 버튼을 클릭하여 접근할 수 있습니다.

기존 규칙에 아직 '적용'되지 않은 수정 사항이 있는 경우 Rule Wizard 버튼은 사용할 수 없습니다.

Wizard의 각 페이지를 사용하여 새 설계 규칙을 만드십시오. 단계는 다음과 같습니다.

  1. 필요한 규칙 유형을 선택하고 의미 있는 이름을 지정합니다(필요한 경우 설명도 추가).
  2. 규칙의 범위를 정의합니다. Wizard에 내장된 Query Builder 버전을 통해 범위 지정을 추가로 세부 조정할 수 있습니다.
  3. 규칙 우선순위를 설정합니다.
Wizard의 마지막 페이지에서 Launch main design rules dialog 옵션이 활성화되어 있으면, Finish 버튼을 클릭할 때 PCB Rules and Constraints Editor 대화상자가 열립니다. 이 대화상자에서 새로 만든 규칙의 제약 조건을 편집할 수 있습니다.

Design Rule Wizard를 사용해 규칙 생성을 간소화하십시오.
Design Rule Wizard를 사용해 규칙 생성을 간소화하십시오.

기존 규칙 복제하기

기존 규칙과 동일한 복사본을 빠르게 만들려면 복제 기능을 사용하십시오. 이 기능은 두 가지 방법으로 접근할 수 있습니다.

  • 왼쪽 트리를 사용해 필요한 기존 규칙으로 이동한 다음, 마우스 오른쪽 버튼을 클릭하고 컨텍스트 메뉴에서 Duplicate Rule를 선택합니다.

  • 왼쪽 트리에서 특정 규칙 유형으로 이동하고, 오른쪽 요약 목록에서 복제할 규칙을 선택한 다음, 목록 아래의 Duplicate Rule 버튼을 클릭합니다.

규칙 복제 기능을 사용해 유사한 규칙 생성을 간소화하십시오.
규칙 복제 기능을 사용해 유사한 규칙 생성을 간소화하십시오.

복제된 규칙은 원본과 같은 이름을 가지며, 이를 구분하기 위해 접미사(예: _1)가 추가됩니다. 정의(범위, 제약 등)는 원본과 동일합니다. 우선순위 측면에서는 원본 규칙보다 한 단계 낮은 다음 우선순위가 부여됩니다. 예를 들어 원본 규칙의 우선순위가 1이면, 복제본에는 2 우선순위가 부여됩니다.

PCB Filter Panel에서 규칙 만들기

설계 규칙은 대상 설계 객체 집합에 적용되도록 범위가 지정되므로, 먼저 해당 객체를 식별한 다음 이를 대상으로 하는 설계 규칙을 만드는 것이 더 쉽고 빠를 수 있습니다. PCB Filter panel은 패널에 현재 정의된 쿼리 표현식을 범위로 사용하는 설계 규칙을 생성하는 기능을 제공합니다. 따라서 쿼리 표현식이 무엇을 대상으로 하는지 might로 애써 상상하기보다는, PCB Filter 패널을 사용해 필요한 객체만 필터링될 때까지 쿼리 표현식을 테스트하고 조정하십시오. 그런 다음 해당 쿼리 표현식을 사용하는 규칙을 만들면 올바른 객체 집합을 대상으로 한다는 것이 보장됩니다.

새 설계 규칙을 추가하려면:

  1. Create Rule 버튼을 클릭합니다. 그러면 Choose Design Rule Type 대화상자가 나타납니다. 이 대화상자에는 PCB 문서에서 사용할 수 있는 각 규칙 카테고리와 규칙 유형이 나열됩니다.
  2. 생성할 규칙 유형을 선택한 다음 OK를 클릭합니다(또는 해당 항목을 직접 더블클릭).
  3. PCB Rules and Constraints Editor 대화상자가 나타납니다. 선택한 유형의 규칙이 생성되고, 해당 규칙의 기본 편집 창이 표시되어 규칙의 구체적인 제약 조건을 정의할 수 있게 됩니다. 규칙의 범위 지정 옵션은 Custom Query로 설정되며, PCB Filter 패널의 쿼리 표현식이 그에 맞게 쿼리 영역에 입력됩니다.
  4. 필요에 따라 규칙 이름과 제약 조건을 변경합니다. 필요하면 우선순위도 변경하십시오(기본적으로 가장 높은 우선순위가 부여됨).

PCB Filter 패널에서 직접 새 설계 규칙을 만드십시오. 필터 쿼리 표현식이 규칙의 범위로 사용됩니다.
PCB Filter 패널에서 직접 새 설계 규칙을 만드십시오. 필터 쿼리 표현식이 규칙의 범위로 사용됩니다.

이전에 사용한 쿼리 표현식 재사용

시간이 지나면서 다양한 보드를 레이아웃하는 과정에서 유용한 쿼리 표현식이 여러 개 만들어집니다. 일반적으로 동일한 설계 내에서뿐 아니라 서로 다른 설계 간에도 같은 쿼리를 적용하고 다시 적용하고 싶을 것입니다. 이를 위해 PCB Filter panelHistoricalFavorite 쿼리 개념을 지원합니다.

패널에서 쿼리를 입력하고 적용하면 해당 쿼리는 쿼리 '히스토리 목록'에 추가됩니다. 또한 Add To Favorites 버튼을 클릭하여 해당 쿼리를 쿼리 '즐겨찾기 목록'에 추가할 수 있습니다. 이 목록들을 보려면 패널의 HistoryFavorites 버튼을 사용하여 Expression Manager dialog 내의 동일한 이름의 해당 탭에 액세스하십시오.

적용된 쿼리 표현식의 이력을 확인하고, 반복해서 재사용할 즐겨찾기 표현식 목록을 만들 수 있습니다.
적용된 쿼리 표현식의 이력을 확인하고, 반복해서 재사용할 즐겨찾기 표현식 목록을 만들 수 있습니다.

두 목록 중 하나의 표현식을 사용하려면 해당 항목을 더블클릭하거나 항목을 선택한 다음 Apply Expression 버튼을 클릭하십시오. 그러면 Expression Manager dialog가 닫히고 표현식이 PCB Filter 패널의 Filter 영역에 로드됩니다.

이 기능은 필요한 스코프를 갖는 규칙 생성을 간소화하고(또한 더 빠르게) 해줍니다. 즉, 이전에 사용했거나 즐겨찾기에 저장한 쿼리 표현식을 불러와 여전히 필요한 객체 집합을 대상으로 하는지 확인하고(필터 적용), 이전 섹션에서 설명한 대로 해당 표현식을 스코프에 사용하는 규칙을 생성할 수 있습니다.

디자인 규칙 스코프 지정

Altium Designer의 PCB 편집기는 규칙 기반 환경입니다. 설계 요구사항은 보드의 제약 조건을 집합적으로 정의하는 잘 정의된 디자인 규칙 세트를 통해 적용됩니다. 디자인 규칙은 설계 내의 특정 객체를 대상으로 합니다. PCB 규칙 시스템이 특정 규칙이 어떤 객체에 적용되는지 알기 위해서는 해당 규칙의 스코프, 즉 적용 범위를 알아야 합니다. Scoping즉, 규칙의 대상 지정은 PCB Rules and Constraints Editor dialog에서 수행됩니다.

기본 디자인 규칙 또는 새로 추가된 규칙은 기본 규칙 스코프로 All을 가지며, 이는 보드의 all objects에 적용된다는 의미입니다. 드롭다운을 사용하면 간단한 규칙 스코프를 빠르게 구성할 수 있습니다.

디자인 객체에 대한 적용 범위를 정의하려면 디자인 규칙의 스코프를 설정하십시오.
디자인 객체에 대한 적용 범위를 정의하려면 디자인 규칙의 스코프를 설정하십시오.

미리 정의된 가능한 대상 옵션 목록에 제한되지 않고, 각 디자인 규칙은 Query라고 하는 것을 작성하여 더 엄격하게 스코프를 지정할 수 있습니다.

쿼리를 입력하려면 첫 번째 Where The Object Matches 드롭다운을 Custom Query(으)로 설정하십시오. 그러면 현재 드롭다운 설정을 기준으로 이 규칙에 대해 규칙 엔진이 현재 사용 중인 쿼리가 표시됩니다.

쿼리는 본질적으로 대상이 될 디자인 객체 집합을 정의하는 소프트웨어에 대한 지시입니다. 쿼리는 쿼리 키워드를 사용하여 작성됩니다. 특정 객체 집합을 찾기 위해 Filter 패널에서 쿼리를 작성할 수 있는 것과 같은 방식으로, 각 규칙이 대상으로 삼는 객체를 정의하기 위해서도 쿼리를 작성할 수 있습니다. 예를 들면 다음과 같습니다.

InNet('VBAT') And OnLayer('Bottom Layer')

이 쿼리가 Width rule의 스코프로 사용된다면, VBAT 넷을 라우팅하다가 바텀 레이어로 전환할 때 트랙 폭이 해당 규칙의 제약 조건에 지정된 폭으로 자동 변경됩니다. 또한 디자인 규칙 검사를 실행하면 바텀 레이어에서의 모든 VBAT 넷 라우팅은 지정된 폭을 가져야 하며, 그렇지 않으면 위반으로 표시됩니다.

규칙의 스코프 지정은 쿼리 시스템을 기반으로 합니다. 현재 쿼리를 확인하고 필요한 경우 쿼리 키워드를 사용해 변경하려면 Custom Query 옵션을 사용하십시오.
규칙의 스코프 지정은 쿼리 시스템을 기반으로 합니다. 현재 쿼리를 확인하고 필요한 경우 쿼리 키워드를 사용해 변경하려면 Custom Query 옵션을 사용하십시오.

규칙이 단항인지 이항인지에 따라 각각 하나 또는 두 개의 스코프를 정의해야 합니다. 단항 디자인 규칙의 경우 단일 규칙 스코프를 정의하기 위한 컨트롤이 제공됩니다. Where The Object Matches 영역에서 제공되는 옵션을 사용해 쿼리 표현식을 작성하면, 그 결과가 오른쪽 영역에 표시됩니다. 이항 디자인 규칙의 경우 두 규칙 스코프를 정의하기 위해 Where The First Object Matches Where The Second Object Matches 에 대한 컨트롤이 제공됩니다. 각 항목의 사용 가능한 드롭다운을 사용해 쿼리 표현식을 작성하십시오. 하나의 규칙 스코프를 정의하든 두 개를 정의하든 컨트롤은 동일합니다.

PCB 컴포넌트 디자인레이터 또는 폴리곤 이름이 변경되면, 사용자 지정 쿼리를 사용하는 디자인 규칙의 참조도 자동으로 업데이트됩니다. 디자인 규칙에서 PCB 컴포넌트 디자인레이터를 참조하는 쿼리는 디자인레이터가 재주석 처리되거나, ECO에 의해 업데이트되거나, 보드에서 수동으로 편집될 때 변경됩니다.

컴포넌트 디자인레이터가 변경될 때 규칙 쿼리를 업데이트하는 기능은 Advanced Settings dialog에서 PCB.Rules.UpdateQueryOnComponentDesignatorChange 옵션이 활성화된 경우 사용할 수 있습니다.

폴리곤 이름이 변경될 때 규칙 쿼리를 업데이트하는 기능은 Advanced Settings dialog에서 PCB.Rules.UpdateQueryOnPolygonNameChange 옵션이 활성화된 경우 사용할 수 있습니다.

쿼리에 구문 오류가 있으면 해당 규칙은 유효하지 않은 것으로 간주되며 PCB Rules and Constraints Editor dialog에서 왼쪽 규칙 트리와 규칙이 표시되는 모든 요약 보기(규칙 카테고리 또는 규칙 유형)에서 빨간색으로 강조 표시됩니다. 또한 규칙 유형과 규칙 카테고리의 텍스트도 왼쪽 규칙 트리에서 빨간색으로 표시됩니다. 따라서 유효하지 않은 규칙이 포함된 규칙 트리 영역을 접어 두었더라도 계층 구조의 상위 수준에서 이를 계속 확인할 수 있습니다. 또한 dialog를 닫으려고 하면 경고 메시지가 표시됩니다. 구문 오류가 있는 규칙 스코프는 Online 및 Batch DRC 분석 프로세스를 크게 느리게 만들 수 있습니다. 구문적으로 올바르지 않은 규칙 스코프는 반드시 해결하십시오.

스코프 지정 옵션

간단한 스코프 지정 옵션이 제공되어 스코프 쿼리를 빠르게 생성할 수 있습니다. 첫 번째 드롭다운 필드에서 옵션 중 하나를 선택하고, 필요한 경우 이어지는 드롭다운 목록에서 Net, Layer, Footprint, Package 등 적절한 대상을 선택하십시오. 표시되는 스코프 지정 옵션은 규칙 유형에 따라 맞춰집니다.

간단한 스코프 지정 옵션을 사용하여 쿼리를 빠르게 생성하십시오.
간단한 스코프 지정 옵션을 사용하여 쿼리를 빠르게 생성하십시오.

간단한 스코프 지정 옵션의 예는 다음과 같습니다.

  • All - 모든 디자인 객체를 대상으로 하는 스코프 쿼리를 생성합니다.

  • Net - 특정 넷의 모든 객체를 대상으로 하는 스코프 쿼리를 생성합니다. 추가 드롭다운이 나타나며, 여기서 No Net을 포함한 사용 가능한 선택 목록에서 원하는 넷을 선택할 수 있습니다.

  • Net Class - 특정 넷 클래스의 모든 객체를 대상으로 하는 스코프 쿼리를 생성합니다. 추가 드롭다운이 나타나며, 여기서 All Nets을 포함한 사용 가능한 선택 목록에서 원하는 넷 클래스를 선택할 수 있습니다.

  • Layer - 특정 레이어의 모든 객체를 대상으로 하는 스코프 쿼리를 생성합니다. 추가 드롭다운이 나타나며, 여기서 사용 가능한 선택 목록에서 원하는 레이어를 선택할 수 있습니다.

  • Net and Layer - 특정 넷에 속하고 특정 레이어에 있는 모든 객체를 대상으로 하는 스코프 쿼리를 생성합니다. 원하는 넷과 레이어를 선택할 수 있는 두 개의 추가 드롭다운이 나타납니다.

간단한 스코프 지정 옵션을 사용해 규칙의 스코프를 지정하더라도 쿼리는 여전히 생성됩니다. 첫 번째 드롭다운 필드에서 Custom Query를 선택하면 해당 쿼리가 표시됩니다.

Custom Query 옵션을 사용하면 직접, 더 복잡할 수도 있지만 더 구체적인 쿼리를 작성할 수 있습니다. 규칙 스코프용 특정 쿼리를 오른쪽의 쿼리 영역에 직접 입력할 수 있습니다. 또는 논리 쿼리 표현식 생성을 돕는 두 가지 기능을 사용할 수 있습니다. 바로 Query BuilderQuery Helper입니다. 이 기능들은 쿼리 구문이나 사용 가능한 키워드가 확실하지 않을 때 유용합니다.

Custom Query 옵션을 사용하여 더 복잡한 쿼리 표현식을 작성하십시오.
Custom Query 옵션을 사용하여 더 복잡한 쿼리 표현식을 작성하십시오.

  • Query Language에 익숙하다면 쿼리 영역에 직접 쿼리 표현식을 입력할 수 있습니다. 또한 선호하는 편집기에서 쿼리 표현식을 직접 이 영역에 붙여넣거나, 쿼리 표현식을 외부 편집기로 복사하거나, 심지어 이항 규칙의 두 번째 스코프에 쿼리를 붙여넣을 수도 있습니다. 이는 특히 두 스코프가 복잡하고 약간만 다를 때 매우 유용합니다.

  • Query Builder는 관련 있는 '빌딩 블록'만 사용해 구성할 수 있도록, 상황에 맞는 조건 유형과 값을 사용하는 더 간단한 쿼리 작성 방법입니다. 전체 키워드 지정과 연산자 구문을 사용하는 고급 쿼리 작성을 위해서는 Query Helper를 사용하십시오.

Query Builder를 사용한 규칙 스코프 지정

Custom Query 옵션을 선택한 상태에서 버튼을 클릭하면 Building Query from Board dialog가 열립니다. 이 dialog에서는 조건문 문자열을 간단히 구성하여 설계 문서 내 특정 객체를 대상으로 하는 쿼리를 만들 수 있습니다.

dialog의 왼쪽 섹션은 필요한 객체 집합을 대상으로 하기 위해 필요한 조건을 지정하는 데 사용됩니다. 각 조건은 Condition Type 및 Condition Value로 구성됩니다. 이들에 대한 드롭다운 필드는 각각 현재 규칙 유형의 스코프를 구성하는 데 관련 있는 항목과, 선택한 조건 유형에 대한 값으로 채워집니다.

조건을 정의하면, 현재 구성된 쿼리의 미리보기가 대화상자의 오른쪽 영역에 표시됩니다. 조건은 AND 및/또는 OR로 결합할 수 있으며, 우선순위도 괄호/들여쓰기를 사용해 반영하여 대상 객체 집합을 더욱 정교하게 지정할 수 있습니다. 쿼리 표현식을 원하는 대로 정의한 후 OK을 클릭하면 표현식이 PCB Rules and Constraints Editor 대화상자의 쿼리 영역으로 로드됩니다.

참고로, PCB Rules and Constraints Editor 대화상자에 표시될 때 쿼리 표현식의 시작과 끝에는 각각 추가 여는 괄호와 닫는 괄호가 더해집니다.

Query Builder을 사용하면 일련의 조건문을 통해 논리적 쿼리 표현식을 작성할 수 있습니다.
Query Builder을 사용하면 일련의 조건문을 통해 논리적 쿼리 표현식을 작성할 수 있습니다.

Query Helper를 사용한 규칙 범위 지정

Custom Query 옵션을 선택한 경우, 버튼을 클릭하여 Query Helper 대화상자에 액세스합니다. 내부 Query Engine이 PCB 설계를 분석하여, 쿼리에 사용할 수 있는 일반 키워드와 함께 사용 가능한 모든 객체를 나열합니다.

Query Helper 사용법은 상당히 직관적이며, 특히 아래 이미지와 같이 세 개의 구분된 영역으로 나누어 보면 더욱 이해하기 쉽습니다.

Query Helper을 사용해 정의한 복잡한 쿼리의 예.
Query Helper을 사용해 정의한 복잡한 쿼리의 예.

이 영역들은 다음과 같습니다.

  1. Query Region – 이 대화상자 영역은 쿼리 표현식을 작성하는 데 사용됩니다. 기본적으로 대화상자를 열면 현재 규칙 범위에 적용 중인 표현식이 이 영역에 표시됩니다. 이 영역에 직접 입력할 수 있으며, 도움을 위해 가능한 키워드나 객체의 문맥 인식형 '프롬프트 목록'이 나타납니다.
  2. Operators – 이 대화상자 영역은 표현식을 구성할 때 사용할 수 있는 다양한 수학 및 논리 연산자를 제공합니다. 버튼을 클릭하면 위의 Query 영역에 있는 쿼리 표현식의 현재 커서 위치에 해당 연산자가 추가됩니다.
  3. Categories, Keywords and Objects – 이 대화상자 영역에서는 사용 가능한 PCB Functions, PCB Object Lists, System Functions에 접근할 수 있으며, 이를 사용해 쿼리 표현식을 만들 수 있습니다. 이 세 영역 각각에서 하위 범주를 클릭하면 오른쪽 영역에 해당 키워드 또는 객체 목록이 표시됩니다. 쿼리 문자열에 사용할 키워드 또는 객체를 찾은 다음 해당 항목을 더블클릭하면, 위의 Query 영역에 있는 쿼리 표현식의 현재 커서 위치에 삽입됩니다.

버튼(대화상자 왼쪽 아래)을 사용하면 표현식의 구문이 올바른지 확인할 수 있습니다. 쿼리 표현식을 원하는 대로 정의한 후 OK을 클릭하면 표현식이 PCB Rules and Constraints Editor 대화상자의 쿼리 영역으로 로드됩니다.

Query Helper 대화상자를 사용해 쿼리를 작성할 때, 사용 가능한 목록 중 하나에서 키워드를 클릭한 다음 F1를 누르면 해당 키워드에 대한 문서가 Query Language Reference에서 열립니다.

쿼리 표현식 연산자 우선순위

이 부분을 마치기 전에, 논리적 Query 표현식에 사용되는 연산자의 우선순위를 살펴볼 필요가 있습니다. 결국 이 지식이 없으면 표현식이 원하는 객체를 정확히 대상으로 지정하지 못할 수 있습니다.

괄호는 다양한 연산자에 대해 정의된 우선순위 체계에서 가장 높은 우선순위를 가지며, 이 체계는 사용자가 괄호를 제공하지 않았을 때 소프트웨어가 쿼리를 어떻게 해석할지를 결정합니다. 이 우선순위의 순서는 높은 것부터 낮은 것까지 다음과 같습니다.

  1. 괄호
  2. Not
  3. ^, *, /, Div, Mod, And
  4. +, -, Or, Xor
  5. =, <>, <, >, <=, >=
  6. &&, ||

이 우선순위 체계는 Pascal 계열 언어에서 사용하는 방식과 유사합니다. 모호한 경우에는 왼쪽에서 오른쪽으로 처리하여 해결합니다. 괄호는 안쪽에서 바깥쪽 순서로 평가되며, 같은 우선순위 수준에서는 왼쪽에서 오른쪽으로 평가됩니다.

쿼리가 잘못 해석될 가능성이 조금이라도 있다면 언제든 괄호를 사용하는 것이 매우 권장됩니다. 괄호를 충분히 사용하면 해석상의 의문을 없앨 수 있고, 다른 사람이 결과 쿼리를 더 쉽게 읽을 수 있습니다.

규칙 우선순위 지정

규칙 정의 및 관리 과정을 단순화하기 위해, 먼저 광범위한 요구사항을 포괄하는 일반 규칙을 정의한 다음 특정 상황에서는 이를 더 구체적인 규칙으로 재정의하는 방식이 사용됩니다. 이렇게 하려면 동일한 유형의 여러 규칙이 하나의 객체를 대상으로 할 때 어떤 규칙을 사용할지 나타낼 수 있도록 규칙의 우선순위를 지정할 수 있어야 합니다.

예를 들어, 보드에서 가장 일반적으로 사용되는 라우팅 폭을 지정하려면 보드의 모든 넷에 적용되는 단일 규칙을 정의합니다. 그런 다음 특정 넷(또는 넷 클래스)에 대해서는 동일한 유형이지만 더 높은 우선순위를 가진 다른 규칙을 추가하여 이 규칙을 재정의할 수 있습니다.

또 다른 예로는 솔더 마스크 요구사항이 있습니다. 이 경우 보드의 모든 패드와 비아를 대상으로 하는 하나의 마스크 규칙을 정의한 다음, 특정 풋프린트 종류의 패드에 대해서는 이를 재정의할 수 있습니다. 필요하다면 이 풋프린트별 규칙도 해당 풋프린트의 특정 패드에 대해 다시 재정의할 수 있습니다.

규칙 관리에서 중요한 측면 중 하나는 모든 우선순위가 적절하게 설정되어 있는지 확인하는 것입니다. 새 규칙을 만들면 기본적으로 가장 높은 우선순위가 부여됩니다. PCB Rules and Constraints Editor 대화상자 하단의 Priorities 버튼을 사용하여 Edit Rule Priorities 대화상자에서 우선순위를 구성합니다.

Edit Rule Priorities 대화상자에서 규칙 우선순위를 변경합니다.
Edit Rule Priorities 대화상자에서 규칙 우선순위를 변경합니다.

처음에는 현재 PCB Rules and Constraints Editor 대화상자에서 선택된 규칙 유형에 대한 모든 규칙 인스턴스가 이 대화상자에 나열됩니다. Rule Type 필드를 사용하여 규칙 유형을 변경하고 해당 유형에 대해 정의된 특정 규칙을 나열할 수 있습니다. 정의된 규칙은 현재 우선순위 순서대로, 즉 1(가장 높은 우선순위)부터 아래로 나열됩니다. 규칙 항목을 선택한 다음 Increase PriorityDecrease Priority 버튼을 사용하여 각각 우선순위 순서에서 위 또는 아래로 이동할 수 있습니다.

하나 이상의 기존 규칙이 이미 포함된 규칙 유형에 새 규칙을 추가하면 우선순위는 1(즉, 가장 높은 우선순위)로 설정됩니다. 규칙을 복제하면 복사본에는 원본 규칙 바로 아래의 우선순위가 부여됩니다.

동일한 유형의 여러 규칙을 설정할 수 있습니다. 하나의 설계 객체가 동일한 범위를 가진 둘 이상의 규칙에 포함되는 상황이 발생할 수 있습니다. 이 경우 충돌이 존재합니다. 모든 충돌은 우선순위 설정으로 해결됩니다. 시스템은 가장 높은 우선순위부터 가장 낮은 우선순위까지 규칙을 검사하면서, 검사 중인 객체와 범위 표현식이 일치하는 첫 번째 규칙을 선택합니다. 단, 예외가 하나 있는데, 여러 Matched Length 설계 규칙을 객체에 적용할 수 있으며, 이 경우 해당 객체에는 모든 규칙이 적용됩니다.

기존 규칙 수정

물론 규칙은 언제든 수정할 수 있습니다. 실제로 최종적으로 동작하는 규칙 집합에 도달하려면 여기저기서 몇 가지 핵심적인 미세 조정이 필요한 경우가 많습니다. 일반적으로 이는 필요한 대상 설계 객체가 각 규칙에 의해 제대로 '선택'되도록 범위를 조정하는 작업을 포함합니다. PCB Rules and Constraints Editor 대화상자에서 기존 규칙을 선택하고, 필요에 따라 해당 범위 및 제약 조건 속성을 변경합니다.

기존 규칙 정의에 대한 변경 사항은 폴더 트리 창과 해당 요약 목록 모두에서 강조 표시됩니다. 이러한 항목은 규칙 이름이 굵게 표시되고 이름 오른쪽에 별표가 표시되어 구분됩니다. 이 별표는 해당 규칙이 새로 생성된 규칙이 아니라 수정된 기존 규칙임을 나타내는 데 사용됩니다(새로 생성된 규칙은 별표 없이 굵게만 표시됨).

수정된 기존 규칙의 예. 수정 사항을 표시하기 위해 규칙 이름을 굵게 표시하고 별표를 함께 사용합니다.
수정된 기존 규칙의 예. 수정 사항을 표시하기 위해 규칙 이름을 굵게 표시하고 별표를 함께 사용합니다.

특정 규칙 유형에 대해 새 규칙이 생성되면 자동으로 우선순위 1이 부여됩니다. 해당 유형의 다른 규칙이 이미 존재하는 경우, 그 규칙들의 우선순위는 그에 따라 한 단계씩 이동(낮아짐)합니다. 그러면 범위/제약 조건 수준에서 직접 수정되지 않았더라도 수정된 것으로 간주됩니다. 따라서 해당 유형의 이러한 기존 규칙은 모두 수정된 상태(굵게 및 별표 표시)로 표시됩니다.

유효하지 않은 규칙 표시

시스템이 규칙을 유효하지 않은 것으로 감지하면(예: 범위 지정 쿼리 표현식에 문제가 있거나 허용되지 않는 제약 조건 값이 있는 경우) 해당 규칙은 유효하지 않은 것으로 표시됩니다. 이러한 규칙은 PCB Rules and Constraints Editor 대화상자 내에서 왼쪽 규칙 트리와 규칙이 표시되는 모든 요약 보기(규칙 범주 또는 규칙 유형)에서 빨간색으로 강조 표시됩니다. 또한 규칙 유형과 규칙 범주의 텍스트도 왼쪽 규칙 트리에서 빨간색으로 표시됩니다. 따라서 유효하지 않은 규칙이 포함된 규칙 트리 영역을 접어 둔 경우에도 계층 구조의 더 상위 수준에서 이를 확인할 수 있습니다. 대화상자를 닫으려고 하면 경고 메시지도 표시됩니다.

구문 오류가 있는 규칙 범위는 Online 및 Batch DRC 분석 속도를 크게 저하시킬 수 있으므로, 구문적으로 올바르지 않은 규칙 범위는 반드시 해결해야 합니다.

시스템이 유효하지 않은 설계 규칙을 표시하는 예로, 이 경우에는 잘못된 범위 쿼리 표현식입니다.
시스템이 유효하지 않은 설계 규칙을 표시하는 예로, 이 경우에는 잘못된 범위 쿼리 표현식입니다.

규칙 비활성화

소프트웨어의 PCB 편집기에서 규칙 기반 환경을 사용하다 보면, 보드를 성공적으로 제약하기 위해 상당히 인상적이고 포괄적인 규칙 집합을 구축하게 되는 경우가 드물지 않습니다. 작업을 진행하는 과정에서 어떤 이유로든 일부 규칙을 비활성화하고 싶을 수 있습니다. 예를 들어 해당 규칙이 현재 보드에는 적용되지 않거나, Design Rule Checker의 부하를 줄여 결과적으로 성능을 높이기 위해 일시적으로 비활성화해야 할 수도 있습니다. 비활성화는 나중에 다시 필요할 경우를 대비해 이러한 규칙을 유지해 두는 좋은 방법입니다.

규칙을 비활성화하려면 PCB Rules and Constraints Editor 대화상자의 오른쪽에 있는 관련 요약 목록 중 하나에서 해당 규칙의 Enable 옵션을 전환하십시오. 비활성화된 규칙은 흐리게 표시됩니다.

요약 목록에서 회색 글꼴로 표시된 비활성화 규칙의 예.
요약 목록에서 회색 글꼴로 표시된 비활성화 규칙의 예.

규칙은 PCB Rules And Violations panel에서 직접 비활성화/활성화할 수도 있습니다. 규칙에 연결된 On 옵션을 전환하십시오. 그러면 이 변경 사항이 PCB Rules and Constraints Editor 대화상자의 해당 규칙 Enable 옵션에 반영됩니다.

규칙 삭제

PCB Rules and Constraints Editor 대화상자에서 단일 설계 규칙을 삭제하려면 다음과 같이 하십시오.

  • 왼쪽의 트리를 사용하여 필요한 기존 규칙으로 이동한 다음, 마우스 오른쪽 버튼을 클릭하고 컨텍스트 메뉴에서 Delete Rule를 선택합니다.
  • 왼쪽 트리에서 특정 규칙 유형으로 이동한 다음, 오른쪽 요약 목록에서 삭제할 규칙을 선택합니다. 그런 다음 목록 아래의 Delete Rule(s) 버튼을 클릭합니다.

규칙 이름은 아직 '적용'되지 않은 삭제 항목임을 구분할 수 있도록 굵은 취소선으로 표시됩니다.

단일 규칙 삭제.
단일 규칙 삭제.

  • 특정 설계 규칙이 더 이상 필요하지 않지만 나중에 다시 사용할 가능성이 있다면, 삭제하는 대신 간단히 비활성화할 수 있습니다. 이렇게 하려면 PCB Rules and Constraints Editor 대화상자 오른쪽의 관련 요약 목록 중 하나에서 해당 규칙의 Enable 옵션을 전환하십시오.

  • 여러 규칙은 요약 목록 보기에서 한 번에 삭제할 수 있습니다. 이렇게 하려면 삭제할 규칙을 선택한 다음(표준 Shift+clickCtrl+click 단축키 지원), 목록 아래의 Delete Rule(s) 버튼을 클릭합니다.

  • Design Rule Check 시스템이 작동하려면 반드시 존재해야 하는 규칙들이 있습니다. 이러한 규칙 중 하나가 삭제되어 해당 규칙 유형이 하나도 남지 않으면 자동으로 다시 생성됩니다. 기본 설계 규칙에 대해 자세히 알아보십시오.

많은 규칙 유형은 새 PCB 문서를 만들 때 기본 규칙이 생성됩니다. 이와 비슷하게, 그러한 규칙 유형 중 하나에 대한 모든 특정 규칙이 삭제되면 다음에 PCB Rules and Constraints Editor 대화상자에 접근할 때 기본 규칙이 자동으로 다시 추가됩니다. 또는 대화상자 하단의 Create Default Rules 버튼을 클릭하여 기본 규칙을 다시 생성할 수도 있습니다.

규칙 내보내기 및 가져오기

설계 규칙은 PCB Rules and Constraints Editor 대화상자에서 내보내고 가져올 수 있습니다. 이를 통해 서로 다른 설계 간에 자주 사용하는 규칙 정의를 저장하고 불러올 수 있습니다.

  • To export – 대화상자 왼쪽의 트리 내부 아무 곳이나 마우스 오른쪽 버튼으로 클릭한 다음 Export Rules를 선택합니다. 그러면 Choose Design Rule Type dialog가 열리고, 여기서 내보낼 설계 규칙을 선택할 수 있습니다. 이어서 열리는 Export Rules to File 대화상자에서 .rul 파일 이름과 저장 위치를 지정할 수 있습니다. 내보낸 규칙은 PCB Rule 파일(*.rul)에 저장됩니다.
  • To import – 대화상자 왼쪽의 트리 내부 아무 곳이나 마우스 오른쪽 버튼으로 클릭한 다음 Import Rules를 선택합니다. 그러면 Choose Design Rule Type dialog가 열리고, 여기서 가져올 설계 규칙을 선택할 수 있습니다. 이어서 열리는 Import File 대화상자에서 가져올 .rul 파일을 찾아 지정합니다. 

가져오기 시 선택한 유형의 규칙이 이미 존재하면, 가져오기 전에 기존 규칙을 지울지 여부를 선택할 수 있습니다. Yes를 클릭하면 해당 유형의 기존 규칙이 모두 삭제되고, 이어서 .rul 파일의 규칙으로 대체됩니다. No를 클릭하면 기존 규칙이 유지됩니다. 그러나 기존 규칙과 가져온 규칙의 이름이 같으면 가져온 규칙이 기존 규칙을 덮어씁니다.

설계 규칙 보고서

현재 정의된 설계 규칙에 대한 보고서는 PCB Rules and Constraints Editor 대화상자에서 생성할 수 있습니다. 보고서는 폴더 트리에서 선택한 항목에 따라 모든 규칙 범주, 특정 규칙 범주 또는 특정 규칙 유형에 맞춰 생성할 수 있습니다. 보고서는 다음 방법으로 생성할 수 있습니다.

  • 필요한 요약 목록으로 이동한 후 마우스 오른쪽 버튼을 클릭하고 컨텍스트 메뉴에서 Report 명령을 선택하거나, 목록 아래의 Report 버튼을 클릭합니다.
  • 폴더 트리에서 해당 항목을 마우스 오른쪽 버튼으로 클릭한 다음 컨텍스트 메뉴에서 Report 명령을 선택합니다.

그러면 적절한 보고서가 이미 로드된 상태로 Report Preview 대화상자가 열립니다. 이 대화상자에서 다양한 페이지/확대 제어를 사용해 보고서를 검토한 후, 최종적으로 파일로 내보내거나 인쇄할 수 있습니다.

PCB 규칙 보고서 생성.
PCB 규칙 보고서 생성.

회로도에서 규칙 정의하기

설계 제약조건(규칙)은 구성된 규칙이 포함된 Parameter Set 지시자를 회로도 소스 문서에 추가하여 PCB 레이아웃 전에 정의할 수 있습니다. 설계가 PCB 문서로 전송될 때 생성되는 해당 PCB 설계 규칙의 범위는 해당 파라미터가 할당된 객체의 성격에 따라 결정됩니다. 다음 표는 지원되는 회로도 파라미터-대-PCB 규칙 범위 옵션을 요약한 것입니다.

다음에 규칙 추가... 다음에서... 다음 PCB 규칙 범위에 대해...
와이어 Properties panel(선택한 parameter set 객체의 속성을 탐색할 때)에서, Parameter Set objectPlace » Directives » Parameter Set 명령을 사용하여 와이어 위에 배치한 후.
버스 Properties panel(선택한 parameter set 객체의 속성을 탐색할 때)에서, Parameter Set objectPlace » Directives » Parameter Set 명령을 사용하여 버스 위에 배치한 후. 넷 클래스
하네스 Properties panel(선택한 parameter set 객체의 속성을 탐색할 때)에서, Parameter Set objectPlace » Directives » Parameter Set 명령을 사용하여 하네스 위에 배치한 후. 넷 클래스
블랭킷 Properties panel(선택한 parameter set 객체의 속성을 탐색할 때)에서, Parameter Set objectPlace » Directives » Parameter Set 명령을 사용하여 블랭킷의 가장자리에 배치한 후. 필요한 이름의 클래스를 포함하면 블랭킷으로 덮인 모든 넷에 대한 넷 클래스가 생성되며, 이후 규칙 범위에 사용됩니다. 넷 클래스

각 경우 모두 규칙 기반 파라미터를 추가하는 방법은 동일합니다.

  1. 파라미터를 규칙으로 추가합니다.
  2. 사용할 규칙 유형을 선택합니다.
  3. 선택한 규칙 유형에 대한 제약조건을 구성합니다.
회로도의 객체에 설계 규칙 파라미터를 추가하면 각 규칙 파라미터에 고유 ID가 부여됩니다. 동일한 ID가 PCB에서 생성되는 해당 설계 규칙에도 부여됩니다. 이 Unique ID를 통해 회로도 측이나 PCB 측 어느 쪽에서든 규칙의 제약조건을 편집할 수 있으며, 동기화 시 변경 사항을 반영할 수 있습니다.

규칙 적용 확인

보드 설계에 따라 매우 단순한 것부터 매우 복잡한 것까지 다양한 범위를 갖는 상당수의 설계 규칙을 정의해야 할 수 있습니다. 정의된 규칙이 실제로 의도한 객체를 대상으로 하는지 확인하는 것이 좋습니다. 규칙 정의 단계에서 주의를 기울이면 잘못된 규칙 범위 지정으로 인해 발생하는 위반을 추적하느라 낭비되는 시간과 노력을 줄일 수 있습니다.

규칙 범위를 검증하는 방법은 기본적으로 두 가지입니다. 설계 객체를 선택하여 현재 해당 객체에 적용되는 규칙을 확인하거나, 규칙 자체를 기준으로(소프트웨어의 여러 위치에서) 어떤 객체가 그 범위에 속하는지 확인하는 방법입니다.

객체 관점에서

현재 설계에 배치된 어떤 객체에 대해서도, 해당 객체에 적용되는 단항 설계 규칙 정보를 빠르게 확인할 수 있습니다. 객체 위에 커서를 놓고 마우스 오른쪽 버튼을 클릭한 다음 Applicable Unary Rules을 선택합니다. 선택한 객체에 적용될 수 있는 모든 정의된 설계 규칙이 분석되어 Applicable Unary Rules 대화상자에 나열됩니다.

단일 예제 설계 객체에 적용되는 설계 규칙 - 단항 규칙.
단일 예제 설계 객체에 적용되는 설계 규칙 - 단항 규칙.

대화상자에 나열된 각 규칙 옆에는 체크() 또는 X표()가 표시됩니다. 체크는 동일한 유형의 적용 가능한 모든 규칙 중 가장 높은 우선순위의 규칙을 의미하며, 이것이 현재 적용되는 규칙입니다. 동일한 유형의 더 낮은 우선순위 규칙은 X표와 함께 나열되며, 이는 적용 가능하지만 가장 높은 우선순위 규칙이 아니므로 현재는 적용되지 않음을 의미합니다.

현재 비활성화되어 있어 객체에 적용되지 않는 규칙도 X표와 함께 표시되며 취소선 강조로 나타납니다.

비슷한 방식으로, 설계 내에 배치된 두 객체 사이에 적용되는 이항 설계 규칙 정보도 확인할 수 있습니다. 아무 객체 위에 커서를 놓고 마우스 오른쪽 버튼을 클릭한 다음 Applicable Binary Rules을 선택합니다. 안내에 따라 설계에서 두 객체를 선택합니다. 그러면 Applicable Binary Rules 대화상자가 열리고 해당 객체들 사이에 적용되는 모든 이항 설계 규칙이 표시됩니다.

선택한 두 객체에 적용되는 이항 규칙이 없으면 Binary  버전의  Applicable Rules 대화상자는 열리지 않습니다.

두 예제 설계 객체 사이에 적용되는 설계 규칙 - 이항 규칙.
두 예제 설계 객체 사이에 적용되는 설계 규칙 - 이항 규칙.

규칙 관점에서

PCB Rules And Violations Panel을 통한 확인

PCB Rules And Violations panel에서 특정 규칙이 어떤 객체에 적용되는지도 빠르게 확인할 수 있습니다. 이 패널에는 현재 설계에 대해 정의된 모든 규칙이 나열됩니다. 모든 규칙을 볼 수도 있고, 활성 설계에 대해 해당 유형의 규칙이 하나 이상 정의되어 있는 경우 특정 규칙 유형별로 탐색할 수도 있습니다. 패널의 Rules 영역에서 특정 규칙을 클릭하면 해당 규칙을 필터 범위로 사용하여 필터링이 적용됩니다. 규칙의 범위에 속하는 설계 객체만 필터링됩니다. Mask(또는 Dim) 강조 기능을 사용하면 규칙이 대상으로 하는 결과 객체를 빠르게 확인할 수 있습니다.

선택한 규칙이 어떤 객체에 적용되는지 확인하기 위해 PCB Rules And Violations 패널을 사용하는 예.
선택한 규칙이 어떤 객체에 적용되는지 확인하기 위해 PCB Rules And Violations 패널을 사용하는 예.

대화상자의 강조 방법이 Mask로 설정된 경우, 활성 필터 범위에 속하지 않는 객체에 적용되는 마스킹 수준은 Masked Objects 슬라이더 바를 사용하여 조정할 수 있으며, 이 슬라이더는 Mask and Dim Settings 섹션의 View Options 탭에 있는 View Configuration panel에서 액세스할 수 있습니다. 대화상자의 강조 방법이 Dim로 설정된 경우, 활성 필터 범위에 속하지 않는 객체에 적용되는 디밍 수준은 이 패널의 같은 섹션에서 사용할 수 있는 Dimmed Objects 슬라이더 바를 사용하여 조정할 수 있습니다.

PCB Rules And Violations 패널을 사용하여 규칙이 어떤 객체에 적용되는지 확인하는 기능은 규칙 범위에 대한 쿼리를 만들 때 특히 유용합니다. 패널에서 직접 규칙을 편집할 수 있으므로 원하는 객체가 범위에 포함될 때까지 쿼리를 미세 조정할 수 있습니다.

규칙의 범위와 제약조건을 편집하려면 패널에서 해당 규칙 항목을 더블클릭하거나 마우스 오른쪽 버튼을 클릭한 다음 컨텍스트 메뉴에서 Properties을 선택합니다. 그러면 관련 Edit PCB Rule 대화상자가 나타나고, 여기서 변경할 수 있습니다.

대화상자에서 제공되는 컨트롤과 배너 텍스트는 편집 중인 설계 규칙의 유형에 따라 달라집니다.

규칙은 PCB Rules And Violations 패널에서 직접 편집할 수 있으므로 규칙 범위 및/또는 제약조건을 즉시 더욱 세부적으로 조정할 수 있습니다.
규칙은 PCB Rules And Violations 패널에서 직접 편집할 수 있으므로 규칙 범위 및/또는 제약조건을 즉시 더욱 세부적으로 조정할 수 있습니다.

PCB Rules and Constraints Editor Dialog를 통한 확인

PCB Rules and Constraints Editor 대화상자에는 쿼리 테스트 기능이 포함되어 있어 특정 규칙이 어떤 객체에 적용되는지 빠르게 확인할 수 있습니다. 테스트하려는 규칙의 대화상자 오른쪽 상단에 있는 버튼을 클릭합니다. 그러면 Test Queries Result 대화상자가 나타납니다. 이 대화상자에는 다음 내용이 반영됩니다.

  • Expression result - 식의 범위에 속하는 객체 수.

  • Objects applicable to rule - 현재 규칙의 식과 유형을 기준으로 적용 가능한 객체 수.

  • Expression and rule priority (단항 규칙에만 해당) - 현재 규칙의 식, 유형 및 우선순위를 기준으로 적용 가능한 객체 수(즉, 더 높은 우선순위의 규칙이 있는 경우 해당 규칙의 범위에 속하는 객체는 이 값에 포함되지 않음).

  • Rules with highest priorities (단항 규칙에만 해당) - 더 높은 우선순위의 규칙이 있는 경우 해당 규칙 목록과 그 규칙에 적용 가능한 객체 수(즉, 해당 규칙의 Expression and rule priority 값)가 대화상자에 표시됩니다.

오른쪽의 링크를 클릭하면 각 경우에 적용 가능한 객체를 설계 공간에서 직접 빠르게 필터링하여 볼 수 있습니다. Mask 드롭다운에서 NormalMask,  또는 Dim 를 선택하여 PCB 문서에서 영향을 받는 객체를 어떤 방식으로 강조할지 지정합니다. Zoom 가 선택되어 있으면 PCB 문서는 영향을 받는 컴포넌트로 확대도 수행합니다.

Test Queries 기능을 사용하여 규칙의 범위 지정 식에 포함되는 객체를 빠르게 확인합니다.
Test Queries 기능을 사용하여 규칙의 범위 지정 식에 포함되는 객체를 빠르게 확인합니다.

AI-LocalizedAI로 번역됨
만약 문제가 있으시다면, 텍스트/이미지를 선택하신 상태에서 Ctrl + Enter를 누르셔서 저희에게 피드백을 보내주세요.
기능 제공 여부

사용 가능한 기능은 보유하고 계시는 Altium 솔루션에 따라 달라집니다. 해당 솔루션은 Altium Develop, Altium Agile의 에디션(Agile Teams 또는 Agile Enterprise), 또는 활성기간 내의 Altium Designer 중 하나입니다.

안내된 기능이 고객님의 소프트웨어에서 보이지 않는 경우, 보다 자세한 내용을 위해 Altium 영업팀 에 문의해 주세요.

구버전 문서

Altium Designer 문서는 더 이상 버전별로 제공되지 않습니다. 이전 버전의 Altium Designer 문서가 필요하신 경우, Other Installers 페이지의 Legacy Documentation 섹션을 방문해 주세요.

콘텐츠