꽤 많이 애먹었던 질문입니다. Rule 을 만들어서 관리하고 있지 않았기에 (딱히 인터넷 상에, 정해주질 않았습니다.)
당연하단 듯이 사용했었는데, 이번기회에 정리합니다.
Q
always문을 사용하실 때 어떤 기준으로 always문을 나누시는지 궁금합니다.
가령 예를 들면 올려주신 chapter_11에 있는 count 코드를 보면 always 문 2개를 사용해서 모듈을 구성하셨고
그밖에 강의를 보면 다양하게 always문을 나누시는데
같은 동작을 하는 모듈을 always문 하나로 만들 수 있을텐데 나누시는 기준이 어떤건지 궁금합니다.
그리고 작성한 verilog 코드의 가독성을 높히기 위한 팁이나 관련 추천 서적이나 참고 자료가 있으실까요!
제가 이 부분에 대해서 부족한게 많아서 알려주신다면 앞으로 설계를 할 때 도움이 많이 될 것 같습니다.
감사합니다.
A1 맛비의 always 문을 나누는 기준 (정해드립니다.)
1. 한 변수에 여러 always 문 assign 을 해야한다면? (합치세요. 가장 주의해야함)
2. if else 의 condition 이 indepentent 하다면 always 문을 합쳐도 동일한 로직을 만드나, 맛비는 추천하지 않는다. (합쳐도 되는데, 나누세요)
3. if else 의 condition 이 depentent 가 있다면? (나누세요)
4. 너무 복잡해서 가독성이 떨어진다. (가독성이 좋은 쪽으로 합치던 나누세요.)
5. 맛비가 무슨말을 하는지 모르겠다. 그러면 1번 case 만 주의하시고 일단 나누세요.
즐공하세요 :)
A2 코드의 가독성 관련 추천 서적
코드의 가독성이나 tip 이라.. 면? (저도 잘 지키진 않지만)
http://www.ime.cas.cn/icac/learning/learning_3/201907/P020190716574161163126.pdf
'개발 편의성을 위한 소소한 Tips > 04 질의 응답 정리' 카테고리의 다른 글
[FPGA Q/A. 013] design_1_wrapper 를 만드는 이유 (0) | 2021.11.17 |
---|---|
[FPGA Q/A. 012] create block design error (8) | 2021.11.11 |
[Verilog HDL Q/A. 010] always @ (*) 에 대해서.. (0) | 2021.10.26 |
[Verilog HDL Q/A. 009] WSL 에서 Vivado 2021.1 GUI 설치 (0) | 2021.10.24 |
[Verilog HDL Q/A. 008] vaild신호 Concatenation문법 질문 (0) | 2021.10.05 |