-
카테고리
-
세부 분야
반도체
-
해결 여부
미해결
10 bits * 10bits 연산 구현 질문
24.05.19 20:45 작성 24.05.19 20:52 수정 조회수 83
0
안녕하세요. 강사님
강의를 보던 중 10 bits * 10bits 연산 구현에서 bit position을 주석으로 두셔서 살펴 보던 중 곱셈에서 어떻게 bit position을 잡을 수 있는지 질문 드립니다.
어떻게 bit position 잡는지 공부 후 16bits * 16bits, 32bits * 32bits 두 곱셈도 스스로 학습해 보려 합니다.
답변을 작성해보세요.
1
alex
지식공유자2024.05.19
안녕하세요.
bits position 은 10진수와 같다고 생각하면 됩니다.
예를 들어 123 * 456 을 계산한다면,
1 x 4 x 100 x 100,
1 x 5 x 100 x 10,
1 x 6 x 100 x 1
2 x 4 x 10 x 100
2 x 4 x 10 x 10
2 x 6 x 10 x 1
3 x 4 x 1 x 100
3 x 5 x 1 x 10
3 x 6 x 1 x 1
위의 것을 모두 더하면 됩니다.
마찬가지로,
in1[9:6] x in2 [9:6] x 2^6 x 2^6 = in1[9:6] x in2[9:6] x 2^12 = (in1[9:6] x in2[9:6])<<12
이렇게 됩니다.
mul_1 = in1[9:6] * in2[9:6]; // 19:12, 12 : 6+6, 4bits x 4bits 는 8bits 이므로, 12 ~ 19 까지, 19:12
감사합니다 ~!!
답변 1