회로도 에디터
ImEDA 회로도 에디터는 전자 회로의 논리적 설계를 위한 핵심 도구입니다. 배선, 부품 배치, 라벨링, 계층 구조 설계, ERC 검증까지
회로도 설계의 전체 워크플로우를 지원합니다. 회로도 파일 확장자는 .imsch입니다.
배선 도구
회로도에서 전기적 연결을 형성하는 기본 도구입니다. Wire, Bus, Junction을 조합하여 부품 간의 전기적 네트워크를 구성합니다.
| 도구 | 단축키 | 설명 |
|---|---|---|
| Wire | W | 두 핀 또는 넷 사이의 전기적 연결선을 그립니다. 클릭으로 시작점과 끝점을 지정합니다. |
| Bus | B | 여러 신호를 하나의 버스로 묶어 배선합니다. Bus Entry로 개별 신호를 분리합니다. |
| Junction | J | 두 Wire가 교차하는 지점에 전기적 연결점을 추가합니다. T자 교차 시 필수입니다. |
Wire 배선 팁
Wire 도구는 2-Point 패턴으로 동작합니다. 첫 번째 클릭으로 시작점(P1)을 지정하고, 마우스 이동으로
경로를 추적한 뒤, 두 번째 클릭으로 끝점(P2)을 확정합니다. 연속 배선이 가능하며, Esc 키로 배선을 종료합니다.
핀 위에서 Wire를 시작하면 자동으로 핀에 연결됩니다.
Wire vs Bus
Wire는 단일 전기 신호를 전달하는 반면, Bus는 여러 신호를 논리적으로 묶은 그룹입니다.
Bus의 이름은 D[0..7] 또는 A[0..15]와 같이 범위 표기법을 사용합니다.
Bus에서 개별 Wire를 분리하려면 Bus Entry와 Label을 함께 사용해야 합니다.
부품 배치
심볼 라이브러리(.imslib)에서 부품을 선택하여 회로도에 배치합니다.
전원/그라운드 심볼과 No Connect 표시도 이 카테고리에 포함됩니다.
| 도구 | 단축키 | 설명 |
|---|---|---|
| Place Part | P | 심볼 라이브러리에서 부품을 선택하여 회로도에 배치합니다. 라이브러리 브라우저가 열립니다. |
| Power | - | VCC, VDD, +3.3V, +5V 등 전원 심볼을 배치합니다. |
| Ground | - | GND, AGND, DGND 등 그라운드 심볼을 배치합니다. |
| No Connect | Q | 의도적으로 연결하지 않는 핀에 X 표시를 합니다. ERC에서 미연결 경고를 방지합니다. |
부품 배치 워크플로우
P 키를 누르면 부품 선택 다이얼로그가 열립니다. 라이브러리를 탐색하거나 검색어를 입력하여 부품을 찾을 수 있습니다.
부품을 선택한 후 회로도 위에서 클릭하면 배치됩니다. 배치 전 R 키로 회전, X/Y 키로 미러를 적용할 수 있습니다.
배치 후 편집
배치된 부품은 선택 후 Object Inspector에서 속성을 편집할 수 있습니다. Reference Designator(R1, C1 등), Value(10k, 100nF 등), Footprint 매핑 등을 설정합니다. 부품을 더블클릭하면 속성 편집 다이얼로그가 열립니다.
라벨 및 포트
라벨과 포트는 Wire에 넷 이름을 부여하거나, 서로 다른 위치의 넷을 논리적으로 연결하는 데 사용됩니다. 계층 설계에서는 HierPort를 통해 상위 시트와 하위 시트를 연결합니다.
| 도구 | 설명 | 용도 |
|---|---|---|
| Label | Wire에 넷 이름을 부여합니다 | 동일 시트 내에서 같은 이름의 Label이 붙은 Wire는 전기적으로 연결됩니다. |
| Port | 시트 간 글로벌 넷 연결 | 프로젝트 내 모든 시트에서 동일 이름의 Port는 전기적으로 연결됩니다. |
| HierPort | 계층 시트의 인터페이스 핀 | 서브시트 내부에서 SheetPin과 1:1로 매핑되어 계층 간 신호를 전달합니다. |
| Bus Entry | 버스에서 개별 신호 분리 | Bus와 Wire 사이의 45도 연결선입니다. Label과 함께 사용하여 개별 넷 이름을 지정합니다. |
Label vs Port
Label은 동일 시트(Sheet) 내에서만 유효합니다. 같은 이름의 Label이 있는 Wire끼리 전기적으로 연결됩니다. Port는 프로젝트 전체에서 글로벌하게 유효하므로, 서로 다른 시트에 있는 동일 이름의 Port는 자동으로 연결됩니다. 계층 설계에서는 HierPort + SheetPin 조합을 사용하여 명시적으로 시트 간 연결을 정의하는 것이 권장됩니다.
계층 구조
대규모 설계에서는 계층 구조(Hierarchy)를 사용하여 회로도를 여러 서브시트로 분리합니다.
각 서브시트는 독립적인 .imsch 파일로 관리되며, 상위 시트에서 Sheet 심볼로 참조됩니다.
| 요소 | 설명 |
|---|---|
| Sheet | 서브시트를 나타내는 사각형 심볼입니다. 시트 이름과 파일 경로를 포함합니다. |
| SheetPin | Sheet 심볼의 외곽에 배치되는 인터페이스 핀입니다. 서브시트 내부의 HierPort와 1:1로 대응됩니다. |
| 서브시트 진입 | Sheet 심볼을 더블클릭하면 해당 서브시트가 열립니다. |
계층 설계 워크플로우
- 상위 시트에서 Sheet 심볼을 배치하고, 서브시트 파일명을 지정합니다.
- Sheet 심볼에 SheetPin을 추가하여 외부 인터페이스를 정의합니다.
- Sheet 심볼을 더블클릭하여 서브시트로 진입합니다.
- 서브시트 내부에서 HierPort를 배치하고, SheetPin과 동일한 이름을 부여합니다.
- HierPort에 Wire를 연결하여 서브시트 내부 회로와 외부 인터페이스를 연결합니다.
계층 구조 팁
SheetPin의 이름과 서브시트 내부 HierPort의 이름이 정확히 일치해야 전기적 연결이 성립합니다. ERC를 실행하면 이름 불일치나 미연결 SheetPin을 자동으로 검출할 수 있습니다. 동일한 서브시트 파일을 여러 Sheet 심볼에서 참조하면 재사용 설계(Multi-instance)가 가능합니다.
검증 도구
회로도 설계가 완료되면 ERC(Electrical Rules Check)를 실행하여 전기적 오류를 검출합니다. ERC는 연결 그래프와 넷 분석을 기반으로 다양한 유형의 오류를 자동으로 찾아냅니다.
ERC (Electrical Rules Check)
ERC가 검출하는 주요 오류 유형은 다음과 같습니다:
| 오류 유형 | 심각도 | 설명 |
|---|---|---|
| 미연결 핀 | Warning | 부품 핀이 Wire에 연결되지 않았고, No Connect 표시도 없는 경우 |
| 다중 드라이버 | Warning | 하나의 넷에 출력(Output) 핀이 2개 이상 연결된 경우 |
| 전원 오류 | Error | 전원 핀이 적절한 전원 소스에 연결되지 않은 경우 |
| 핀 타입 충돌 | Error | 호환되지 않는 핀 타입(예: Output-Output)이 같은 넷에 연결된 경우 |
| 미연결 Wire | Warning | Wire의 한쪽 끝이 아무것에도 연결되지 않고 공중에 떠 있는 경우 |
| SheetPin 불일치 | Error | SheetPin과 대응하는 HierPort가 서브시트에 존재하지 않는 경우 |
ERC 활용 팁
ERC 결과에서 오류 항목을 더블클릭하면 해당 위치로 자동 이동합니다.
의도적인 미연결 핀에는 반드시 No Connect(Q)를 배치하여 ERC 경고를 방지하세요.
설계 초기부터 주기적으로 ERC를 실행하면 문제를 조기에 발견할 수 있습니다.
연결 그래프 / 넷 분석
ERC 내부에서는 회로도의 모든 전기적 연결을 그래프로 구성합니다. 각 넷(Net)에 연결된 핀, 라벨, 포트를 추적하여 전기적 무결성을 검증합니다. 넷 분석을 통해 설계의 연결 상태를 한눈에 파악할 수 있습니다.
Reference Annotation
Reference Annotation은 회로도의 모든 부품에 고유한 Reference Designator를 자동으로 부여하는 기능입니다.
부품 배치 시 임시로 할당된 R?, C? 등의 미지정 레퍼런스를
R1, R2, C1, C2와 같이 순차적으로 번호를 매깁니다.
| 규칙 | 설명 |
|---|---|
| 접두사 기반 | 부품 타입에 따라 R, C, L, U, Q, D 등 표준 접두사를 유지하며 번호를 부여합니다. |
| 순차 번호 | 왼쪽 상단에서 오른쪽 하단 방향으로 순서대로 번호를 매깁니다. |
| 시트별 오프셋 | 계층 설계 시 각 시트별로 번호 오프셋을 적용할 수 있습니다 (예: Sheet1=100번대, Sheet2=200번대). |
| 기존 번호 유지 | 이미 번호가 부여된 부품은 유지하고, 미지정(?) 부품만 새로 번호를 매깁니다. |
Annotation 팁
PCB 전달(Forward Annotation) 전에 반드시 Reference Annotation을 실행하세요. 미지정 레퍼런스가 있으면 ECO에서 오류가 발생합니다. 전체 재번호가 필요한 경우, 기존 번호를 초기화한 후 Annotation을 다시 실행할 수 있습니다.
ECO (Engineering Change Order)
ECO는 회로도(SCH)와 PCB 보드 사이의 설계 변경 사항을 동기화하는 메커니즘입니다. Forward Annotation과 Backward Annotation 두 방향의 동기화를 지원합니다.
Forward Annotation (SCH → PCB)
회로도에서 변경한 내용을 PCB에 반영합니다. 가장 일반적인 ECO 방향이며, 다음과 같은 변경 사항을 전달합니다:
- 새로 추가된 부품 → PCB에 풋프린트 배치
- 삭제된 부품 → PCB에서 풋프린트 제거
- 넷 변경 → PCB 라츠네스트(Ratsnest) 업데이트
- Reference/Value 변경 → PCB 실크스크린 업데이트
- 풋프린트 변경 → PCB에서 풋프린트 교체
Backward Annotation (PCB → SCH)
PCB에서 변경한 내용을 회로도에 역으로 반영합니다. 주로 다음과 같은 경우에 사용됩니다:
- PCB 레이아웃 최적화를 위한 Reference 스왑 (예: R1 ↔ R2)
- PCB에서 변경된 핀 스왑의 회로도 반영
- PCB에서 변경된 Value의 회로도 동기화
ECO 워크플로우
일반적인 설계 순서: 회로도 완성 → Reference Annotation → ERC 검증 → Forward Annotation으로 PCB 전달 → PCB 레이아웃 → 필요 시 Backward Annotation. ECO 실행 전 변경 목록을 검토(Review)하여 의도하지 않은 변경이 포함되지 않았는지 확인하세요.
단축키 요약
| 단축키 | 기능 | 카테고리 |
|---|---|---|
W | Wire 배선 | 배선 |
B | Bus 배선 | 배선 |
J | Junction 배치 | 배선 |
P | 부품 배치 (Place Part) | 부품 |
Q | No Connect 배치 | 부품 |
R | 배치 중 회전 | 편집 |
X | 배치 중 X축 미러 | 편집 |
Y | 배치 중 Y축 미러 | 편집 |
Esc | 현재 도구 취소 / 선택 모드 | 일반 |
더블클릭 | Sheet 심볼 → 서브시트 진입 | 계층 |