상위 질문
타임라인
채팅
관점
알파 21464
위키백과, 무료 백과사전
Remove ads
알파 21464(Alpha 21464)는 디지털 이큅먼트 코퍼레이션이 개발하고 나중에 컴팩이 인수한 후 컴팩이 개발한 알파 명령어 집합 (ISA)을 구현하는 미완성 마이크로프로세서이다. 이 마이크로프로세서는 EV8 (코드명 아라냐)로도 알려져 있었다. 2004년 출시 예정이었으나, 2001년 6월 25일 컴팩이 2004년까지 알파를 단종하고 아이테니엄으로 전환할 것이라고 발표하면서 취소되었다. 취소 당시 알파 21464는 개발 막바지 단계에 있었지만 테이프 아웃되지는 않았다.[1][2]
21464의 기원은 1990년대 중반, 컴퓨터 과학자 조엘 에머가 워싱턴 대학교의 딘 털슨의 동시 멀티스레딩 (SMT) 연구에 영감을 받으면서 시작되었다. 에머는 1990년대 후반에 이 기술을 연구했고 그 가치를 확신하게 되자 이를 홍보하기 시작했다. 컴팩은 1999년 10월 마이크로프로세서 포럼 1999에서 다음 알파 마이크로프로세서가 SMT를 사용할 것이라고 발표했다.[3] 당시 알파 21464를 사용하는 시스템은 2003년에 출시될 것으로 예상되었다.[3]
Remove ads
설명
요약
관점
이 마이크로프로세서는 8-이슈 슈퍼스칼라 설계로, 비순차적 명령어 처리, 4방향 SMT 및 깊은 파이프라인을 특징으로 한다. 64KB의 2-방향 세트 연관 명령어 캐시에서 16개의 명령어를 가져온다. 분기 예측기는 "좋은" 명령어를 선택하여 collapsing 버퍼에 입력한다. (이를 통해 분기 발생 밀도에 따라 사이클당 최대 16개의 명령어 페치 대역폭을 얻을 수 있었다.) 프런트엔드는 이전 알파 구현보다 훨씬 많은 단계를 가졌고, 그 결과 21464는 최소 분기 예측 실패 페널티가 14사이클로 상당히 컸다.[1] 이 마이크로프로세서는 이러한 값비싼 페널티를 최소화하기 위해 고급 분기 예측 알고리즘을 사용했다.
SMT를 구현하려면 프로그램 카운터와 같은 특정 자원의 복제가 필요했다. 하나의 프로그램 카운터 대신 각 스레드에 하나씩 4개의 프로그램 카운터가 있었다. 그러나 SMT 지원을 위해 프런트엔드 이후의 로직은 거의 확장할 필요가 없었다. 레지스터 파일은 512개의 항목을 포함했지만, 그 크기는 SMT가 아닌 최대 처리 중인 명령어 수에 의해 결정되었다. 회로의 물리적 크기 때문에 레지스터 파일에 접근하려면 3단계의 파이프라인이 필요했다. 4개의 스레드에서 최대 8개의 명령어를 매 사이클마다 8개의 정수 및 4개의 부동 소수점 실행 장치로 디스패치할 수 있었다. 21464는 이중 포팅을 지원하기 위해 8개의 뱅크로 구성된 64KB 데이터 캐시(Dcache)를 가지고 있었다. 이는 온다이 3MB, 6-방향 세트 연관 통합 보조 캐시(Scache)에 의해 지원되었다.
정수 실행 장치는 새로운 구조인 레지스터 캐시를 활용했다. 레지스터 캐시는 (일부 보고서에서 주장했듯이) 3틱 레지스터 파일 지연 시간을 완화하기 위한 것이 아니라, 피연산자 우회 관리의 복잡성을 줄이기 위한 것이었다. 레지스터 캐시는 이전 N 사이클 동안 ALU 및 로드 파이프에 의해 생성된 모든 결과를 저장했다. (N은 약 8 정도였다.) 레지스터 캐시 구조는 이전 프로세서가 분산형 멀티플렉서로 구현했던 것을 아키텍처적으로 재라벨링한 것이었다.
시스템 인터페이스는 알파 21364와 유사했다. 10개의 RDRAM 채널을 제공하는 통합 메모리 컨트롤러가 있었다. 다중 처리는 다른 21464에 링크를 제공하는 라우터를 통해 용이해졌으며, 글루 로직 없이 512-방향 다중 처리를 아키텍처적으로 지원했다.
0.125μm (때로는 0.13μm로 언급됨) 상보형 금속 산화물 반도체(CMOS) 공정으로 구현될 예정이었으며, 7개 층의 구리 인터커넥트, 부분 고갈 실리콘 온 인슐레이터(PD-SOI), 저유전율 유전체를 사용했다. 트랜지스터 수는 2억 5천만 개, 다이 크기는 420mm2로 추정되었다.[2][4]
Remove ads
타란튤라
타란튤라는 고려 중인 알파 아키텍처의 확장과 이 확장을 구현한 알파 21464의 파생 제품에 대한 코드명이었다. 21464가 완성되기 전, 어떤 구현 작업도 시작되기 전에 개발 중에 취소되었다. 이 확장은 알파에 벡터 처리 기능을 제공하기 위한 것이었다. 이는 32개의 64x128비트 (8,192비트 또는 1KB) 벡터 레지스터, 약 50개의 벡터 명령어, 그리고 벡터 레지스터로 데이터를 이동하거나 이동하는 데 사용되는 불특정 개수의 명령어를 지정했다. 다른 EV8 후속 후보로는 두 개의 EV8 코어와 4.0GHz 작동 주파수를 갖춘 멀티코어 설계가 있었다.
내용주
각주
더 읽어보기
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads