AI 요약
Intel이 1980년에 출시한 8087 부동소수점 보조프로세서는 수학 연산 속도를 최대 100배까지 향상시킨 기념비적인 칩입니다. 이 칩은 산술 연산과 제곱근뿐만 아니라 삼각함수, 지수, 로그 등 복잡한 초월함수 연산을 지원하며, 그 핵심에는 소수부 데이터패스(fraction datapath) 중앙에 위치한 69비트 가산기(adder)가 자리 잡고 있습니다. 이 가산기는 연산 시 하위 비트에서 상위 비트로 전달되는 캐리(carry)의 누적 지연 문제를 해결하기 위해 전체 연산을 4비트 블록으로 쪼개어 캐리 단계를 4분의 1로 단축했습니다. 각 블록은 소수점 버스로부터 오는 입력(F)과 B 레지스터(B)의 값을 가져와 XOR 연산을 수행하며, 1959년 맨체스터 대학교 연구진이 아틀라스(Atlas) 컴퓨터를 위해 고안한 '맨체스터 캐리 체인' 기술을 도입하여 병렬 스위치 제어를 통해 캐리가 가산기 회로를 매우 신속하게 통과하도록 설계되었습니다.
핵심 인사이트
- 1980년 출시 및 100배 가속: Intel 8087 부동소수점 보조프로세서는 메인 8086 프로세서와 협동하여 수학 연산 속도를 최대 100배까지 향상시켰습니다.
- 69비트 가산기 기반 나노머신: 특허 기술에 따르면 이 칩의 부동소수점 실행 단위 핵심은 69비트 가산기와 레지스터, 시프터, 제어 회로로 이루어진 나노머신에 기반합니다.
- 4비트 블록화를 통한 지연 감소: 캐리가 69비트 전체를 통과하며 발생하는 지연을 줄이기 위해 연산 단위를 4비트 블록으로 구조화하여 캐리 단계를 4배 단축했습니다.
- 1959년 맨체스터 기술의 계승: 캐리 전파를 극대화하기 위해 1959년 맨체스터 대학교 연구진이 개발한 '맨체스터 캐리 체인(Manchester carry chain)' 고속 캐리 기술을 차용했습니다.
주요 디테일
- 실리콘 다이 및 핀 구성: 8087 칩의 다이는 외곽의 얇은 본드 와이어를 통해 40개의 외부 핀과 연결되며, 중앙의 대형 마이크로코드 ROM이 명령어 세트를 정의합니다.
- 데이터패스의 이원화: 다이 하단부는 지수 연산을 처리하는 지수 데이터패스와 소수부 연산을 처리하는 소수부 데이터패스로 분리되어 있으며, 가산기는 소수부 데이터패스의 한가운데 위치합니다. 지수 덧셈 시에는 지수 값을 소수부 쪽으로 복사하여 가산기를 공유합니다.
- 가산 연산 공식 및 구조: 가산기는 소수점 버스 입력(F)과 B 레지스터 입력(B)을 받아 'F XOR B' 연산으로 중간 값인 '전파(propagate)' 값을 생성하고, 여기에 캐리 입력을 XOR하여 최종 합(Sum)을 도출합니다.
- 스위치 방식 캐리 제어: 맨체스터 캐리 체인은 회로 내에 병렬 스위치를 배치하여 캐리 신호가 전선 레이아웃을 타고 매우 빠르게 흘러가도록 구현되었습니다.
향후 전망
- 고전 반도체 설계 자산의 재발견: 역사적인 8087 칩의 역공학 분석을 통해, 자원이 극도로 제한되었던 초기 반도체 시대의 물리적 공간 절약 및 고속화 설계 지혜가 현대 반도체 아키텍처 교육 및 연구에 중요한 통찰을 제공할 것입니다.
