-
카테고리
-
세부 분야
반도체
-
해결 여부
미해결
CNN 연산 모듈 질문입니다.
23.03.30 23:13 작성 23.03.30 23:14 수정 조회수 371
1
안녕하세요 맛비님.
맛비님께서 3차원 Convolution 연산 모듈을 설계하기 위해서 3개의 계층을 가진 모듈로 설계하셨던 것에 궁금한 게 생겨서 질문드립니다.
1차원 연산을 위한 최하위 계층, 그 위의 2차원 연산을 위한 하위 계층, 그 위의 3차원 연산을 위한 Top 계층, 이렇게 세 개의 계층을 나누셨는데,
1.한 모듈에서 Register를 많이 추가하여 이 기능을 전부 할 순 없나요? (FSM으로) 즉 하나의 계층을 가진 모듈로 3차원 연산 모듈을 구현할 수는 없는 건가요?
2. 이와 같이 할 경우 단점이란 것이 존재할까요?
설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
[AI HW Lab3] CNN Verilog HDL Practice 4 (FPGA)
강의실 바로가기
답변을 작성해보세요.
0
설계독학맛비
지식공유자2023.04.01
안녕하세요 :)
한 모듈에서 Register를 많이 추가하여 이 기능을 전부 할 순 없나요? (FSM으로) 즉 하나의 계층을 가진 모듈로 3차원 연산 모듈을 구현할 수는 없는 건가요?
가능합니다. :)이와 같이 할 경우 단점이란 것이 존재할까요?
Hierachy 를 나눔으로써, 가독성과 재사용성을 이점으로 둘 수 있겠네요. 디버깅도 용이하고요. 한 코드에 많은 내용을 작성하면 케바케 겠지만, 저는 그렇게 좋아하진 않아요. 취향것? 혹은 회사의 가이드 대로 설계하시면 되겠습니다.
즐공하세요 :)
osia0921
질문자2023.04.02
제가 아직 대학생이라 잘 모르지만, hierachy를 나눔으로써의 장점은 가독성, 재사용성이 다인가요?
모듈간의 통신, 즉 pipelining과는 관련이 없을까요? (사실 저는 레지스터만으로 pipelining을 할 수 있다고 생각하기 때문에 관련이 없다고 생각하긴 합니다)
설계독학맛비
지식공유자2023.04.02
이론상!!!!!!!! (이론입니다. 저는 이렇게 안해요. 그리고 제 말이 무조건 정답은 아닙니다. 이런류의 질문은 정답이 없어요.)
"hierarchy 를 전부 해체하고 한 모듈에 어떠한 모든 회로를 기술할 수 있다." 가 저의 생각이에요.
그게 가능하단 근거는
"Tool 로 합성 시, 모듈 hierarchy 를 전부 풀고.. 하나의 .v netlist 로 추출 가능하다"
인간도 할 수 있어요. 그렇게 할 이유를 못찾거나 or 역량에 의해서 못할 뿐이지..
============================
자 그럼 질문의 답변을 해보죠.
제가 아직 대학생이라 잘 모르지만, hierachy를 나눔으로써의 장점은 가독성, 재사용성이 다인가요?
-> 더 있어요. (hierarchical 설계도요. 그 외 숨은 장점이 많은데, 이거는 직접 설계해보시면서 부딪혀보면서 답을 찾을 수 있을 것 같아요. 경험이 아닌 이론적인 답을 원하신다면, 이런류의 질문은 GPT 가 잘 답변해 줄 겁니다.)
모듈간의 통신, 즉 pipelining과는 관련이 없을까요? (사실 저는 레지스터만으로 pipelining을 할 수 있다고 생각하기 때문에 관련이 없다고 생각하긴 합니다)
-> 설계자가 그렇다고 하면 그런 겁니다. (질문자님께서 "Pipeline 과 관련이 있기 때문에 나눌껍니다!" 하면 제가 전체 내용을 모르니 (알려주지 않으셔도 됩니다 ㅎㅎ), "그렇게 하세요." 할 것 같아요)
하지만 거듭 말씀드리지만 이론 상 하나의 모듈로 모든 것을 구현할 수 있습니다.
그래서 제가 다음처럼 답변 드렸어요.
즐공하세요 :)
답변 1