FPGA 핀 매퍼로 작업하기
Altium Designer Pin Mapper 대화상자에서는 외부 핀 파일(예: FPGA 또는 마이크로컨트롤러(MC) 도구에서 내보낸 파일)과 회로도 컴포넌트 간의 링크를 생성한 다음, 두 도메인(FPGA와 PCB) 간의 핀 신호를 비교할 수 있습니다.
이 핀 비교 결과에 따라 외부 핀 파일의 변경/업데이트 내용을 회로도로 전송하거나, 반대로 회로도의 핀 데이터를 핀 파일로 다시 전달할 수 있습니다. Pin Mapper를 사용하는 주된 목적은 외부 도구(특히 FPGA 및 MC)로부터 컴포넌트 핀에 대한 추가 정보를 얻어, 이 데이터를 Configure Pin Swapping 대화상자에서 핀 스와핑에 사용할 수 있게 하는 것입니다. 이를 통해 두 도메인 간 핀 데이터를 수동으로 옮길 필요가 없어집니다.
현재 Altium Designer의 Pin Mapping 기능은 Altera와 Xilinx, 두 FPGA 벤더를 직접 지원합니다. 향후 이 벤더 목록을 확장할 계획입니다. 또한 Altium 자체 Pin Info 파일 형식도 지원하며, 이는 타사 FPGA 도구용 FPGA/MC 핀 설명으로 사용하거나 다른 유형의 컴포넌트에도 사용할 수 있습니다.
프로세스 흐름
-
FPGA 도구에서 소스 핀 데이터 파일 가져오기
-
Altera Quartus® II v13.1의 경우:
-
Quartus에서 구현된(implemented) 설계를 엽니다.
-
Assignments » Pin Planner을(를) 선택합니다.
-
File » Export을(를) 선택하고 Altium Designer에서 사용할
csv파일을 저장합니다.
-
-
Xilinx Vivado® 2017.4의 경우:
- Vivado에서 구현된(implemented) 설계를 엽니다.
- File » Export » Export I/O Ports을(를) 선택합니다.
-
Export I/O Ports 대화상자에서 생성할 I/O 포트 유형으로
csv을(를) 지정한 다음 OK을(를) 클릭합니다.
-
-
Altium Designer에서 외부 핀 파일의 FPGA/MC 데이터에 접근:
-
Pin Mapper 대화상자에는 다음 항목(이미지 라벨 참조)이 포함됩니다:
-
소스 FPGA/MC 핀 파일의 파일명과 경로를 표시합니다. 링크는 파일 브라우저를 통해 설정됩니다.
-
소스 핀 할당 변경을 찾아 회로도 컴포넌트에 적용하거나, 반대로 되돌릴 수 있는 Pin Table입니다. 각 열 헤더 이름 오른쪽의 화살표를 사용해 열을 오름차순/내림차순으로 정렬할 수 있습니다. 열 헤더의 필터 아이콘을 클릭하면 드롭다운을 통해 열 내용을 필터링할 수 있습니다.
-
선택된 핀이 하이라이트되며, Preview mode 드롭다운을 사용해 그룹별로 핀을 표시할 수 있는 풋프린트 미리보기입니다. 선택 항목에는 None, Bank Number, IO Pins, 및 Diff Pair Pins이(가) 포함됩니다.
-
테이블을 파트별로 필터링하는 Component Part Selection입니다. 또한 파트가 회로도에 배치되었는지 여부와, 각 파트가 외부 파일 데이터와 동기화되어 있는지 여부(아래 상세 참조)도 표시합니다.
-
-
Pin Mapper 대화상자에서 외부 핀 파일을 선택합니다.
버튼을 클릭하여 로컬 드라이브에서 핀 파일을 찾아 선택합니다. 임시 Xilinx 또는 Altera 핀 파일(*.csv)만 선택할 수 있습니다. -
이전 동작에 따라 Pin Mapper 대화상자는 각 핀에 대해 다음과 같은 해결 옵션을 제공합니다:
-
(Synced) – 핀의 넷 이름이 동기화되어 있으며 변경이 필요 없습니다.
-
(Update Pin File) – 회로도에서 외부 FPGA 핀 파일로 넷 이름을 전송(업데이트)합니다. 회로도의 넷 이름이 FPGA 핀 파일의 Signal 이름으로 복사되며, 소스 csv핀 파일이 다시 작성됩니다. -
(Update Schematic) – 외부 FPGA 핀 파일의 Signal 이름과 일치하도록 회로도 넷 이름을 변경(회로도 업데이트)합니다. 회로도의 넷 라벨이 소스 FPGA Signal 이름과 일치하도록 변경됩니다.
-
(Ignore) – 변경을 거부하며 업데이트를 수행하지 않습니다.
-
(Warning) – 회로도와 외부(FPGA) 파일 간 핀 이름 매칭에 치명적이지 않은 차이가 있습니다. 필요하면 드롭다운 메뉴에서 업데이트 옵션(또는 Ignore)을 선택하십시오.
-
(Fatal Error) – 회로도와 외부(FPGA) 파일 간 핀 이름 매칭에 치명적인 차이가 있습니다. 이 Fatal Error는 업데이트를 수행하기 전에 반드시 해결해야 합니다.
-
-
테이블의 각 항목(행)에 대해 아이콘 드롭다운 메뉴에서 적절한 동작을 선택하고 Apply을(를) 선택합니다.
-
동작을 선택하면 회로도의 넷 이름이 FPGA 핀 파일의 Signal 이름으로 복사되며, 소스 csv핀 파일이 다시 작성됩니다. -
동작을 선택하면 회로도의 넷 라벨이 소스 FPGA Signal 이름과 일치하도록 변경됩니다.
-
또한 테이블 항목의 오른쪽 클릭 메뉴는 핀 이름 업데이트를 위한 다양한 일괄 선택 옵션을 제공합니다.
추가 기능
-
대화상자의 Part Selection을(를) 사용하면 매핑 테이블에 나열된 핀을 선택한 Part로 필터링할 수 있습니다. 또한 회로도에 배치되지 않은 Part와 외부 FPGA 파일과 동기화되지 않은 Part(빨간 표시)도 확인할 수 있습니다.
-
외부 파일에 링크된 컴포넌트 파트가 여러 개인 경우, Pin Mapper 대화상자에서 이러한 유형의 컴포넌트에 대한 옵션 간 전환이 가능합니다.
-
그리드 테이블에는 다음과 같은 오른쪽 클릭 메뉴 명령이 포함됩니다:
- Update All pins in Schematic - 회로도에서 모든 핀 이름을 업데이트하도록 선택.
- Update All pins in Pin File - 핀 파일에서 모든 핀 이름을 업데이트하도록 선택.
- Ignore for All pins - 모든 핀에 대해 무시하도록 선택.
- Update Selected pins in Schematic - 선택한 핀 이름을 회로도에서 업데이트하도록 선택.
- Update Selected pins in Pin File - 선택한 핀 이름을 핀 파일에서 업데이트하도록 선택.
- Ignore for Selected pins - 선택한 핀에 대해 무시하도록 선택.
- Default for All pins - 모든 핀에 대해 기본값을 사용하도록 선택.
- Default for Selected pins - 선택한 핀에 대해 기본값을 사용하도록 선택.
- 회로도 측과 FPGA 측에서 서로 다른 넷 이름이 할당된 핀이 있는 경우, ERC에서 이를 확인할 수 있으며 Messages 패널에 위반(violation)으로 표시됩니다(아직 구현되지 않음).
- 회로도 측에서 FPGA 핀 파일로 워크플로를 시작하려면 Altium Pin Report 파일을 생성할 수 있습니다. Pin Mapper 대화상자에서 Export 버튼을 선택하십시오.
- 현재는 일반적인 핀 파라미터만 복사할 수 있지만, Swap group 등 더 고급 데이터에 대한 지원도 계획되어 있습니다. 현재로서는 FPGA 핀 파일 데이터에서 변경 사항을 가져와 스와핑을 수동으로 정의해야 합니다.
- 외부 핀 파일이 컴포넌트에 링크되면 새 컴포넌트 모델(Pin Info)이 생성되어 Component Properties 패널의 Models 목록에 표시됩니다. 향후에는 이를 통해 라이브러리 컴포넌트에 FPGA 핀 데이터를 쉽게 추가할 수 있게 됩니다. 또한 패널의 Models 섹션에서 Pin Info를 제거하거나 수정할 수 있습니다.
-
컴포넌트에 Pin Info 모델이 있으면 Configure Pin Swapping 대화상자에서 해당 컴포넌트에 대해 추가 핀 파라미터와 옵션을 사용할 수 있습니다.

