반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Data HAzard
- Pyvrilog tutorial
- systolic array
- CLOCK GATING
- pygraphviz 설치 오류
- 컨벌루션 연산
- AMBA
- gpgpu-sim
- gcc 컴파일
- 데이터 해저드
- pyverilog 설치 오류
- Makefile compile
- pytest-pythonpath 설치 오류
- linux c++ 컴파일
- CUDA
- linux c 컴파일
- Design DNN Accelerator
- DNN Accelerator
- makefile
- Pyverilog 실행
- Pyverilog 설치
- Pyverilog 튜토리얼
- CDC
- 클럭 게이팅
- 딥러닝 가속기
- 대구 반도체 설계기업 특화
- 남산업힐
- DNN 가속기
- linux makefile 작성
- 이진수 곱셈 알고리즘
Archives
- Today
- Total
목록npu 공부 (1)
오늘은 맑음
Systolic array를 이용한 NPU에 대한 이해(1)
기존에 올렸던 글에서는 모두 adder tree를 가지는 구조였습니다. 간략하게 그리면 위의 구조였습니다. A(activation)과 W(weight)가 하나씩 입력 되면, 연산기에서 서로 곱해줍니다. 만약 5x5 컨벌루션이라고 하면 뉴런(파란 동그라미)가 25개 있겠죠? 그러면 아래처럼 2인 1조로 더해주는 동작을 반복해 최종 출력이 1개가 되게끔 만들어 줍니다. 아래의 덧셈 과정을 adder tree 구조라고 합니다. 여기에 곱셈과 덧셈 과정이 있는데, quantization의 경우 곱셈기와 덧셈기의 크기를 줄여서 필요한 하드웨어 자원의 크기를 줄이려는 알고리즘이죠. 일로 인해 잠시 멈췄던 NPU 공부를 다시 해볼까 합니다. 기존의 구조가 아닌 Eyeriss나 TPU와 같이 많은 논문에서 사용하는 s..
NPU
2021. 4. 6. 00:22