inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)

[FPGA 8장 실습 개정 2] 2022.1 이후버전 사용하시면, 실습하는 과정은 이 영상을 따라해주세요 !!!

8강 AXI4-Lite 수강 중 입니다. Launch Hardware 진행시 작동이 안됩니다 ㅠ

523

yhd88

작성한 질문수 1

1

안녕하세요 맛비님.

FPGA 8장 실습을 진행하고 있습니다.

환경은 아래와 같습니다.

보드: ZYBO Z7-20

VIVADO: 2024.01

VITIS: Classic 2024.01

 

2022.01 이후 버젼 main.c 코드를 적용하여 사용했습니다.

Makefile에 Code 붙여넣기도 해서 Build 진행시 이상없구요.

Terminal 연결해서 UART 붙는 것 까지는 됐습니다만.. Launch Hardware 진행 후 UART창에서 아무 커맨드가 나오지 않는 현상이 지속됩니다..

프로젝트, 파일 명도 맛비님 강의랑 동일하게 진행했는데 이유가 뭔지 모르겠네요..

관련 증상에 대해 아시는 부분 있으면 답변 부탁드립니다.

fpga 임베디드

답변 5

1

myflute

#define MYIP_BASE_ADDR 0xFFFFFFFF

24.01버전에서 base address를 위와같이 바꾸니까 되는군요.

0

설계독학맛비

답변 감사합니다!

음... 해결방법이 좀.. 의아하긴 하네요..

BASE ADDR 라는 개념이, 시스템 상에 할당받은 address 인데,

Vivado 에서 System 구성시, Address value 와 같은 값이 셋팅되어야 할 것 같아서요.

vitis 에서 넘어오면서 이 부분을 자동으로 생성해 주었었고요.

된다고 하시기도 하고, 제가 모든 버전을 test 하기도 어려워서 ㅠ

혹시나 이글을 보시는 분들이 있다면, myflute 님의 해결방법에 참고 부탁드립니다.

감사합니다!!

2

Kloud9

AMD 사이트에서는 Xil_Out32() 관련 에러가 보고되지 않았다고 했습니다.

아무리 봐도 Vitis 문제는 아닌 것 같아서, 혹시나 하는 마음에 Vivado에서 생성하는 IP가 문제인가 싶어서 찾아봤습니다.

 

image.png

AXI4 IP 블록을 직접 확인해봤는데, 여기서 baseaddress가 이상하게 잡히는 게 문제가 되는 것 같습니다.

Address Editior에 나와있는 주소와 아예 다른 값이 나오더군요. (여기서는 0x43C0_0000 입니다.)

 

이 화면 상에서는 수정도 안되는 것 같고.

그냥 Vivado 2024.1 tool 버그인 것 같습니다.

 

+) AXI4 IP를 따로 수정해서 주소를 수정했는데도 안되네요.

이렇게 만들어도 Vitis에서 BaseAddress를 0xFFFF_FFFF로 잡아야 제대로 동작이 됩니다...

image.png

 

0

설계독학맛비

와.. 이건 대응이 너무 어렵네요 ㅠ

"0xFFFF_FFFF" 로 강제할당하는게 있나봅니다;;

리포팅 감사합니다. ㅠ

1

myflute

안녕하세요. 저도 yhd88님과 마찬가지로 8장 공부하면서 같은 문제가 발생했는데, 살펴보니 UART 문제가 아니고 Xil_Out32() 함수가 문제인 것 같네요. 쓰기 부분을 코멘트 처리하면 터미널에 데이터가 모두 0으로 출력이 되지만, 쓰기부분이 있으면 터미널에 아무것도 나타나지 않습니다. 혹시 해결방안이 있을까요?

보드: ZYBO Z7-10

VIVADO: 2024.01

VITIS: Classic 2024.01

1

yhd88

프로젝트는 맛비님이 올려주신 프로젝트로 진행하면 보드가 정상동작 되긴 합니다.. C코딩의 문제는 아닌것같고 아마 IP생성하는 단계에서 상위버전에서 Cmake파일 제대로 생성되지 않는것처럼 누락되는게 있는게 아닌가 생각드네요..

0

방지석

저도 완전히 동일한 문제가 나타나고 있네요 ㅠㅠ 해결하셨나요??

0

yhd88

@방지석

버전이슈인것 같아서 해결은 못했습니다. 원인찾을 시간도 없기도하고.. 맛비님이 올려준 프로젝트로 진행하면 잘 동작하는 것을 확인했습니다. 24.01버전으로는 UART통신이 안뜨네요 ㅠㅠ (8장 UART는 24.01로 진행해도 정상동작함)

0

설계독학맛비

오.. 다들 혼돈의 카오스 시네요.. ㅠ

버전을 강의랑 맞출 수 있다면 해결이 될 문제라고 보이는데요.

Xil_Out32() 함수의 문제까지는... 제가 해결해드리기 어려울 것 같은데,

버전을 강의와 동일하게 맞춰보는게 어떠실까 권장해드리고 싶습니다.

제가 강의에서 말하고 싶은 중요한 내용은... 아니라고 생각해요..... 빨리 다음 단계로 넘어가시기를 바랍니다.

https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/vivado-design-tools/archive.html

즐공하세요 🙂

0

방지석

저도 yhd88님과 동일한 문제를 겪고 있습니다 해결하셨나요??

0

설계독학맛비

안녕하세요 🙂

8장 이전에 4장에서 UART 를 Test 하는 Lab 이 있습니다.

그 lab 은 성공하셨을까요?

build 가 성공적으로 되면 잘 되어야 할 것 같아요.

4장 성공했는데, 8장은 UART 가 안나온다 하시면..

빌드까지 하시고 Launch 까지 하셨는데 원인은 잘 모르겠네요.

버전을 맞춰주시는게 좋을 것 같습니다. 2022.1 추천드립니다.

 

1

yhd88

안녕하세요 맛비님

4장 실습은 정상동작 확인하였습니다.

근데 8장 UART부분 2022.1 기준으로 진행했는데 빌드랑 Launch까지는 정상적으로 되는데 UART부분이 계속 출력이 안나오네요 ㅠㅠ

1

yhd88

안녕하세요 맛비님

VIVADO project 및 XDC파일은 맛비님이 올려주신 파일로 진행 후 VITIS에서 프로젝트 생성 후 보드에 Writing하니까 제대로 동작하네요..ㅎㅎ

VIVADO에서 XDC 생성하는 과정에서 제대로 bit stream이 생성되지 않은것인지... 의문스럽지만 실행은 잘 됩니다! 감사합니다 ㅎㅎ

0

설계독학맛비

음.. 차이점이 어떤게 있을지 잘 모르겠네요.

폴더 혹은 파일 diff 가 가능하시니까 기회되실때 차이점을 알고 가시는 것도 좋을 것 같아요.

즐공하세요 🙂

UART0, 1 중 선택

1

44

2

datamoverbram모듈질문

1

59

2

vitis 설치엣 alveo kria versal 등 옵션을 끄고 설치를 했습니다.

1

95

2

vitis 설치 관련 질문 있습니다!

1

83

2

FPGA 공식문서 읽는법

1

94

2

보드 추가의 클릭창이 없습니다.

1

69

2

Edit in IP Packager에서 코드 수정 후 IP 수정하면 simulation에서 수정된 코드로 작동이 안됩니다

1

80

2

BRAM의 Read / Write를 다 수행했는지 확인할 때 사용되는 num_cnt / i_num_cnt 관련 질문

1

104

1

Vitis 코드 작성

1

130

2

vivado 및 vitis 리눅스 환경 설치 관련 질문드립니다.

1

284

3

[9장 led 점등 시간 제어 불가]

1

80

2

Platform Invalid 오류

1

145

3

WSL 설치 관련 문의드립니다!!

1

96

2

Vivado 툴, 파일 질문드립니다!

1

148

2

9장 LED 점등 안됨

1

108

3

Edit in IP Packager 이후에

1

82

1

Fpga 로직

1

88

2

pmu-fw is not running

1

126

2

Create Project에 대해서 궁금해요

1

89

2

장치관리자 USB 포트

1

97

2

FPGA 7장 AXI_LITE I/F질문

1

88

1

bram mover에서 합성할때

1

75

2

타이밍 위반 질문

1

75

2

rvalid 초기화

1

60

2