▲GN⁺ 2025-03-04 | parent | ★ favorite | on: 펜티엄에는 3을 곱하는 복잡한 회로가 포함되어 있음(righto.com)Hacker News 의견 Trinary 컴퓨터 에뮬레이션에서 3의 거듭제곱으로 나누는 것을 비트 시프트와 덧셈으로 변환하는 방법이 있음 1/3을 1/2 - 1/2(1/3)으로 표현할 수 있음 이를 무한히 반복하여 1/3 = -(-1/2)^N으로 표현 가능함 2와 3의 임의의 거듭제곱 쌍으로도 가능함 이를 통해 고정된 시간 내에 상수로 나누는 회로를 덧셈기와 뺄셈기로만 구성할 수 있음 Cinematronics 아케이드 게임 프로세서는 두 개의 12비트 누산기를 가짐 곱셈 명령은 24비트 값으로 시프트하고 메모리 내용을 더함 8개의 곱셈을 연속으로 실행하여 24비트 결과를 얻음 주로 게임 객체의 좌표 회전을 위한 2x2 행렬 곱셈에 사용됨 1970년대 중반에 7400 시리즈 부품을 사용하여 5MIPS의 최고 처리량을 가짐 Peter Kogge는 Stanford에서 박사 학위를 받았고, IBM 펠로우로서 다중 코어 CPU를 발명한 인물임 주소 계산에서 3으로 곱하는 것은 흔한 작업임 LEA 명령어를 사용하여 단일 사이클 내에 수행할 수 있음 트랜지스터 예산을 사용하는 것이 좋은 선택이었음 곱셈기에서 7로 곱하는 대신 8을 곱하고 1을 빼는 방법이 있음 이는 캐리 룩어헤드 회로와 유사함 7 = 8-1, 6 = 8-2, 5 = 8-3, 4 = 8-4로 표현 가능함 ×3 곱셈기는 약 9000개의 트랜지스터를 포함하며, 이는 1976년의 Z80 마이크로프로세서보다 많음 이는 프로세서 복잡성의 엄청난 성장을 보여줌 오늘날 실리콘 반도체 기술의 한계에 도달했으며, 더 스마트하게 작동해야 할 때임 radix-8 부스 곱셈기는 x3 회로가 필요함 이는 fmax를 밀어내기 위한 영역/성능 트레이드오프임 8086: 29,000 386: 275,000 486: 1.2 million Pentium: 3.1 million NSA는 2000년 이후에 참여함 radix-8 곱셈의 단점은 0에서 7까지의 숫자로 곱하는 것이 복잡함 2로 곱하는 것은 비트를 왼쪽으로 1비트 이동하는 것과 같음 4로 곱하는 것은 비트를 왼쪽으로 2비트 이동하는 것과 같음 7로 곱하는 것은 8을 곱하고 1을 빼는 방법으로 해결 가능함 ×3은 2x와 1x의 합 또는 4x와 1x의 차로 계산할 수 있음 ×6을 쉽게 계산할 수 있다면, ×3은 그 값을 오른쪽으로 시프트하여 얻을 수 있음
Hacker News 의견
Trinary 컴퓨터 에뮬레이션에서 3의 거듭제곱으로 나누는 것을 비트 시프트와 덧셈으로 변환하는 방법이 있음
Cinematronics 아케이드 게임 프로세서는 두 개의 12비트 누산기를 가짐
Peter Kogge는 Stanford에서 박사 학위를 받았고, IBM 펠로우로서 다중 코어 CPU를 발명한 인물임
주소 계산에서 3으로 곱하는 것은 흔한 작업임
곱셈기에서 7로 곱하는 대신 8을 곱하고 1을 빼는 방법이 있음
×3 곱셈기는 약 9000개의 트랜지스터를 포함하며, 이는 1976년의 Z80 마이크로프로세서보다 많음
radix-8 부스 곱셈기는 x3 회로가 필요함
8086: 29,000
radix-8 곱셈의 단점은 0에서 7까지의 숫자로 곱하는 것이 복잡함