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 Editor는 설계 요구사항을 정의하기 위해 Design Rules 개념을 사용합니다. 설계 요구사항은 세련된 target these objects and apply those requirementsconstraint-driventarget these objects and apply those requirements 방식으로 적용됩니다. 설계 규칙은 PCB 편집기가 따라야 할 하나의 '명령 세트'를 구성합니다. 여기에는 배선 폭, 이격, 폴리곤 연결 스타일, 비아 스타일 등 설계의 모든 측면이 포함되며, 많은 규칙은 온라인 Design Rule Checker (DRC)를 통해 실시간으로 모니터링할 수 있습니다. 또한 언제든지 일괄 검사를 실행하여 DRC 보고서를 생성할 수도 있습니다. 규칙은 객체와 독립적으로 정의됩니다.

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

규칙은 키워드 기반의 query language를 사용해 객체를 대상으로 지정합니다. 이는 NetClass 또는 All와 같은 넓은 식별자부터, 까다롭고 상황별로 구체적인 설계 요구사항을 정확히 지정하는 정밀한 쿼리까지 다양합니다.

설계 규칙 집합이 잘 정의되어 있으면, 다양하고 종종 엄격한 설계 요구사항을 가진 보드 설계를 성공적으로 완료할 수 있습니다. 또한 PCB Editor는 규칙 기반으로 동작하므로, 설계 초기에 규칙을 설정하는 데 시간을 투자하면 이후 실제 설계 작업을 훨씬 효율적으로 진행할 수 있으며, 규칙 시스템이 성공적인 설계를 보장하기 위해 지속적으로 작동하고 있다는 확신도 얻을 수 있습니다.

정의된 설계 규칙의 검사에 대한 자세한 내용은 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 명령을 선택하여 열 수 있습니다.

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

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

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

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

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

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

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

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

    요약 목록에서 각 규칙은 다음 항목으로 표시됩니다:

    • 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 기능을 사용하십시오. 이 기능은 두 가지 방법으로 접근할 수 있습니다:

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

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

규칙 복제 기능을 사용하면 유사한 규칙을 더 효율적으로 만들 수 있습니다.
규칙 복제 기능을 사용하면 유사한 규칙을 더 효율적으로 만들 수 있습니다.

복제된 규칙은 원본과 같은 이름을 가지되, 이를 구분하기 위해 접미사(예: _1)가 추가됩니다. 정의(스코프, 제약 등)는 원본과 동일합니다. 우선순위 측면에서는 원본 규칙 바로 아래의 다음 우선순위가 부여됩니다. 예를 들어 원본 규칙의 우선순위가 1이면, 복제본에는 2 우선순위가 부여됩니다.

PCB Filter 패널에서 규칙 만들기

설계 규칙은 대상 설계 객체 집합에 적용되도록 스코프가 지정되므로, 먼저 그 객체를 식별한 다음 이를 대상으로 하는 설계 규칙을 만드는 편이 더 쉽고 빠를 수 있습니다. 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 panel은(는) HistoricalFavorite 쿼리 개념을 지원합니다.

패널에서 쿼리를 입력하고 적용하면 해당 쿼리가 쿼리 '히스토리 목록'에 추가됩니다. 또한 Add To Favorites 버튼을 클릭하여 그 쿼리를 쿼리 '즐겨찾기 목록'에 추가할 수 있습니다. 패널의 HistoryFavorites 버튼을 사용하면 Expression Manager dialog 내에서 같은 이름의 해당 탭에 액세스하여 이러한 목록을 확인할 수 있습니다.

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

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

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

디자인 규칙 스코핑

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

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

설계 규칙의 스코프를 설정하여 설계 객체에 대한 적용 범위를 정의합니다.
설계 규칙의 스코프를 설정하여 설계 객체에 대한 적용 범위를 정의합니다.

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

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

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

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

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

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

규칙이 unary인지 binary인지에 따라 각각 하나 또는 두 개의 스코프를 정의해야 합니다. unary 설계 규칙의 경우 단일 규칙 스코프를 정의하는 컨트롤이 제공됩니다. Where The Object Matches 영역에서 제공되는 옵션을 사용해 쿼리 표현식을 작성할 수 있으며, 작성된 표현식은 오른쪽 영역에 표시됩니다. binary 설계 규칙의 경우 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에 익숙하다면 쿼리 영역에 직접 쿼리 표현식을 입력할 수 있습니다. 또한 자주 사용하는 편집기에서 쿼리 표현식을 직접 이 영역에 붙여넣거나, 쿼리 표현식을 외부 편집기로 복사하거나, 심지어 binary 규칙의 두 번째 스코프에 쿼리를 붙여넣을 수도 있습니다. 이는 두 스코프가 복잡하면서도 약간만 다를 때 특히 유용합니다.

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

Query Builder로 규칙 스코핑하기

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

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

조건이 정의되면 현재 작성된 쿼리의 미리보기가 dialog 오른쪽 섹션에 표시됩니다. 조건은 AND 및/또는 OR로 결합할 수 있으며, 우선순위도 포함할 수 있습니다(괄호/들여쓰기 사용). 이렇게 하여 대상 객체 집합을 더 정교하게 만들 수 있습니다. 필요한 대로 쿼리 표현식이 정의되면 OK을(를) 클릭하여 표현식을 PCB Rules and Constraints Editor dialog의 쿼리 영역에 로드합니다.

PCB Rules and Constraints Editor dialog에 표시될 때는 쿼리 표현식의 시작과 끝에 각각 추가 여는 괄호와 닫는 괄호가 붙는다는 점에 유의하십시오.

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

Query Helper로 규칙 스코핑하기

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

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

Query Helper을(를) 사용해 정의한 복잡한 쿼리 예시.
Query Helper을(를) 사용해 정의한 복잡한 쿼리 예시.

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

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

버튼(dialog의 왼쪽 아래)을 사용하여 표현식이 구문적으로 올바른지 확인하십시오. 필요한 대로 쿼리 표현식이 정의되면 OK을(를) 클릭하여 표현식을 PCB Rules and Constraints Editor dialog의 쿼리 영역에 로드합니다.

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

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

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

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

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

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

쿼리가 올바르게 해석되지 않을 가능성이 조금이라도 있다면 언제든지 괄호를 사용하는 것이 매우 바람직합니다. 괄호를 넉넉히 사용하면 모호함이 사라지고, 결과 쿼리를 다른 사람도 더 쉽게 읽을 수 있습니다.

규칙 우선순위 지정

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

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

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

규칙 관리의 중요한 측면은 모든 우선순위가 적절하게 설정되어 있는지 확인하는 것입니다. 새 규칙이 생성되면 기본적으로 가장 높은 우선순위를 가집니다. PCB Rules and Constraints Editor dialog 하단의 Priorities 버튼을 사용하여 Edit Rule Priorities dialog에서 우선순위를 구성하십시오.

Edit Rule Priorities dialog에서 규칙 우선순위를 변경합니다.
Edit Rule Priorities dialog에서 규칙 우선순위를 변경합니다.

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

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

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

기존 규칙 수정

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

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

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

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

유효하지 않은 규칙 표시

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

구문 오류가 있는 규칙 스코프는 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 파일을 찾아 지정하십시오. 

이미 존재하는 것과 동일한 이름의 하나 이상의 규칙 세트가 포함된 *.rul 파일을 가져오면, Select Design Rules 대화상자()에서 를 클릭한 후 Rule Set Already Exists 대화상자가 열립니다. 세트 내 가져온 규칙을 처리하기 위해 다음 작업을 사용할 수 있습니다.

  • Add to existing rules – 선택한 모든 규칙을 가져옵니다. 충돌이 있는 경우(설계에 동일한 이름의 규칙이 이미 존재하는 경우), 파일의 규칙은 이름 끝에 _<n> 접미사가 추가된 상태로 가져와집니다.

  • Add and replace matching rules – 선택한 모든 규칙을 가져옵니다. 충돌이 있는 경우 기존 설계 규칙이 파일의 규칙으로 대체됩니다.

  • Replace all – 해당 규칙 세트의 기존 규칙을 모두 제거한 후 선택한 모든 규칙을 가져옵니다.

PCB에 이미 존재하는 규칙 세트가 둘 이상인 경우, 열리는 Some Rule Sets Already Exist 대화상자()에서 각 규칙 세트마다 위 옵션 중 하나를 선택할 수 있습니다.

설계 규칙 보고서

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

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

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

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

회로도에서 규칙 정의

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

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

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

  1. 파라미터를 규칙으로 추가합니다.

  2. 사용할 규칙 유형을 선택합니다.

  3. 선택한 규칙 유형에 대한 제약조건을 구성합니다.

회로도상의 객체에 설계 규칙 파라미터를 추가할 때 각 규칙 파라미터에는 고유 ID가 부여됩니다. 동일한 ID가 PCB에서 생성되는 해당 설계 규칙에도 부여됩니다. 이 Unique ID를 통해 규칙의 제약조건을 회로도 또는 PCB 어느 쪽에서든 편집할 수 있으며, 동기화 시 변경 사항이 반영됩니다.

Parameter Sets에 대해 자세히 알아보기.

회로도에서 설계 규칙을 정의하기 위해 Differential Pair directive와 Blanket을 함께 사용하는 예제 를 확인해 보십시오.

규칙 적용 확인

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

기본적으로 규칙 범위를 검증하는 방법은 두 가지입니다. 설계 객체를 선택하여 현재 그 객체에 적용되는 규칙을 조사하거나, 규칙 자체를 기준으로 하여 설계 내 어떤 객체가 그 범위에 포함되는지 확인하는 방법입니다.

객체 관점에서 보기

현재 설계에 배치된 임의의 객체에 대해, 해당 객체에 어떤 단항 설계 규칙이 적용되는지에 대한 정보를 빠르게 확인할 수 있습니다. 객체 위에 커서를 놓고 마우스 오른쪽 버튼을 클릭한 다음 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 panel을 사용하여 선택한 규칙이 어떤 객체에 적용되는지 확인하는 예.
PCB Rules And Violations panel을 사용하여 선택한 규칙이 어떤 객체에 적용되는지 확인하는 예.

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

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

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

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

규칙은 PCB Rules And Violations panel에서 직접 편집할 수 있으므로, 작업 중에 규칙 범위 및/또는 제약조건을 더욱 세밀하게 조정할 수 있습니다.
규칙은 PCB Rules And Violations panel에서 직접 편집할 수 있으므로, 작업 중에 규칙 범위 및/또는 제약조건을 더욱 세밀하게 조정할 수 있습니다.

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 Teams, Altium Agile Enterprise, 또는 Altium Designer(활성 기간 중))에 따라 달라집니다.

실제 소프트웨어에서 문서화된 기능이 보이지 않는 경우, Altium 영업팀에 문의하여 자세한 내용을 확인하세요.

구버전 문서

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

콘텐츠