ARM이란 무엇인가? 임베디드 소프트웨어와 ARM Core

엊그저께 뉴스 기사중에 흥미로운 내용을 보게 되었습니다. 인텔 CPU를 제외하고 전세계 CPU 시장의 높은 점유율을 차지하고 있는 ARM 이란 회사의 매각 가능성 이슈에 대한 내용입니다.

전자나 IT쪽에 몸담았던 분들이 아니라면 ARM이란 회사는 생소할지 모릅니다. 그런데 위의 뉴스 기사를 보면 ARM 이란 회사의 몸값은 생각보다 어마어마 하다는 것을 알 수 있습니다. 

ARM의 2021년 매출은 약 27억 달러 정도 됩니다. 현재 환율로 대략 “3조 8천억원” 정도 되는데요, 매출 규모를 보면 대기업 수준이긴 하지만 3조 8천억원의 매출 규모의 기업의 몸값이 100조원이 넘는다는 것은 선뜻 이해하기 어렵습니다. 

그런데 왜 ARM은 몸값이 그렇게 높다고 하는 걸까요? 그리고 전세계의 내노라하는 기업들인 퀄컴, 인텔, SK 하이닉스 등이 ARM을 인수하려고 하는 걸까요? 더군다나 ARM은 국내 최대 매출 기업인 “삼성전자” 에서도 관심을 가지고 있는 중입니다. 

ARM 이란 회사는 어떤 회사이며 ARM의 몸값이 왜 이렇게 높은지에 대해 알아보겠습니다.

ARM은 어떤 회사?

필자는 프로그래머 경력을 시작했을때 부터 이미 ARM 이란 회사를 잘 알고 있었고 전자 IT 분야에서는 인지도가 꽤나 높은 기업이었습니다. 

ARM(Acorn RISC Machine)은 1990년대 초 영국의 에이콘 컴퓨터가 설립한 벤처 자회사로 시작했습니다. 에이콘 컴퓨터는 당시만 해도 최강의 CPU 제조사인 “인텔” 에 맞서서 “쓸만한 컴퓨터용 CPU”를 제조해 보겠다는 이념으로 설립했다고 합니다. 

이에 에이콘 컴퓨터와 VLSI, 애플이 조인트 벤처 형식으로 참여해서 “ARM” 이 설립되었으며 인텔의 CPU 개발 방향과는 다른 방향으로 개발을 시작했다고 합니다. 

인텔의 CPU는 최고의 성능에 초점을 맞추어 개발을 하고 CPU를 출시하였지만 ARM은 당시 인텔의 아성을 쉽게 따라갈 수가 없었기 때문에 인텔 CPU가 추진하고 있지 않던 “저전력”에 초점을 맞춰 CPU를 개발하게 됩니다.  RISC 아키텍처 방식으로 개발을 하여 소비전력을 최대한 낮추는 방식입니다.

1990년대 초 당시만 해도 “저전력”을 기반으로 CPU를 개발하는게 통할까? 라는 생각이었겠지만 현재는 ARM의 전략이 엄청난 성공을 거둔 셈이 되었습니다. 그 이유는 데스크탑이나 서버 같은 최고의 성능을 내는 기기보다 스마트폰이나 태블릿, 휴대용 단말, 모바일 기기, IoT 단말 같은 “저전력 기기” 들의 제조나 출하량이 엄청나게 늘어났기 때문입니다. 현재는 “저전력 이슈”가 꽤나 중요해진 셈이니 말이지요.

ARM은 현재까지도 “팹리스” 기업입니다. 즉 자체 팹을 보유하지 않고 있으며 특이하게도 ARM CPU의 Core를 라이센싱 하여 ARM Core 를 기반으로 CPU 를 제조하는 제조사에게 판매를 하고 로열티 수익을 내는 방식으로 운영하고 있습니다. 

위 글은 팹리스 반도체에 관련된 글이니 참고하여 보시면 좋을꺼 같습니다. 

일반적으로 팹리스 기업들은 CPU Core 에 패리패럴들을 붙여서 SoC 형태로 CPU를 제조하는데요, ARM은 팹리스 기업에 ARM Core 를 제공하는 역할을 합니다. 이래서 ARM을 “팹리스 of 팹리스” 라고 불리게 됩니다. 전세계 CPU나 시스템 반도체를 제조하는 기업들의 대다수가 ARM Core를 기반으로 CPU를 제조하고 있습니다.(삼성전자, 애플, 퀄컴, 브로드컴, 미디어텍 등)

CPU는 인텔이나 AMD 외에도 MIPS, PowerPC 등의 CPU Core가 있지만 현재는 ARM Core가 대다수를 차지할 정도로 ARM은 수많은 스마트폰이나 모바일 기기등에 탑재되어 출시됩니다. 저전력 기반의 CPU가 시장에서 제대로 먹힌 셈이지요. 그래서 현재 전세계 CPU 시장은 x86 기반의 인텔, AMD 등과 ARM 기반의 CPU가 차지하고 있습니다.

즉 ARM은 CPU 시장에서는 꽤나 중요해진 입지를 가지고 있는 셈입니다. ARMv4 부터 ARM Cortex 시리즈까지 ARM Core 는 저전력 혹은 휴대용 기기의 CPU 시장에서 절대 강자로 군림하고 있는 중입니다. 

따라서 매출 규모에 비해 ARM의 가치는 엄청나다고 볼 수 있습니다. 그러다 2016년에는 소프트뱅크의 비전펀드 즉 “손정의” 회장이 320억 달러(약 45조원)에 인수하는 쇼킹한 사건이 일어납니다. 

손정의 회장은 워렌 버핏 등과 같이 가치를 보는 눈이 뛰어난 사람에 속합니다. 투자한 회사마다 대박을 터트렸으며 특히 “쿠팡” 투자로 대박을 터트린 것도 잘 알려진 사실입니다. 이런 그가 ARM을 인수한 것은 그만큼 ARM의 가치가 높다는 뜻이 됩니다. 

당시만 해도 꽤 비싼 금액으로 인수했다는 평이 이어졌습니다. 그때 손정의 회장은 “인생 최대의 배팅을 했다” 라고 할정도로 ARM 인수에 적극적이었다고 합니다. 

하지만 2020년 즈음…  소프트뱅크 비전펀드의 투자 실패 사례가 들리면서 손 회장은 애착을 가지던 ARM을 매각하겠다는 의사를 밝힙니다. 생각보다 빠른 시기에 ARM을 매각하겠다는 것이었는데요, 그 이유는 비전펀드의 자금을 만들기 위해서라고 합니다. 

이때 팹리스 반도체의 거물 기업인 “엔비디아( NVIDIA)”가 ARM을 400억 달러에 인수하려고 했으나 각국의 독점 규제에 부딪히게 되면서 결국 ARM 인수를 실패하게 됩니다. 최근 코로나19 팬데믹 이후로 반도체 특히 시스템 반도체가 전략 안보 자산으로 분류가 되어서인지 주요 IT 기업들인 마이크로소프트, 퀄컴, 구글등이 엔비디아의 인수를 반대하고 나섰다는군요. 

매우 흥미로운 사실입니다. 그만큼 ARM이 차지하는 위상이 높아진 것이고 각국 혹은 주요 거대 기업들이 견제를 했다는 뜻 입니다. ARM은 이제 CPU 업계 및 시스템 반도체 분야에서는 그 위치가 대단한듯 싶습니다. 

그러다 올해들어 더욱 흥미로운 사실을 알게 되었습니다. ARM을 소프트뱅크 비전펀드에서 여전히 매각하려고 하고 있고 인수를 추진하고 있는 회사들로는 인텔, 퀄컴, SK하이닉스 등이 있다는 겁니다. 인수 의향을 밝힌 회사 중에 한국 회사인 SK 하이닉스가 있다는 사실이 더 재밌네요. 

processor
CPU는 현대 산업에서 핵심 가치를 지닌 아이템으로 분류되고 있다 – pixabay

그런데 ARM을 인수하는 주체는 한군데가 아닌 여러 회사들의 연합체인 “컨소시엄” 형태로 추친된다고 합니다. 즉 인텔, 퀄컴, SK하이닉스가 공동으로 ARM을 인수를 추진하고 있는 것이지요. 위 기사를 읽어보니 저번 엔비디아의 ARM 단독 인수가 각국이나 여러 경쟁사들의 이해 관계로 무산되는 걸로 봐서는 ARM이 어느 한군데로 인수하는 것을 반대한다고 합니다. 이는 최근에 미국에서 반도체를 자국에서 생산하려고 하고 있고 반도체가 전략 자산화 되는 추세와 일맥 상통하다고 볼 수 있습니다.

따라서 아직은 ARM이 어디로 인수가 될지 어떤 딜을 통해 향후 행보를 이어갈지 예측할 수 없습니다. 여전히 ARM은 소프트뱅크 비전펀드의 소유이며 손정의 회장의 손길이 미치는 회사입니다.  손 회장은 2023년을 목표로 ARM을 미국 증시에 상장할 계획이라고 합니다. 상장을 하게 되면 그 가치가 어떤지 대략 짐작이 갈 수 있습니다. 

엔비디아가 인수를 할 당시에 비 공식적으로는 약 800억달러(한화 114조원 정도)의 가격으로 딜이 이뤄졌다는 소문이 있습니다. 그만큼 ARM의 가치는 생각보다 금액으로는 큰 편입니다. 이후에 ARM이 만약 매각이 이뤄진다면 어느 가격에 매각이 이뤄질지도 꽤 흥미로운 대목이 아닐 수 없습니다. 

현재 전세계의 CPU중 ARM 기반의 CPU가 약 2300억개 정도 만들어져서 동작했거나 동작하고 있다고 합니다. ARM이라는 이름은 생소하지만 우리 일상 생활에서 흔히 볼 수 있는 스마트폰이나 태블릿 PC 에 탑재되있는 CPU 중 하나라고 볼 수 있습니다. 

임베디드 S/W 와 ARM

임베디드 소프트웨어와 ARM은 매우 밀접한 관계를 지닙니다. 아마 임베디드 분야에 소프트웨어를 다뤄봤거나 개발을 하고 있는 프로그래머라면 “ARM” 이란 이름은 매우 자주 듣고 흔한 이름일 것입니다. 

필자가 처음 프로그래머 경력을 시작했을때 받은 교육 중에 하나는 “ARM 아키텍처” 였습니다. ARM Core 와 ARM 데이터 BUS, 패리패럴 등의 구조와 개념을 이해하는 교육이었습니다. 특히 ARM 기반으로 SoC를 설계하는 엔지니어와 BSP를 개발하는 프로그래머는 ARM 관련 교육이 거의 필수일 것입니다. 

위 블럭도는 ARM Core 의 내부 블럭도를 표시한 그림입니다. ARM Cortex-A715 의 구조네요. 위 구조는 간략하게 표시되어 있지만 세세하게 들어가면 엄청나게 복잡한 구조가 펼쳐집니다. CPU는 인간으로 따지면 두뇌에 해당되기 때문에 그 구조는 꽤나 복잡합니다. 

참고로 ARM Core 내부 소스는 일반 기업들에게 공개가 되지 않습니다. ARM은 Core를 패키지하여 ARM 기반으로 CPU를 제조하려는 기업들에게 제공하고 라이선스 비용을 받습니다. 따라서 CPU를 제조하려는 팹리스 기업들은 ARM 으로 부터 제공받은 CPU Core 에 데이터 Bus 를 연결하고 시스템 구동에 필요한 패리패럴들을 붙이는 작업을 하게 됩니다. 

즉 대다수의 팹리스 기업들이 CPU를 제조한다고 하면 CPU의 핵심인 ARM Core는 ARM으로 부터 구입을 하여 사용합니다. 소프트웨어에서 이미 개발된 라이브러리를 돈을 주고 구입하여 그대로 사용하는 방식입니다. 라즈베리파이 시리즈의 CPU인 브로드컴의 BCM2711(라즈베리파이4)등은 ARM Core 기반으로 설계가 되어 있습니다. 

팹리스 기업들이 CPU를 전부다 자체 제작을 하진 않습니다. 그러기엔 작은 팹리스의 경우에는 인력도 부족하고 기술도 부족하며 시간도 부족합니다. ARM 기반으로 CPU를 제조하는 팹리스 회사들은 이런 형태로 ARM Core + 커스텀 작업한 패리패럴을 붙여서 CPU를 제조하게 됩니다.

ARM 기반 CPU를 제조하는 것은 이런 방식이고 소프트웨어 특히 임베디드 소프트웨어 혹은 임베디드 리눅스 기반의 소프트웨어를 개발할 때에도 ARM CPU 구조를 잘 알아야 할 수 있습니다. 팹리스 기업에서는 자사의 CPU를 가지고 시스템을 개발하는 기업에 공급하기 위해 개발 킷이나 BSP를 제공하는데 이들 개발 킷이나 BSP를 제공하기 위해서는 ARM CPU 구조를 알아야 하는게 필수적이라고 볼 수 있습니다. 

예전에 ARM 데이터 버스인 “AMBA BUS” 관련 교육을 받은 적이 생각나는군요.  ARM Core와 메모리, 패리패럴 등과의 데이터 전송 방식에 대한 내용이었습니다. 당시 교육을 받을때에 꽤나 어렵고 이해가 잘 되지 않았던거 같습니다. 제가 임베디드 리눅스 기반의 SW를 개발한 이후에는 거의 써먹을 일이 없었지만 교육을 받아두니 이후에 임베디드 SW를 이해하는데 많은 도움이 되었던거 같습니다. 

물론 임베디드 SW나 임베디드 리눅스 기반의 시스템에서 드라이버나 커널이 아닌 어플리케이션을 개발하는 프로그래머들은 ARM CPU 구조에 대해서 자세히 알 필요는 없습니다. 그럼에도 ARM 아키텍처 구조를 알고 있으면 시스템 프로그래머 입장에는 분명 도움이 되는 것은 사실인거 같습니다. 

만약 이 글을 읽는 당신이 임베디드 관련 분야에 프로그래머로 일을 한다면 ARM은 자주 이름이 오르내리거나 익숙한 이름일 것입니다. 그만큼 ARM은 임베디드 산업과는 뗄레야 뗄수없는 사이 인것으로 생각됩니다.

'코드도사(codedosa.com)'에는 쿠팡파트너스 등의 제휴링크가 포함되어 있으며 수수료를 제공받을 수 있습니다.