ILA 를 이용한 waveform 분석 질문
438
작성자 없음
작성한 질문수 0
안녕하세요 13장 강의 내용에서 ILA를 이용하여 waveform 을 보는 과정에서 질문이 생겼습니다.
위 사진은 vitis 를 이용하여 run mode 로 write를 한 후에 seed값을 넣은 후 모습입니다. AWVALID랑 AWREADY 동시에 trigger가 되면서 0x0C 즉 4번째 register에 임의의 값이 write되는걸로 이해하고 있습니다. 하지만 0x0C register를 통해서 bram이 write 되는 중간 중간에 AWADDR값이 0x0C의 다음 register인 0x10으로 잠시 바뀌는 이유는 무엇인가요? 비록 이때 WVALID랑 WREADY가 handshake가 일어나지 않기 때문에 5번째 register에 값이 저장되는것은 아니겠지만 굳이 이렇게 바뀌는 이유가 궁금합니다.
답변 2
0
안녕하세요. 😀
알고계신대로 동작에는 아무런 문제가 없습니다.
저렇게 변하는 이유는 Master 인 ARM Core soruce 코드를 열어봐야 정확하게 알 수 있을 것 같은데요.
당연히 그거는 저희 입장에서는 불가능 하겠죠..?
중경님께서 나중에 현업에서 Master 를 설계하실 일이 온다면, 저렇게 중간중간 변하게 안하셔도 됩니다.
현업에서는 저 부분이 이슈는 아니에요 ㅎ (handshake 라는 명확한 rule 이 있기 때문에)
즐공하세요 🙂
0
안녕하세요 이중경 님, 인프런 AI 인턴이에요.
사진을 보면 AWVALID와 AWREADY가 동시에 trigger가 되면서 0x0C register에 임의의 값이 write되는 것으로 이해하고 계셨는데, AWADDR 값이 중간에 0x0C 대신 0x10으로 바뀌는 이유에 대해 궁금하신 것 같아요.
이는 AXI Master와 AXI Slave 간의 통신 프로토콜에서 일어나는 동작으로, 데이터를 각각의 주소에 맞춰서 전송하기 위한 과정입니다. 데이터는 AWADDR에 해당하는 주소에 쓰여집니다. 그래서 AWVALID가 활성화되면 데이터가 이동하며 AWADDR 값이 변경되는 것입니다.
따라서, AWADDR 값이 0x0C 대신에 0x10으로 잠시 바뀌는 것은 AXI 통신 프로토콜 동작의 일부이며, 데이터가 각각의 주소로 올바르게 전송되는 과정을 보여주는 것입니다.
더 자세한 내용은 AXI 통신 프로토콜에 대해 참고 자료를 찾아보시면 도움이 될 것입니다. 감사합니다!
UART0, 1 중 선택
1
58
2
datamoverbram모듈질문
1
66
2
vitis 설치엣 alveo kria versal 등 옵션을 끄고 설치를 했습니다.
1
101
2
vitis 설치 관련 질문 있습니다!
1
87
2
FPGA 공식문서 읽는법
1
99
2
보드 추가의 클릭창이 없습니다.
1
72
2
Edit in IP Packager에서 코드 수정 후 IP 수정하면 simulation에서 수정된 코드로 작동이 안됩니다
1
83
2
BRAM의 Read / Write를 다 수행했는지 확인할 때 사용되는 num_cnt / i_num_cnt 관련 질문
1
108
1
Vitis 코드 작성
1
130
2
vivado 및 vitis 리눅스 환경 설치 관련 질문드립니다.
1
295
3
[9장 led 점등 시간 제어 불가]
1
83
2
Platform Invalid 오류
1
151
3
WSL 설치 관련 문의드립니다!!
1
98
2
Vivado 툴, 파일 질문드립니다!
1
157
2
9장 LED 점등 안됨
1
113
3
Edit in IP Packager 이후에
1
88
1
Fpga 로직
1
92
2
pmu-fw is not running
1
128
2
Create Project에 대해서 궁금해요
1
91
2
장치관리자 USB 포트
1
101
2
FPGA 7장 AXI_LITE I/F질문
1
91
1
bram mover에서 합성할때
1
80
2
타이밍 위반 질문
1
81
2
rvalid 초기화
1
68
2





