인프런 커뮤니티 질문&답변
data mover bram 모듈 질문.
해결된 질문
작성
·
413
1
안녕하세요 맛비님! 질문이 있습니다.
if(!reset) begin
r_core_data[0] <= {DWIDTH{1'b0}};
end else if(|r_core_delay) begin
r_core_data[0] <= mem_data;
end
이 구문에서 진하게 표시된 |r_core_delay 에서 | 부분은 or을 나타내는게 맞나요?? 그렇다면 굳이 쓸 필요가 없을 거 같은데 맞는지 궁금해서 질문드립니다!
-----------------------------------------------------------
추가적인 질문이 생겨 계속 쓰겠습니다!
delay 부분은 코드에서 5 cycle 을 주셨는데 다른 cycle의 delay를 줘도 되는걸로 알고 있습니다. 근데 5를 주신 이유는 여러번 시도 후에 가장 알맞은 delay를 찾으신건가요?? 아니면 임의로 주신건가요??
퀴즈
FPGA 기반 하드웨어 가속기 설계에서 Data Mover BRAM 모듈의 주된 역할은 무엇일까요?
CPU가 복잡한 알고리즘을 효율적으로 실행하도록 돕습니다.
FPGA 내부의 두 BRAM 메모리 간에 데이터를 효과적으로 전송합니다.
소프트웨어 코드를 하드웨어 명령으로 변환하는 역할을 합니다.
FPGA 칩의 전력 소모량을 줄여줍니다.
답변 1
2
안녕하세요 :)
굳이 쓸 필요가 없을 거 같은데 맞는지 궁금해서 질문드립니다!
이걸 눈치 채다니, 너무 대단하십니다. 특급칭찬 드립니다. (열심히 공부하고 계시군요.)
16장을 보세요!!! 버그입니다. 해당 내용도 영상에 넣어 놨어요.
이 구문에서 진하게 표시된 |r_core_delay 에서 | 부분은 or을 나타내는게 맞나요??
| 는 bitwise or 문법입니다. (reduction operator 라고 표현하네요)
https://stackoverflow.com/questions/19303928/verilog-bitwise-or-monadic
[7:0] A;
|A 이렇게 하면 A[0] | A[1] | ..... | A[7]
이거랑 같아요.
즐공하세요 :)






오오 그렇군요! 얼른 16장으로 넘어가야겠습니다!!
추가적인 질문을 제가 늦게 수정한거 같아 다시 질문드립니다!
delay 부분은 코드에서 5 cycle 을 주셨는데 다른 cycle의 delay를 줘도 되는걸로 알고 있습니다. 근데 5를 주신 이유는 여러번 시도 후에 가장 알맞은 delay를 찾으신건가요?? 아니면 임의로 주신건가요??