인프런 커뮤니티 질문&답변

이리듐님의 프로필 이미지
이리듐

작성한 질문수

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

[FPGA 7장] HW IP 를 제어하기 위한 AXI4-Lite Interface 이해하기 - 코드리뷰편

7장 AXI4 lite channel waveform 관련 질문 드립니다

작성

·

112

1

안녕하세요 🙂

[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.

7장 11분 ~

write 관련 waveform 설명 부분입니다

[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂

image.pngimage.png

안녕하세요

다름이 아니라 7장 강의 write 부분에서 강의에서 올려주신 부분과 제가 강의를 따라가며 수행한 부분의 파형이 다른데 해당 부분이 잘 이해가 되지 않아 질문 드립니다.

1) 강의에서는 AWVALID 신호가 먼저 1이 되면, 이후 AWREADY가 1이 되어 handshake가 일어나고,

2) 동시에 WVALID와 WREADY의 handshake도 발생하여

3) 그 때의 AWADDR이 가리키는 주소 번지에 WDATA값이 적히는 것으로 이해하였는데,

해당 부분이 제 실습 파형에서는 위 사진과 같이 1,2,3번의 과정에서의 파형이 강의와 모두 맞지 않으며, 제 실습 파형만 가지고 보더라도 4,8,C번지 모두 0이 적혀야 맞을 것 같은데, 뒤에 정상적으로 진행되는 read 부분을 살펴보면, 해당 번지에 강의 내용과 마찬가지로 1,2,3이 저장되어 있는 것을 확인할 수 있었습니다.

질문 내용을 요약하자면,

1) 이론적인 부분에서 제가 이해한 내용이 맞는지,

2) 맞다면 제 실습 시뮬레이션의 경우 어떻게 저런 결과가 나오는 지 여쭙고 싶습니다.

감사합니다.

[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.)

 

================ 다음 내용은 읽어보시고 지우시면 됩니다.=================

질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!

현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)

  1. 강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)

  2. 이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)

    1. 개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..

  3. 글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)

    1. 서로 예의를 지키며 존중하는 문화를 만들어가요.

    2. 질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )

  4. 먼저 유사한 질문이 있었는지 검색해보세요.

  5. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

==================

답변 1

0

설계독학맛비님의 프로필 이미지
설계독학맛비
지식공유자

안녕하세요 🙂

Tool 버전에 따라서 Testbench 가 다른 것 같아요.

만약에 저와 동일한 version 을 사용하셨다면, (2020.2) 동일한 waveform 이 나왔을 것 같아요.

 

AXI 를 본격적으로 다루지 않아서, (Verilog S2 에서 다룸) 이해하기 어려우실 수 있는 내용 같은데요.

핵심은 "data 의 valid / ready 가 서로 1 이 되는 timing 에 handshake 를 통해 data 전송이 된다." 입니다.

Waveform 은 강의 영상과 다를 순 있지만, 결국 정상적으로 data 가 넘어가는 상황으로 해석돼요.

 

즐공하세요 🙂

이리듐님의 프로필 이미지
이리듐
질문자

제목 없음.png

답변 감사드립니다

본 강의에서 주소 번지 쓰기와 데이터 쓰기가 같은 타이밍에 이뤄져서 같아야만 하는 줄 알았는데,

위 사진에 표시한 것처럼 제 버전(2024.1) tb의 경우 AWDATA에 주소가 써진 후 데이터 쓰기 handshake가 일어나 정상적으로 해당 주소 번지에 데이터가 써졌다고 이해하면 되는 걸까요?

설계독학맛비님의 프로필 이미지
설계독학맛비
지식공유자

네 말씀하신게 맞아요.

심화로 공부하실꺼면, AXI spec 문서가 존재하고요.

https://developer.arm.com/documentation/ihi0022/latest/

A3.5.1 Write transaction dependencies

이 부분을 이해하시면 도움이 될 것 같아요. 즐공하세요 🙂

image.png

 

이리듐님의 프로필 이미지
이리듐

작성한 질문수

질문하기