적극적 생각/FPGA

0714 - 섹션2 - 기초 PS영역을 활용한 helloworld

무말랭이 2022. 7. 14. 08:46

Vitis를 이용해 Hello world 출력을 Programming한뒤 PS영역에 Program한다.

UART 통신을 통해서 PC Terminal에서 Print한다.

 

 

 

 

 

 

 

 

 

 

 

PS를 사용하기 때문에 RTL코드는 필요가 없다.

 

Zynq를 이용해서 사용할 수 있는 IP

 

https://digilent.com/reference/programmable-logic/zybo-z7/start?redirect=1 

 

Zybo Z7 - Digilent Reference

 

digilent.com

Documentation

Run Block Automation은 Vivado가 자동으로 커버리지 가능할 경우 활성화됨.

 

bd 파일은 verilog hdl 파일이 아닌데

어떻게 만드냐하면

 

 

그리고나서 bitstream 파일을 추출하고

 

우리가 방금 만든 것을 하드웨어 플랫폼이라고 하는데

그 하드웨어 플랫폼 파일도 추출해주어야 한다.

vivado에서 vitis로 옮길 것

 

 

 

이제 Vitis로 간다.

 

'듀얼코어'인데 '싱글코어'만 쓸거임. 현재는.

또한 PS에 대해서 자세히 다뤄지지 않을 것.

여기에 리눅스 올려지는 것도 다뤄지지 않음.

 

= bare metal programming, standalone

 

software template

 

print내용을 PC에서 terminal로 확인할건데

이때 시리얼 Com Port를 확인하는 과정이 필요하다.

 

장치관리자에서 확인하면 되는데

확인이 잘 되지 않음

 

코드수정 및 빌드

 

터미널추가

 

netstat 명령어를 통한 포트확인

(아 근데 이건 network status 즉 network 연결성이다.)

 

 

문제를 해결했다.

하드웨어의 문제였다.

USB 케이블을 바꾼게 화근이었는데 (늘 느끼지만 USB도 어려워...)

집에있는 USB to 5핀 5개 중에서 1개만 정상작동했다.

그리고 그때의 핀이 COM4가 됨을 확인하였다.

 

갑자기 떠올라서 리스팅해보는 USB이슈

- USB 2.0과 3.0의 차이

- 내 컴퓨터에는 USB 3.0포트가 몇개 달려있는가

- 확장 케이블을 통해 연결한 경우 그 확장 케이블이 무엇을 지원하는가

- 컴퓨터 전면에 있는 포트는 어떤 포트고 후면에 있는 포트는 어떤 포트인가 ...

 

자 다시 돌아와서 돌려보자

 

 

우선 UART Com 환경설정은 완료했다.