맨위로가기

DEC 알파

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

DEC 알파는 1992년 디지털 이큅먼트 코퍼레이션(DEC)에서 개발한 64비트 RISC(Reduced Instruction Set Computing) 마이크로프로세서 아키텍처이다. PRISM 프로젝트를 기반으로 설계되었으며, 고성능을 목표로 명령어 파이프라인과 슈퍼스칼라 기술을 활용했다. 알파 아키텍처는 다양한 확장 명령어 집합을 지원하며, 21064(EV4)부터 21364(EV7)까지 여러 세대의 프로세서를 출시했다. 1990년대 후반 인텔과의 특허 소송 합의와 컴팩의 DEC 인수로 인해 알파 아키텍처는 2000년대 초반에 인텔에 매각되었고, 2004년을 마지막으로 개발이 중단되었다. 알파 기반 시스템은 슈퍼컴퓨터 분야에서 뛰어난 성능을 보였으며, 특히 로스알라모스 국립 연구소의 ASCI Q가 대표적이다.

더 읽어볼만한 페이지

  • DEC의 마이크로프로세서 - VAX
    VAX는 DEC에서 개발한 가상 메모리를 지원하는 32비트 CISC 컴퓨터 아키텍처 및 컴퓨터 시리즈로, PDP-11의 확장이며, 다양한 모델과 운영 체제를 지원하며 슈퍼미니컴퓨터 시장에서 인기를 얻었으나 RISC 아키텍처의 등장으로 대체되었다.
  • DEC의 마이크로프로세서 - StrongARM
    StrongARM은 DEC와 ARM이 협력하여 개발한 저전력 임베디드 시스템용 프로세서 아키텍처로, PDA 및 셋톱 박스 시장을 목표로 설계되었으며 인텔에 매각 후 XScale로 발전했고, SA-110, SA-1100, SA-1110, SA-1500 등의 모델과 StrongARM 래치 회로 토폴로지를 포함한다.
  • 64비트 컴퓨터 - IA-64
    IA-64는 인텔과 HP가 공동 개발한 64비트 ISA로, EPIC 아키텍처를 채택하여 병렬성을 극대화하려 했으나, x86 호환성 문제와 소프트웨어 생태계 부족으로 상용 시장에서 실패하고 단종되었다.
  • 64비트 컴퓨터 - 아이테니엄
    아이테니엄은 인텔과 HP가 공동 개발한 IA-64 아키텍처 기반의 64비트 마이크로프로세서로, 엔터프라이즈 서버 및 고성능 컴퓨팅 시장을 목표로 했으나 x86-64 아키텍처의 부상과 여러 문제로 2021년 단종되었다.
  • 명령어 집합 구조 - ARM 아키텍처
    ARM 아키텍처는 저전력 설계로 모바일 기기에서 널리 쓰이는 RISC 기반 프로세서 아키텍처로서, IP 코어 라이선스 모델과 ARM Flexible Access를 통해 다양한 분야로 확장되고 있다.
  • 명령어 집합 구조 - PA-RISC
    PA-RISC는 휴렛 팩커드에서 개발한 RISC 기반 명령어 집합 아키텍처로, HP 서버 및 워크스테이션에 사용되었으며 대용량 L1 캐시와 SIMD 명령어 확장 등의 특징을 가졌으나 아이테니엄 아키텍처로의 전환으로 단종되었다.
DEC 알파
개요
디지털에서 사용한 알파 제너레이션 로고
디지털에서 사용한 "알파 제너레이션" 로고
설계자디지털 이큅먼트 코퍼레이션
비트64비트
출시1992년
설계 방식RISC
유형로드-스토어
인코딩고정
엔디언바이에endianness
확장바이트/워드 확장 (BWX), 제곱근 및 부동 소수점 변환 확장 (FIX), 카운트 확장 (CIX), 모션 비디오 명령어 (MVI)
공개 여부
범용 레지스터31개 + 항상 0인 R31
부동 소수점 레지스터31개 + 항상 0.0인 F31
알파 마이크로프로세서
DEC AXP 21064 다이 사진
DEC AXP 21064 다이 사진
DEC AXP 21064 패키지
DEC AXP 21064 패키지
사업 카드에 장착된 DEC AXP 21064 베어 다이와 일부 통계
사업 카드에 장착된 DEC AXP 21064 베어 다이와 일부 통계
컴팩 21264C
컴팩 21264C

2. 역사

알파 아키텍처는 DEC의 초기 RISC 프로젝트인 PRISM에서 시작되었다. PRISM은 유닉스 계열 운영체제와 기존 VAX/VMS 소프트웨어를 모두 지원하는 유연한 설계를 목표로 했으나, 개발 지연과 시장 변화 속에서 경쟁력을 확보하기 어려워지면서 1988년에 취소되었다.[7][8][10]

PRISM 프로젝트가 중단된 후, VAX 아키텍처의 미래와 RISC 기술의 부상에 대응하기 위해 "RISCy VAX"라는 내부 연구 프로젝트가 진행되었다.[8][11] 이 연구를 통해 기존 VMS 운영체제를 약간의 수정을 거쳐 새로운 RISC 아키텍처에 이식할 수 있다는 결론에 도달했다.[11]

이러한 배경 속에서 PRISM의 기본 개념을 계승하면서 VMS와의 호환성을 확보하고, 64비트 성능을 목표로 하는 새로운 아키텍처 개발이 시작되었고, 이것이 바로 알파(Alpha) 아키텍처이다.[12] 알파는 Richard L. Sites영어와 Richard T. Witek영어이 주요 설계자로 참여했으며,[15] PRISM의 Epicode 개념은 플랫폼별 기능을 추상화하는 PALcode로 발전했다.[15] 특히 알파는 당시 업계 표준이던 자동화된 설계 방식 대신 정교한 수동 회로 설계를 통해 높은 동작 주파수를 달성하며 고성능 마이크로프로세서 시장에 큰 영향을 미쳤다.[16]

알파 프로세서는 초기에 'DECchip 21x64'라는 이름으로 불렸으며, 내부적으로는 'EV' 번호(Extended VAX)로 식별되었다.[17][18] 이후 여러 세대의 혁신적인 칩들이 출시되었으나, 1997년 인텔과의 특허 소송 및 합의,[19][20] 그리고 이후 컴팩에 의한 DEC 인수 과정을 거치며 알파 아키텍처는 점차 개발이 축소되었고, 결국 아이테니엄 아키텍처로의 전환 계획이 발표되면서 역사의 뒤안길로 사라지게 되었다.[5][47]

2. 1. PRISM

알파 아키텍처는 초기 RISC 프로젝트인 PRISM에서 비롯되었다. 1985년에 시작된 PRISM 프로젝트는 유닉스 계열 애플리케이션과 기존 DEC의 VAX/VMS 소프트웨어를 약간의 변환을 거쳐 지원하는 유연한 설계를 목표로 했다. 이를 위해 MICA라는 새로운 운영 체제를 개발하여, 공통 커널에서 ULTRIX와 VMS 인터페이스를 모두 지원함으로써 두 플랫폼의 소프트웨어를 PRISM 아키텍처로 쉽게 이식할 수 있도록 계획했다.[7]

PRISM 설계는 컴퓨터 시장의 변화에 대응하며 개발 과정에서 지속적으로 변경되었고, 이로 인해 출시가 상당히 지연되었다. 1987년 여름에는 64비트 설계를 채택하기로 결정했는데, 이는 마이크로프로세서 형식으로는 매우 이른 시도였다. 그러나 같은 해 10월, 경쟁사인 썬 마이크로시스템즈가 새로운 SPARC 프로세서를 탑재한 워크스테이션 Sun-4를 출시했다. Sun-4는 Motorola 68020 기반의 최신 Sun-3나 DEC의 모든 유닉스 제품보다 약 3~4배 빠른 성능을 보였다. 이에 따라 PRISM의 계획은 다시 변경되어, 유닉스 시장을 직접 공략하기 위해 32비트 설계로 조정되었고 이는 추가적인 지연을 초래했다.[8]

PRISM의 출시가 계속 늦어지자, 팔로알토 사무소의 한 팀은 더 이상의 지연 가능성을 우려하여 다른 RISC 프로세서를 사용한 자체 워크스테이션 설계를 결정했다. 실사 끝에 MIPS R2000 프로세서를 선택했고, 90일 만에 Ultrix를 실행하는 작동 가능한 워크스테이션을 개발하는 데 성공했다.[9] 이 일은 회사 내부에 격렬한 논쟁을 불러일으켰고, 1988년 7월 경영 회의에서 최고조에 달했다. PRISM이 MIPS R2000보다 더 빠를 것으로 예상되었지만, MIPS 기반 워크스테이션은 PRISM보다 1년 빠른 1989년 1월에 시장에 출시될 수 있었다. 결국 MIPS 기반 워크스테이션 개발 제안이 받아들여지면서 PRISM의 원래 역할 중 하나였던 유닉스 지원 기능은 대체되었다. VMS를 PRISM에서 구동하려던 계획 역시 이미 취소된 상태였기에, PRISM 프로젝트는 더 이상 추진할 명분이 없었다. PRISM 프로젝트는 이 회의에서 최종적으로 취소되었다.[10]

2. 2. RISCy VAX

PRISM 프로젝트가 1988년 7월 경영 회의에서 공식적으로 취소된 후, 회의 막바지에 켄 올슨은 밥 수프닉에게 RISC 칩이 VAX 라인에 미래의 위협이 될 것이라는 우려를 전달했다. 그는 수프닉에게 미래의 RISC 시스템과 경쟁하기 위해 VAX로 무엇을 할 수 있을지 검토해 달라고 요청했다.[8]

이 요청에 따라 "RISCy VAX" 팀이 결성되었다. 팀은 초기에 세 가지 접근 방식을 고려했다.[11]

# VAX 명령어 집합 아키텍처(ISA)의 축소 버전을 RISC와 유사한 시스템에서 실행하고, 더 복잡한 VAX 명령어는 시스템 서브루틴으로 처리하는 방식.

# 순수 RISC 시스템이 기존 VAX 코드를 자체 ISA로 즉석에서 변환하여 CPU 캐시에 저장하는 방식.

# 전체 VAX ISA를 실행하는 훨씬 더 빠른 CISC 프로세서를 개발하는 방식.

하지만 이 세 가지 접근 방식 모두 추가적인 오버헤드를 발생시켜, 네이티브 RISC 코드를 실행하는 순수 RISC 시스템과 경쟁하기 어렵다는 결론에 도달했다.[11]

다음으로 팀은 기존 VAX 단일 칩 솔루션과 고성능 연산을 위한 RISC 코프로세서를 결합한 하이브리드 시스템을 검토했다. 그러나 연구 결과, 시스템 성능이 필연적으로 저성능 부품(VAX 칩)에 의해 제약받아 매력적인 이점을 제공하지 못할 것으로 예측되었다.[11]

이때 낸시 크로넨버그는 사용자들이 VAX 하드웨어 자체가 아니라 VMS 운영체제를 사용한다는 점에 주목했다. 그녀는 VMS가 인터럽트 처리나 메모리 페이징 모델링과 같은 몇 가지 하드웨어 종속성만 가지고 있으며, 이 부분만 유지된다면 VMS를 RISC 칩으로 이식하는 것이 불가능하지 않다고 지적했다. 추가 연구 결과 이 접근 방식이 실현 가능하다는 것이 확인되었다.[11]

수프닉은 1989년 2월, 전략 태스크 포스에 이러한 연구 결과를 보고했다. 보고 과정에서 두 가지 주요 질문이 제기되었다. 첫째, 개발될 RISC 설계가 유닉스 시장에서도 성능 리더가 될 수 있는가? 둘째, 이 새로운 아키텍처를 공개 표준으로 만들어야 하는가? 논의 끝에, 기존 PRISM 아키텍처를 기반으로 적절한 수정을 가하여 새로운 RISC 설계를 채택하기로 결정했다. 이 개념은 성공적인 CMOS CVAX 구현의 후속작이라는 의미에서 "EVAX"로 불렸다. 경영진은 이 결과를 승인하면서 프로젝트 이름에서 "VAX"를 제외하고 좀 더 중립적인 이름을 사용하기로 결정했고, 최종적으로 "알파(Alpha)"라는 이름이 채택되었다.[12] 이 이름은 NVAX 기반 VAX 4000 모델의 코드명이었던 "오메가(Omega)"에 대응하여, 새로운 라인의 시작을 의미하는 "알파"로 정해진 것이다(알파와 오메가 참조).[13] 곧이어 새로운 알파 아키텍처로 VMS를 포팅하는 작업이 시작되었다.[14]

2. 3. Alpha

알파 아키텍처는 DEC의 초기 RISC 프로젝트인 PRISM에서 파생되었다. PRISM은 유닉스 계열 운영체제와 기존 VAX/VMS 소프트웨어를 모두 지원하는 유연한 설계를 목표로 했으나, 개발 지연과 시장 변화로 인해 1988년에 취소되었다.[7][8][10] PRISM 프로젝트가 취소된 후, VAX 아키텍처를 RISC 환경에서 어떻게 발전시킬지에 대한 연구("RISCy VAX" 팀)가 진행되었다.[8][11] 여러 접근 방식이 검토되었지만, VAX 명령어 집합의 복잡성 때문에 순수 RISC 시스템과 경쟁하기 어렵다는 결론에 도달했다.[11]

이 과정에서 낸시 크로넨버그(Nancy Kronenberg영어)는 VMS 운영체제 자체가 특정 하드웨어 종속성(인터럽트 및 메모리 페이징 모델 등)만 유지된다면 RISC 칩으로 이식될 수 있다는 점을 지적했다.[11] 추가 연구 결과 이 접근 방식이 실현 가능하다는 것이 확인되었고, PRISM 아키텍처를 기반으로 VMS 호환성을 강화한 새로운 64비트 RISC 아키텍처 개발이 결정되었다. 이 새로운 아키텍처가 바로 알파(Alpha)이다.[12] 알파 명령어 집합의 주요 설계자는 리처드 L. 사이트(Richard L. Sites영어)와 리처드 T. 위텍(Richard T. Witek영어)이다.[15] PRISM의 Epicode 개념은 알파의 PALcode(Privileged Architecture Library code영어)로 발전하여, 플랫폼 및 프로세서 구현에 따른 특정 기능들을 추상화된 인터페이스로 제공했다. 이를 통해 VMS 운영체제의 요구사항을 만족시키면서도 RISC 아키텍처의 단순성을 유지할 수 있었다.[15]

알파 아키텍처가 마이크로프로세서 산업에 기여한 주요 공헌 중 하나는 아키텍처 자체의 혁신성뿐만 아니라, 당시 업계 표준이었던 자동화된 설계 방식 대신 정교한 수동 회로 설계 방식을 채택했다는 점이다.[16] DEC의 설계팀은 복잡한 VAX 아키텍처를 다루며 축적한 수동 회로 설계 노하우를 비교적 단순한 RISC 아키텍처에 적용함으로써, 자동화된 설계 방식으로는 달성하기 어려웠던 높은 동작 주파수를 실현했다. 이는 마이크로프로세서 설계 커뮤니티 내에서 맞춤형 회로 설계 방식의 중요성을 다시 한번 부각시키는 계기가 되었다.[16]

알파 프로세서는 초기에 DECchip 21x64 시리즈로 명명되었다.[17] 여기서 '21'은 21세기를, '64'는 64비트 아키텍처를 의미한다 (알파는 32비트 버전 없이 처음부터 64비트로 설계되었다).[17] 중간의 'x' 자리에 들어가는 숫자는 알파 아키텍처의 세대를 나타낸다. 1990년대 중반 이후에는 'DECchip' 대신 'Alpha'라는 명칭이 사용되었다. 내부적으로는 EV 번호로도 식별되었는데, EV는 공식적으로 "Extended VAX"의 약자였지만, "Electric Vlasic"이라는 유머러스한 별칭으로도 불렸다.[18] EV 뒤의 숫자는 해당 칩 설계에 사용된 반도체 공정 기술을 나타냈다. 예를 들어, 첫 모델인 Alpha 21064는 EV4로도 불렸으며, 이는 DEC의 CMOS-4 공정을 사용했음을 의미한다.[11]

2. 4. 모델 역사

알파 칩의 초기 몇 세대는 당시 가장 혁신적인 칩 중 하나였다.

  • 사전 생산 모델인 '''EV3'''는 운영 체제를 알파 아키텍처로 이식하기 위한 프로토타입 시스템인 '알파 데모 유닛'(ADU)에 사용되었다. EV3는 이후 모델들과 달리 부동 소수점 장치가 없었다.[21]
  • 첫 번째 버전인 '''알파 21064''' (EV4)는 1992년 11월에 출시되었으며, 최대 192 MHz로 작동했다. 이는 ECL 기반의 미니컴퓨터나 메인프레임과 경쟁할 수 있는 높은 작동 주파수를 CMOS 공정으로 구현한 최초의 마이크로프로세서였다. 1993년에는 공정을 미세화(0.75 µm에서 0.675 µm)한 '''EV4S'''가 200 MHz로 작동하며 등장했다. 이 64비트 프로세서는 다른 RISC 설계처럼 수퍼파이프라인 및 수퍼스칼라 구조를 가졌지만, 성능 면에서 경쟁 칩들을 능가하여 DEC는 이를 세계에서 가장 빠른 프로세서라고 홍보했다. 허드슨 설계팀의 특징인 회로 설계에 대한 세심한 주의 덕분에, 유사한 마이크로아키텍처를 가진 다른 칩들보다 더 높은 클럭 속도를 달성할 수 있었다. 비교하자면, 이듬해 봄에 출시된 인텔 펜티엄 초기 모델은 66 MHz로 작동했다.
  • 두 번째 버전인 '''알파 21164''' (EV5)는 1995년에 333 MHz로 출시되었으며, 대용량 2차 캐시를 칩 내부에 통합한 최초의 마이크로프로세서였다.[22] 이후 1996년 7월에는 500 MHz, 1998년 3월에는 666 MHz로 속도가 향상되었다.
  • 세 번째 버전인 '''알파 21264''' (EV6)는 1998년에 450 MHz로 출시되었으며, 높은 작동 주파수와 더 복잡한 아웃오브오더 실행 마이크로아키텍처를 결합한 최초의 마이크로프로세서였다. 2001년에는 '''21264C'''/'''EV68CB''' 모델이 1.25 GHz에 도달했다.
  • '''알파 21364''' (EV7) ''마블''은 2003년에 출시되었으며, 온칩 메모리 컨트롤러를 탑재한 최초의 고성능 프로세서였다.[23] 이는 EV68 코어를 기반으로 멀티프로세싱 성능 향상을 위해 1.6 GB/s 속도의 인터프로세서 통신 링크 4개를 갖추었으며, 1 또는 1.15 GHz로 작동했다. 2004년에는 1.3 GHz로 작동하는 최종 모델 '''EV7z'''가 출시되었다.
  • '''알파 21464''' (EV8)은 동시 멀티스레딩(SMT)을 지원하는 최초의 프로세서가 될 예정이었으나, DEC가 컴팩에 매각된 후 개발이 취소되었다.
  • ''Tarantula'' 연구 프로젝트는 아마도 '''EV9'''으로 명명될 예정이었으며, 벡터 프로세서 유닛을 탑재한 최초의 알파 프로세서가 될 계획이었으나 실현되지 못했다.[24]


DEC 내부 관계자에 따르면, 프로세서 명칭으로 'AXP'를 선택한 것은 VAX 상표권 분쟁으로 어려움을 겪었던 DEC 법무 부서의 결정이었다고 한다.[25] 오랜 검토 끝에 'AXP'라는 명칭이 법적으로 문제가 없음이 확인되었다. 컴퓨터 업계에서는 'AXP'가 "Almost eXactly PRISM"(거의 정확히 PRISM)의 약자라는 농담이 돌기도 했다.[26]

알파는 발표 당시 향후 25년간 지속될 아키텍처로 소개되었으나, 실제로는 그에 미치지 못했다. 그럼에도 불구하고 알파는 비교적 긴 수명을 누렸다.

1996년, 알파 칩 생산은 삼성전자에 라이선스되었다. 컴팩이 DEC를 인수한 후, 대부분의 알파 관련 자산은 삼성과 컴팩이 공동 출자한 API NetWorks(구 Alpha Processor Inc.)로 이전되었다. 2001년 10월, 마이크로웨이는 API NetWorks의 알파 기반 제품 라인에 대한 독점 판매 및 서비스 제공 업체가 되었다.

2001년 6월 25일, 컴팩은 2004년까지 알파 개발을 중단하고 인텔아이테니엄 아키텍처로 전환할 계획을 발표했다. 이 결정으로 계획 중이던 '''EV8''' 칩 개발은 취소되었고, 모든 알파 관련 지적 재산은 인텔에 매각되었다.[5][47] 2002년 컴팩을 인수한 휴렛 팩커드(HP)는 알파 시리즈 지원을 몇 년 더 지속하며 1.3 GHz 버전의 EV7인 '''EV7z'''를 출시했지만, 이것이 마지막 알파 칩이 될 것이라고 밝혔다. 0.13 µm 공정 기반의 '''EV79''' 역시 취소되었다. HP는 Tru64 UNIX 운영체제의 유지보수 및 판매를 2006년까지 지속했고, 지원은 2011년까지 연장했다.

아이러니하게도, 알파 아키텍처가 단계적으로 폐지되던 2003년 중반, 미국에서 가장 빠른 슈퍼컴퓨터 1, 2위는 모두 알파 프로세서를 기반으로 한 시스템이었다.

알파 아키텍처는 컴팩의 기업 연구소 및 논스톱 하드웨어 개발 그룹에서 개발한 연구 프로토타입인 '''피라냐'''에도 구현되었다. 피라냐는 트랜잭션 처리 워크로드에 최적화된 멀티코어 프로세서 설계로, 8개의 단순 코어를 포함했다. 이는 2000년 6월 제27회 국제 컴퓨터 아키텍처 심포지엄에서 발표되었다.[34]

선웨이 아키텍처의 초기 버전은 알파를 기반으로 한 것으로 알려져 있으나, SW26010 이후의 선웨이 프로세서는 알파와 관련 없는 새로운 명령 집합 아키텍처를 사용한다.[35][36]

모델명모델 번호출시 연도주파수 [MHz]공정 [µm]트랜지스터 [백만]다이 크기 [mm2]핀 수전력 [W]전압D캐시 [KB][48]I캐시 [KB]내장 2차 캐시외부 캐시ISA
EV4210641992100–2000.751.68234290303.38128 KB–16 MBrowspan="7" |
EV4S19930.67518627
EV4521064A1994200–3000.52.851643316256 KB–16 MB
LCA4210661993100–1660.6751.75209218rowspan="4" |
LCA4210681994669
LCA4521066A100–2660.51.816123
LCA451001.8
EV5211641995266–5009.3299296563.3/2.596 KB최대 64 MBR
EV5621164A1996366–666[50]0.359.66[50]20931–55[50]3.3/2.5[50]R,B
PCA5621164PC1997[49]400–533[49]3.5[49]14126426–353.3/2.58[49]16[49]512 KB–4 MBR,B,M
PCA57600–6660.285.710128318–232.5/2.01632[50]
EV6212641998450–6000.3515.2314389732.0642–8 MBR,B,M,F
EV6721264A1999600–7500.25210R,B,M,F,C
EV68AL21264B2001800–8330.181251.7R,B,M,F,C,T
EV68CB21264C1000–125065–751.65
EV68CX21264D
EV72136420031000–11500.181303971251.51.75 MB
EV7z20041300
취소된 모델
EV78/EV7921364A2004년 예정17000.131523001201.2641.75 MBR,B,M,F,C,T
EV8214642003년 예정1200–20000.1252504201800??3 MB



ISA 확장:


  • R – 정/음의 무한대 방향으로의 반올림을 하드웨어로 지원[51]
  • B – BWX, 바이트/워드 확장. 8비트 및 16비트 연산 명령어 추가
  • M – MVI, 멀티미디어 확장
  • F – FIX, 제곱근을 구하는 명령어와 정수 레지스터와 부동 소수점 레지스터 간의 전송 명령어
  • C – CIX, 비트 수를 세고 비트 위치를 찾는 명령어
  • T – 잠금 획득 시도의 성능 개선을 위한 프리페치 지원

2. 5. 인텔과의 경쟁과 Alpha의 종말

1997년 5월, DEC인텔펜티엄, 펜티엄 프로, 펜티엄 II 칩을 설계하면서 알파 관련 특허를 침해했다며 소송을 제기했다.[19] 양사는 합의에 이르렀고, 그 결과 DEC의 칩 설계 및 제조 사업 중 상당 부분이 인텔에 매각되었다. 이 매각에는 ARM 아키텍처 기반의 StrongARM 구현도 포함되었는데, 인텔은 이를 인수하여 PDA 등에서 널리 사용된 XScale 프로세서로 발전시켰다. 핵심 기술을 담당하던 알파 마이크로프로세서 그룹은 DEC에 남았지만, 관련 사무실 건물 등 일부 자산은 인텔로 넘어갔다.[20]

이후 DEC는 컴팩에 인수되었고, 이 과정에서 알파 아키텍처의 미래는 불투명해졌다. 컴팩은 알파의 후속 개발 프로젝트 중 일부를 중단시켰다. 대표적으로 동시 멀티스레딩 기술을 최초로 도입할 예정이었던 21464 (코드명 EV8) 칩 개발이 취소되었다. 또한 벡터 프로세서 유닛을 탑재하여 과학 기술 계산 성능을 높이려 했던 연구 프로젝트(코드명 ''Tarantula'', EV9으로 추정) 역시 중단되었다.[24][44] 이러한 일련의 과정 속에서 한때 시대를 앞서갔던 알파 아키텍처는 점차 시장에서 영향력을 잃고 역사의 뒤안길로 사라지게 되었다.

3. 설계 원칙

알파 아키텍처는 고성능 달성을 최우선 목표로 삼았다. 디지털(Digital)은 이 아키텍처를 통해 향후 25년간 성능을 천 배까지 향상시키는 것을 목표로 설정했다. 이러한 목표를 달성하기 위해, 다중 명령어 발행, 클록 속도 향상, 다중 처리와 같은 성능 향상 기법의 적용을 방해할 수 있는 잠재적 요소를 아키텍처 설계 단계에서부터 제거하고자 했다.

그 결과, 초기 알파 아키텍처는 다음과 같은 특징적인 기능들을 포함하지 않았다.


  • 분기 지연 슬롯 (Branch delay slot)
  • 억제된 명령 (Suppressed instructions)
  • 바이트 단위 로드 또는 저장 명령 (Byte load/store instructions) - 이 기능은 나중에 바이트 워드 확장(BWX)이라는 이름으로 추가되었다.[27][28]


또한, 알파 아키텍처는 정수 연산 명령에서 상태 레지스터의 조건 코드를 사용하지 않았다. 이는 조건 코드 플래그를 갱신하고 확인하는 과정에서 발생할 수 있는 성능 병목 현상을 원천적으로 차단하기 위한 결정이었다. 예를 들어, 두 정수를 더하는 명령을 실행할 때 오버플로우가 발생하더라도, 결과값의 하위 비트(64비트 또는 32비트)만 대상 레지스터에 저장하고 넘침(carry 또는 overflow) 자체는 무시한다. 만약 캐리 발생 여부를 확인해야 한다면, 덧셈 결과와 덧셈 전의 두 피연산자를 부호 없는 수로 비교하는 별도의 명령을 사용해야 했다.

알파 아키텍처가 마이크로프로세서 산업에 기여한 주요 공헌 중 하나이자 성능 향상의 핵심 동력은 아키텍처 자체의 설계뿐만 아니라, 당시 업계에서 일반적이던 자동화된 설계 및 레이아웃 도구에 의존하지 않고 정교한 수동 회로 설계를 고수한 구현 방식에 있었다.[16] 디지털의 설계자들은 복잡한 VAX 아키텍처를 구현하며 축적한 수동 회로 설계 노하우를 비교적 단순한 RISC 기반의 알파 아키텍처에 적용함으로써, 자동화된 설계 방식으로는 달성하기 어려웠던 높은 작동 클록 주파수를 실현할 수 있었다. 이는 마이크로프로세서 설계 커뮤니티 내에서 맞춤형 회로 설계 방식의 중요성을 다시 한번 부각시키는 계기가 되었다.

4. 레지스터

알파 아키텍처는 다음과 같은 레지스터들을 정의한다.


  • 정수 레지스터 (R0-R31): 64비트 레지스터 32개이다.
  • R31은 항상 0 값을 가지며, 이 레지스터에 쓰려는 시도는 무시된다.
  • 정수 연산을 위한 조건 코드를 가지지 않는다.[29] 이는 조건 상태 레지스터가 잠재적인 성능 병목 지점이 되는 것을 막기 위함이다.
  • 덧셈 결과가 64비트를 넘어서는 오버플로가 발생하면, 결과값의 하위 32비트 또는 64비트 최하위 비트가 대상 레지스터에 저장된다. 캐리(carry)는 결과값과 피연산자 간의 부호 없는 비교를 통해 판단한다. 만약 결과값이 피연산자보다 작으면 캐리가 발생한 것으로 간주하고, 조건 상태를 나타내기 위해 값 1이 대상 레지스터의 최하위 비트에 기록된다.
  • 부동 소수점 레지스터 (F0-F31): 64비트 레지스터 32개이다.
  • F31은 항상 0 값을 가지며, 쓰기 시도는 무시된다.
  • 프로그램 카운터 (PC): 64비트 레지스터로, 현재 실행 중인 명령어의 다음 명령어 주소를 가진다. 주소는 항상 롱워드(4바이트) 경계로 정렬되므로 하위 2비트는 항상 0이다. 명령어가 디코딩될 때 PC 값은 4씩 증가한다.
  • 잠금 레지스터 (Lock Registers): 멀티프로세싱 환경을 지원하기 위한 두 개의 레지스터(잠금 플래그 레지스터, 잠긴 물리 주소 레지스터)이다. load-locked/store-conditional 명령어 쌍을 구현하는 데 사용된다.
  • 부동 소수점 제어 레지스터 (FPCR): 64비트 레지스터로, IEEE 754 표준을 따르는 부동 소수점 연산 하드웨어를 제어한다.
  • PALcode 레지스터: PALcode 실행에 사용되는 레지스터들이다.
  • 옵션 레지스터: 특정 구현에서 필요에 따라 추가될 수 있는 레지스터들이다.


DEC는 정수 레지스터 파일과 부동 소수점 레지스터 파일을 분리하여 설계했다. 이는 각 레지스터 파일을 별도의 칩에 구현하거나, 정수 연산 전용 프로세서에서는 부동 소수점 레지스터 파일(FPU 포함)을 제외하는 등 구현의 유연성을 높이기 위함이었다. 또한, 여러 명령어를 동시에 처리하는 슈퍼스칼라 구조에서 분리된 레지스터 파일이 각 파일에 필요한 읽기/쓰기 포트 수를 줄여 더 효율적이라고 판단했다. 레지스터 개수로는 32개와 64개를 고려했으나, 32개를 선택했다. 32개 레지스터 구성이 다이 면적을 줄여 클럭 속도를 높이는 데 유리하며, 최소 8개 명령 동시 실행(8-way issue)을 지원하기에 충분하다고 보았다.

5. 데이터 형식

알파 아키텍처에서 ''바이트''는 8비트 데이터(옥텟)로 정의되며, ''워드''는 16비트, ''롱워드''는 32비트, ''쿼드워드''는 64비트, ''옥타워드''는 128비트자료형으로 정의된다.

알파 아키텍처에서 기본적으로 정의된 데이터 형식은 다음과 같다.



알파 이전의 32비트 아키텍처인 VAX와의 호환성을 유지하기 위해, 다음 두 가지 부동 소수점 데이터 형식이 추가로 포함되었다.

  • VAX G-부동 소수점(배정밀도, 64비트)
  • VAX F-부동 소수점(단정밀도, 32비트)


VAX H-부동 소수점(4배 정밀도, 128비트)은 지원되지 않았지만,[30] 알파 아키텍처 고유의 128비트 부동 소수점 형식인 X-부동 소수점은 사용 가능했다.[31] H-부동 소수점과 X-부동 소수점은 유사하지만 동일하지 않다. H-부동 소수점에 대한 소프트웨어 에뮬레이션과 소스 코드 수준 변환기(DECmigrate)는 DEC에서 제공되었다.

명령어 집합 설계 시, 향후 128비트 데이터 형식을 지원할 것을 염두에 두었다.

6. 메모리

알파 아키텍처는 메모리 세그먼테이션 없이 64비트의 평탄하고 선형적인 가상 주소 공간을 사용한다. 실제 구현 시에는 필요에 따라 더 작은 가상 주소 공간을 사용할 수 있으며, 최소 가상 주소 폭은 43비트로 규정되어 있다. 가상 주소에서 사용되지 않는 비트들은 변환 색인 버퍼와 같은 하드웨어에는 직접 구현되지 않는다. 하지만, 더 큰 가상 주소 공간을 사용하는 다른 구현과의 소프트웨어 호환성을 유지하기 위해, 아키텍처는 하드웨어에서 이 미사용 비트들이 0인지 검사하도록 요구한다.

7. 명령어 형식

Alpha ISA는 32비트의 고정된 명령어 길이를 가지며, 6개의 명령어 형식을 사용한다.

31-2625-2120-1615-81211-54-0종류
OpcodeRaRb미사용0기능Rc정수 연산
OpcodeRa리터럴1기능Rc리터럴을 사용한 정수 연산
31-2625-2120-1615-54-0종류
OpcodeRaRb기능Rc부동 소수점 연산
31-2625-2120-1615-0종류
OpcodeRaRb변위메모리 형식 (로드/스토어)
31-2625-2120-0종류
OpcodeRa변위분기 형식
31-2625-0종류
Opcode기능CALL_PAL 형식


  • 정수 연산 형식: 정수 명령어에 사용된다. 6비트 연산 코드, 첫 번째 오퍼랜드가 있는 레지스터를 지정하는 5비트 Ra 필드, 두 번째 오퍼랜드가 있는 레지스터를 지정하는 5비트 Rb 필드로 구성된다. 다음 3비트는 사용되지 않는다. 그 다음 1비트는 항상 "0"이며, 정수 리터럴 형식과 구별하는 데 사용된다. 이어서 7비트 기능 필드가 연산 코드와 함께 연산 내용을 지정한다. 마지막 5비트 Rc 필드는 연산 결과를 저장할 레지스터를 지정한다. 모든 레지스터 필드는 5비트 길이로, 32개의 정수 레지스터를 지정할 수 있다.
  • 정수 리터럴 형식: 오퍼랜드 중 하나로 리터럴을 사용하는 정수 명령어에 사용된다. 정수 연산 형식과 유사하지만, 5비트 Rb 필드와 3비트 미사용 필드 대신 8비트 리터럴 필드가 사용된다. 이 리터럴 값은 64비트 오퍼랜드로 사용될 때 부호 확장 없이 0으로 채워 확장된다(제로 확장).
  • 부동 소수점 연산 형식: 부동 소수점 명령어에 사용된다. 정수 연산 형식과 비슷하지만, 리터럴 및 미사용 비트 공간을 활용하여 기능 필드가 11비트로 확장되었다.
  • 메모리 형식: 주로 로드 및 저장 명령어에 사용된다. 6비트 연산 코드, 5비트 Ra 필드, 5비트 Rb 필드, 그리고 16비트 변위(displacement) 필드로 구성된다.
  • 분기 형식: 분기 명령어에 사용된다. 6비트 연산 코드, 5비트 Ra 필드, 21비트 변위 필드로 구성된다. Ra 필드는 조건 분기 명령어에서 조건을 검사할 레지스터를 지정한다. 조건이 만족되면, 프로그램 카운터(PC)는 현재 PC 값에 변위 필드의 값을 더하여 갱신된다. 변위 필드는 부호 있는 정수이며, 양수 값은 앞쪽으로, 음수 값은 뒤쪽으로 분기하게 한다. 분기 범위는 ±1,048,576 명령어(±4 MiB)이다. Alpha 아키텍처는 미래를 대비하여 넓은 분기 범위를 갖도록 설계되었다.
  • CALL_PAL 형식: `CALL_PAL` 명령어에서 사용되며, PALcode(Privileged Architecture Library code) 서브루틴을 호출하는 데 쓰인다. 연산 코드 필드는 유지되지만, 나머지 필드는 PAL 서브루틴을 지정하는 정수 값을 포함하는 26비트 기능 필드로 대체된다.

8. 명령어 집합

알파 명령어 집합 아키텍처는 정수 연산을 위한 조건 코드를 가지고 있지 않다.[29] 이는 조건 상태 레지스터에서 발생할 수 있는 잠재적인 병목 현상을 제거하기 위한 설계이다. 덧셈 결과가 64비트를 넘어서는 오버플로가 발생하는 경우, 명령어는 결과의 최하위 32비트 또는 64비트만을 대상 레지스터에 기록한다. 캐리(carry)는 결과값과 피연산자 간의 부호 없는 비교를 통해 생성되는데, 결과가 피연산자보다 작으면 캐리가 발생한 것으로 간주하고 대상 레지스터의 최하위 비트에 1을 기록하여 조건 상태를 나타낸다.

명령어 집합은 크게 제어 명령어, 정수 산술 명령어, 논리 및 시프트 명령어로 나눌 수 있다.

'''제어 명령어'''

제어 명령어는 조건 분기, 무조건 분기, 점프 명령어로 구성된다. 조건 분기와 무조건 분기는 분기 명령어 형식을 사용하고, 점프 명령어는 메모리(로드/스토어) 명령어 형식을 사용한다.


  • 조건 분기: 특정 레지스터의 최하위 비트가 1인지 0인지(홀수/짝수 판정) 또는 레지스터 값을 부호 있는 쿼드워드로 간주하여 0과 비교(같음, 같지 않음, 미만, 이하, 이상, 초과)한 결과가 참일 때 분기한다. 분기할 새 주소는 명령어에 포함된 21비트 변위(displacement)를 부호 확장하고 4를 곱하여(롱워드 정렬) 현재 프로그램 카운터(분기 명령어 다음 명령어의 주소)에 더해서 계산한다.
  • 무조건 분기: 조건 분기와 동일한 방식으로 계산된 새 주소로 프로그램 카운터를 업데이트한다. 또한, 분기 명령어 다음 명령어의 주소를 지정된 레지스터(Ra 필드)에 저장한다. 분기 예측 하드웨어에 제공하는 힌트에 따라 두 종류의 명령어가 존재한다.
  • 점프 명령어: 총 4종류가 있으며, 모두 다음 명령어의 주소를 지정된 레지스터(Ra 필드)에 저장하고, 다른 레지스터(Rb 필드)에 저장된 값으로 프로그램 카운터를 업데이트하는 동일한 작업을 수행한다. 명령어의 변위 필드는 분기 예측 하드웨어에 힌트를 제공하는 데 사용된다.


'''정수 산술 명령어'''

정수 산술 명령어는 롱워드(32비트) 및 쿼드워드(64비트) 데이터에 대한 덧셈, 곱셈, 뺄셈과 쿼드워드 데이터에 대한 비교 연산을 수행한다. 하드웨어의 단순성을 위해 나눗셈 명령어는 포함되지 않았다.

  • 덧셈/뺄셈: 기본적인 덧셈, 뺄셈 외에 '스케일된(scaled)' 버전이 존재한다. 이 버전은 두 번째 피연산자를 왼쪽으로 2비트 또는 3비트 시프트한 후 연산을 수행한다.
  • 곱셈: 롱워드 곱셈은 결과의 하위 32비트를, 쿼드워드 곱셈은 결과의 하위 64비트를 대상 레지스터에 저장한다. 쿼드워드 곱셈 결과의 상위 64비트를 얻기 위한 '부호 없는 쿼드워드 곱셈 상위'(UMULH) 명령어도 제공되며, 이는 임의 정밀도 연산이나 나눗셈 알고리즘 구현에 유용하다. 곱셈 결과의 상위 절반을 얻는 아이디어는 DEC PRISM 프로젝트에서 유래했다.
  • 롱워드 연산: 롱워드(32비트) 정수 연산 명령어는 레지스터의 상위 32비트를 무시하고 연산을 수행하며, 32비트 결과는 대상 레지스터에 기록되기 전에 부호 확장된다.
  • 오버플로: 기본적으로 UMULH와 스케일된 덧셈/뺄셈을 제외한 덧셈, 곱셈, 뺄셈 명령어는 오버플로 발생 시 트랩(trap)을 발생시키지 않는다. 오버플로 감지가 필요한 경우를 위해 오버플로를 감지하고 트랩을 발생시키는 버전의 명령어가 별도로 제공된다.
  • 비교: 두 레지스터 또는 레지스터와 리터럴(상수값)을 비교한다. 지정된 조건(같음, 같지 않음, 작거나 같음, 미만)이 참이면 대상 레지스터에 1을, 거짓이면 0을 기록한다. '같음'과 '같지 않음' 조건을 제외하고는 부호 있는 비교와 부호 없는 비교를 수행하는 버전이 각각 존재한다.


정수 산술 명령어는 정수 연산 명령어 형식을 사용한다.

'''논리 및 시프트 명령어'''

논리 연산 명령어는 정수 레지스터에 대한 비트 연산과 조건부 이동 명령어로 구성된다. 시프트 명령어는 산술 시프트와 논리 시프트를 수행한다.

  • 비트 연산: 두 레지스터 간 또는 레지스터와 리터럴 간의 AND, NAND, NOR, OR, XNOR, XOR 연산을 수행한다.
  • 조건부 이동: 특정 레지스터(Ra)의 값을 0과 비교(같음, 같지 않음, 이하, 미만, 이상, 초과)하거나 최하위 비트 값(홀수/짝수)을 확인하여 지정된 조건이 참일 경우, 다른 레지스터(Rb)의 내용을 대상 레지스터(Rc)로 복사한다.
  • 시프트: 산술 우측 시프트와 논리 좌측 시프트를 수행한다. 시프트할 비트 수는 레지스터 또는 리터럴로 지정할 수 있다.


논리 및 시프트 명령어는 정수 연산 명령어 형식을 사용한다.

8. 1. 확장 명령어 집합

후기형 알파 프로세서에는 여러 확장 명령어 집합이 추가되어 특정 연산의 효율성을 높였다.

'''바이트-워드 확장 (Byte-Word Extensions, BWX)'''

BWX는 8비트 및 16비트 데이터 형식을 조작하기 위한 명령어 집합이다.[32][45] 이 명령어들은 21164A(EV56) 마이크로프로세서에서 처음 도입되었으며, 이후 모든 구현에 포함되었다. BWX는 이전에는 여러 명령어를 사용해야 했던 연산을 단일 명령어로 처리할 수 있게 하여 코드 밀도를 개선하고 특정 애플리케이션의 성능을 향상시킨다. 또한, BWX는 x86 기계어 코드의 에뮬레이션과 장치 드라이버 작성을 더 쉽게 만들어준다.[32][45]

니모닉명령어
LDBU메모리에서 레지스터로 부호 없는 바이트 로드
LDWU메모리에서 레지스터로 부호 없는 워드 로드
SEXTB바이트 부호 확장
SEXTW워드 부호 확장
STB레지스터에서 메모리로 바이트 저장
STW레지스터에서 메모리로 워드 저장



'''모션 비디오 명령어 (Motion Video Instructions, MVI)'''

MVI는 SIMD 연산을 위한 명령어를 추가한 알파 ISA의 명령어 집합 확장이다.[33][46] MVI를 구현한 알파 프로세서는 시간 순서대로 알파 21164PC (PCA56 및 PCA57), 알파 21264 (EV6), 알파 21364 (EV7)이다. MIPS의 MDMX나 SPARC의 Visual Instruction Set와 같은 동시대 다른 SIMD 명령어 집합과 달리, MVI는 PA-RISC의 Multimedia Acceleration eXtensions (MAX)처럼 기존 정수 레지스터에 저장된 정수 데이터 유형에 대해 작동하는 비교적 단순한 명령어 집합이다.

MVI가 단순하게 설계된 데에는 두 가지 이유가 있다. 첫째, DEC는 알파 21164가 소프트웨어만으로도 DVD 디코딩을 충분히 수행할 수 있다고 판단했으나, MPEG-2 인코딩에는 SIMD 명령이 효과적일 것으로 보았다. 둘째, 구현 시 높은 클럭 주파수를 유지하기 위해서였다. 많은 명령어를 추가하면 명령어 디코딩 로직이 복잡해지고 커져 클럭 주파수를 저하시킬 수 있기 때문이다.

MVI는 13개의 명령어로 구성된다.

니모닉명령어
MAXSB8벡터 부호 있는 바이트 최대값 (Vector Signed Byte Maximum)
MAXSW4벡터 부호 있는 워드 최대값 (Vector Signed Word Maximum)
MAXUB8벡터 부호 없는 바이트 최대값 (Vector Unsigned Byte Maximum)
MAXUW4벡터 부호 없는 워드 최대값 (Vector Unsigned Word Maximum)
MINSB8벡터 부호 있는 바이트 최소값 (Vector Signed Byte Minimum)
MINSW4벡터 부호 있는 워드 최소값 (Vector Signed Word Minimum)
MINUB8벡터 부호 없는 바이트 최소값 (Vector Unsigned Byte Minimum)
MINUW4벡터 부호 없는 워드 최소값 (Vector Unsigned Word Minimum)
PERR픽셀 오류 (Pixel Error)
PKLB롱워드를 바이트로 팩 (Pack Longwords to Bytes)
PKWB워드를 바이트로 팩 (Pack Words to Bytes)
UNPKBL바이트를 롱워드로 언팩 (Unpack Bytes to Longwords)
UNPKBW바이트를 워드로 언팩 (Unpack Bytes to Words)



'''부동 소수점 확장 (Floating-point Extensions, FIX)'''

FIX는 부동 소수점 제곱근 계산 및 정수 레지스터와 부동 소수점 레지스터 간 데이터 전송을 위한 9개의 명령어를 도입한 확장이다. 알파 21264 (EV6) 마이크로프로세서에서 처음 구현되었다.

니모닉명령어
FTOIS부동 소수점에서 정수 레지스터로 이동, S_floating
FTOIT부동 소수점에서 정수 레지스터로 이동, T_floating
ITOFF정수에서 부동 소수점 레지스터로 이동, F_floating
ITOFS정수에서 부동 소수점 레지스터로 이동, S_floating
ITOFT정수에서 부동 소수점 레지스터로 이동, T_floating
SQRTF제곱근 F_floating
SQRTG제곱근 G_floating
SQRTS제곱근 S_floating
SQRTT제곱근 T_floating



'''카운트 확장 (Count Extensions, CIX)'''

CIX는 비트 수를 세기 위한 세 가지 명령어를 도입한 확장 기능이다. 이 명령어들은 정수 산술 명령어 범주에 속하며, 21264A(EV67)에서 처음 구현되었다.

니모닉명령어
CTLZ선행 0 개수 (Count Leading Zero)
CTPOP인구수 세기 (Count Population)
CTTZ후행 0 개수 (Count Trailing Zero)


9. 구현

Alpha 마이크로프로세서는 PRISM이라는 초기 RISC 프로젝트에서 파생되었다. PRISM은 유닉스 계열 애플리케이션과 기존 VAX/VMS 소프트웨어를 지원하는 유연한 설계를 목표로 했으나, 시장 변화와 설계 변경으로 출시가 지연되었다.[7][8] 결국 PRISM 프로젝트는 1988년에 취소되었고,[10] 그 개념을 바탕으로 VMS 프로그램도 효율적으로 실행할 수 있도록 재조정된 새로운 설계가 Alpha이다. Alpha 명령어 집합의 주요 설계자는 리처드 L. 사이트와 리처드 T. 위텍이었다.[15] PRISM의 Epicode 개념은 Alpha의 PALcode로 발전하여, 플랫폼 및 프로세서 구현별 특정 기능에 대한 추상화된 인터페이스를 제공했다.

Alpha 아키텍처의 성공 요인은 아키텍처 자체보다는 구현 방식에 있었다.[16] 당시 업계 표준이었던 자동화된 설계 도구 대신, DEC의 설계자들은 VAX 아키텍처를 다루며 쌓아온 정교한 수동 회로 설계 방식을 고수했다. 이 방식을 비교적 단순한 RISC 아키텍처인 Alpha에 적용함으로써, 자동 설계 방식으로는 달성하기 어려운 높은 작동 주파수를 실현할 수 있었다. 이는 마이크로프로세서 설계 커뮤니티 내에서 맞춤형 회로 설계 방식의 부활을 이끌었다.

원래 Alpha 프로세서는 ''DECchip 21x64'' 시리즈로 명명되었는데,[17] '21'은 21세기를, '64'는 64비트 아키텍처를 의미했다.[17] Alpha는 처음부터 64비트로 설계되었으며 32비트 버전은 존재하지 않는다. 중간 숫자는 Alpha 아키텍처의 세대를 나타낸다. 내부적으로는 ''EV'' 번호로도 식별되었는데, 이는 공식적으로 "Extended VAX"를 의미하지만, 비공식적으로는 "Electric Vlasic"이라는 유머러스한 별칭으로도 불렸다.[18] EV 뒤의 숫자는 칩 설계에 사용된 반도체 공정을 나타냈다 (예: EV4는 CMOS-4 공정 사용).[11]

1997년 5월, DEC는 인텔펜티엄, 펜티엄 프로, 펜티엄 II 칩 설계 과정에서 Alpha 관련 특허를 침해했다며 소송을 제기했다.[19] 합의 결과, DEC의 칩 설계 및 제조 사업 상당 부분이 인텔에 매각되었다. 여기에는 ARM 기반의 StrongARM 구현도 포함되었으며, 인텔은 이를 XScale 프로세서로 발전시켜 포켓 PC 등에 널리 사용했다. Alpha 마이크로프로세서 그룹 자체는 DEC에 남았으나, 관련 사무실 건물 등 일부 자산은 인텔에 넘어갔다.[20]

Alpha 칩은 발표 당시 향후 25년간 지속될 아키텍처로 기대를 모았으나, 실제로는 그에 미치지 못했다. 그럼에도 불구하고 비교적 긴 수명을 누렸다. 첫 모델인 알파 21064 (''EV4'')는 1992년 11월 최대 192 MHz로 출시되었고, 공정 미세화 버전인 ''EV4S''는 200 MHz로 작동했다. 이는 당시 경쟁 제품이었던 인텔 펜티엄 (66 MHz)보다 훨씬 빠른 속도였다. 알파 21164 (''EV5'')는 1995년 최대 333 MHz로 출시되어 대용량 2차 캐시를 칩에 내장한 최초의 마이크로프로세서였으며[22], 1998년에는 666 MHz까지 발전했다. 알파 21264 (''EV6'')는 1998년 450 MHz로 시작하여 높은 작동 주파수와 복잡한 아웃오브오더 실행 마이크로아키텍처를 결합했으며, 2001년에는 1.25 GHz(21264C/EV68CB)에 도달했다. 마지막 주요 모델인 알파 21364 (''EV7'') ''마블''은 2003년에 1.15 GHz로 출시되었으며, 온칩 메모리 컨트롤러[23]와 멀티프로세싱 성능 강화를 위한 1.6 GB/s 인터커넥트 4개를 통합했다.

취소된 모델로는 동시 멀티스레딩(SMT)을 지원할 예정이었던 21464 (''EV8'')과 벡터 프로세서 유닛을 탑재할 예정이었던 ''Tarantula'' 연구 프로젝트(아마도 ''EV9'')[24]가 있다.

1996년, Alpha 칩 생산 라이선스가 삼성전자에 부여되었다. 이후 DEC가 컴팩에 인수되면서 Alpha 관련 자산의 상당 부분은 삼성과 컴팩이 공동 출자한 API NetWorks(구 Alpha Processor Inc.)로 이전되었다. 2001년 10월에는 마이크로웨이가 API NetWorks의 Alpha 기반 제품 라인에 대한 독점 판매 및 서비스 제공업체가 되었다.

2001년 6월 25일, 컴팩은 2004년까지 Alpha 개발을 중단하고 인텔아이테니엄 아키텍처로 전환할 계획을 발표했다. 이 결정으로 계획 중이던 ''EV8'' 칩 개발은 취소되었고, Alpha 관련 지적 재산권은 인텔에 매각되었다.[5][47] 2002년 컴팩을 인수한 휴렛 팩커드(HP)는 한동안 Alpha 시리즈 지원을 지속하며 1.3 GHz 클럭의 최종 버전 ''EV7z''를 출시했지만, 0.13 μm 공정 기반의 ''EV79'' 개발 계획은 취소하며 Alpha 아키텍처의 단종을 확정했다. HP는 Tru64 UNIX의 유지보수 및 판매를 2006년까지 지속했으며, 지원은 2011년까지 연장되었다.

연구 프로토타입으로는 컴팩의 기업 연구소에서 개발한 ''피라냐''가 있다. 이는 트랜잭션 처리 워크로드에 최적화된 8개의 단순 코어를 포함하는 멀티코어 프로세서 설계로, 2000년 6월 국제 컴퓨터 아키텍처 심포지엄에서 발표되었다.[34] 또한, 중국의 선웨이 아키텍처 초기 버전은 Alpha를 기반으로 한 것으로 알려져 있으나, SW26010 이후 버전은 Alpha와 관련 없는 새로운 명령어 집합 아키텍처를 사용한다.[35][36]

다음은 주요 Alpha 프로세서 모델의 사양이다.

모델모델 번호출시 연도주파수 [MHz]공정 [µm]트랜지스터 [백만 개]다이 크기 [mm²]I/O 핀소비 전력 [W]전압 [V]D캐시 [KB][37]I캐시 [KB]S캐시B캐시ISA
EV4210641992100–2000.751.68234290303.388128 KB–16 MB 
EV4S210641993100–2000.6751.68186290273.388128 KB–16 MB 
EV4521064A1994200–3000.52.85164333.31616256 KB–16 MB 
LCA4210661993100–1660.6751.75209213.388  
LCA4210681994660.6751.7520993.388  
LCA4521066A1994100–2660.51.8161233.388  
LCA4521068A19941000.51.81613.388  
EV5211641995266–5000.59.3299296563.3/2.58896 KB최대 64 MBR
EV5621164A1996366–666[38]0.359.66[38]20931–55[38]3.3/2.5[38]8896 KB최대 64 MBR,B
PCA5621164PC1997400–5330.353.514126426–353.3/2.5816512 KB–4 MBR,B,M
PCA5721164PC 600–6660.285.710128318–232.5/2.01632[38]512 KB–4 MBR,B,M
EV6212641998450–6000.3515.2314389732.064642–8 MBR,B,M,F
EV6721264A1999600–7500.2515.2210389 2.064642–8 MBR,B,M,F,C
EV68AL21264B2001800–8330.1815.2125  1.764642–8 MBR,B,M,F,C,T
EV68CB21264C20011000–12500.1815.2125 65–751.6564642–8 MBR,B,M,F,C,T
EV68CX21264D       1.6564642–8 MBR,B,M,F,C,T
EV72136420031000–11500.181303971251.564641.75 MBR,B,M,F,C,T
EV7z21364200413000.181303971251.564641.75 MBR,B,M,F,C,T
취소됨
EV78/EV7921364A2004년 예정17000.131523001201.264641.75 MBR,B,M,F,C,T
EV8214642003년 예정1200–20000.1252504201800??1.264643 MBR,B,M,F,C,T



;ISA 확장:[51]


  • '''R''': 양의 무한대 및 음의 무한대 방향으로의 반올림을 하드웨어로 지원.[39]
  • '''B''': BWX (Byte/Word Extensions), 메모리와 I/O에서 8비트 및 16비트 연산을 허용하는 명령어 추가.
  • '''M''': MVI (Multimedia Extensions), 멀티미디어 처리 명령어.
  • '''F''': FIX (Floating-point Integer eXchange), 정수 레지스터와 부동소수점 레지스터 간 데이터 이동 및 제곱근 계산 명령어.
  • '''C''': CIX (Count and Index Extensions), 비트 수 계산 및 위치 찾기 명령어.
  • '''T''': Transition, 잠금 획득 시도 성능 개선을 위한 프리페치 지원.

10. 성능

알파 기반 시스템의 성능을 비교하기 위해 SPEC 성능 수치(SPECint95, SPECfp95)를 아래 표에 제시한다. SPEC 결과는 CPU 단독 성능이 아닌, CPU, 버스, 메모리, 컴파일러 최적화 등을 포함한 전체 컴퓨터 시스템의 측정된 성능을 보여준다는 점에 유의해야 한다. 또한, 사용된 벤치마크와 그 기준은 시간이 지남에 따라 변경될 수 있다.

그럼에도 불구하고, 아래 수치들은 당시 알파 아키텍처(64비트)의 성능을 동시대의 HP (PA-RISC, 64비트) 및 인텔 기반 시스템(32비트)과 비교하여 대략적으로 파악하는 데 도움을 준다. 가장 두드러지는 경향은 인텔 시스템이 정수 연산 성능에서는 알파 시스템에 근접하는 경우가 있었지만, 부동 소수점 연산 성능에서는 알파 시스템이 상당한 우위를 보였다는 점이다. 반면, HP의 PA-RISC 시스템은 알파 시스템과 상당히 비슷한 성능을 보여주기도 했으나, 이는 훨씬 낮은 클럭 속도(MHz)에서 달성된 결과였다. 아래 표에는 시스템 성능에 영향을 미치는 또 다른 중요한 요소인 전력 소비량과 CPU 가격 정보는 포함되어 있지 않다.

시스템CPUMHzSPECint95SPECfp95
1995년 성능 비교 (SPEC CPU95[52])
AlphaServer 8400 5/35021164 (EV5)35010.114.2
Intel Alder System (200 MHz, 256KB L2)펜티엄 프로2008.96.75
HP 9000 C160PA 800016010.416.3



시스템CPUMHzSPECint95SPECfp95
2000년 성능 비교 (SPEC CPU95)
AlphaServer ES40 6/83321264 (EV6)83350.0100.0
Intel VC820 마더보드펜티엄 III100046.831.9
HP 9000 C3600PA-860055242.164.0


11. Alpha 기반 시스템

DEC 알파 기반 시스템의 첫 세대는 워크스테이션 및 서버 라인업으로 구성되었다. DEC 3000 AXP 시리즈(워크스테이션 및 보급형 서버)는 이전 MIPS 기반 DECstation 모델처럼 TURBOchannel 버스를 사용했다. DEC 4000 AXP 시리즈(중형 서버)는 FutureBus+를 기반으로 했고, DEC 7000 AXP 및 10000 AXP 시리즈(고급 서버)는 대응하는 VAX 모델과 아키텍처를 공유했다.

PC 형태의 Alpha 워크스테이션인 DECpc AXP 150(코드명 ''Jensen'', DEC 2000 AXP)도 생산되었는데, 이는 EISA 버스를 사용했으며 Windows NT를 지원하는 최초의 Alpha 시스템이었다. 이후 DEC는 21164 프로세서를 탑재한 Celebris XL 및 Digital Personal Workstation PC 라인의 Alpha 버전도 출시했다.

임베디드 및 산업용으로는 VMEbus 기반의 싱글 보드 컴퓨터가 생산되었다. 초기 모델(1994년 3월 출시)로는 21068 기반 AXPvme 64/64LC와 21066 기반 AXPvme 160이 있다. 후속 모델로는 21066A 기반 AXPvme 100/166/230, 21064A 기반 Alpha VME 4/224 및 4/288, 그리고 21164 기반의 최종 모델 Alpha VME 5/352 및 5/480이 출시되었다.

21066 칩은 소형 워크스테이션 DEC Multia VX40/41/42와 Tadpole Technology의 ALPHAbook 1 랩탑에도 사용되었다.

1994년에는 새로운 AlphaStation 및 AlphaServer 제품군이 출시되었다. 이 시스템들은 21064 또는 21164 프로세서를 사용하고 PCI 버스, VGA 호환 프레임 버퍼, PS/2 방식 키보드 및 마우스를 도입했다. AlphaServer 8000 시리즈는 DEC 7000/10000 AXP를 대체하며 XMI 및 FutureBus+ 버스도 사용했다.

AlphaStation XP1000은 21264 프로세서를 사용한 최초의 워크스테이션이다. 이후 21264 기반 AlphaServer/Station 모델은 용도에 따라 ''DS''(departmental server, 부서 서버), ''ES''(enterprise server, 기업 서버), ''GS''(global server, 글로벌 서버)로 분류되었다.

최종 21364 칩은 AlphaServer ES47, ES80, GS1280 모델과 AlphaStation ES47에 탑재되었다.

DEC는 OEM용 마더보드도 다수 생산했다. 21066/21068 기반의 AXPpci 33 "NoName"은 OEM 시장 공략을 위한 주요 제품이었으며[40][53], 이후 21164 기반 AlphaPC 164/164LX, 21164PC 기반 AlphaPC 164SX/164RX, 21264 기반 AlphaPC 264DP 등이 출시되었다. 삼성전자나 API 같은 제3자 기업들도 API UP1000/UP2000과 같은 OEM 마더보드를 생산했다.

DEC는 제3자의 하드웨어 및 소프트웨어 개발을 지원하기 위해 프로세서 모델별로 EB64+(21064A용), EB164(21164용) 등의 평가 보드도 제작했다.

Alpha 프로세서는 넷앱의 다양한 네트워크 연결 스토리지 시스템(21164, 21264 프로세서 사용)과 크레이의 T3D 및 T3E 대규모 병렬 슈퍼컴퓨터(21064, 21164 프로세서 사용)에도 채택되었다.

11. 1. 슈퍼컴퓨터

알파 프로세서를 기반으로 한 가장 성능이 뛰어난 슈퍼컴퓨터는 로스 알라모스 국립 연구소의 ASCI Q였다. 이 슈퍼컴퓨터는 HP AlphaServer SC45/GS 클러스터로 구성되었으며, 4096개의 알파 21264 (EV-68) 1.25 GHz 프로세서를 탑재하여 Rmax 7.727 테라플롭스(TFLOPS)의 성능을 기록했다.[41][54]

참조

[1] 웹사이트 Windows 2000? http://www.alphant.c[...] The AlphaNT Source 2007-01-01
[2] 웹사이트 SUSE Linux 7.0 Alpha Edition https://www.suse.com[...] SUSE 2014-01-08
[3] 간행물 Using Simulation to Develop and Port Software http://www.dtjcd.vms[...]
[4] 웹사이트 Ghost of DEC Alpha is why Windows is rubbish at file compression https://www.theregis[...] 2016-11-02
[5] 웹사이트 Alpha proved costly for Compaq https://www.zdnet.co[...] 2001-06-28
[6] 웹사이트 Transforming your AlphaServer environment http://h18002.www1.h[...] HP 2007-01-11
[7] 웹사이트 MICA Software Business Plan http://www.bitsavers[...] 2021-01-04
[8] 웹사이트 MicroPrism http://simh.trailing[...] 2008-02-24
[9] 웹사이트 Alpha: The History in Facts and Comments http://alasir.com/ar[...] 2007-04-22
[10] 웹사이트 Sketch of DEC PRISM https://people.cs.cl[...]
[11] 간행물 How DEC developed Alpha https://ieeexplore.i[...] 1992-07
[12] 간행물 Foreword https://www.hpl.hp.c[...] 1992
[13] 인터뷰 Robert Supnik Oral History https://archive.comp[...] Computer History Museum 2017-05-02
[14] 웹사이트 Managing Technological Leaps: A study of DEC's Alpha Design Team https://dspace.mit.e[...] 1993-04
[15] 서적 Alpha AXP Architecture Reference Manual – 2nd Edition https://www.elsevier[...] Digital Press 2014-05-16
[16] 웹사이트 Great moments in microprocessor history https://www.ibm.com/[...] 2004-12-22
[17] 웹사이트 cpu-collection.de – DEC Alpha AXP http://www.cpu-colle[...]
[18] 간행물 WRL Technical Note TN-13: Characterization of Organic Illumination Systems https://www.hpl.hp.c[...] Digital Equipment Corporation 2007-10-04
[19] 잡지 DEC, Cyrix sue Intel https://archive.org/[...] 1997-05-19
[20] 인터뷰 Oral History of Allen Baum https://archive.comp[...] 2018-07-18
[21] 간행물 The Alpha Demonstration Unit: A High-performance Multiprocessor for Software and Chip Development https://vmssoftware.[...]
[22] 간행물 Internal Organization of the Alpha 21164, a 300-MHz 64-bit Quad-issue CMOS RISC Microprocessor
[23] 서적 Structured Computer Organization https://books.google[...] 2016
[24] conference Tarantula: A Vector Extension to the Alpha Architecture http://systems.cs.co[...] IEEE Computer Society 2007-10-04
[25] 웹사이트 The VAX Vacuum https://groups.googl[...]
[26] Mailing list The meaning of AXP (was Re: ALPHA ambiguity) https://lkml.org/lkm[...] 1996-04-30
[27] 웹사이트 The Alpha AXP, part 8: Memory access, storing bytes and words and unaligned data https://devblogs.mic[...] 2017-08-16
[28] 웹사이트 Alpha 21264 Microprocessor Data Sheet https://www.star.bnl[...]
[29] 웹사이트 MIPS Instructions http://eas.uccs.edu/[...]
[30] 잡지 Alpha Bits – Migrating To The Future 1992-08
[31] 웹사이트 Migrating an Application from OpenVMS VAX to OpenVMS Alpha https://www0.mi.infn[...]
[32] 간행물 A 433-MHz 64-b quad-issue RISC microprocessor
[33] 뉴스 Digital, MIPS Add Multimedia Extensions Microprocessor Report 1996-11-18
[34] conference Piranha: A Scalable Architecture Based on Single-Chip Multiprocessing
[35] 웹사이트 SW1600 and Alpha 21164 http://laotsao.wordp[...] 2011-10-29
[36] 웹사이트 Report on the Sunway TaihuLight System http://www.netlib.or[...] 2016-06-20
[37] 문서 In the context of cache memory, 1 KB = 1024 [[byte]]s; 1 MB = 1024 KB
[38] 웹사이트 Alpha: The History in Facts and Comments http://www.alasir.co[...] 2008-11-22
[39] 웹사이트 Overview of Alpha Family http://www.mostang.c[...] 2009-12-09
[40] 뉴스 DEC launching Alpha board push Electronic News 1994-04-04
[41] 웹사이트 The ASCI Q System: 30 TeraOPS Capability at Los Alamos National Laboratory http://www.sandia.go[...] 2010-06-06
[42] 웹사이트 Alpha: The History in Facts and Comments http://alasir.com/ar[...] Alasir 2012-05-16
[43] 웹사이트 Alpha RetainTrust products http://www.hp.com/pr[...] HP 2012-05-16
[44] 간행물 Tarantula: A Vector Extension to the Alpha Architecture IEEE Computer Society
[45] 논문 A 433-MHz 64-b quad-issue RISC microprocessor
[46] 뉴스 Digital, MIPS Add Multimedia Extensions Microprocessor Report 1996-11-18
[47] 웹사이트 Alpha proved costly for Compaq http://news.zdnet.co[...] ZDNet 2009-05-01
[48] 문서 In the context of cache memory, 1 KB = 1024 [[バイト (情報)|byte]]s; 1 MB = 1024 KB
[49] 웹사이트 三菱電機とDEC、共同でパソコン向け低価格Alphaプロセッサを開発、6月より出荷 https://pc.watch.imp[...] PC Watch 2012-08-23
[50] 웹사이트 Alpha: The History in Facts and Comments http://www.alasir.co[...] 2008-11-22
[51] 웹사이트 Overview of Alpha Family http://www.mostang.c[...] 2009-12-09
[52] 문서 SPEC CPU95 Results http://www.spec.org/[...]
[53] 뉴스 DEC launching Alpha board push Electronic News 1994-04-04
[54] 웹사이트 The ASCI Q System: 30 TeraOPS Capability at Los Alamos National Laboratory http://www.sandia.go[...] 2010-06-06
[55] 문서 캐시 메모리 환경에서, 1 KB = 1024 [[바이트]]; 1 MB = 1024 KB



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com