inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)

[AI HW Lab2] CNN Verilog HDL Practice 1 (Simulation) - 문제설명편 ppt

[AI HW Lab2] CNN Verilog HDL Practice 1 (Simulation) - 문제설명편 ppt

119

lksj112

작성한 질문수 3

1

안녕하세요 🙂

[1. 질문 챕터] : 6:45[AI HW Lab2] CNN Verilog HDL Practice 1 (Simulation) - 문제설명편 ppt

[2. 질문 내용] : AB_BW는 왜 23bit인가요? 20bit+log2(3*3)+8bit 이 되어야 하지 않나요?

[3. 시도했던 내용, 그렇게 생각하는 이유] : 8bit - 255까지니까 1bit만 추가하면 255까지 범위를 포함 가능하므로 23bit가 된 거라고 생각했습니다.

verilog-hdl fpga 임베디드 cnn

답변 2

1

설계독학맛비

안녕하세요.

강의자료에 있는 주어진 변수값을 먼저 확인해보겠습니다.

  • ACI_BW 는 22 bit 이고, bias 는 8bit 입니다.

     

  • AB_BW = ACI_BW + bias 입니다.

 

질문은 왜 AB_BW 가 23 bit 이냐였고, 최대값 만을 놓고 23 bit 이면 충분한지 계산해 보겠습니다. 

"2 의 23 승" 은 "2의 22승 더하기 2의 8승" 값 보다 큽니다.

즉, 22 bit + 8 bit 에서 overflow 를 방지하는 bit width 는 23 bit 이면 충분합니다.

따라서 AB_BW 를 23 bit 정하였고, overflow 는 발생하지 않을 것으로 예상됩니다.

즐공하세요.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. lksj112님.

CNN 연산과 관련하여 bit 수 설정에 대한 궁금증을 해결하기 위해, AB_BW가 23bit로 결정되는 과정을 이해해야 합니다. 이 과정은 CNN 연산의 구조와 연관된 bit 수의 증가 때문입니다.

AB_BW 설명:

  1. 기본 원리: CNN에서 연산을 수행할 때 input feature map, weight, bias 등 여러 요소들이 결합됩니다. 각 연산 단계마다 계산의 정확성을 위해 필요한 bit 수가 증가합니다.

  2. 연산 과정:

    • Input feature map(예시로 20bit) + weight 연산(3x3 convolution을 위한 추가 bit)
    • 이 추가 bit가 log2(3*3)를 사용하여 결정되며, log2(9)의 결과는 약 3.17이므로, 추가적인 3bit가 필요합니다.
    • Bias의 경우, 추가적으로 8bit가 더해집니다.
  3. 결론:

    • 20bit + 3bit(추가된 convolution 비트) + 8bit(bias) = 31bit
    • 여기에서 최종 bit 수는 최적의 overflow 방지 및 정확도 유지를 위한 시스템 디자인에 따라 변화할 수 있습니다.

유익한 링크:

비슷한 주제의 링크를 확인하여 더 많은 정보와 배경 지식을 쌓을 수 있습니다:
- CNN bit 수 할당에 대해서 질문 있습니다. - 이 질문에서는 CNN 연산 시 bit 할당과 overflow 방지를 위한 조치에 대해 설명합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.

현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

보드 관련 질문 드립니다.

1

51

2

[AI HW Lab1] CNN Core C 코딩 (Golden Model 만들기)

1

106

2

spartan7 fgga484보드

1

87

1

soft reset관련 질문드립니다!!

1

70

2

예제 코드 환경설정

1

87

2

HW 언어 for loop 해석

1

66

3

수업자료 관련 질문드립니다.

1

81

2

FPGA 기반 ASIC 설계 검증 시 다차원 배열 처리 방식 및 강의 수강 순서 고민

1

111

2

Fpga에 ai 가속기를 사용하는 이유

2

474

2

AI HW 11장 관련 질문드립니다.

1

118

2

소프트 맥스 관련 질문드립니다.

1

209

1

Data형태에 따른 AI가속기 구현 질문

1

231

1

cnn_core simulaiton

2

293

3

zynq z7 10 parameter 크기

1

214

2

ip 패키징 질문

1

297

1

Image 인식 가속 모델을 설계하려면

1

320

2

이 강의 수강을 위해 fpga 구입이 필요할까요?

2

376

2

혹시 AI 관련 강의도 Zybo Board가 필요한가요?

1

303

2

cnn_kernel.v 코드질문입니다.

1

205

1

6장2부 15분 12초 왜 feature map size가 변경되지 않나요?

1

265

2

zybo z7 케이블 관련 질문

1

370

1

CNN layer별 연산

1

281

2

CNN Core에 weight 와 input feature map 관련해서 질문있습니다!

1

268

1

Linux 및 외장 하드 사용에 관한 질문

1

277

2