UART의 역할이 PC와 PS를 연결해 주는 역할로 알고 있습니다.
2
작성한 질문수 2
안녕하세요 🙂
[1. 질문 챕터] : FPGA 4장, 5장
[2. 질문 내용] : FPGA 4장에서는 PS IP 블록의 UART1을 활성화 시키셨고, FPGA 5장에서는 PS IP 블록에서 UART1을 비활성화 시키셨습니다. 아마 4장에서는 printf와 scanf를 이용하여 Vitis Serial Terminal에 결과값을 띄워야 하기 때문에 UART가 필요했고, 5장에서는 Vitis Serial Terminal로 결과값을 볼 필요 없이 FPGA 보드로 LED 점등 속도만 확인하면 되기 때문에 UART를 쓰지 않으신 것으로 이해했습니다. 그럼 혹시 UART는 Vitis Serial Terminal이 필요할 때만 활성화 시켜서 사용하는 것인가요? UART의 역할이 정확히 무엇인지 확실한 개념이 잡히지 않아 질문 남깁니다!
[3. 시도했던 내용, 그렇게 생각하는 이유] :
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. dlrwo0904님.
UART(Universal Asynchronous Receiver/Transmitter)의 역할과 사용 조건에 대해 명확하게 설명드리겠습니다.
UART의 역할
데이터 통신:
- UART는 두 장치 간의 시리얼 통신을 통해 데이터를 송수신합니다. FPGA와 PC 간의 데이터 전송에 주로 사용되며, 하드웨어 간의 통신뿐만 아니라, 소프트웨어와 하드웨어 사이의 상호작용을 돕는 역할을 수행합니다.
- UART는 두 장치 간의 시리얼 통신을 통해 데이터를 송수신합니다. FPGA와 PC 간의 데이터 전송에 주로 사용되며, 하드웨어 간의 통신뿐만 아니라, 소프트웨어와 하드웨어 사이의 상호작용을 돕는 역할을 수행합니다.
Vitis Serial Terminal 연결:
- Vitis 환경에서 Serial Terminal을 통해 직접적인 입출력 통신, 디버깅이 필요할 때 UART를 사용하여 데이터를 송수신합니다. 예를 들어, printf와 scanf를 활용한 데이터 전송 및 수신에 사용됩니다.
- Vitis 환경에서 Serial Terminal을 통해 직접적인 입출력 통신, 디버깅이 필요할 때 UART를 사용하여 데이터를 송수신합니다. 예를 들어, printf와 scanf를 활용한 데이터 전송 및 수신에 사용됩니다.
연결 환경:
- 특정 작업이나 출력이 직접 PC나 다른 시스템과의 통신이 필요할 경우 UART가 유용합니다. 그러나, 단순히 FPGA 상의 동작 테스트나 내부 연산 결과를 외부로 출력할 필요가 없는 경우 UART를 비활성화할 수 있습니다.
- 특정 작업이나 출력이 직접 PC나 다른 시스템과의 통신이 필요할 경우 UART가 유용합니다. 그러나, 단순히 FPGA 상의 동작 테스트나 내부 연산 결과를 외부로 출력할 필요가 없는 경우 UART를 비활성화할 수 있습니다.
UART 사용 여부
- UART는 데이터 통신이 필요한 경우에 활성화합니다. 예를 들어, Serial Terminal을 통한 입출력 작업이 없거나, 내부적인 FPGA의 동작을 확인하기 위한 출력만 필요할 경우에는 비활성화해도 됩니다.
참고 URL
dlrwo0904님의 학습에 도움이 되었기를 바랍니다. UART 모듈의 역할과 활용 사례를 이해하는 데 이 응답이 도움되길 바랍니다. 추가적인 질문이 있으시다면 언제든지 해주시면 감사하겠습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
HW가속기 설계에서 더 보완할 수 있는 방법이 있을까요?
1
70
2
UART0, 1 중 선택
1
96
2
datamoverbram모듈질문
1
89
2
vitis 설치엣 alveo kria versal 등 옵션을 끄고 설치를 했습니다.
1
125
2
vitis 설치 관련 질문 있습니다!
1
127
2
FPGA 공식문서 읽는법
1
124
2
보드 추가의 클릭창이 없습니다.
1
91
2
Edit in IP Packager에서 코드 수정 후 IP 수정하면 simulation에서 수정된 코드로 작동이 안됩니다
1
102
2
BRAM의 Read / Write를 다 수행했는지 확인할 때 사용되는 num_cnt / i_num_cnt 관련 질문
1
119
1
Vitis 코드 작성
1
147
2
vivado 및 vitis 리눅스 환경 설치 관련 질문드립니다.
1
340
3
[9장 led 점등 시간 제어 불가]
1
99
2
Platform Invalid 오류
1
173
3
WSL 설치 관련 문의드립니다!!
1
118
2
Vivado 툴, 파일 질문드립니다!
1
195
2
9장 LED 점등 안됨
1
136
3
Edit in IP Packager 이후에
1
103
1
Fpga 로직
1
117
2
pmu-fw is not running
1
160
2
Create Project에 대해서 궁금해요
1
102
2
장치관리자 USB 포트
1
122
2
FPGA 7장 AXI_LITE I/F질문
1
99
1
bram mover에서 합성할때
1
96
2
타이밍 위반 질문
1
91
2





