-
카테고리
-
세부 분야
반도체
-
해결 여부
미해결
강의 11:57분 bit 계산 질문드립니다.
22.09.07 00:50 작성 조회수 192
1
안녕하세요! SW전공잔데 AI에 관심이 있어서 이 강의를 듣다가, 강의에서 넘어가신 bit계산이 어떻게 계산된 값인지 이해가 안가서 질문드립니다. 프로그래밍 언어의 자료형이랑은 다른 개념같은데, HW 설계에서는 어떤 식으로 미리 계산을 하는지 궁금합니다.
설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
[AI HW Lab1] CNN Core C 코딩 (Golden Model 만들기)
강의실 바로가기
답변을 작성해보세요.
1
설계독학맛비
지식공유자2022.09.07
안녕하세요 :)
해당 내용은 Verilog HDL Season1 에서 다룬적이 있고요.
질문자 분께서 SW 전공자시니 SW 관점에서 설명을 드리겠습니다.
================================================
C 언어와 같은 CPU 기반의 SW 언어들은 "지정된 Type" 이 존재합니다.
예를 들면 bool, char, int, long, double , float etc.. 등등이죠.
이 "지정된 Type" 은 고유 byte 를 갖고 연산방법또한 정해져있습니다.
강의에서 사용한 unsigned int 를 예를들어볼께요.
unsigned char 는 32bit 4 byte 입니다. 그리고 unsigned int 의 연산방식을 취합니다.
HW 는 이론상 선언 bit 의 제약이 없습니다.
33bit 을 선언할 수 있고, 25 bit 선언할 수 있고, 1111 bit 등 자유롭게 선언할 수 있죠.
그리고 이 선언된 bit 는 실제 HW 로 생성이 됩니다. (적은 bit 사용이 작은 HW 를 만들 수 있겠죠. 무조건 큰 bit 를 사용하지 않습니다.)
==================================
연산시 Overflow 는 없다 라는 가정이면, 큰 bit 를 사용해야 합니다.
SW 는 고정된 type 인 unsigned int (32b) 를 사용했다면, (현재 실습에서 사용하는 max bit 는 27 bit 입니다. 그래서 32b 으로 커버가 돼죠)
HW 의 실습코드를 보시면, 설계자가 직접 사용할 bit 수를 지정해서 사용하신 것을 확인하실 수 있습니다.
즐공하세요 :)
답변 1