인쇄회로기판(PCB)에서 연결을 라우팅하는 작업은 복잡하고 시간이 많이 소요됩니다. 대형 보드나 고밀도 보드에서는 라우팅 과정이 설계자에게 상당한 시간을 요구할 수 있으며, 이때 오토라우터가 도움이 될 수 있습니다.
Altium Designer의 Situs™ 오토라우터는 보드 공간을 매핑하기 위해 위상(토폴로지) 분석 기법을 사용합니다. 이는 기하학적(geometric) 또는 형상 기반(shape-based) 매핑과 달리 장애물의 형상이나 좌표에 의존하지 않습니다. 위상 매핑은 라우트 경로를 결정할 때 더 큰 유연성을 제공하며, 라우팅 방향에 대한 제약도 적습니다.
Situs라는 이름은 Situs Analysis에서 유래했는데, 이는 오늘날 일반적으로 토폴로지(topology)로 알려진 분야로, 크기나 형태 변화에 의해 보통 영향을 받지 않는 기하학적 도형 또는 입체의 성질을 연구하는 수학의 한 분야입니다.
보드 오토라우팅
Situs Topological Router는 오토라우팅 과제에 대한 새로운 접근 방식을 제공합니다. 먼저 고급 위상 매핑을 사용해 라우팅 경로를 정의한 다음, 다양한 검증된 라우팅 알고리즘을 호출하여 이 ‘사람처럼’ 보이는 경로를 고품질 라우트로 변환합니다. PCB Editor의 통합 구성요소로서, PCB 전기 규칙 및 라우팅 규칙 정의를 따릅니다.
보드 설정
Situs는 설정과 실행이 간단하지만, 최적의 라우팅 결과를 얻기 위해 알아두어야 할 몇 가지 사항이 있습니다.
부품 배치
궁극적으로 부품 배치는 라우팅 성능에 가장 큰 영향을 미칩니다. Altium Designer의 PCB Editor에는 동적으로 최적화되는 연결선 등 부품 배치를 미세 조정할 수 있는 다양한 도구가 포함되어 있습니다. 최적의 부품 배치란 연결선이 가능한 한 짧고, 서로 ‘엉킴’이 최소인 상태입니다.
그 밖의 좋은 설계 관행으로는 패드가 규칙적인 그리드 위에 오도록 부품을 배치하는 것(라우팅을 위한 패드 사이의 여유 공간을 최대화), 양면 보드에서 비슷한 크기의 SMD 부품을 서로 정확히 마주보게 배치하는 것, 디커플링 배치 가이드를 위해 디바이스 제조사의 데이터시트를 참고하는 것 등이 있습니다. 이는 배치 고려사항의 전체 목록이 아니라, 몇 가지 제안에 불과합니다.
Keepout
라우터는 배치된 keepout 객체로 구성된 닫힌 경계를 필요로 합니다. 일반적으로 이 경계는 보드 외곽을 따라갑니다. 배치된 객체는 적용 가능한 클리어런스 규칙을 준수하여, 설계가 요구하는 기구적/전기적 이격 조건을 만족하도록 이 경계로부터 적절한 거리를 유지합니다. 라우터는 또한 이 외곽 경계 내부의 keepout과 레이어별 keepout도 준수합니다.
Line/Arc Primitives from Board Shape dialog를 사용하여 보드 형상 가장자리를 따라가는 닫힌 경계를 만들 수 있습니다. keepout에 대한 자세한 내용은 Object Specific Keepouts를 참고하세요.
폴리곤 포어(Polygon Pours)
폴리곤(또는 구리) 포어는 솔리드(하나 이상의 구리 영역으로 채움) 또는 해치드(트랙과 아크로 구성) 형태일 수 있습니다. 중간~대형 해치드 폴리곤 포어에는 매우 많은 트랙과 아크가 포함됩니다. 라우터는 이러한 폴리곤 포어가 포함된 보드도 라우팅할 수 있지만, 이들이 추가하는 객체 수가 많아 라우팅 프로세스의 복잡도가 증가합니다.
일반적으로 폴리곤 포어는 반드시 필요한 경우에만 라우팅 전에 배치해야 합니다. 예를 들어, 특이한 형태의 사전 라우팅(pre-routing)을 구성하는 데 사용되거나, AC 메인 입력 라우팅 또는 중요한 그라운드 영역을 형성하는 경우입니다. 그 외에는 라우팅이 완료된 후에 폴리곤 포어를 설계에 추가하는 것이 바람직합니다.
라우팅이 가능한가?
오토라우터는 사람이 라우팅 과정을 이해하고 모델링한 뒤, 그 과정을 자동으로 재현하려는 시도입니다. 보드에 손으로도 라우팅할 수 없는 영역이 있다면, 오토라우팅으로도 라우팅되지 않습니다. 라우터가 특정 부품이나 보드의 특정 구간에서 계속 실패한다면, 해당 부분을 대화형(interactive)으로 라우팅해 보세요. 배치 또는 규칙 설정 문제로 인해 애초에 라우팅이 불가능한 상황일 수도 있습니다.
사전 라우팅(Pre-routing)
중요한 넷은 사전에 라우팅하고, 라우팅 과정에서 변경되지 않아야 한다면 Situs Routing Strategies dialog에서 Lock All Pre-routes 옵션을 활성화하여 잠그세요. 다만 불필요한 잠금은 피해야 합니다. 잠긴 객체가 많으면 라우팅 문제가 훨씬 더 어려워질 수 있습니다.
차동 페어(differential pair) 넷은 오토라우터를 사용하기 전에 수동으로 라우팅하고 잠가야 합니다. 이를 하지 않으면 라우팅이 변경되어 차동 페어의 신호 무결성이 훼손될 가능성이 매우 큽니다.
설계 규칙 구성
default rule라는 용어는 쿼리 범위가 All인 규칙을 설명하는 데 사용됩니다.
규칙에 Minimum, Preferred, Maximum 값이 포함되어 있다면 오토라우터는 Preferred 값을 사용합니다.
사용 중인 보드 기술에 적합하도록 라우팅 설계 규칙이 설정되어 있는지 확인하세요. 목표가 불명확하거나 부적절한 설계 규칙은 오토라우팅 성능을 크게 저하시킬 수 있습니다. 라우터는 Routing Corners 규칙을 제외한 모든 Electrical 및 Routing 설계 규칙을 준수합니다.
규칙은 PCB Rules and Constraints Editor dialog (Design » Rules)에서 정의하며, Situs Routing Strategies dialog에서 직접 접근할 수 있습니다.
규칙에 Minimum, Preferred, Maximum 값이 포함되어 있다면 오토라우터는 Preferred 값을 사용합니다.
Altium Designer의 규칙 시스템은 계층적입니다. 기본 개념은 모든 객체에 적용되는 기본(default) 규칙으로 시작한 다음, 요구사항이 다른 객체를 선택적으로 타겟팅하기 위해 추가 규칙을 더하는 것입니다. 예를 들어, 보드에서 가장 일반적으로 사용하는 라우팅 폭을 커버하는 기본 라우팅 폭 규칙을 만든 뒤, 더 넓거나 더 좁은 폭이 필요한 다른 넷이나 넷 클래스 등을 선택적으로 타겟팅하는 후속 규칙을 추가해야 합니다.
규칙이 올바른 객체를 타겟팅하는지 확인하려면, 규칙의 Query를 PCB Filter panel에 복사한 다음 Apply 실행하세요. 규칙이 타겟팅한 객체만 필터를 통과하여 정상 강도로 표시되어야 합니다. 또는 PCB Rules And Violations panel을 사용해 현재 보드에 정의된 어떤 규칙이든 규칙 적용 상태를 빠르게 확인할 수 있습니다.
가장 중요한 규칙은 Width 및 Clearance 규칙입니다. 이 라우팅 기술 설정은 라우팅을 얼마나 촘촘하게 ‘패킹’할 수 있는지를 정의합니다. 이 값들을 선택하는 것은 균형의 문제입니다. 트랙이 넓고 클리어런스가 크면 보드 제작이 쉬워지는 반면, 트랙과 클리어런스가 좁으면 보드 라우팅이 쉬워집니다. 제작사와 상의하여 라우팅 폭과 클리어런스에 대한 ‘가격 구간(price points)’을 정하는 것이 좋습니다. 즉, 그 값보다 더 낮추면 제작 수율이 떨어지고 PCB 단가가 올라갈 수 있는 기준값을 확인해야 합니다. 또한 설계의 전기적 요구사항을 만족하는 것뿐 아니라, 각 핀까지 라우팅이 가능하도록 부품 기술에 맞는 라우팅 기술을 선택해야 합니다.
라우팅 기술에 포함되는 세 번째 규칙은 Routing Via Style입니다. 이는 사용 중인 트랙 폭과 클리어런스에 맞게 선택해야 하며, 선택한 홀 크기와 애뉼러 링(annular ring)의 제작 비용도 고려해야 합니다.
과도하거나 불필요한 규칙도 피해야 합니다. 규칙이 많을수록 처리 시간이 늘어나고 라우팅 속도가 느려집니다. 오토라우팅에 필요하지 않은 규칙은 비활성화할 수 있습니다.
라우팅 폭(Routing Width)
Query가 All인(기본 규칙) Width rule이 존재하는지, 그리고 Preferred 설정이 가장 일반적으로 필요한 라우팅 폭에 적합한지 확인하세요. 또한 이 폭이 적절한 클리어런스 규칙과 결합되었을 때 모든 패드로 라우팅이 가능해야 합니다. 더 넓거나 더 좁은 라우팅이 필요한 넷에 대해서는 추가 라우팅 폭 규칙을 구성하세요.
미세 피치 부품이 더 넓은 라우팅 폭이 필요한 넷(예: 전원 넷)에 연결되어 있다면, 전원 핀에서 테스트 라우팅을 해보고 양옆 핀도 함께 라우팅해 보아 물리적으로 라우팅이 가능한지 확인하세요.
클리어런스 제약(Clearance Constraint)
표준 보드 클리어런스보다 패드 간격이 더 좁은 미세 피치 부품 등, 특별한 클리어런스 요구사항이 있는지 확인하세요. 이는 적절한 범위(scope)와 우선순위를 가진 설계 규칙으로 대응할 수 있습니다. 단, 풋프린트를 타겟팅하는 규칙을 정의할 수는 있지만, 그 풋프린트에 연결되는 라우팅까지 타겟팅하지는 못합니다. 앞서 Routing Width 섹션에서 언급했듯이, 테스트 라우팅을 통해 해당 부품 핀들이 라우팅 가능한지 확인하세요.
비아 스타일(Routing Via Style)
Query가 All인 Routing Via Style rule이 존재하는지, 그리고 preferred 설정이 적절한지 확인하세요. 기본 규칙과 다른 비아 스타일이 필요한 넷에 대해서는 더 높은 우선순위의 규칙을 포함하세요.
Altium Designer는 블라인드/버리드 비아를 지원하며, 이들이 사용되는 시점은 Layer Stack Manager (Design » Layer Stack Manager)에 정의된 Via Types에서 허용되는 레이어 스왑에 의해 결정됩니다. 대화형 라우팅과 마찬가지로, 오토라우터가 두 레이어 사이를 전환할 때 현재 Via Type 정의를 확인합니다. 해당 레이어들이 블라인드 또는 버리드 레이어 페어로 정의되어 있다면, 배치되는 비아는 그 레이어들을 시작/종료 레이어로 갖게 됩니다. 블라인드/버리드 비아 사용에는 제약이 있다는 점을 이해하는 것이 중요하며, 반드시 제작사와 협의하여 사용해야 합니다. 제작 스택업 기술이 부과하는 제약뿐 아니라, 신뢰성과 테스트 접근성 측면의 고려사항도 있습니다. 일부 설계자는 블라인드/버리드 비아를 사용하는 것보다 라우팅 레이어를 더 추가하는 편이 낫다고 보기도 합니다.
라우팅 레이어(Routing Layers)
쿼리가 All인 Routing Layers rule이 존재하는지 확인하세요. 활성화된 모든 신호 레이어(레이어 스택에 정의됨)가 목록에 표시됩니다. 필요에 따라 라우팅을 허용할 레이어를 활성화하세요. 특정 레이어에서만 라우팅되도록 하려는 넷에 대해서는 더 높은 우선순위의 규칙을 포함하세요.
특정 넷(또는 넷 클래스)을 오토라우터 라우팅 대상에서 제외하려면, 해당 넷/넷 클래스를 타겟팅하는 Routing Layer 규칙을 정의하고, 그 규칙의 Constraints 영역에서 활성화된 각 신호 레이어에 대해 Allow Routing 옵션이 비활성화되어 있는지 확인하세요. 이 규칙의 우선순위는 쿼리가 All인 기본 규칙보다 높아야 합니다.
레이어 방향(Layer Directions)
선호 라우팅 방향은 Layer Directions 대화상자에서 지정하며, 이 대화상자는 Situs Routing Strategies dialog에서 접근합니다. (레이어 스택에 정의된) 활성화된 모든 신호 레이어가 목록에 표시됩니다.
연결선의 흐름에 맞도록 적절한 레이어 방향을 선택하십시오. Situs는 토폴로지 매핑을 사용해 라우팅 경로를 정의하므로, 수평/수직 라우팅에만 제한되지 않습니다. 일반적으로 외층은 수평과 수직으로 설정하는 것이 가장 좋습니다. 하지만 다층 보드에서 ‘2시 방향’ 각도의 연결이 매우 많은 경우, 하나 이상의 내부 레이어를 해당 각도를 선호 라우팅 방향으로 설정하십시오. 특히 Layer Patterns 패스는 이 정보를 활용하며, 올바른 방향을 선택하면 시간과 품질 측면에서 라우팅 성능이 크게 달라질 수 있습니다. 각도 레이어를 사용할 때는 이 레이어에 대해 90도 방향의 짝 레이어가 반드시 필요하지는 않습니다. 라우터는 각도 레이어에서 장애물을 피해야 할 경우 보통 수평 또는 수직으로 라우팅하기 때문입니다.
Any 방향 사용은 피하십시오. 연결이 레이어 방향과 얼마나 잘 정렬되는지에 따라 어떤 레이어에서 연결을 라우팅할지 결정되므로, 이 레이어는 최후의 수단 레이어가 됩니다. Any 방향은 일반적으로 단면 보드에서만 사용됩니다.

Layer Directions 대화상자
Options and Controls of the Layer Directions Dialog
이 대화상자는 레이어 스택에 정의된 각 신호 레이어를 나열하는 그리드를 제공합니다. 각 레이어는 다음 항목으로 표시됩니다.
- Layer - 신호 레이어의 이름.
- Current Setting - 현재 선택된 해당 레이어의 선호 라우팅 방향. 이 필드는 편집 가능합니다. 드롭다운에서 다음 옵션 중에서 선택하십시오: Not Used, Horizontal, Vertical, Any, 1 O'Clock, 2 O'Clock, 4 O'Clock, 5 O'Clock, 45 Up, 45 Down, Fan Out, 및 Automatic.
- Actual Direction - Situs가 실제로 사용 중인 라우팅 방향. 이 필드는 읽기 전용입니다. Current Setting 필드에서 레이어에 대해 선택한 선호 라우팅 방향을 따르며, 단 Automatic을 선택한 경우에는 다른 레이어에 대해 정의된 라우팅 방향을 기반으로 사용할 최적의 방향을 계산합니다.
라우팅 우선순위
Routing Priority rules를 사용하여 라우팅이 어려운 넷, 또는 가장 깔끔한 라우팅을 원한 넷에 더 높은 우선순위를 설정하십시오.
SMD 팬아웃 제어
쿼리 시스템에는 IsLCC(Leadless Chip Carrier), IsSOIC(Small Outline IC), IsBGA(Ball Grid Array) 등 다양한 표면실장 부품 패키지를 특정하는 키워드가 포함되어 있습니다. 가장 일반적인 패키지에 대해서는 기본 규칙이 자동으로 생성되며, 팬아웃 패스는 오토라우팅 프로세스 초기에 실행되므로 어떤 부품에도 적용되지 않는 규칙을 유지하더라도 불이익이 거의 없습니다. 보드에 표면실장 부품이 있다면 최소 1개의 SMD 팬아웃 제어 디자인 룰을 두어야 합니다. 모든 표면실장 부품을 대상으로 하는 단일 규칙에 적합한 쿼리는 IsSMTComponent입니다. 각 쿼리 키워드가 부품 패키지를 어떻게 식별하는지에 대한 정보는 Query Helper를 열고 필요한 키워드를 입력한 다음 F1를 누르십시오.
팬아웃 규칙에는 패드를 인팬(in)할지 아웃팬(out)할지, 또는 둘을 혼합할지 제어하는 설정이 포함됩니다. Fanout Control 규칙 속성의 동작을 익히는 데 도움이 되도록, 넷이 할당되지 않은 어떤 표면실장 부품에 대해서도 Route » Fanout » Component 명령을 실행할 수 있습니다. 이를 통해 보드에 정의된 현재 라우팅 기술에서 해당 부품이 얼마나 잘 팬아웃되는지 확인할 수 있을 뿐 아니라, 라이브러리에 ‘사전 팬아웃된 풋프린트’로 보관하고 싶은 부품을 팬아웃하는 데도 사용할 수 있습니다. PCB 작업공간에서 팬아웃한 뒤, 부품과 팬아웃 트랙 및 비아를 복사하여 라이브러리에 붙여넣으십시오.
규칙 우선순위
규칙의 선후(우선순위)는 설계자가 정의합니다. 규칙 우선순위는 하나의 객체가 둘 이상의 규칙 범위에 포함될 때 어떤 규칙을 적용할지 결정하는 데 사용됩니다. 우선순위가 올바르게 설정되지 않으면, 규칙이 전혀 적용되지 않는 상황이 발생할 수 있습니다.
예를 들어 InNet('VCC') 쿼리를 가진 규칙이 All 쿼리를 가진 규칙보다 우선순위가 낮다면, VCC 넷에는 All 규칙이 적용됩니다. PCB Rules and Constraints Editor dialog의 Priorities 버튼을 사용해 Edit Rule Priorities dialog에 접근한 뒤 필요에 따라 우선순위를 세부 조정하십시오. 두 규칙 범위가 겹치지(동일 객체를 대상으로 하지) 않는 경우에는 우선순위가 중요하지 않습니다. 예를 들어 InNet('VCC')와 InNet('GND') 중 어느 쪽이 더 높은 우선순위를 갖는지는 결과에 영향을 주지 않습니다.
골든 룰
가장 중요한 단계는 오토라우터를 시작하기 전에 DRC(Design Rule Check)를 수행하는 것입니다. Route » Auto Route » Setup 또는 Route » Auto Route » All 명령을 사용할 때, Situs는 자체적인 사전 라우팅 분석을 수행하고 그 결과를 Situs Routing Strategies dialog에 보고서 형태로 표시합니다. 이 대화상자에서 설계에 대한 보고서를 검토하고 라우팅에 사용할 전략을 선택할 수 있습니다. 라우팅 전략은 라우터의 ‘지능’으로, 토폴로지 맵에서 식별된 ‘가상’ 라우팅 경로를 보드 상의 고품질·고효율의 실제 라우팅으로 변환하기 위해 다양한 라우팅 알고리즘을 언제 어떤 순서로 사용할지 정의합니다.
오토라우터를 시작하기 전에 Routing Setup Report에 문제가 없는지 확인하십시오.
보고서에는 다음과 같은 정보가 포함됩니다.
- 오토라우터가 준수할 현재 설계에 정의된 디자인 룰(및 각 규칙의 영향을 받는 설계 객체—넷, 부품, 패드—의 개수)
- 모든 신호 라우팅 레이어에 대해 정의된 라우팅 방향
- 드릴 레이어 페어 정의
또한 보고서는 라우터 성능에 영향을 줄 수 있는 잠재적 문제를 나열합니다. 가능한 경우 오토라우팅을 위한 설계 준비를 더 잘할 수 있도록 힌트가 제공됩니다. 나열된 오류/경고/힌트는 면밀히 검토하고, 필요하다면 해당 라우팅 규칙을 조정한 후 라우팅을 진행해야 합니다.
오토라우터가 직면할 잠재적 문제를 이해하기 위해 모든 오류, 경고, 힌트를 확인하십시오.
오토라우터를 시작하기 전에 라우팅 관련 규칙 위반을 반드시 해결해야 합니다. 위반은 해당 위치에서 라우팅을 막을 뿐 아니라, 라우터가 라우팅 불가능한 영역을 계속 시도하게 만들어 속도를 크게 저하시킬 수 있습니다.
Situs AutoRouter 실행 시 참고 사항
라우팅 패스 및 라우팅 전략 요약
현재 정의된 라우팅 전략은 Situs Routing Strategies 대화상자 하단 영역에 나열됩니다. Add 버튼을 클릭하면 Situs Strategy Editor 대화상자에 접근할 수 있으며, 여기서 새 전략에 포함할 패스를 지정할 수 있습니다. 또는 Duplicate 버튼을 사용해 기존 전략을 복제한 다음 필요에 따라 편집할 수 있습니다. 다양한 라우팅 패스의 포함 여부와 사용 순서가 Autorouter의 ‘지능’을 구성합니다. 이러한 패스는 토폴로지 맵에서 식별된 가상 라우팅 경로를 보드 상의 고품질 라우트로 변환하는 데 사용됩니다.
정의된 라우팅 전략과 그 안에 포함된 구성 라우팅 패스는 전체 보드를 라우팅할 때만 적용됩니다.

복제한 전략을 편집하는 예.
Options and Controls of the Situs Routing Strategies Dialog
대화상자의 컨트롤은 두 개의 주요 영역으로 나뉩니다. 두 접근 방법 간 컨트롤의 유일한 차이는 대화상자 하단에서 Cancel 버튼 왼쪽에 있는 버튼입니다. 설정만 수행(라우팅은 수행하지 않음)하기 위해 접근할 때는 이것이 표준 OK 버튼으로 표시됩니다. 이를 클릭하면 사용자 정의 라우팅 전략에 대한 변경 사항이 저장됩니다. 전체 보드를 라우팅하기 위해 접근할 때는 Route All 버튼으로 표시됩니다. 이를 클릭하면 현재 선택된 라우팅 전략에 따라 보드를 라우팅하려고 시도합니다.
Routing Setup Report
- Report Window - 이 영역은 라우팅 전(pre-routing) 설계 분석을 기반으로 한 보고서를 표시하며, 다음과 같은 정보를 수집해 제공합니다: Autorouter가 준수할(그리고 각 규칙의 영향을 받는 설계 객체—넷, 컴포넌트, 패드—의 수) 현재 설계에 정의된 Design rule, 모든 신호 라우팅 레이어에 대해 정의된 라우팅 방향, 드릴 레이어 페어 정의.
이 보고서는 라우터 성능에 영향을 줄 수 있는 잠재적 문제를 나열합니다. 이러한 경고에는 라우팅 방향이 Any로 설정된 라우팅 레이어가 포함될 수 있습니다. 가능한 경우 자동 라우팅을 위한 설계 준비를 더 잘할 수 있도록 힌트가 제공됩니다. 나열된 오류/경고/힌트는 면밀히 검토해야 하며, 필요하다면 설계를 라우팅하기 전에 해당 라우팅 규칙을 조정해야 합니다.
Autorouter를 시작하기 전에 라우팅 관련 규칙 위반을 반드시 해결해야 합니다. 위반은 해당 위치에서 라우팅을 막을 뿐만 아니라, 라우팅 불가능한 영역을 계속 라우팅하려고 시도하면서 Autorouter를 크게 느리게 만들 수도 있습니다.
보고서의 하이퍼링크 항목을 사용하면 특정 규칙 정의에 대한 Edit PCB Rule 대화상자에 빠르게 접근하여 필요에 따라 해당 규칙의 범위 및/또는 제약을 조정할 수 있습니다. 라우팅 불가능한 패드의 경우, 보고서에서 관련 하이퍼링크 항목을 클릭하면 문제의 패드가 디자인 공간에서 확대되어 중앙에 표시됩니다.
- Edit Layer Directions - 이 버튼을 클릭하면 Layer Directions dialog 에 접근할 수 있으며, 여기서 필요에 따라 신호 레이어의 라우팅 방향을 수정할 수 있습니다.
- Edit Rules - 이 버튼을 클릭하면 기본 PCB Rules and Constraints Editor dialog에 접근할 수 있습니다. 또는 기존 라우팅 규칙을 직접 수정하려면 보고서 본문에서 해당 규칙의 하이퍼링크를 클릭하십시오.
- Save Report As - 이 버튼을 클릭하면 보고서를 HTML 문서로 저장할 수 있습니다. 표준 Save As 대화상자가 나타납니다. 기본적으로 보고서는 PCB 설계 파일(DesignName.htm)과 동일한 위치 및 동일한 이름으로 저장됩니다. 필요에 따라 대화상자에서 이름과 위치를 변경하십시오.
Routing Strategy
- Available Routing Strategies - 이 영역에는 Autorouter가 설계를 라우팅하는 데 사용할 수 있는 현재 사용 가능한 모든 라우팅 전략이 나열됩니다. 각 전략은 이름과 설명으로 표시됩니다. 다음 6개의 라우팅 전략이 정의되어 있으며 기본으로 제공됩니다:
- Cleanup - 기본 정리(cleanup) 전략.
- Default 2 Layer Board - 2층 보드 라우팅을 위한 기본 전략.
- Default 2 Layer With Edge Connectors - 에지 커넥터가 있는 2층 보드 라우팅을 위한 기본 전략.
- Default Multi Layer Board - 다층 보드 라우팅을 위한 기본 전략.
- General Orthogonal - 범용 직교(orthogonal) 기본 전략.
- Via Miser - 비아 최소화를 공격적으로 수행하는 다층 보드 라우팅 기본 전략.
일반적으로 2층 및 다층 보드에 대한 기본 라우팅 전략은 대부분의 라우팅 상황에 적합합니다. 다만 Autorouter를 실행하기 전에 관련 라우팅 설계 규칙이 설정되어 있는지 확인하는 것이 중요합니다.
- Add - 이 버튼을 클릭하면 목록에 새 사용자 정의 라우팅 전략을 추가할 수 있습니다. Situs Strategy Editor 대화상자가 열리며, 가장 중요한 구성 요소인 라우팅 패스를 포함해 전략을 완전히 정의할 수 있습니다.
- Remove - 이 버튼을 클릭하면 현재 선택된 사용자 정의 라우팅 전략을 사용 가능한 라우팅 전략 목록에서 제거할 수 있습니다.
6개의 기본 라우팅 전략은 제거할 수 없습니다.
- Edit - 이 버튼을 클릭하면 현재 선택된 사용자 정의 라우팅 전략을 편집할 수 있습니다. Situs Strategy Editor 대화상자가 열리며, 필요에 따라 구성 라우팅 패스를 포함해 전략을 변경할 수 있습니다.
6개의 기본 라우팅 전략은 편집할 수 없습니다.
- Duplicate - 이 버튼을 클릭하면 현재 선택된 라우팅 전략을 복제할 수 있습니다. Situs Strategy Editor 대화상자가 열립니다. 새 전략에 더 의미 있는 이름과 설명을 부여하고 필요에 따라 설정을 수정하십시오.
- Lock All Pre-routes - 이 옵션을 활성화하면 Autorouter가 사전 라우팅된 넷을 삭제(“ripped up”)한 뒤 다시 라우팅하는 것을 방지합니다. 종종 특정 넷은 수동으로 라우팅한 다음 나머지를 자동 라우팅합니다.
- Rip-up Violations After Routing - 이 옵션을 활성화하면 Autorouter가 라우팅 세션을 완료한 후 정의된(그리고 적용 가능한) 설계 규칙을 위반하는 모든 라우트를 제거(ripped up)합니다.
Options and Controls of the Situs Strategy Editor Dialog
Options
- Strategy Name - 전략의 현재 이름입니다. 새 라우팅 전략을 만드는 경우 이 필드에는 기본 항목 New Strategy이(가) 들어 있습니다. 필요에 따라 더 의미 있는 이름을 지정하도록 이 필드를 편집하십시오.
- Strategy Description - 전략의 현재 설명입니다. 전략의 목적 또는 범위를 요약하는 의미 있는 설명을 입력하십시오.
- More/Less Vias- 이 슬라이더 바를 사용하여 Autorouter가 사용할 수 있는 비아(via) 사용 허용 범위를 정의합니다. 이는 더 빠른 배선 속도와 더 적은 비아 사용 간의 트레이드오프입니다. 바를 오른쪽으로 이동하면 Autorouter가 더 적은 비아를 배치하도록 제한되지만, 보드 배선에 걸리는 시간은 더 길어집니다. 바를 왼쪽으로 이동하면 배선 완료 시간이 더 빨라지지만, 그 대신 Autorouter가 PCB에 더 많은 비아를 배치하게 됩니다.
- Orthogonal - 이 옵션을 활성화하면 Autorouter가 직교(90°) 경로로만 배선하도록 제한합니다. 이 옵션을 비활성화하면 Autorouter가 필요에 따라 직교 또는 비직교(45°)로 배선할 수 있습니다.
Routing Passes
- Available Routing Passes - 이 영역에는 라우팅 전략에서 사용할 수 있는 사용 가능한 라우팅 패스(알고리즘)가 나열됩니다. 사용 가능한 패스는 다음과 같습니다:
- Adjacent Memory - 연결(connection) 수준의 라우팅 패스입니다. 간단한 U 패턴으로 팬아웃이 필요한 인접한 동일 넷(same-net) 핀을 라우팅하는 데 사용됩니다.
- Clean Pad Entries - 연결 수준의 라우팅 패스입니다. 각 패드 중심에서 패드의 가장 긴 축을 따라 바깥쪽으로 다시 라우팅합니다.
X 및 Y 치수가 서로 다른 패드를 가진 컴포넌트가 포함된 설계의 경우, Memory pass 뒤에 항상 Clean Pad Entries pass를 포함하십시오.
- Completion - 연결 수준의 라우팅 패스입니다. 기본적으로 Main pass와 거의 동일하지만, 충돌을 해결하고 어려운 연결을 완료하기 위해 비용(costing)이 다르게 책정됩니다. 비용 차이의 예로는 비아가 더 저렴하고, 잘못된 방향(wrong-way) 라우트가 더 비싸게 책정되는 것 등이 있습니다.
- Fan out Signal - Fanout Control에 정의된 팬아웃 설정을 기반으로 하는 컴포넌트 수준 패스입니다. 패드의 패턴을 확인하고, 클리어런스, 라우팅 폭, 비아 스타일을 고려한 다음, 설계 규칙에 정의된 요구사항을 충족하도록 적절한 팬아웃 배열(인라인 행, 스태거드 등)을 선택합니다. 팬아웃은 신호 레이어로만 수행됩니다.
- Fan out to Plane - Fanout Control에 정의된 팬아웃 설정을 기반으로 하는 컴포넌트 수준 패스입니다. 패드의 패턴을 확인하고, 클리어런스, 라우팅 폭, 비아 스타일을 고려한 다음, 설계 규칙에 정의된 요구사항을 충족하도록 적절한 팬아웃 배열(인라인 행, 스태거드 등)을 선택합니다. 팬아웃은 내부 플레인 레이어로만 수행됩니다.
- Globally Optimised Main - 연결 수준의 라우팅 패스입니다. 최적의 라우팅을 제공합니다. 첫 번째 반복(iteration)에서는 경합/위반(contentions/violations)을 무시합니다. 그런 다음 충돌 비용을 증가시키면서 위반이 남지 않을 때까지 연결을 다시 라우팅합니다. 이 패스는 Orthogonal option을 활성화한 상태로 함께 사용하면 보기 좋게 라우팅된 패턴을 생성할 수 있습니다. 모따기(mitered) 코너 처리를 제공하려면 전략에 Recorner pass를 추가하십시오.
- Hug - 연결 수준의 라우팅 패스로, 가능한 최소 클리어런스로 기존 라우팅을 따라 각 연결을 다시 라우팅합니다. Hug 패스는 사용 가능한 라우팅 공간을 최대화하는 데 사용됩니다. 이 패스는 매우 느립니다.
- Layer Patterns - 연결 수준의 라우팅 패스입니다. 레이어 방향(허용 오차 내)에 일치하는 연결만 라우팅합니다. 여유 공간을 최대화하기 위해 기존 라우팅을 밀착(hug)하거나 따라가도록 비용이 책정됩니다.
- Main - 연결 수준의 라우팅 패스입니다. 토폴로지 맵을 사용해 라우팅 경로를 찾은 다음, push and shove 라우터를 사용해 제안된 경로를 실제 라우팅으로 변환합니다.
- Memory - 연결 수준의 라우팅 패스입니다. 동일 레이어에서 서로 다른 컴포넌트에 있는 두 핀이 X 또는 Y 좌표를 공유하는지 확인합니다.
- Multilayer Main - 연결 수준의 라우팅 패스입니다. Main pass와 유사하지만, 다층 보드에 최적화된 비용으로 설정됩니다.
- Recorner - 연결 수준의 라우팅 패스로, 라우팅된 코너를 모따기 처리하기 위해 사용됩니다. 이 패스는 전략에서 Orthogonal option이 활성화된 경우 사용되며, 사실상 해당 옵션을 덮어쓰고 각 라우트의 코너를 모따기 처리합니다. 사용 중인 전략에서 Orthogonal option이 비활성화되어 있다면 Autorouter가 기본적으로 코너를 모따기 처리하므로 Recorner pass를 포함할 필요가 없습니다.
- Spread - 연결 수준의 라우팅 패스로, 각 연결을 다시 라우팅하면서 여유 공간을 활용하도록 라우팅을 분산시키고, 고정된 객체(예: 컴포넌트 패드) 사이를 통과할 때 라우팅 간격이 균등해지도록 시도합니다. 이 패스는 매우 느립니다.
- Straighten - 연결 수준의 라우팅 패스로, 코너 수를 줄이려고 시도합니다. 라우트를 따라 코너까지 이동한 다음, 그 코너에서 (수평/수직/45up/45down) 프로브를 수행하여 해당 넷에서 다른 라우팅 지점을 탐색합니다. 발견되면 이 새 경로가 라우팅 길이를 줄이는지 확인합니다.
라우팅 전략에는 메인 타입 패스를 하나만 지정해야 합니다. 즉, Main, Multilayer Main 또는 Globally Optimized Main 중 하나입니다.
- Passes in this Routing Strategy - 이 영역에는 전략에 포함된 실제 라우팅 패스(알고리즘)가 나열됩니다. 사용 가능한 패스 목록에서 원하는 패스를 얼마든지 추가할 수 있으며, 특정 결과를 얻기 위해 전체 전략 전반에 동일한 패스를 여러 번 추가할 수도 있습니다. 패스는 위에서 아래 순서대로 실행됩니다. 이 순서는 Move Up 및 Move Down 버튼을 사용하여 수정할 수 있습니다.
- Add - 이 버튼을 클릭하면 Available Routing Passes 목록에서 현재 선택된 패스를 Passes in this Routing Strategy 목록에 추가합니다. 패스는 후자의 목록에서 현재 선택된 패스 위에 추가됩니다.
- Remove - 이 버튼을 클릭하면 Passes in this Routing Strategy 목록에서 현재 선택된 패스를 전략에서 제거합니다.
- Move Up - 이 버튼을 클릭하면 Passes in this Routing Strategy 목록에서 현재 선택된 패스를 목록에서 위로 이동합니다. 즉, 라우팅 전략에서 더 먼저 사용됩니다.
- Move Down - 이 버튼을 클릭하면 Passes in this Routing Strategy 목록에서 현재 선택된 패스를 목록에서 아래로 이동합니다. 즉, 라우팅 전략에서 더 나중에 사용됩니다.
사용자 정의 전략은 언제든지 편집할 수 있지만, 기본 전략인 Cleanup, Default 2 Layer Board, Default 2 Layer With Edge Connectors, Default Multi Layer Board, General Orthogonal, Via Miser는 수정할 수 없습니다.
다음 라우팅 패스를 사용할 수 있습니다. 패스는 어떤 순서로든 사용할 수 있으며, 가이드로 기존 전략을 살펴보면 패스 순서를 확인할 수 있습니다.
| PAss |
Function |
| Adjacent Memory |
연결 수준의 라우팅 패스입니다. 간단한 U 패턴으로 팬아웃이 필요한 인접한 동일 넷 핀을 라우팅하는 데 사용됩니다. |
| Clean Pad Entries |
연결 수준의 라우팅 패스입니다. 각 패드 중심에서 패드의 가장 긴 축을 따라 바깥쪽으로 다시 라우팅합니다. X 및 Y 치수가 서로 다른 패드를 가진 컴포넌트가 있다면, Memory 패스 뒤에 항상 Clean Pad Entries 패스를 포함하십시오. |
| Completion |
연결 수준의 라우팅 패스입니다. 기본적으로 Main 패스와 거의 동일하지만, 충돌을 해결하고 어려운 연결을 완료하기 위해 비용이 다르게 책정됩니다. 비용 차이의 예로는 비아가 더 저렴하고, 잘못된 방향 라우트가 더 비싸게 책정되는 것 등이 있습니다. |
| Fan Out Signal |
Fanout Control에 정의된 팬아웃 설정을 기반으로 하는 컴포넌트 수준 패스입니다. 패드의 패턴을 확인하고, 클리어런스, 라우팅 폭, 비아 스타일을 고려한 다음, 설계 규칙에 정의된 요구사항을 충족하도록 적절한 팬아웃 배열(인라인 행, 스태거드 등)을 선택합니다. 팬아웃은 신호 레이어로만 수행됩니다. |
| Fan out to Plane |
Fanout Control에 정의된 팬아웃 설정을 기반으로 하는 컴포넌트 수준 패스입니다. 패드의 패턴을 확인하고, 클리어런스, 라우팅 폭, 비아 스타일을 고려한 다음, 설계 규칙에 정의된 요구사항을 충족하도록 적절한 팬아웃 배열(인라인 행, 스태거드 등)을 선택합니다. 팬아웃은 내부 플레인 레이어로만 수행됩니다. |
| Globally Optimized Main |
연결 수준의 라우팅 패스입니다. 최적의 라우팅을 제공합니다. 첫 번째 반복에서는 경합/위반을 무시합니다. 그런 다음 충돌 비용을 증가시키면서 위반이 남지 않을 때까지 연결을 다시 라우팅합니다. 이 패스는 Orthogonal 옵션을 활성화한 상태로 함께 사용하면 보기 좋게 라우팅된 패턴을 생성할 수 있습니다. 모따기 코너 처리를 제공하려면 전략에 Recorner 패스를 추가하십시오. |
| Hug |
연결 수준의 라우팅 패스로, 가능한 최소 클리어런스로 기존 라우팅을 따라 각 연결을 다시 라우팅합니다. Hug 패스는 사용 가능한 라우팅 공간을 최대화하는 데 사용됩니다. 이 패스는 매우 느립니다. |
| Layer Patterns |
연결 수준의 라우팅 패스입니다. 레이어 방향(허용 오차 내)에 일치하는 연결만 라우팅합니다. 여유 공간을 최대화하기 위해 기존 라우팅을 밀착(hug)하거나 따라가도록 비용이 책정됩니다. |
| Main |
연결 수준의 라우팅 패스입니다. 토폴로지 맵을 사용해 라우팅 경로를 찾은 다음, push and shove 라우터를 사용해 제안된 경로를 실제 라우팅으로 변환합니다. 라우팅 전략에는 메인 타입 패스를 하나만 지정해야 합니다. 즉, Main, Multilayer Main 또는 Globally Optimized Main 중 하나입니다. |
| Memory |
연결 수준의 라우팅 패스입니다. 동일 레이어에서 서로 다른 컴포넌트에 있는 두 핀이 X 또는 Y 좌표를 공유하는지 확인합니다. |
| Multilayer Main |
연결 수준의 라우팅 패스입니다. Main 패스와 유사하지만, 다층 보드에 최적화된 비용으로 설정됩니다. |
| Recorner |
연결 수준의 라우팅 패스로, 라우팅된 코너를 모따기 처리하기 위해 사용됩니다. 이 패스는 전략에서 Orthogonal 옵션이 활성화된 경우 사용되며, 사실상 해당 옵션을 덮어쓰고 각 라우트의 코너를 모따기 처리합니다. 사용 중인 전략에서 Orthogonal 옵션이 비활성화되어 있다면 Autorouter가 기본적으로 코너를 모따기 처리하므로 Recorner 패스를 포함할 필요가 없습니다. |
| Spread |
연결 수준의 라우팅 패스로, 각 연결을 다시 라우팅하면서 여유 공간을 활용하도록 라우팅을 분산시키고, 고정된 객체(예: 컴포넌트 패드) 사이를 통과할 때 라우팅 간격이 균등해지도록 시도합니다. 이 패스는 매우 느립니다. |
| Straighten |
코너(꺾임) 수를 줄이기 위해 시도하는 연결 수준의 라우팅 패스입니다. 라우트를 따라 코너까지 이동한 다음, 해당 코너에서 (수평/수직/45도 위/45도 아래) 방향으로 프로브를 수행하여 같은 넷에 라우팅된 다른 지점을 탐색합니다. 지점을 찾으면, 이 새로운 경로가 라우팅 길이를 줄이는지 확인합니다. |
참고 항목