PCB CoDesign
속담에 “백지장도 맞들면 낫다”라는 말이 있듯이, 여러 사람이 함께하면 일이 훨씬 수월해집니다. 보드 설계자들이 오랫동안 꿈꿔온 것 중 하나는 여러 사람이 동시에 같은 보드에서 작업할 수 있는 기능입니다. 이 작업은 비전문가에게는 그리 복잡해 보이지 않을 수 있습니다. 예를 들어 “보드의 저 부분에서 Bob이 라우팅한 것을 가져와 내 보드 사본에 반영하면 되지”처럼 말이죠. 하지만 이를 실제로 구현하려면 몇 가지 핵심 역량이 결합되어야 합니다.
여기에는 다음이 포함됩니다:
-
여러 설계자가 동일한 PCB 설계에 접근하여 작업하고, 다른 설계자의 작업에 영향을 주지 않으면서 각자의 변경 사항을 저장할 수 있게 해주는 시스템.
-
동일한 보드의 버전 간 차이를 정확하게 비교하고 식별하는 메커니즘.
-
감지된 차이를 해결할 때 어떤 사람의 변경 사항을 채택할지(승리할지) 설계자가 선택할 수 있게 해주는 도구.
-
대량의 차이를 자동으로 처리하고, 충돌을 만들지 않으면서 해결할 수 있는 도구.
이러한 작업을 해결하기 위해 Altium Designer는 PCB CoDesign 기능을 제공하며, 이를 통해 Workspace에서 체크아웃한 보드 리비전과 Workspace에 있는 동일 보드의 최신 리비전 간 차이를 탐색할 수 있습니다. PCB CoDesign 기능은 PCB 문서에 저장된 데이터의 변경을 감지할 수 있습니다: PCB 레이아웃, 객체 속성, 레이어 스택, 설계 규칙, 제약 조건.
충돌이 감지되면 로컬 변경 사항을 유지할지, 최신 커밋의 원격 변경 사항을 수락할지 선택한 다음 병합하여 설계 중복을 확실하게 해결할 수 있습니다.
PCB CoDesign 기능은 PCB CoDesign 패널을 통해 접근하고 조작합니다. 이를 사용하려면 PCB 프로젝트가 연결된 Workspace의 버전 관리 하에 있어야 합니다.
비교 및 병합 워크플로우
Altium Designer가 PCB 문서가 최신이 아님을 감지(즉, 문서를 체크아웃한 이후 누군가 Workspace에 작업을 저장한 경우)하거나 충돌 상태임을 감지(즉, 사용자가 해당 문서를 편집하고 저장한 버전을 아직 Workspace에 저장하기 전에 누군가 먼저 그 문서를 Workspace에 저장한 경우, see details below)하면, 보드의 최신 리비전으로 업데이트하거나 병합을 수행하여 상대의 변경 사항을 내 보드 버전에 반영해야 합니다. 이는 다음 방법으로 수행할 수 있습니다:
-
Projects 패널에서 VCS 상태 아이콘을 클릭하고 표시되는 메뉴에서 해당 명령을 선택:
-
Out of date – Compare To Remote Document Version 명령
-
Modified – Compare To Remote Document Version 명령
-
Conflict Prevention – Compare To Remote Document Version & Merge 명령
-
Conflict Detected – Resolve Conflict: Compare To Remote Document Version & Merge 명령
-
-
PCB CoDesign 패널을 열고 Compare, Compare To Remote Document Version 또는 Compare & Merge 버튼을 클릭
-
PCB 문서가 Modified 상태인 경우, Projects 패널에서 문서 항목의 History & Version Control » Compare To 우클릭 메뉴에 있는 Local Changes to Remote Document Version 명령 또는 메인 메뉴의 Projects » History & Version Control » Compare To 명령 사용
-
PCB 문서가 Conflict Detected 상태인 경우, Projects 패널에서 문서 항목의 History & Version Control » Resolve Conflict 우클릭 메뉴에 있는 Compare To Remote Version & Merge 명령 사용
-
디자인 공간 하단에 표시되는 알림에서 Compare 또는 Compare & Merge 버튼을 클릭.
비교가 완료되면 감지된 차이가 PCB CoDesign 패널에 목록으로 표시됩니다. 이 목록은 PCB 문서의 기준 리비전(체크아웃한 리비전)과 Workspace에 있는 최신 리비전(다른 사용자가 변경한 내용 포함) 간에 감지된 차이를 보여줍니다.
차이 목록은 Rules, Components, Polygon pours, Copper 등과 같은 카테고리로 그룹화됩니다. 카테고리를 확장하면 해당 카테고리에서 어떤 객체가 추가, 수정 및/또는 제거되었는지 등 구체적인 차이 목록을 볼 수 있습니다:
-
– 객체가 최신 리비전에 추가됨
-
– 객체가 최신 리비전에서 수정됨
-
– 객체가 최신 리비전에서 제거됨
Modified 유형의 차이의 경우, 항목 위에 커서를 올리거나 확장하여 수정에 대한 세부 정보를 확인할 수도 있습니다.
Up Arrow / Down Arrow 키를 사용해 차이 목록을 탐색할 수 있습니다. 차이 카테고리가 선택된 상태에서 Spacebar 를 누르면 확장/접기가 됩니다.
PCB CoDesign 패널에 나열된 차이에서 PCB 편집기 디자인 공간으로 크로스 프로빙할 수 있습니다.
-
PCB CoDesign 패널의 목록에서 카테고리를 클릭하면 해당 카테고리의 변경 사항이 디자인 공간에서 하이라이트됩니다.
-
PCB CoDesign 패널의 목록에서 특정 변경 사항을 클릭하면 해당 변경만 디자인 공간에서 하이라이트됩니다.
-
Shift+Click및/또는Ctrl+Click방식을 사용하여 패널에서 여러 항목을 선택할 수 있습니다.
색상 코딩을 통해 어떤 객체가 추가, 수정, 제거되었는지 또는 변경되지 않았는지( PCB CoDesign 패널에서 핀-투-핀 연결을 선택했을 때 해당 연결의 변경되지 않은 객체) 확인할 수 있습니다.
패널 상단의
컨트롤을 클릭해 접근하는 설정을 사용하여 변경 사항 표시 방식을 구성합니다.
-
Show on PCB 옵션(단축키:
Ctrl+Shift+A)을 활성화하면 PCB 문서 디자인 공간에서 차이가 하이라이트됩니다. -
Show on PCB 옵션이 활성화되어 있을 때 Zoom selected object 옵션도 활성화하면, PCB CoDesign 패널에서 차이 항목을 클릭할 때 디자인 공간에서 영향을 받는 객체로 크로스 프로빙할 수 있습니다. 슬라이더를 사용해 선택한 객체로 확대해 들어갈 때 사용되는 줌 배율을 조정합니다.
또한 Shift+B 키보드 단축키를 누른 채로 현재 상태와 변경 전 상태를 전환할 수 있습니다. 패널의 힌트는 현재 어떤 상태가 활성화되어 있는지 표시합니다.
패널 하단의
버튼을 클릭하여 감지된 모든 차이점을 병합합니다. 병합이 진행 중임을 알리는 팝업이 표시됩니다. 차이점은 PCB 문서의 로컬 작업 사본에 병합되며, 다른 설계자가 사용할 수 있도록 하려면 Workspace에 저장해야 합니다.
변경 사항이 병합되면 Projects 패널에서 PCB 문서의 VCS 상태가 Merged(으)로 바뀌고,
아이콘이 표시됩니다. 아이콘을 클릭하여 설계를 Workspace에 저장하거나 로컬 변경 사항을 되돌릴 수 있습니다.
또한 설계는 Projects 패널에서 프로젝트 이름 옆의 Save to Server 컨트롤을 사용해 Workspace에 저장할 수도 있고, PCB CoDesign 패널에서 Save to Server 버튼을 사용해 저장할 수도 있습니다.
충돌 해결
또 다른 작업 방식은 3-way 비교로, 다른 사람이 보드에서도 작업 중일 때 사용합니다. 예를 들어, 사용자와 동료 Bob이 Workspace에서 보드 사본을 체크아웃했다고 가정해 보겠습니다. 두 사람은 각자 자신의 보드 사본에서 부품 배치와 라우팅 작업을 진행합니다. Bob은 자신이 담당한 보드 영역을 완료한 뒤 Workspace에 저장합니다. 동시에 사용자는 보드의 자신의 영역에서 작업을 계속하고 변경 사항을 로컬에 저장합니다. 이로 인해 충돌 상황이 발생하며, 이는 PCB CoDesign 패널에서 처리할 수 있습니다.
비교를 시작하려면 Projects 패널에서 Conflict Prevention 또는 Conflict Detected VCS 상태 아이콘을 클릭한 다음, 표시되는 메뉴에서 각각 Compare To Remote Document Version & Merge 또는 Resolve Conflict: Compare To Remote Document Version & Merge 명령을 선택하거나 PCB CoDesign 패널의 Compare & Merge 버튼을 클릭합니다. 비교가 완료되면 감지된 차이점 목록이 패널에 표시되며, 감지된 충돌은 패널 하단에 나열됩니다.
PCB CoDesign 패널에 나열된 충돌에서 PCB 편집기 설계 공간으로 크로스 프로빙할 수 있습니다.
-
PCB CoDesign 패널의 목록에서 카테고리를 클릭하면 해당 카테고리의 충돌이 설계 공간에서 강조 표시됩니다.
-
PCB CoDesign 패널의 목록에서 특정 충돌을 클릭하면 해당 충돌만 설계 공간에서 강조 표시됩니다.
-
Shift+Click및/또는Ctrl+Click기법을 사용하여 패널에서 여러 항목을 선택할 수 있습니다.
감지된 각 충돌 또는 특정 카테고리의 모든 감지된 충돌에 대해, 로컬 변경 사항(Local)을 적용할지 또는 Workspace의 최신 커밋 변경 사항(Remote)을 적용할지 선택할 수 있습니다. 또한 현재 선택된 모든 변경 항목에 원하는 설정을 빠르게 적용할 수도 있습니다. 이를 위해 Shift+Click 및/또는 Ctrl+Click 기법으로 필요한 항목을 선택한 다음, 선택 항목 중 하나에 대해 원하는 설정을 선택하십시오. 또는 감지된 충돌 영역 상단의 배너 영역에 있는 드롭다운을 사용하여 모든 감지된 충돌에 대해 한 번에 원하는 모드를 선택할 수 있습니다.
Up Arrow / Down Arrow 키를 사용하여 충돌 목록을 탐색할 수 있습니다. Left Arrow/ Right Arrow 키를 사용하여 선택된 충돌의 모드(Combined/Local/Remote)를 전환합니다. 충돌 카테고리가 선택되어 있을 때는 Spacebar 을(를) 눌러 확장/접기를 전환합니다.
모든 충돌에 대해 원하는 모드를 선택한 후, 변경 사항을 PCB 문서의 로컬 사본에 병합할 수 있습니다.







)

