※ 본 아티클은 CMP MEDIA LLC와의 라이선스 계약에 의해 국문으로 제공됩니다.
Cell 프로세서의 내부구조
들어가며 처음으로 프로세서를 프로그래밍 하던 날을 기억하는가? 분명히 매우 신나고도 어려운 일이었을 것이다. 하지만 이제부터 볼 것에 비하면 아무 것도 아니다. 오늘날의 흔해 빠진 마이크로프로세서들도 경험 많은 프로그래머와 개발자에게 상당한 도전이다. 그런데 9개의 프로세서를 동시에 프로그래밍한다고 생각해보자. 물론 소스코드 스트림은 하나뿐이고 9개의 프로세서들이 모두 잘 협력하도록 만들어야 한다. 일단 이것이 제대로 돌기 시작하면 정말 놀라울 정도로 잘 작동한다. 하지만 정작 이것을 작동하게 만드는 것이 정말 어려운 일이다. 이것이 바로 IBM, 도시바, 소니가 Cell 을 개발하기 위해 수년간 해 온 일이다. Cell은 올해 말 소니 플레이스테이션 3 비디오 게임기, 도시바의 고급 텔레비젼, IBM의 블레이드 서버에 탑재될 경이로운 신형 멀티프로세서 마이크로프로세서 칩이다. Cell 은 이 세 회사의 새로운 패밀리 트리의 시초로서 향후 수년간 가전기기, 컴퓨터, 내장시스템 등으로 가지를 뻗어나갈 것이다. 그렇다면 첫 Cell 프로세서의 내부를 한번 살펴보자. Cell의 프로그래밍 모델에 관한 내부인의 견해가 궁금하다면 다음 주 가마수트라에 실릴 Alex Chow의 글을 읽어보길 바란다.
미치도록 복잡하고 미치도록 끝내주게 설계기술을 뛰어넘는 제조기술을 가지고 있는 기업은 흔치 않다. 우주선, 고층건물, 로켓 추진장치, 수중호흡기, 휴대용 컴퓨터에 이르기까지 인간 역사상 우리는 그 당시에는 만들 수 없던 것들을 꿈꿔왔다. 하지만 반도체 산업에서는 그 상황이 반대이다. 칩 제조사들은 그들이 설계할 수 있는 것보다 훨씬 크고 복잡한 칩들을 만들 수 있다. 즉, 제조능력이 설계능력을 초과한다. 우리는 이해할 수 있는 것보다 훨씬 많은 트랜지스터들을 조립할 수 있다. Cell은 이런 패턴을 끝내기 위해 먼 길을 가고 있다. 이 칩은 4GHz이상으로 동작하는 2억 5천만여 개의 트랜지스터를 가진 미치도록 복잡한 칩이다. (펜티엄 4는 약 1억 2천 5백만 개의 트랜지스터를 가지고 있다.) IBM에 따르면 올바른 조건만 충족된다면 Cell은 1초에 2,560억 개의 부동소수점 연산을 수행할 수 있다고 한다. 여기서 주목할 만한 점은 Cell은 과학용 응용프로그램, 군용 컴퓨터 또는 암호해독을 위해 개발된 것이 아니란 것이다. 대신 Cell의 주 관심사는 엔터테인먼트이다. 이 세계 최고의 다국적 기업 셋이 모여 장난감에 사용할 세계에서 가장 복잡한 프로세서를 만들기 위해 연구에만 수백만 달러를 퍼붓고, 개발에 수천명의 인력을 퍼부을 때 임베디드 시스템에 대한 언급이 상당히 많았다. 그렇다고 이보다 진지한 용도로 Cell을 사용할 수 없는 것은 아니다. 앞으로 Cell은 병렬처리에서 큰 힘을 발휘할 것이고, 이것은 과학적인 시뮬레이션이나 의학영상 분야에서 매우 유용하게 쓰일 수도 있다. 이것이 그란 투리스모 게임도 플레이할 수 있다는 사실은 그저 덤일 뿐이다. 그림 1은 Cell 패밀리의 첫번째 프로세서인 셀 브로드밴드 엔진(Cell Broadband Engine, CBE)의 최상위 레벨 블럭 다이어그램을 보여준다. Cell은 중앙에 64비트 PowerPC 프로세서 하나와 그 주위를 둘러싸는 8개의 동일한 보조프로세서에 기초한다. 중앙의 PowerPC 프로세서는 동시에 2개의 명령어를 실행할 수 있다. 이것은 멋진 기능이지만 이미 흔한 일이다. 인텔, AMD, 그리고 다른 제조사들도 듀얼 프로세서를 생산하고, 심지어는 64비트 듀얼 프로세서도 있다. 따라서 Cell 의 심장은 매우 평범한 것일 뿐이다...................(중략)
* 자세한 내용은 첨부문서(pdf)를 참고하시기 바랍니다.
|