고속 장치를 다루고 있다면, 구성 요소 간에 차동 쌍을 라우팅해야 할 가능성이 높습니다. 많은 고속 PCB에는 특정한 홀 모드/차동 임피던스 값을 요구하는 차동 인터페이스가 포함되어 있으며, PCB 레이아웃 디자이너는 트레이스가 올바른 임피던스 값을 갖도록 PCB 에디터에서 해당 기하학적 제약 조건을 지정해야 합니다.
이 작업을 가장 빠르고 정확하게 수행하는 방법은 임피던스 계산과 디자인 규칙 설정을 단일 워크플로우로 통합하는 것입니다. Altium Designer는 Layer Stack Manager 기능을 통해 이를 도와주며, 이 기능은 계산 결과를 PCB 규칙 및 제약 조건 편집기로 전달합니다. 또한, 분리 길이 제한, 전체 트레이스 길이 제한, 길이/지연 불일치 제한과 같은 기능도 있습니다.
장치에서 차동 쌍을 사용해야 할 때, 어떤 넷이 구성 요소와 인터페이스하기 위해 차동 신호를 사용할지 정의해야 합니다. 단순히 넷을 배치하는 것으로 충분하지 않으며, 넷은 차동 신호의 일부로 특별히 명시되어야 합니다. Altium Designer®의 스키마틱 및 레이아웃 편집기에는 넷 정의 기능이 포함되어 있으며, 신호 넷 내에서 차동 쌍을 정의할 수 있습니다. 먼저, 서로 통신할 몇 가지 구성 요소를 선택하고, 스키마틱에 배치한 다음, 차동 신호를 사용할 포트를 정의해야 합니다.
여기에는 세 가지 목표가 있습니다:
시작하기 위해, 아래의 회로도를 살펴보고 우리가 차동 신호를 생성하기 위해 사용해야 할 차동 쌍을 정의하겠습니다. 이 회로도에는 Microchip LAN9514I-JZX USB/이더넷 컨트롤러, 엣지 커넥터, 그리고 몇 개의 차폐된 USB 커넥터가 포함되어 있습니다. 이러한 구성 요소는 Altium Designer 내의 제조업체 부품 검색 패널에서 찾을 수 있습니다. 간결함을 위해, 이 핀 리스트에서 "Part A"만 살펴볼 것이며, 회로도에서 "U1A"로 라벨이 붙어 있습니다. 일부 출력은 보드 엣지 커넥터에 연결될 것이고, 다른 네트워크는 USB 커넥터로 라우팅될 것입니다.
Altium Designer에서의 USB/이더넷 컨트롤러 및 일부 연결
이 회로도에서, 저는 USB 출력을 특별한 지시 심볼을 사용하여 차동 쌍으로 정의했습니다. 어떤 연결이 차동 쌍인지 지정하려면 “Place” 메뉴를 클릭합니다. “Directives” 옵션을 강조 표시하고 “Differential Pair”를 선택합니다. 차동 쌍으로 기능하기를 원하는 연결에 지시 심볼을 배치할 수 있습니다. 차동 쌍의 일부가 될 모든 네트를 단순히 선택하면 됩니다.
다음으로, 차동 쌍의 각 절반은 그것의 넷 이름을 사용하여 양수 또는 음수로 정의됩니다. 양수 끝은 넷 라벨 끝에 "_P"를 사용하여 명명되어야 하며, 음수 끝은 "_N"을 사용하여 명명되어야 합니다. 위의 회로도에서 USB1-USB3 라인에 대해 이 작업을 수행했습니다. U1A의 왼쪽 하단 부분에 있는 RX 라인에 대해서도 같은 작업을 할 수 있습니다. 이들은 일반적으로 RJ45 커넥터로 라우팅되기 전에 마그네틱스와 Bob Smith 종단 회로에 연결되지만, 여기서는 차동 쌍 라우팅을 설명하기 위해 위의 간단한 상황만 사용하겠습니다.
차동 쌍을 성공적으로 라우팅하려면 차동 쌍 클래스와 넷 클래스를 설정해야 합니다. 여기서의 목표는 같은 설계 규칙을 그룹 내의 모든 쌍에 적용할 수 있도록 여러 쌍을 그룹화하는 것입니다. 이 그룹은 차동 쌍 클래스이며, 설계 규칙 편집기에서 기하학적 요구 사항과 길이 매칭 요구 사항을 적용할 것입니다.
우리는 차동 쌍 클래스를 정의해야 하므로, 각 지시문에 이를 추가할 것입니다. 회로도에 표시된 각 연결에 대해 USB1에서 USB 3까지의 클래스를 정의했습니다. 지시문 심볼을 더블 클릭하면, 차동 쌍의 연결에 대한 클래스와 설계 규칙을 정의할 수 있습니다. 지시문 심볼을 마우스 오른쪽 버튼으로 클릭하고 "속성"을 클릭하면, 차동 쌍에 대한 라벨, 클래스, 규칙을 지정할 수 있는 대화 상자가 나타납니다. 여기서, 각 쌍에 "Diff. Pair Net Class"를 추가하고 이 네트워크에 대한 클래스 이름을 지정할 것입니다. 이는 아래 USB1_P에 대해 보여집니다.
차동 쌍 네트 클래스 정의
이 지시문에는 설계 규칙을 추가해야 합니다. 위에 표시된 대화 상자 내에서 개별 넷에 설계 규칙을 적용하기 위해 이 작업을 수행할 수 있습니다. 차동 쌍의 길이 조정과 같은 작업을 하거나, 차동 쌍 그룹에 대해 수행하고 싶다면, PCB 에디터에서 하는 것이 더 좋습니다. 위 대화 상자에서 규칙을 생성하면, 이 넷에만 적용되는 새로운 설계 규칙이 생성됩니다. 우리가 USB1부터 USB3 연결에 개별적으로 길이 매칭을 적용하고 싶기 때문에, 위에 표시된 대로 차동 쌍 클래스를 정의하기만 하면 되고, 이 넷들에 대한 설계 규칙을 설정하기 위해 스키마틱이 캡처될 때까지 기다리면 됩니다.
스키마틱을 캡처하고 라우팅을 시작하기 전에, 차동 쌍에 대한 임피던스 프로파일을 포함하는 새로운 PcbDoc을 생성해야 합니다. 이 간단한 예에서, 저는 단일 종단 임피던스 프로파일(50 옴, S50으로 명명됨)과 차동 쌍 임피던스 프로파일(90 옴, D90으로 명명됨)을 가진 4층 PCB를 생성했습니다. 차동 쌍 임피던스 프로파일은 정의된 차동 임피던스를 가져야 하는 USB 라인에 사용될 것입니다. 이 작업은 PCB 편집기 내의 레이어 스택 관리자를 통해 수행할 수 있습니다. 아래에 제 스택업과 임피던스 프로파일을 보여드립니다.
차동 쌍의 트레이스 사이 간격을 기본값인 5 mil로 정의했음을 주목하세요. 그러나, 이를 변경하는 것을 고려할 수도 있습니다. 차동 쌍 트레이스 간격 설정에 대한 지침을 위해 이 글을 읽어보세요.
차동 쌍 라우팅을 위한 임피던스 프로파일 정의하기
이 시점에서, 우리는 스키마틱을 레이아웃으로 캡처하고 정의한 차동 쌍을 라우팅할 수 있습니다. 나는 FPGA와 커넥터 사이의 나머지 연결에 대해 차동 쌍을 정의했습니다. 먼저, 프로젝트에 새 PCB를 추가하고 스키마틱을 캡처하세요. 이는 빈 PCB를 열고 “Design” 메뉴를 클릭한 다음, “Import Changes From…”을 선택함으로써 할 수 있습니다. 엔지니어링 변경 명령 대화 상자에서 옵션을 선택 해제하지 않는 한 기본적으로 Room이 생성될 것임을 유의하세요.
라우팅하기 전에, 우리는 스키마틱의 차동 쌍 네트워크에 대한 디자인 규칙을 정의해야 합니다. 이는 PCB 에디터에서 Design -> Rules 대화 상자를 열어 수행됩니다. 여기서, 이 네트워크가 USB 사양을 준수하도록 다음 규칙을 정의해야 합니다:
이 쌍에 대한 디자인 규칙을 정의할 때, 각 네트워크에 대한 규칙을 생성하고 사용하고자 하는 임피던스 프로파일을 선택할 수 있습니다. 아래에 이것이 표시되어 있습니다.
개별 네트워크에 대한 디자인 규칙 정의
우리가 동일한 디자인 규칙이 필요한 여러 개의 차동 쌍을 다루고 있기 때문에, 차동 쌍 클래스에 적용되는 단일 디자인 규칙을 생성하는 것이 더 나은 옵션입니다. 클래스를 확인하고 생성하기 위해서는 PCB 편집기에서 디자인 -> 클래스 대화 상자를 엽니다. 차동 쌍 클래스 항목으로 내려가서, 마우스 오른쪽 버튼을 클릭하고 새 클래스를 생성합니다. 스키마에서 차동 쌍을 올바르게 정의했다면, 이제 이 쌍들을 새 클래스에 추가할 수 있습니다. 아래 이미지에서 보여지는 것과 같습니다.
USB 차동 쌍 그룹에 대한 클래스 정의
이제 디자인 규칙 편집기로 이동하여 길이 허용 오차 및 라우팅 제약 조건에 대해 방금 생성한 넷 클래스를 선택할 수 있습니다. 개별 넷에 대해 수행한 것과 마찬가지로 진행합니다. 디자인 규칙 창에서 "Where The Object Matches" 항목 아래에서 위 창에서 정의한 차동 쌍 클래스를 선택합니다. 디자인 규칙은 이제 클래스 내의 모든 넷(USB1, USB2, USB3)에 적용됩니다. 디자인 규칙 창에서 옵션을 선택하는 한, 레이어 스택 관리자에서 정의한 임피던스 프로파일이 적용됩니다.
일관된 임피던스를 보장하고 신호 무결성을 유지하기 위해 필요할 수 있는 추가 설계 규칙에는 다음이 포함됩니다:
이러한 규칙 설정의 대부분은 PCB 설계 규칙 및 제약 조건 편집기의 고속 섹션에서 찾을 수 있습니다.
이제 스키마틱에서 변경 사항을 가져와 PCB 레이아웃을 시작할 시간입니다. PCB 레이아웃을 생성하기 전에 제약 조건을 설정하기 위해 많은 작업을 했지만, 이제 설정한 설계 규칙은 라우팅된 트레이스가 필요한 임피던스, 간격 및 길이 매칭 규칙을 갖추도록 보장할 것입니다. 구성 요소를 원하는 대로 배치한 후에는 PCB 편집기 창 상단에 있는 대화형 차동 쌍 라우팅 옵션을 선택하십시오.
아래 이미지는 중간 라우트 중인 작업하고자 하는 구성 요소를 보여줍니다. 대화형 라우터를 사용할 때는 네트의 한쪽 끝만 클릭하면 보드를 가로질러 이동하면서 두 트레이스가 함께 라우팅됩니다.
차동 쌍의 트레이스 사이에 장애물이 끼는 것은 이상적이지 않지만, 라우터는 라우팅하는 동안 자동으로 트레이스를 장애물 주위로 이동시킬 수 있습니다. 예를 들어, 아래와 같이 라우팅 경로에 저항기가 배치되었습니다. 트레이스가 구성 요소에 접근함에 따라, 가능한 가장 타이트한 클리어런스로 구성 요소 주위를 자동으로 이동하게 됩니다. 그런 다음 구성 요소의 반대편을 클릭하여 구성 요소 주위로 라우팅을 설정할 수 있으며, 목적지까지 계속 라우팅할 수 있습니다.
이는 최대 비결합 길이에 대한 설계 규칙 오류를 유발할 수 있지만, 일반적으로 구성 요소 주위를 이동하면서 여기에서도 장애물 회피가 우선시될 것입니다.
보다 복잡한 구성 요소, 예를 들어 고볼 카운트의 BGA나 좁은 핀 피치의 SMD 커넥터와 같은 경우, 트레이스를 위한 연결을 생성하기 위해 팬아웃 전략을 사용해야 합니다. 이러한 구성 요소로의 추가 라우팅 설정은 구성 요소 주변에 Room 객체를 생성함으로써 제어할 수 있습니다. 그런 다음 "Within Room" 커스텀 쿼리를 사용하여 이 지역 내에서 클리어런스와 같은 특정 제약 조건을 정의할 수 있습니다. 이를 통해 핀 사이의 넥다운, 디커플링 길이, 평행 세그먼트 및 클리어런스를 방 내부에서만 제어할 수 있으므로 구성 요소 핀아웃을 살펴볼 때 임피던스 불일치를 최소화할 수 있습니다.
아래 이미지는 두 개의 라우팅된 차동 쌍을 보여줍니다. Altium Designer의 인터랙티브 라우팅 도구 덕분에 이는 빠르고 쉬운 과정입니다. 이 시점에서, 각 쌍에 길이 조정을 적용하거나 여러 쌍에 걸쳐 적용할 수 있습니다. 차동 쌍에 길이 조정을 적용하는 방법을 보려면 이 기사를 확인하세요.
Altium Designer에서 완성된 차동 쌍 라우팅
xSignals 패키지를 사용하여 이러한 넷 또는 넷 그룹의 신호 무결성을 검사할 수도 있습니다. 넷 그룹을 검사하려면 차동 쌍 클래스를 생성할 때와 마찬가지로 디자인 -> 클래스 대화 상자에서 xSignals 클래스를 정의해야 합니다. 이를 통해 신호의 상승 및 하강 에지와 오버슈트/언더슈트를 검사할 수 있습니다. 길이 허용 오차 및 차동 임피던스에 대해 수행된 것과 동일한 방식으로 이 레이아웃에 다른 고속 설계 규칙을 적용할 수 있습니다. 여기에 표시된 설계 규칙은 빠르고 쉬운 차동 쌍 라우팅의 핵심입니다.
Altium Designer는 설계의 정보를 라우팅 도구와 통합하여 다음 장치가 의도한 대로 기능하도록 합니다. Altium Designer의 통합 환경은 모든 도구가 동일한 규칙 기반 설계 엔진을 사용하여 통신할 수 있게 합니다. 최고의 스키마틱, CAD, 시뮬레이션 및 라우팅 도구는 최고의 PCB를 생성하는 데 필요한 정확한 것입니다.
오늘 Altium Designer 전문가와 상담하세요 만약 Altium Designer에 대해 더 알고 싶다면.