PowerPC 의 역사

      PowerPC 의 역사에 댓글 없음

[POWER]

IBM POWER CPU는 초기 IBM 801 칩과 MIPS 아키텍처의 기반으로 탄생한 IBM의 대표적인 RISC CPU이다.

POWER는 Performance Optimization With Enhanced RISC의 약자이다.

POWER CPU는 IBM 801 CPU를 개선시켜 시장에서 가장 많이 사용하는 범용CPU를 만들 계획하에 탄생한 CPU이다. 801은 CISC CPU로 한 클럭에 한개의 명령어를 처리했으며, 슈퍼스칼라 아키텍처를 채용하지 않은 느린 CPU였다. 이 두가지를 개선하여 만들어진 IBM 최초의 RISC CPU가 바로 POWER CPU이다.

최초의 POWER CPU는 POWER1이다. 이 CPU는 브랜치, 정수와 부동소수 처리 부분의 3개로 구현되었다. POWER1을 이용한 범용시스템의 대표는 RS/6000 시리즈이다.

POWER2에는 2차 부동소수 처리 부분과 캐쉬 메모리를 추가하였으며, POWER3에서 비로소 완전한 64bit 처리 시스템으로 탄생하였다.

POWER4에 이르러 요즘 한창 관심거리인 Dual Core를 구현하였는데, 하나의 CPU안에 2개의 Core가 들어있는 시스템이다. 또한 최대 8개 CPU를 연결할 수 있는 구조로 설계되었다.

POWER5가 최신 IBM의 CPU인데, 최대 64개까지 CPU를 연결할 수 있는 구조로 개선되었으며, Linux 운영체제를 구동시킬 수 있는 형태로 개발되었다. POWER5는 POWER4의 하위 호환을 완벽하게 지원한다. 또한 몇몇 기능을 개선한 POWER5+를 지난 2005년에 발표했다.

[PowerPC]

IBM의 POWER CPU와 비슷한 이름으로 헷갈리는 CPU가 바로 PowerPC인데, 이 CPU는 1991년 Apple, IBM, Motorola(AIM)이 공동으로 만든 CPU이다. PowerPC의 PC는 Power Computing의 약자이다.

이 CPU의 기반은 IBM의 POWER CPU인데, 1990년 초에 발표된 POWER1은 RS/6000 시리즈에 사용이 되었으며, 기본적으로 고성능의 멀티 프로세서(여러개의 CPU사용) 목적으로 개발되었다. 그러다 보니 고급 기종에만 사용되고 보급형에는 사용할 수 없는 반쪽짜리 CPU라는 점을 늘 고민으로 안고 있었다.

이에 IBM은 Motorola에게 POWER 아키텍처기반의 싱글 프로서서 개발을 제안하게 된다. 이때 Motorola의 최대의 데스크탑 CPU 고객인 Apple을 끌어들이게 된다. 이렇게 3개 회사가 공동으로 개발한 CPU가 바로 PowerPC CPU가 된 것이다.

Motorola 입장에서는 큰 비용을 들이지 않고 RISC 칩 디자인을 손에 넣을 수 있었고, 기존 자사의 고객 외에 IBM의 개인 고객을 추가적으로 자사로 편입시킬 수 있다는 계산이 맞아 떨어져서 공동 개발을 흔쾌히 받아들이게 된다.

Apple도 유명한 IBM의 이름하에 시장에서 강력한 CPU를 탑재한 데스크탑을 내 놓을 수 있다는 점이 강하게 어필되었다.

Motorola는 이때 88000시리즈로 RISC CPU 시장에 진입했으나, 시장의 평가는 아주 좋지 않았다. 그 이유 중의 하나는 CISC CPU이자 Apple Macintosh가 사용 중인 그 유명한 68000시리즈와의 호환이 안된다는 점이 컸다. 그래서 88000을 대체하면서도 RISC CPU로 직행할 수 있는 PowerPC에 대해 적극적인 동참을 하게 되는 상황이 되었다.

PowerPC는 POWER에 비해 다음과 같은 차이가 있는데,

Big-endian과 Little-endian Mode 둘 다 작동하며, Apple의 요구에 따라 2차 부동소수 처리 유닛이 생겼으며, 완벽한 64bit로 동작하면서도 32bit와의 완벽한 호환성을 지니고 있으며, POWER의 난해한 명령어들을 제거해서 다양한 OS를 지원 가능하게 되었다는 점이다.

이렇게 해서 처음으로 만들어진 CPU가 PowerPC 601이었다. 이 CPU를 기반으로 만든 PC가 바로 Power Macintosh이다.

그러나 이렇게 만든 CPU를 작동시킬 수 있는 OS의 부재를 느끼고 IBM은 실패작인 OS/2를 PowerPC용으로 개조한다. Apple 역시 Motorola 68000에서 작동되었던 자사의 OS를 PowerPC에서도 가능하도록 에뮬레이터를 만들었다. 그러나 그런 노력을 수포로 돌아가서 601은 실패한 모델이 되었다.

그 후 저가모델인 603과 고가모델인 604 CPU가 출시되었다. Apple은 603기반으로 노트북을 만들었으나, 68000 에뮬레이터가 8KB의 L1 캐시 사이즈 때문에 너무 느리게 동작하여, 이를 16KB 로 바꾼 603e모델을 만들어내게 된다.

64bit용 620이 개발되었으나 32bit에 비해 턱없이 느린 속도 때문에 단종되었다. 그후로는 POWER3 의 디자인 기반으로 만든 CPU들이 나왔는데, G3로 불리는 750, G4의 7400, POWER4 기반 디자인의 진정한 64bit인 970(G5)가 나왔다.

PowerPC G4는 1기가플롭(기가 플롭 : 1초 동안 10억회의 부동 소수점 연산을 수행하는 속도) 이상의 성능을 낼 수 있었고, 당시 기준으로 기존의 CPU와는 달리 정수연산/부동소수점연산/분기명열 실행회로 등을 모두 별개로 가지고 있어서 복수명령을 동시에 실행할 수 있었다.

AltiVec(애플에서는 Velocity Engine이라고 부른다)이라는 기술을 이용하여 기존의 32bit나 64bit가 아니라 128bit 단위로 벡터 연산을 처리해서 Velocity Engine을 지원하는 포토샵이나 기타 어플리케이션에서 처리가 일반 PC보다 월등히 빠르며, 파이프라인도 짧아서 인텔 CPU 보다 효율적이었다.

재미있는 일화로 미국정부는 G4의 뛰어난 성능이 가상 적국에서 활용되는 것이 두려워 북한등의 나라에 수출금지까지 한적이 있었다.

그 후 채용된 PowerPC G5 는 최초로 소개될때 세계에서 가장 빠른 컴퓨터라고 소개될 정도었지만 어마어마한 전력소모와 발열로 결국 포터블 제품에 채용될 수 없었고 G5 이후의 개발계획도 분명하지 않아서 애플은 인텔로 갈아타게 되었다.

이렇게 애플과의 인연은 끝이 났지만 PowerPC는 Xbox360, Nintendo Wii, PS3 에 채용되었다.

Xbox360에는 3.2Ghz PowerPC Tri-Core Xenon 이 들어가는데 PowerMac G5에 들어갔던 IBM PowerPC 970 시리즈와 아키텍쳐가 같다.

그 외에도 PowerPC CPU는 IBM의 RS/6000 시리즈와 AS/400 모델 그리고 Nintendo GameCube와 TiVo같은 임베디드 시스템에도 널리 사용된다. 그리고 가장 많이 사용하는 곳은 자동차의 메인 CPU이다. 특이하게 F-35 라이트닝 전투기의 중앙처리장치에도 들어간다!

<출처 : 킬크로그, Sense and Sensibility>

댓글 남기기

이메일은 공개되지 않습니다.