Windows에서 Nexys A7의 UART 출력을 확인해 보자.
보드의 USB-UART 포트를 연결하고 Tera Term에서 해당 COM 포트를 고르면 된다. 통신 속도는 보드의 고정값이 아니라 FPGA 설계에 넣은 UART 설정과 맞춰야 한다.
먼저 확인할 것
Nexys A7의 J6 USB 포트는 FTDI FT2232HQ를 통해 JTAG와 UART를 제공한다. Windows에서는 UART 채널이 COM 포트로 보인다.
보드의 UART 신호는 FPGA의 C4와 D4 핀에 연결된다. RTL top과 XDC에서 송수신 방향을 잘못 바꾸지 않았는지 먼저 확인한다.
COM 포트 찾기
Nexys A7의 전원을 켜고 J6 USB 포트를 PC에 연결한다.
Windows 장치 관리자에서 포트(COM 및 LPT)를 연다. 보드를 연결하기 전후에 새로 생긴 COM 번호를 확인한다.
COM 포트가 나타나지 않으면 USB cable과 FTDI driver부터 확인한다. 충전 전용 cable은 사용하지 않는다.
Tera Term 연결
Tera Term을 실행하고 File → New connection을 연다. Serial을 선택한 뒤 장치 관리자에서 확인한 COM 포트를 고른다.
포트가 목록에 없다면 다른 프로그램이 사용 중인지 확인하고 Tera Term을 다시 연다.
Serial port 설정
Setup → Serial port에서 FPGA UART와 같은 값으로 맞춘다.
| 항목 | 설정 예 |
|---|---|
| Port | 장치 관리자에서 확인한 COM 포트 |
| Speed | RTL 또는 MicroBlaze 설정의 baud rate |
| Data | 8 bit |
| Parity | none |
| Stop bits | 1 bit |
| Flow control | none |
8-N-1, flow control 없음은 흔히 쓰는 예다. 현재 설계가 다른 형식을 사용한다면 그 값이 우선이다.
원문에는 MicroBlaze 9600, Zynq 115200 예가 있었지만 모든 설계의 고정값은 아니다. 이번에는 실제 프로젝트의 baud rate와 수신 문자열을 다시 확인하지 않았다.
출력 확인
FPGA를 program하거나 보드를 reset한다. 설계가 UART로 문자열을 보내면 Tera Term 창에 표시된다.
글자가 깨지면 baud rate, data bit, parity, stop bit 순서로 확인한다. 아무것도 보이지 않으면 COM 포트, TX/RX 핀, reset과 clock을 확인한다.
JTAG programming 순서는 Vivado에서 Nexys A7 bitstream을 생성하고 FPGA에 올리는 방법에 정리했다.
공식 자료
원문 기록
한 줄 요약
Nexys A7의 COM 포트를 고르고 Tera Term 통신 설정을 FPGA UART 설정과 같게 맞춘다.