월 66,000원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
CNN가속기 질문
안녕하세요 맛비님강의 수강중 궁금한점이 생겨 질문드립니다 CNN의 구조에서 이미지의 특징을 추출하는 부분이 있고, 추출한 feature map->fully connected layer를 통해 분류하는 부분이 있고, ..이런 과정으로 이해했는데요 하나의 NPU안에 fully connected layer, ReLU 등 모든 CNN의 모든 layer가 포함되어 있는건지, 아니면 NPU는 output feature map만 연산하고 그것에 대한 분류는 소프트웨어를 사용하는지 잘 모르겠습니다 =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
FPGA resource사용관련
안녕하세요 공부 중에 궁금증이 생겨서 질문 남깁니다.! FPGA마다 각각 resource가 정해져 있는 것으로 알고 있습니다.실제로 보드를 Implementation을 한 후 bit파일을 만들고 실제 보드에서 동작을 하면 열이 많이 발생하는데 이경우에 리소스를 많이 사용 할 수록 많은 열이 발생할 것 같습니다. 그럼 성능 저하로 이어질 것 같습니다.이를 예방하고자 각 보드마다 리소스를 몇 %를 사용하면 성능저하가 일어난다는 스펙이 정해져 있나요? 강의랑 직접적인 관련은 없지만 궁금증이 생겨서 질문드립니다 . 감사합니다 !
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
알고리즘 별 NPU
CNN을 타겟으로 하는 NPU와 LLM을 타겟으로 하는 NPU는 어떤 차이가 있을까요?LLM이 파라미터수가 많으니 FLOPS를 높이기 위해 MAC연산기를 많이 배치하고 memory bandwidth를 높여주는 정도 일까요?아니면 encoder/decoder라는 구조로 NPU HW에 구조적으로 다른 접근이 필요한가요?NPU 설계시 당연히 CNN,RNN,Transformer와 같이 특정 알고리즘을 염두에 두고 진행하겠죠?
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
9장 generate문 질문
안녕하세요 맛비님강의에 generate문에 대해 배우며 궁금한 점이 생겼습니다verilog에 generate for~ 문이 아닌 그냥 for문도 존재하고, 이를 통해 하드웨어가 합성된다고 알고 있는데요generate for~ 문과 그냥 for ~문을 사용했을 때 합성되는 하드웨어의 차이가 궁금합니다. =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
13장 관련 질문 !
안녕하세요! 강의 잘 듣고 있습니다!다름이 아니라 13장에서 하이브리드 프로세서와 코프로세서의 개념을 설명해주셨는데이 부분이 잘 이해가 되지 않아요 강의 중 말씀하신"AMD Xilinx의 사례를 보셔서 아시겠지만 만약에 제3의 벤더가 자체 CPU를 갖고있지 않다면 코 프로세서가 될 수 없어요여기서 제3의 벤더들은 ARM에 완성된 온전한 IP를 칩에 넣어서 만드는 것이기 때문에하이브리드 프로세서의 형태에 맞게 될 수가 없겠죠뭐 여러분들 아시다시피 삼성의 엑시노스, 그 다음에 퀄컴의 스냅드래곤의 프로세서는 ARM의IP를 베이스로 사용합니다.이는 즉 하이브리드 프로세서죠.근데 여기서 엔비디아는 이미 텐서 연산, 그러니까 행렬 연산이 굉장히 강합니다.그래서 엔비디아가 만약에 ARM을 성공적으로 인수를 하게 된다면 하이브리드가 아닌 앞서살펴본 코 프로세서의 길을 갈 수가 있어요" 라고 말씀하셨습니다 (강의 스크립트 복붙으로 가져왔습니다!)제가 이해한 바로는 결국 하이브리드이든 코프로세서이든 CPU IP와 NPU IP를 overlap시켜서 만든 것이고그걸 한 칩에 두면 하이브리드 라는 거 까진 이해했습니다. 근데 코프로세서의 이미지가 그려지지 않네요..엔비디아가 ARM의 IP를 개조해서 CPU IP랑 합치면 그게 코프로세서가 되는건가요?강의 하시는 늬앙스가 뭔가 코프로세서가 더 좋다는 식으로 들려서둘의 차이점이 정확히 무엇이고 어떤 점에서 서로 장단점이 있는지 모르겠습니다..그래서 왜 앞으로 코프로세서가 대세가 될 것 같다고 말씀하신지 궁금합니다!그리고 엔비디아 또한 자체 CPU를 갖고있지 않은데 어떻게 코프로세서가 될 수 있는건가요?? 제대로 이해한 것이 아니다보니 말의 두서가 엉망이네요 ㅠㅜ 죄송합니다 ㅜㅠ
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
NPU 관련 질문
안녕하세요 강의 잘 듣고 있습니다 😃 다름이 아니라 강의에서는 CNN을 통해 가속기를 만드는데요첫주차에 말씀 해주신 SNN은 현재 상용화가 많이 안 된 상태인지 궁금합니다.NPU 만들기 위해 현재 CNN이 base로 가장 많이 활용되나요?SNN이 안 쓰이는 이유가 있다면 무엇이 있을까요? 감사합니다 😁
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
NPU architecture 관련 질문
안녕하세요좋은 강의 감사히 잘 듣고 있습니다.하나 궁금한게 DNN에는 많은 알고리즘들이 있는데 NPU 설계시 어떻게 architecture를 보통 잡나요?MAC을 무수히 깔아두고 SW가 알아서 여러 알고리즘을 돌릴수 있게 해줄수도 있겠지만분명 특정 알고리즘에 특화해서 HW architecture 부터 잡을 수도 있지 않을까 생각이 됩니다.해당 chip이 쓰일 application에 맞게 몇개 알고리즘에 좀더 특화해서 설계를 하나요?적다 보니 전자는 GPU, 후자는 NPU 일수도 있겠다는 생각이 듭니다. 모델 경량화 기법들을 강의에서 소개해주셨는데 이런 부분들을 위해 HW에서 지원해야 하는 점이 있는지도 궁금합니다.
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
강의내용 질문
안녕하세요 맛비님 강의 수강중 궁금한점이 생겨 질문드립니다아직 5강까지 밖에 수강을 안해서 이후의 강의에 질문에 대한 답변이 나올 수도 있을것같아요주로 학습은 GPU, 추론은 NPU->HW가속기 설계자는 추론을 어떻게 진행할지에 대해 고민하는 사람들이고, 알고리즘 엔지니어로부터 이미 완전히 학습된 weight, bias 등을 받고 학습 과정에는 참여하지 않는다고 이해했는데, 맞나요?필요한 weight의 갯수가 많다면 칩에 필요한 핀의 갯수가 엄청 많아질 것 같은데, 직렬통신으로 weight를 보낸다던가 해서 핀의 갯수를 줄이는 방식이 사용되나요?=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
FPGA 강의 관련 문의
안녕하세요 맛비님 CNN 강좌를 다 수강하고 FPGA 보드에 npu 시뮬레이션하라는 업무를 받았습니다. (랩실 업무)맛비님의 FPGA 보드는 Zynq z20 보드로 진행하는데 혹시 vcu118 보드나 zcu104 보드로 진행을 하면서 강의를 수강해도 상관없을까요?? Zynq UltraScale+ MPSoC ZCU104 Evaluation Kit AMD Virtex UltraScale+ FPGA VCU118 Evaluation Kit
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
[Lab2] 진행 중 질문드립니다!
안녕하세요 맛비님! 항상 양질의 강의 감사드립니다! 다름이 아니라 Lab2 exam 진행 중 c file 을 작성하고 make clean 후 다시 make 하고 돌렸을 때 위와 같이 문제가 발생했습니다.exam 뿐 아니라 solve 폴더에 있는 파일도 동일한 문제가 발생하는데 해결 방법이 있을까요? Q2) Kernel의 Dimension은 Input Feature Map의 Dimension과 상관이 있나요?Kernel이 3-D라고 한다면 각 Depth마다 Kernel 계수 등이 다를 것이라고 생각하는데 Input Feature Map이 채널이 1인 2-D지만 Kernel은 Depth가 2 이상인 3-D가 가능한지,반대로 Input Feature Map의 Ch이 2이상인 3-D지만 Kernel의 Depth가 1인 2-D가 될 수 있는지 궁금합니다! Q3) Kernel, Input Feature Map이 각각 다중 채널이라면 Convolution 연산을 할 때는 Input Feature Map(CH1) Conv Kernel(CH1)Input Feature Map(CH2) Conv Kernel(CH2)Input Feature Map(CH3) Conv Kernel(CH3) ..... 위와 같이 2D Conv 2D 연산으로 진행되나요?
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
[Lab3] ps동작 확인 불가 (Serial terminal 무응답)
Lab3 의 끝부분에서 보드를 연결하여 Vitis의 serial terminal로 동작을 확인하는 데 아래의 사진과 같이 나옵니다. 보드와 연결은 되는 것 같습니다.
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
[lab3] Package IP warning
IP Package를 하니까 아래의 사진과 같은 warning이 발생하였습니다. 프로젝트를 진행하는 것에 문제가 있을까요?
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
FPGA 보드 관련문의
AI CNN 하드웨어 가속기 FPGA 관련 문의드립니다.강의에서 사용하는 보드 말고, ZedBoard를 사용하여 실습하고 있습니다.ZedBoard는 JTAG 핀 꼽는 곳이 따로 있는데 JTAG USB Blaster 구매하여 usb로 연결해주어야 할까요?micro usb 사용하면 장치 인식을 못하고, 아래와 같은 메세지가 뜹니다.이렇게 JTAG 핀을 꼽는 부분이 따로 있습니다.위와 같이 JTAG에 핀 연결해서 구성해야할까요?레퍼런스 찾아보아도 간략하게만 설명되어 있어서, 문의드립니다. 답변 부탁드립니다. 감사합니다.
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
[AI HW data move] AI HW에서 DDR의 data를 사용하는 경우가 있나요?
=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.================== 안녕하세요. 좋은 강의 공유해주셔서 감사합니다!!Verilog HDL season 2 강의와 본 강의를 보고 여러 AI HW 논문을 읽다보니 한 가지 궁금한 점이 있어서 글 남기게 되었습니다.많은 AI HW 논문에서는 빠른 data move를 위해서 보통 모든 weight와 feature map을 on-chip memory(Bram)에 모두 넣도록 구성하는 경우가 많더라구요. 그래서 BRAM에 모든 weight를 올릴 수 있도록 모델의 크기를 최적화하는 방향으로 연구를 하더라구요.그만큼 DDR의 접근 속도가 느리다는 것 같은데 그러면 AI HW 분야에서는 어떤 경우에 DDR를 사용하는지 그리고 느리다면 BRAM과 비교해서 얼마나 느리길래 사용하지 않는 것인지.(Stream을 이용하면 그렇게 차이가 크다고 생각하지 않는데...)[질문 정리]현업 AI HW 분야에서 DDR 접근은 언제 사용하나요?BRAM 접근 속도와 DDR 접근 속도가 얼마나 차이가 나길래 BRAM만 사용해서 AI HW system을 구성하는 것인가요? 항상 좋은 강의 만들어주셔서 감사합니다!!
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
[AI HW Lab2] 질문
맛비님 안녕하세요HW Lab2 영상을 보면빌드를 하고 cnn_core가 생성된 후 sim 폴더에 보면 trace가 생성되어 있는데저는 trace 폴더가 생성되지 않습니다.c 코드 내에 코드를 넣으라고 하신 부분 빼고는 아무 부분도 건드리지 않았습니다.어떤 부분이 문제인지 질문드립니다.감사합니다 =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
make 에러
CNN Core C 코딩(Golden Model 만들기)를 따라 실습하고 있습니다.make를 사용하여 build를 하고 싶습니다.에러는make: *** [Makefile:15: cnn_core] Error 127 이라고 뜹니다.어떻게 해결할 수 있을까요?=================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
Serial terminal 무응답
안녕하세요 Lab3 실습을 진행했습니다.이 과정에서 동일하게 했음에도 불구하고 Vitis에서 진행했을때 Vitis Serial Terminal이 무응답입니다.Digilent driver도 설치하고 Vivado driver도 설치해보고 Vivado자체를 최신버전 2023.1로 설치를 해보아도 시리얼 통신이 안됩니다ㅠㅠ그리고 Vitis에서 Launch Hardware를 하면 FPGA보드의 DONE LED가 동시에 켜집니다..또한 Launch Hardware를 실행시킬때 두번에 한번씩은 'could not find fpga device on the board for connection 'local' '라는 오류가 뜹니다..이에 대한 해결법으로 구글링해서 드라이버 설치하라는거 다 해봤는데도 안되네요ㅠㅠ뭐가 문제일까요.이번 실습 뿐 아니라 모든 실습 + 제 프로젝트까지도 무응답입니다..ㅜㅜ
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
pl과 ps의 동작주파수
안녕하세요 맛비님.23:42 초에 보시면, PL의 clock을 90 MHz로 맞춰주셨습니다. 그리고 Input Frequency가 33.33 MHz로 되어있는데, PS 즉 Arm processor의 동작주파수가 33.33MHz인가요?Arm processor의 zynq 내 정해져있는 건가요? 바꿀 수 있는 방법이 있는지 궁금합니다. 감사합니다.!!
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
lab2 exam 시뮬레이션 시간 관련하여 질문있습니다.
안녕하세요 맛비님!Lab2 exam부분 진행하면서 simulation을 돌릴 때 simulation이 멈추는 문제가 계속 발생합니다..처음에는 cnn_kernel module이 가장 하위 module이라 이 module이 문제 없이 동작하게 설계하면 다른 module들도 비슷하게 하면 될 것 같아서 제가 따로 testbench 파일을 만들어서 동작을 확인해보려 했는데, input valid 신호가 들어오기 직전 부분에서 자꾸 simulation이 멈춰버립니다...그래서 제가 구글링을 해봤는데 testbench 작성이 bad 해서 그럴 수 있다는 얘기 정도밖에 안나오네요...(testbench 작성은 지금까지 제공해주신 testbench 파일과 거의 비슷한 flow로 reset_n을 주고 i_in_valid 를 high로 주고 output관찰하려고 했던 단순한 testbench였습니다) 그래서 나머지 모듈도 모두 코딩을 하고 맛비님이 제공해주신 run.py를 통해서 제대로 동작하는지 simulation 해보려고 했는데, 또 simulation이 멈춰버립니다..여기서 더 진행이 안됩니다..waveform 옵션이 있어서 그런가 하고 그냥 waveform gui없이 돌려봐도 Start이후에 진행이 안됩니다...강의 중에 3D이상의 array 선언을 하면 simulation time에 문제가 있어 vector 선언 후 Indexed part select를 통해 설계하셨다고 하셨는데, 저도 제공해 주신 frame안에서 그냥 TODO 부분만 Indexed part select를 통해서 코딩한 건데 왜 이런 문제가 발생하는지 잘 모르겠습니다. 제가 작성한 code에 문제가 있으면 simulation 결과를 보고 수정해서 정상적으로 동작하게 하고 싶은데 simulation이 완료가 안되니 어떻게 해야 할지 모르겠습니다... Matbi님의 lab2_solve 부분을 잠깐 확인을 했는데 크게 다르게 작성하지 않은 것 같은데 lab2_solve에서 run.py를 실행해보면 정상적으로 결과가 나옵니다.Verilog HDL이랑 FPGA강의를 수강해오면서 simulation이 멈춰서 디버깅을 못하는 경우는 없었는데 simulation이 멈춰버리니까 어떻게 디버깅을 해서 진행을 해야 할지 정말 모르겠습니다... 이럴 때는 어떻게 접근해야 하는지 여쭤보고 싶습니다.긴 글 읽어주셔서 감사합니다!
- 미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
CNN paper review 영상 관련 질문있습니다.
안녕하세요 맛비님. AI HW 6장 강의를 들으면서 MAC연산량 관련하여 의문점이 생겨서 질문 드립니다. https://www.inflearn.com/questions/735204/%EC%95%88%EB%85%95%ED%95%98%EC%84%B8%EC%9A%94-%EC%B1%95%ED%84%B06-7%EC%97%90-%EB%8C%80%ED%95%9C-%EC%A7%88%EB%AC%B8%EC%9E%85%EB%8B%88%EB%8B%A4(관련 질문글 링크) 1. 강의에서는 weight 수를 "kernel의 sample수"라고 하셨는데, 위 질문 답변의 A2에서 처럼정확히는 Convolution layer에서의 weigth 수는 "kernel의 sample수 * Output channel 수"가 맞지 않나요? 즉, OCH :output channel수 * (ICH * Kx * Ky : Kerner의 sample 수) 2. Convolution layer에서의 MAC수를 계산할 때는 Kernel size * Input Channel * Output Channel 을 한 게 output feature map의 한 point(1*1*OCH size)에 필요한 연산수 이기 때문에위 질문 답변에서의 A1.하나의 layer 에서의 MAC 량 = OCH* ICH * KX * KY이 아니라Kernel size * Input Channel * Output Channel* Output Feature map Size를 하여하나의 layer 에서의 MAC 량 = OCH * ICH * KX *KY* (Output Feature Map size)를 해줘야 맞는게 아닌가 싶습니다. 3. AI HW 6장의 교안에 LeNet-5 Network구현에 필요한 MAC연산수가 341k라고 되어있는데, 첫 Conv layer에 필요한 MAC연산은 (2번이 맞다면) 5*5*1*6*28*28 = 117,600이고 두 번째 Conv layer에 필요한 MAC연산은 5*5*6*16*10*10 = 240,000으로 두 개의 Conv Layer에서의 MAC연산량만 해도 357.6k로 341k를 넘는데 Fully Connected Layer에서의 MAC연산량을 더하면 더 커질 것이라 생각하는데 MAC연산량이 341k가 맞나요?? 정확한 값을 알고 싶습니다.117.6k+240k+20*84+84*10 = 368.52k가 맞나요? 구글링해도 MAC수에 대한 자료는 잘 안나와서요.. 3-1. Fully Connected Layer가 2개라고 하시고 C5-F6에 하나, F6-OUTPUT에 하나 해서 두 개라고 하셨는데, 검색을 해보니 F6-OUTPUT은 Gaussian connected layer라고 fully connected layer가 아니라고 하는데, 뭐가 맞는건지 잘 모르겠습니다.. S4-C5/ C5-F6가 두 개의 FC layer인건가요? 4. HW engineer라면 연산량을 잘 파악할 수 있어야 된다고 하셨기에, Network Model을 보고 Weight와 MAC연산수를 잘 파악할 수 있어야 될 것 같다고 생각해서 정리를 해보았는데FC Layer에서의 Weight = Edge의 개수 = Input Node * Output NodeFC Layer에서의 MAC = Weight와 동일Conv Layer에서의 Weight = "kernel의 sample수 * Output channel 수" = OCH *ICH * Ky * KxConv Layer에서의 MAC = (Output Feature Map 의 Size) * Weight 수 = (Output Feature Map 의 Size) * OCH * ICH * Ky* Kx라고 생각했는데, 옳게 파악한 것이 맞을까요? 항상 강의 잘 듣고있습니다. 바쁘신데도 질문에 친절하게 답변해주셔서 감사합니다 맛비님!긴 글 읽어주셔서 감사하고 좋은 하루 되세요 :)