begin end 사용법
안녕하세요 맛비님! 그렇게 중요하진 않아보이지만 항상 궁금했던 내용이라 질문드립니다. 예시로
always @( posedge S_AXI_ACLK )
begin
if ( S_AXI_ARESETN == 1'b0 )
begin
axi_awaddr <= 0;
end
else
begin
if (~axi_awready && S_AXI_AWVALID && S_AXI_WVALID && aw_en)
begin
// Write Address latching
axi_awaddr <= S_AXI_AWADDR;
end
end
end 166번째 라인에 있는 코드인데
else if (~axi_awready && S_AXI_AWVALID && S_AXI_WVALID && aw_en)
axi_awaddr <= S_AXI_AWADDR;
end else if (~axi_awready && S_AXI_AWVALID && S_AXI_WVALID && aw_en)
begin
axi_awaddr <= S_AXI_AWADDR;
end
end
else부분을 이렇게 더 간결하게 짜면 좋을꺼같은데
굳이 begin end로 묶는 이유가있을까요?
가독성이 더 좋아지기 때문일까요?
답변 1
1
안녕하세요 :)
문법상 동일한 logic 을 만들어냅니다.
취향?의 차이입니다. 편하신 것을 선택하시면 됩니다.
즐공하세요 :)
1
헐 가이드가 있는 곳도 있군요... 그럼 일단 이런 잘 짜여진 코드를 무작정 따라하는것부터 열심히 따라가봐야겠습니다. 좋은강의 제공해주셔서 감사해요 존경하는 맛비님ㅎㅎㅎ
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
153
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
102
2
FPGA 7장 AXI_LITE I/F질문
1
91
1
bram mover에서 합성할때
1
80
2
타이밍 위반 질문
1
81
2
rvalid 초기화
1
68
2





