• 카테고리

    질문 & 답변
  • 세부 분야

    반도체

  • 해결 여부

    미해결

강의 11:57분 bit 계산 질문드립니다.

22.09.07 00:50 작성 조회수 192

1

안녕하세요! SW전공잔데 AI에 관심이 있어서 이 강의를 듣다가, 강의에서 넘어가신 bit계산이 어떻게 계산된 값인지 이해가 안가서 질문드립니다. 프로그래밍 언어의 자료형이랑은 다른 개념같은데, HW 설계에서는 어떤 식으로 미리 계산을 하는지 궁금합니다.

답변 1

답변을 작성해보세요.

1

안녕하세요 :)

해당 내용은 Verilog HDL Season1 에서 다룬적이 있고요.

image질문자 분께서 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 수를 지정해서 사용하신 것을 확인하실 수 있습니다.

image

 즐공하세요 :)