[in스마트폰] ②프로세서, 그 복잡한 사정

가 +
가 -

프로세서는 스마트폰을 선택하는 가장 중요한 기준 중 하나다. 신제품이 나오면 아무렇지도 않게 ‘어떤 프로세서를 썼나?’라고 묻지만 정작 각 프로세서의 특성은 알기 쉽지 않다.

먼저 모바일 프로세서 얘기에 ARM을 떼어놓을 수 없다. 스마트폰에 조금이라도 관심이 있다면 ARM이라는 이름이 낯설지 않을 것이다. ARM은 우리가 쓰는 대부분의 스마트폰에서 쓰는 모바일 프로세서 또는 애플리케이션 프로세서(AP)라고 부르는 칩의 설계 기술을 갖고 있는 회사다. 하지만 모바일 프로세서를 직접 만들진 않는다.

Tegra-4-Chip-Shot-Low-Resolution

ARM은 설계만

ARM의 프로세서는 RICS(reduced instruction set computer)방식으로, 이름처럼 프로세서는 연산만 처리하고 명령어는 소프트웨어로 처리하는 프로세서다. 그 덕분에 구조를 간단하게 할 수 있어 적은 전력으로도 작동하는 것이 가장 큰 강점이지만, 그 성능은 신통치 않았다. 반면 하드웨어에 명령어 세트까지 싹 집어넣은 x86은 성능을 올리기에 유리하다. MMX나 SSE 같은 명령어 세트를 생각하면 쉽다. 자연스레 고성능은 x86, 저전력은 ARM이라는 공식이 세워졌다.

하지만 ARM이 만드는 설계는 칩의 한 방향일 뿐이다. x86 프로세서를 AMD나 비아도 만들지만 인텔이 시장을 이끌어 나가다 보니 주도적인 업체가 된 것과 마찬가지다. 여전히 비슷한 역할을 하는 RISC 프로세서도 있고, 이와 경쟁하는 MIPS 방식의 칩을 쓰는 장치도 있다.

왜 애플리케이션 프로세서라고 부르게 됐을까. 시작은 당연하게도 스마트폰이 애플리케이션, 그러니까 응용프로그램을 돌릴 수 있게 되면서부터다. 응용프로그램은 하드웨어 제조사가 아닌 앱 개발자나 이용자들이 특정 목적을 위해 그 하드웨어에서 돌릴 수 있도록 만든 프로그램을 말한다. 휴대폰을 처음 샀을 때부터 ‘맞고’나 각종 ‘타이쿤’ 혹은 ‘티맵’을 깔아서 썼던 이들도 많겠지만, PCS와 함께 보급된 초기 휴대폰에는 문자메시지조차 안 됐다.

AP=응용프로그램만 돌리는 프로세서

내가 1997년에 처음 산 삼성전자 애니콜 휴대폰의 역할은 99개의 전화번호를 보관하고 전화를 거는 게 전부였다. 나중에 펌웨어 업데이트를 통해 ‘문자메시지’ 기능이 더해졌다. 돌아보면 이 휴대폰 안에도 분명 프로세서가 들어가 있었다. 다만 PC처럼 별도의 CPU 칩이 있었던 것은 아니고 모뎀 안에 포함돼 있었다. 우리가 3G 이전에 쓴 CDMA 휴대폰의 99%는 퀄컴이 만든 모뎀을 썼다. 이 안에 아주 작고 간단한 ARM 기반의 칩이 들어가 있었다. 메모리에서 전화번호를 불러오고, 화면을 띄우고, 목소리를 압축하는 등 아주 간단한 역할을 했다.

이후 휴대폰이 발전하면서 WIPI나 자바같은 플랫폼을 통해 별도 응용프로그램이 깔릴 수 있게 됐고 화면도 컬러로 바뀌었다. 더 이상 모뎀 안에 들어간 칩만으로는 원하는 결과물을 뽑아낼 수 없다. 기능이 더해질수록 휴대폰에는 칩이 하나씩 더해지기 시작했다. 그래픽 처리를 한다거나 음악을 재생하기 위해 단순한 반복계산을 빠르게 해치우는 DSP 칩이나 기타 멀티미디어 칩들이 늘어나다가 칩 기술이 발전하면서 퀄컴, 혹은 여타의 모뎀 개발 업체들은 모뎀 칩 안에 프로세서 역할을 늘려갔다.

snapdragon_s4

그러던 것이 스마트폰을 만나면서 프로세서에 막강한 성능이 요구되기 시작했다. 속도가 시원시원했던 아이폰에 비해 답답했던 윈도우 모바일이 애를 먹었던 이유가 성능이었고, iOS의 대항마로 나온 안드로이드들이 초기에 온갖 불만을 들은 이유도 성능이었다. 상대적으로 빠르고 좋은 하드웨어를 밀어넣어 성공한 게 삼성전자의 성공 요인 아닌가. 이때부터 기술의 요구 사항이 빨라지면서 프로세서가 결국 독립하는 모양새를 갖게 된다. 실제 운영체제와 응용프로그램을 돌리는 별도의 칩이 나오게 된 것이다. 그게 우리가 그 동안 봐 온 ‘테그라’, ‘엑시노스’, ‘스냅드래곤’, ‘A6’ 같은 프로세서다. 별도로 분리돼 나오면서 오로지 애플리케이션만 돌리도록 만든 프로세서, 그래서 애플리케이션 프로세서라는 이름이 붙게 된 것이다.

물론 모뎀에 달린 프로세서는 여전히 통신과 휴대폰으로서의 기본적인 역할을 한다. 이 프로세서에서 안드로이드를 돌릴 수 있는 기술도 선보이고 있다.

고성능 프로세서와 별도로 여전히 모뎀과 통합된 프로세서 칩이 있다. 특히 퀄컴이 많이 내놓고 있다. 다른 제조사들도 모뎀 통합칩을 만들 순 있다. 하지만 높은 성능을 내는 통합칩 개발은 아직 어렵다. 칩 개발사들은 1년에도 몇 가지 칩을 계속 만들고 나라별로, 통신사별로 모뎀 역시 제각각이다. 이걸 다 합치면 개발 시간이 오래 걸리게 마련이다. 이 때문에 통합칩에 가장 적극적인 퀄컴도 가장 빠른 스냅드래곤 S4프로에 모뎀을 넣지 않았다. 한때 특정 프로세서로는 LTE 폰을 만들 수 없다는 소문도 있었는데 이는 별도로 모뎀 공급을 못받았을 뿐 실제로 모뎀과 프로세서는 전혀 관계 없는 별개의 부품이다.

성능과 저전력 두 마리 토끼 잡는 전략

삼성, 퀄컴, 엔비디아 등 주요 프로세서 제조사들은 올해 큰 변화를 겪는다. 성능과 전력이다. 늘 강조되던 부분이지만 이번에는 조금 흐름이 다르다. 먼저 아키텍처가 바뀐다. 현재 나오는 프로세서들은 대부분 ARM의 코어텍스 A9 아키텍처 설계를 기반으로 각 제조사가 설계한 프로세서다. 그 설계가 A15 기반으로 바뀐다. 1월 초 미국에서 열린 소비자가전쇼(CES)에서 삼성은 ‘엑시노스5’를, 엔비디아는 ‘테그라4’를 발표했다. 둘 다 A15를 기반으로 한다. A15는 A9에 비해 2배 가량 빠르다는 평이다.

퀄컴은 방향이 조금 다르다. 설계 방향이 달라서다. 스냅드래곤 프로세서에는 퀄컴이 직접 설계한 크레잇 아키텍처가 적용된다. 삼성과 엔비디아가 ARM의 설계 라이선스를 받아 그대로 SoC(System on Chip)형태로 프로세서를 만드는 것과 달리 퀄컴은 ARM에서 명령어세트를 라이선스받아 프로세서 아키텍처 자체를 직접 설계한다. 그래서 스냅드래곤 S4프로를 비롯해 올해 퀄컴이 내놓을 스냅드래곤800 프로세서도 정확히 코어텍스 A9 혹은 A15와 비교하기 어렵다.

ARM_biglittle

 ▲ARM이 제시하는 빅리틀 기술. A15와 A7가 쌍을 이뤄 성능과 전력에 맞춰 효율적으로 움직인다.

각각은 장단점이 있다. 일단 아키텍처 라이선스를 구입하면 설계가 간단하고 적용이 빠르다. 삼성이든 엔비디아든, A15 기반의 칩은 적어도 비슷한 성능의 칩을 만들 수 있다는 얘기다. 반면 직접 만드는 칩은 아키텍처부터 새로 만들어야 하기 때문에 설계가 어렵다. 시간이 오래 걸리는 것이다. 칩을 잘 만들면 대박이지만, 잘못하면 쪽박을 찰 가능성도 높다. 스냅드래곤S3이 형편없다는 평을 받았던 것과 스냅드래곤S4프로가 현재 가장 빠른 프로세서 자리를 차지하는 극단적인 결과도 이런 이유 때문이다. 올해 나오는 스냅드래곤800은 S4프로의 연장선에 있는 제품으로 코어텍스 A15에 적용되는 일부 명령어가 포함된 것으로 알려졌다.

4+4와 4+1, 전력 줄이기에서 기술 차이

또 다른 화두는 저전력이다. 올 초 가장 큰 이슈가 됐던 삼성전자의 엑시노스5 칩은 ARM이 제시한 빅리틀 기술에 기반해 설계했다. 고성능을 내는 A15 코어 4개와 저전력의 A7 코어 4개가 하나의 칩에 들어간다. 필요에 따라 CPU 자원을 많이 쓴다면 A15를 돌리고 대기상태나 시스템 자원을 적게 쓰는 음악, 동영상 재생 등에는 A7코어를 이용한다. 엄밀히 이야기하자면 4+4인데 삼성은 이름에 8을 뜻하는 ‘옥타(Octa)’를 붙였다. 듀얼코어나 쿼드코어처럼 옥타코어라고 부를 수 있을지에 대해서는 논란이 많다. ARM도 이를 4+4로 부르든 8로 부르든 관계 없다는 입장이다. 전력과 성능을 둘 다 잡으려는 설계는 분명하다. 아직까지 제품에 적용된 적이 없기에 소비자도, 시장도 큰 기대를 안고 있다.

엔비디아는 4+1 전략을 쓴다. 똑같은 코어를 5개 집어넣는다. 다만 엔비디아는 이를 쿼드코어라고 부른다. 나머지 1개의 프로세서는 뭘까. 사실 가장 바쁜 게 이 칩이다. ARM 코어는 공정에 따라 두 가지 디자인을 할 수 있다. 먼저 우리가 스마트폰에서 흔히 쓰는 칩들은 대부분 HP 공정이다. ‘High Performance’를 줄인 말로, 말 그대로 고성능 공정이다. 반대는 LP(Low Power)공정이다. 똑같은 아키텍처지만 LP 공정으로 만들면 대기 전력이 낮고 HP 공정으로 만들면 고성능을 내기 유리하다. 반도체 특성을 이용한 것인데, LP 공정은 대기상태부터 낮은 작동속도로 단순한 일을 할 때는 전력을 적게 먹지만 일정 수준 이상 클럭을 높이면 소비 전력이 급격히 늘어난다. 반면 HP 공정으로 만들면 대기전력과 낮은 클럭에서는 LP보다 상대적으로 많은 전력을 쓰지만 작동 속도가 높아져도 전력을 덜 쓰게 된다.

tegra4_diagram

▲테그라4(왼쪽)와 아이세라의 LTE 모뎀. 노란 부분이 프로세서다. 테그라4에는 4+1의 설계가 들어간다.

테그라4의 예를 들면 A15 기반의 코어가 5개 들어가 있는데 4개는 HP 공정으로, 1개는 LP 공정으로 만들어 넣는다. 그래서 대기상태나 단순한 일을 처리할 때는 1개의 LP코어가 해치운다. 하지만 일정 수준 이상으로 로드가 걸리면 하던 일을 그대로 HP코어에 넘겨준다. 임계점이 있는 셈이다. LP든 HP든 둘 다 똑같은 A15 코어이기 때문에 작업을 넘겨줄 때 전혀 이질감이 없고 속도도 빠른 것이 장점이다. 다만 두 가지 공정을 한 칩에 올리는 것 자체가 어려운 일이다.

퀄컴은 별도의 저전력 코어를 두진 않지만 직접 설계를 하면서 저전력부터 고성능까지 전력 소비 패턴을 직접 손보는 설계를 한다. 800MHz 칩을 1GHz로 끌어올릴 때보다 1.5GHz를 1.7GHz 끌어올릴 때 훨씬 더 많은 전력이 필요한데 이를 최소화하는 것이다. ARM에서 디자인을 가져오는 칩으로는 어렵고 직접 설계하기 때문에 가능하다. 다만 마케팅에는 불리한 요소가 될 수 있다.

[youtube xKktSYqXSfY#t=45s 500]
▲각 프로세서 코어가 어떻게 작동하는지 보여주는 영상 (유튜브에서 보기)

마지막으로 스마트폰이 CPU를 가장 많이 쓰는 때는 언제일까. CPU의 저전력이 이슈가 되지만, 실제 스마트폰에서 가장 많은 전력을 쓰는 부품은 단연 디스플레이다. 프로세서는 상대적으로 전력 소비가 적지만 게임을 할 때는 디스플레이 못지 않은 전력을 끌어다 쓴다. 동영상 재생시엔 프로세서를 거의 쓰지 않는다. 대부분의 모바일 프로세서 안에는 동영상을 하드웨어로 처리하는 코덱칩이 들어가 있어서 동영상을 재생할 때는 메모리에서 영상 파일을 불러오는 수준 외에는 직접적으로 코어를 거의 활용하지 않는다. 단, 소프트웨어 코덱으로 돌릴 때는 CPU 자원을 활용한다.

네티즌의견(총 56개)