여러분은 가만히 계세요 제가 모두 고장낼게요

IT 지식, PC 모바일 문제 해결 그리고 종종 애니 게임 일상생활 근황을 종종 올리고 있어요!

냐.한국 자세히보기

카테고리 없음

Xilinx HW_Server 포트 변경하기

Kamilake 2023. 5. 6. 15:35
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

Xilinx 장치를 JTAG으로 PC와 연결하기 위해서는 HW 서버가 필요합니다.

대부분 Vivado와 Vitis를 사용할 때 로컬에서 자동으로 실행되는데, 기본 보내기/받기 포트가 3121로 설정되어 있습니다.

공교롭게도.. Windows 내장 Hyper-V 관리자와 Hyper-V 서비스가 서로 통신하는 포트가 3121입니다. VMWare같은 커널 수준 가상머신을 사용하지 않는다면 3121 포트로 가상머신을 사용하고, WSL과 수많은 가상화 시스템이 이 Hyper-V를 기반으로 작동하기에 이쪽 포트를 변경하는 것보다는 Xilinx HW Server의 포트를 변경하는 게 덜 번거롭고 문제가 적겠죠. 심지어 저 포트는 윈도우가 켜질 때 자동으로 잡히기 때문에 선점할 수도 없어요.

이 글에서는 Vivado와 Vitis의 포트를 수동으로 설정하고 수동으로 HW Server를 실행하는 방법에 대해 다뤄보겠습니다.

1. HW Server 켜기

기본 옵션으로 Xilinx Unified Platform을 설치했다면 다음 경로에 하드웨어 서버 실행 파일이 있습니다.

"C:\Xilinx\Vitis\2022.2\bin\hw_server.bat"

포트를 변경하기 위해서는 "-stcp::<포트번호>" 플래그를 전달할 수 있고 "-d"를 사용해 백그라운드에서 실행시킬 수 있습니다.

HW Server를 실행하기 위해서 간단한 바로가기를 만들어볼게요

"F:\Xilinx\Vitis\2022.2\bin\hw_server.bat" "-stcp::17394" "-d"

자신의 HW_Server.bat 설정 파일과 포트를 사용해 실행 파일을 만들 수 있습니다.

저 같은 경우에는 17394 포트를 사용했습니다.(무작위 선별) 10000~50000번 사이에서 적당히 고르면 대부분 안 겹치니 적당히 고르거나 똑같이 맞춰주세요.

위 배치 파일을 실행하면 검은 창이 몇 초 동안 보이고 사라질텐데, 아마 포트 충돌 또는 방화벽 문제가 없다면 서버가 정상적으로 열렸을 것입니다. 이제 클라이언트인 Vivado, Vitis를 설정하세요.

* 보너스 팁: 추천 배치 파일의 위치는 shell:start 입니다. 이 폴더에 파일을 두면 Windows가 켜질 때 자동으로 파일이 실행됩니다.

2. Vivado 포트 설정

Vivado에서는 하드웨어 관리자를 통해 손쉽게 HW 서버를 바꿀 수 있습니다.

"Open Hardware Manager" 버튼을 눌러 하드웨어 관리자를 열어줍니다.

하드웨어 관리자 창에서 자동으로 서버를 감지하지 못하면 위처럼 서버를 연결하라는 메세지가 표시됩니다.

Auto Connect로 자동으로 서버를 여는 대신 Open New Target... 을 선택해 새로운 서버를 추가할 수 있습니다.

Next를 눌러 다음으로 진행한 다음 Remote server를 선택해주세요.

로컬 서버를 연결하는데 리모트 서버를 선택해야 하는 이유는 리모트 서버 모드에서만 포트를 변경할 수 있도록 되어 있기 때문이지만, 둘의 기능 차이는 없으니 괜찮습니다.

서버는 localhost, 포트는 아까 전에 설정한 값으로 설정한 다음 Next를 눌러 다음으로 진행해주세요.

실패했다면 왼쪽(위쪽)처럼, 성공했다면 오른쪽(아래쪽)처럼 표시될텐데, 만약 왼쪽처럼 포트를 찾을 수 없는 경우에는 서버를 다시 실행하거나 포트를 변경해주세요.

3. Vitis 포트 설정

Vitis에서는 전역 빌드 설정을 변경할 수 없기 때문에 프로젝트별로 Run Configurations를 변경해야 합니다.

Run Configurations를 설정하기 위해서 현재 프로젝트의 실행 버튼에서 Run Configurations 메뉴를 눌러주세요.

기존에 사용하던 실행 구성을 변경하거나 새 구성을 만들어주세요.

기존 설정이 아무것도 없는 상태에서 새 구성을 만들기 위해서는 Single Application Debug를 두 번 클릭해 새로운 설정을 복사하면 됩니다.

New를 눌러 새 서버를 추가할 수 있습니다.

Target Name은 알아보기 쉽게 원하는 대로, Hostlocalhost, 포트는 아까 정해둔 포트를 사용하면 됩니다.

입력하셨다면 Test Connection을 눌러 연결 상태를 확인하세요.

서버가 정상이라면 이대로 저장해주시면 됩니다. 이제 다시는 추가로 설정하실 필요없이 자동으로 작동합니다.

 

이제 3121 포트 없이 평소처럼 Bitstream을 로드하고 보드에서 작업을 수행하실 수 있습니다.

이 글이 도움이 되었으면 좋겠습니다.