ARM(CPU)

 





[image]
1. 개요
2. 역사
3. 특징
3.2. 전력소모
3.3. 성능
3.4. 경쟁 제품
3.4.2.2. 모바일 시장에서 AMD64의 패배 요인
4. 용도에 따른 제품군
5. 대표적인 라이선스 제조사
5.1. 대표적인 모델
6. big.LITTLE
7. 개발환경 구축
9. 관련 문서


1. 개요


ARM Holdings사에서 설계하는 명령어 세트와 ISA(Instruction Set Architecture)의 총칭.
ARM이 일반 대중에게 널리 알려진 계기는 대략 2010년 이후 스마트폰 시장이 급격히 확대된 것으로, 스마트폰에서 CPU 역할을 하는 AP(Application Processor)가 널리 보급되며 인지도가 올라갔다.
'''ARM 코리아 공식 블로그'''

2. 역사


1980년대 중반, 영국의 컴퓨터 회사 Acorn Computer는 비즈니스용 신형 고성능 컴퓨터를 만든다는 목표를 세운다. 하지만 새 컴퓨터에 쓸 만한 기성품 CPU를 찾을 수 없자 직접 RISC 기반 CPU 아키텍처를 개발하기로 하는데, 이것이 "'''A'''corn '''R'''ISC '''M'''achine", 즉 ARM의 시작이다.
소피 윌슨(Sophie Wilson)과 스티브 퍼버(Steve Furber)를 주축으로 한 1년 반 정도의 개발 끝에, 1985년 Acorn에서는 최초의 ARM 프로세서 프로토타입인 VC2588을 만들었고, BBC 마이크로 컴퓨터[1]에 연결되는 "ARM 평가 시스템(ARM Evaluation System)" 개발용 키트를 제작하였다. 32비트 ARM1 ISA에 대응하고 VLSI Technology 사의 3미크론 CMOS 공정으로 제작된 VC2588은, 말 그대로 프로토타입이었기 때문에 수백 개를 생산하는 데에 그쳤지만, 어쨌든 잘 작동했고 성능도 괜찮았다. 이후 1987년 Acorn은 ARMv2 프로세서를 메인 CPU로 사용한 "아르키메데스" 시리즈 PC를 출시하여 맨 처음 세웠던 목표를 달성하는 데 성공한다.
80년대 말, AppleNewton MessagePad에 들어갈 적절한 성능에 적절한 전력을 소모하는 마이크로프로세서가 필요했는데, 여기에 ARM 아키텍처를 쓰기로 결정한다. 이에 Acorn은 아예 ARM 개발 부문을 떼어내 Apple과 VLSI Technology와의 합작회사를 설립하고 이름을 ARM(Advanced RISC Machine)으로 변경했으며, 이후로는 주로 저전력 위주의 SoC 형태의 CPU 개발에 집중하게 된다.[2]
1995년에 소개되고 1998년에 출시된 ARM7TDMI부터는 16비트 크기의 축약형 명령어인 Thumb 명령어 세트를 도입하고, 기타 부가 기능을 추가하면서 마이크로컨트롤러 업계에서 입지를 굳히기 시작했다. Thumb 명령어는 ARM의 기본 32비트 명령어도 길다고 생각한 마이크로컨트롤러 업계의 의견을 반영하여 만든 16비트 명령어 세트이다. 이 외에도 JTAG Debugger(마이크로프로세서를 테스트하기 위해 추가되는 국제 규약의 핀), Fast Multiplier(곱셈기) 및 Enhanced In Circuit Emulator(마이크로프로세서가 장착될 기판을 테스트하기 위한 장치) 등의 기술이 추가되었다. 이 기술들의 약자(Thumb, Debugger, Multiplier, ICE)로부터 TDMI라는 이름이 붙었다.
100MHz 속도에서 불과 6mW만 소모할 정도로 극단적인 저전력으로 설계된 이 제품은 고성능 저전력 마이크로컨트롤러의 새로운 기준을 세우면서 시장에서의 ARM 사의 위치를 굳히게 된다. 대표적인 사례가 바로 퀄컴인데, 퀄컴의 초기 CDMA 모뎀은 당시 일반적으로 많이 쓰던 16비트 80186 기반으로 개발되었으나, 전력 및 성능 부족으로 결국 ARM으로 돌아서게 되었다. 그러나 90년대부터 2000년대 중반까지만 해도 ARM이 고성능 컨트롤러 시장에서 독주하는 상황은 아니었다. 세계적으로 보면 ARM 계열 제품들은 동아시아 쪽에서 강세였지만 일본은 MIPS나 히타치가 개발한 SH 기반 제품이 상당히 많이 쓰였고 유럽 같은 곳에서는 모토로라 계열의 68k/PPC 컨트롤러가 많이 쓰였다. 물론 시간이 갈수록 ARM의 우위는 더 확고해졌지만.
그 후 ARM9, ARM10, ARM11로 CPU 구조를 계속 발전시키면서 ARM의 시장 영역은 모바일 단말, PDA, 고성능 컨트롤러, DSP Codec으로 점차 확대되었으며 특히 90년대 후반에서 2000년대 중반까지 유행했던 임베디드 리눅스의 열풍을 타고 SoC 계열의 제품이 시장에서 자리잡게 되었다. 이때 등장한 유명 제품이 바로 인텔의 StrongARM 계열 제품과 삼성전자의 S3C24x0 계열 제품이다. 2000년대 중반 이후 임베디드 열풍은 잠시 소강상태를 맞이하였지만 공유기, 차량용 내비게이션, PMP 등으로 나름 시장에 안착하는 데 성공했고, 결국 스마트폰 시대를 맞이하면서 본격적으로 말 그대로 포텐이 터지기 시작했다.
ARM의 발전사에 있어서 두 번째 전기는 Cortex-A/R/M 제품군의 도입 시점에서 일어났다. 기존의 ARM 사의 CPU 구조 개발 방식은 단순히 세대마다 성능과 기능을 향상시킨 후 동일 CPU 구조에 MMU/MPU 등의 메모리 유닛을 차등 조합하여 제품군을 나누는 방침을 유지했으나 Cortex 이후부터는 용도에 따라 동시에 여러 CPU 구조를 개발하게 된다. 즉, 일반 OS 상에서 실행되는 애플리케이션 실행 능력에 중점을 둔 Cortex-A, Real-Time 용도에 특화된 Cortex-R, 그리고 마이크로컨트롤러 시장을 타겟으로 한 Cortex-M으로 제품군을 분리하였다. Real-Time은 단순히 CPU의 빠른 반응 속도를 의미하지 않는다. 오히려 신뢰할 수 있게 예측 가능한 반응 속도를 의미한다. 즉 특정 코드 루틴을 실행할 때 일반 프로세서는 항상 5ms 안에 실행될지 보장할 수 없지만 Real-Time에 맞도록 설계된 프로세서와 루틴은 어떠한 경우에라도 해당 루틴을 10ms 안에 수행할 수 있다. 이후로는 각 제품군별로 상이한 구조의 CPU 코어 제품 정책을 유지하게 된다.
ARM이 자사 CPU에 고성능의 A 계열 라인업을 도입한 시기부터 스마트폰 시장이 본격적으로 활성화되면서 ARM을 기반으로 하는 AP 시장도 그에 발맞춰 성장하였고, 결국 ARM은 스마트폰용 CPU의 대명사로서 시장 지배적인 지위에 오르면서 일반인들에게도 유명해지게 되었다.
특히 Cortex 제품군이 도입되는 시점부터 ARM 사의 제품 개발 템포도 이전과는 비교할 수 없을 정도로 빨라졌다. 이전에는 2~3년마다 주요 CPU 코어를 1개 정도 발표하는 데 그쳤지만 2004년 이후 2014년 시점까지 A 계열 8종, R 계열 3종, M 계열에서 5종이 발표되면서 총 16종의 신형 코어가 개발된 셈이다. 거의 1년에 2종의 신제품이 소개된 셈. 예를 들어 2010년 기준으로 주로 사용되었던 ARM11(ARMv6)이나 ARM Cortex-A8/9(ARMv7) CPU들은 동작 클럭이 1GHz까지 도달했으며 이는 2000년대 초의 200MHz급 StrongARM(ARMv4 기반)이나 2000년대 중반의 500MHz급 ARM9(ARMv5 기반) 시리즈와 비교해보면 짧은 시간 안에 성능이 급증했음을 의미한다.
Cortex-A5와 Cortex-A7은 성능보다는 저전력에 중점을 둔 모델로, 성능은 Cortex-A7의 경우 Cortex-A8보다 조금 낫고 A9보다는 떨어진다. Cortex-A5는 현재의 스마트폰 업계가 워낙 성능 위주로 가서인지 소수의 저가형 기기에만 쓰이는 등 선진국 시장에서는 외면받은 상태. 하지만 퀄컴의 MSM 시리즈 중 MSM72xxA라는 공정 및 아키텍처가 개선된 저가 시리즈에 A5를 사용했으며 스냅드래곤 S4 라인업 중에서도 S4 play가 1.2GHz의 A5 코어를 쓴다. 그리고 한국 업체인 텔레칩스에서 A5 듀얼코어의 신제품을 내놓았다. 하지만 현재까지의 기술력으론 스마트폰의 주 전력소모는 LCD이지, ARM Core가 아닌지라 CPU를 저전력화 해봤자 대기 시간이 아닌 사용 시간 연장을 체감할 수 없다. 물론 풀로드 시에는 LCD 백라이트 최대밝기의 배 이상으로 전력을 소모한다. 이건 동일 세대의 기술력으로 성능을 낮춰도 전력 소모가 극적으로 줄어들지 않는다는 의미지 전성비 자체는 끊임없이 개선되고 있다. 예를 들어 무게를 줄이고도 대기 시간을 늘린 iPad Air의 경우 액정의 소모 전력과 함께 AP의 전성비 개선도 성공한 사례.
Cortex-A7은 저전력 중심의 CPU로, 구조가 간단하고 멀티코어로 묶으면 의외로 성능도 괜찮아 중국제 태블릿 컴퓨터 등에서 A7 쿼드코어를 사용하는 경우가 늘어나고 있다. 엑시노스 54x0 계열에서도 A15 쿼드코어를 Big, A7 쿼드코어를 Little 코어로 각기 활용했다. 그런데 가격 대비 준수한 성능(A8과 A9사이)과 비용상의 이점(코어 다이가 상당히 작다)으로 인해 전력소모가 낮아서 A7만으로 SoC를 구성하는 경우도 늘고 있는 상황. 삼성의 엑시노스 3000번대 제품이나 퀄컴의 스냅드래곤 400의 하위 라인이나 저가 칩의 대명사 MTK의 상위 라인업, 그리고 중국 박스칩의 대표주자인 Allwinner 등 여러 회사에서 '''주력으로''' 많이 사용했다.
특히 고성능 제품군인 Cortex-A는 Cortex-A9부터 비순차적 명령어 처리를 지원한다. 바로 이전에 출시된 Cortex-A8에서 ARM 사는 전력소모를 절감하기 위해 비순차적 명령어 처리 기능을 넣지 않았다고 주장하면서 많은 관련 엔지니어들을 납득시켰지만 불과 2년 후에 A9에서는 비순차적 명령어 처리 기능을 넣고도 전력을 절감했다고 주장하면서, 2년 전의 낚시를 믿은 관련 엔지니어들을 멘붕시켰다.
2013년 6월 발표된 Cortex-A17은 처음 Cortex-A12로 개발을 시작했다가 중간에 이름이 A17로 변경되었다. Cortex-A17은 A12였던 초기에는 A9를 대체하는 미들레인지 라인업의 성격으로 출발하였으나 개발이 진행되면서 A9에 A53/A7/A15등에 들어간 기술을 최적화 하면서 오히려 성능적으로 A15 수준을 유지하면서 전성비를 향상시키고 결과적으로 A15의 후속 모델로 자리매김 하였다. 대표적인 특징으로 강화된 비순차적 처리, 캐시간의 데이터 라인의 상승, NEON 유닛의 1.5배 성능 향상 등이 있다. A9 대비 3배의 명령어 발행 어레이로 IPC의 효율(클럭당 성능비) 상승. 퀄컴의 Krait나 Apple의 Swift와 비슷한 수준으로 여겨진다.
Cortex-A15의 다음 세대인 ARMv8 기반 Cortex-A53(!!)과 Cortex-A57이 개발되었다. ARMv8 아키텍처는 64비트 지원(!) 및 확장된 가상 주소 방식 (Virtual addressing)를 지원한다. A53은 A9와 비슷한 성능을 가지지만 공정은 더 작은 Little 부문의 아키텍처고 A57은 크고 성능이 좋은 big 부문의 아키텍처다. 자세한 사항은 이쪽을 참고바람.
2015년경부터는 big 부문에는 Cortex-A57의 후속으로 성능 및 전력 효율을 향상시킨 Cortex-A72가 출시되었고 LITTLE 부문에는 Cortex-A53을 이어 성능을 최대한 유지하고 전력효율을 높인 Cortex-A35가 발표되었다.
주요 모바일 기기에 사용된 ARM 아키텍처의 대략적인 성능은 다음과 같다.
'''ARM 아키텍처 스펙 및 주요 채용기기''' [3]
명령어 세트
아키텍처 명칭
성능
주요 기기
ARMv6
ARM11
1.25 DMIPS/MHz
옵티머스 원, 옴니아 II, iPhone, iPhone 3G
ARMv7-A
Cortex-A5
1.6 DMIPS/MHz
갤럭시 M 스타일
Cortex-A7
1.9 DMIPS/MHz
갤럭시 S4의 LITTLE 코어, Allwinner A31/A20 등
Cortex-A8
2.0 DMIPS/MHz
갤럭시 S, iPhone 3GS, iPhone 4
Scorpion
1.9/2.1[4] DMIPS/MHz
옵티머스 Z, 베가 X, 베가 레이서, 옵티머스 LTE
Cortex-A9
2.5 DMIPS/MHz
갤럭시 S II, iPhone 4s, 옵티머스 2X
Cortex-A12/17[5]
3.0 DMIPS/MHz

Krait
3.1/3.39[6] DMIPS/MHz
옵티머스 G, 베가 R3
Swift
3.5 DMIPS/MHz
iPhone 5
Cortex-A15
3.5~4.01 DMIPS/MHz
갤럭시 S4의 big 코어, 넥서스 10
ARMv8-A
(64Bit)
Cyclone
?? DMIPS/MHz
iPhone 5s, iPhone 6, iPhone 6 Plus
Cortex-A35
1.78 DMIPS/MHz
미출시
Cortex-A53
2.3 DMIPS/MHz
갤럭시 S6의 LITTLE 코어, 갤럭시 그랜드 맥스
'''Cortex-A57'''
4.1 DMIPS/MHz
갤럭시 S6(엑시노스7420)의 big 코어
Cortex-A72
4.7 DMIPS/MHz
스냅드래곤650/652/653
Twister
?? DMIPS/MHz
iPhone 6s, iPhone 6s Plus iPhone SE
Mongoose
5.1 DMIPS/MHz
갤럭시 S7, 갤럭시 S7 엣지
Cortex-A73
4.8 DMIPS/MHz
갤럭시 A8(2018)의 big 코어
Ananke(Cortex-A55)
?? DMIPS/MHz
출시
Kryo
6.3 DMIPS/MHz
스냅드래곤 820/821
Prometheus(Cortex-A75)
?? DMIPS/MHz
출시
Enyo(Cortex-A76)
?? DMIPS/MHz
출시
Deimos(Cortex-A77)
?? DMIPS/MHz
출시
Hercules(Cortex-A78)
?? DMIPS/MHz
미출시
Cortex-X1
?? DMIPS/MHz
갤럭시 S21, 갤럭시 S21+, 갤럭시 S21 Ultra
ARMv9-A
(64Bit)
Matterhorn
?? DMIPS/MHz
미출시
Cortex-X2
?? DMIPS/MHz
미출시
Cortex-X3
?? DMIPS/MHz
미출시

3. 특징


1990년대 초부터 x86/MIPS/PowerPC 등과 같은 고성능을 지향했던 경쟁 업체들과는 다르게 일찌감치 저전력/고효율을 목표로 한 기술 시장에 뛰어들었다. 현재 ARM 사의 CPU가 저전력 고효율의 대명사가 된 이유는 이러한 수십 년 전의 결정에 기인한 바가 크다.
1990년 당시 대세였던 개발과 생산, 판매를 동시에 하는 IDM 업체의 틀을 벗어나서 훨씬 모험적이었던 CPU 설계를 파는 사업 모델을 채택하였다. 그리고 그 이후로 IT 산업의 대세가 단일 칩에 시스템의 기능을 집적하는 SoC(System on a Chip)로 방향을 잡으면서 각 SoC 제작 업체들은 그에 적합한 CPU 설계를 찾게 되었고, ARM의 사업 모델이 그러한 수요에 정확히 부응하면서 ARM의 사업은 확대일로에 들어서게 되었으며, 결국 2010년도 이후로 SoC의 끝판왕이라고 할 수 있는 스마트폰용 AP 시장이 개화하면서 SoC 업계에서의 주도적인 지위를 가지고 있었던 ARM 사의 CPU 제품이 결정적인 주도권을 쥐는 계기가 되었다.

3.1. 명령어 세트


약간 변형된 RISC 명령어 구조로 1985년에 처음 개발되었다. 즉 의외로 초기 RISC 개발사와 역사를 같이 할 정도로 오래된 구조이다.
대체적인 특징은 일반적 RISC와 유사하나 다음과 같은 부분은 ARM 고유의 특징이다.
  • 레지스터 뱅크 구조: 고속 인터럽트 처리 모드에서 독자적으로 쓸 수 있는 레지스터 뱅크가 있다. 이 특징은 인터럽트를 빠르게 처리하는데 유효하다.
  • 조건부 실행 플래그: 조건분기 명령어와 결합하여 짧은 조건분기 처리에 유효한 특징이다.
  • SP(스택포인터), LR(링크레지스터), PC(프로그램 카운터)가 일반 레지스터에 포함되어 있다. 이 때문에 예외 처리가 타 CPU에 비해 독특해지게 된다.
  • 뱅크당 16개의 레지스터: 통상 RISC 구조의 경우 32개 혹은 그 이상의 일반 레지스터가 있는 경우가 많으나 ARM은 다소 적은 16개의 레지스터만 있다. 게다가 위에서 언급한 SP/LR/PC가 특수 목적 레지스터이므로 실제로 사용 가능한 레지스터 숫자는 13개이다.
  • 배럴 시프트 기능: 명령어 내에서 배럴 시프트 기능을 지정할 수 있다. 타 CPU의 명령어 세트에서는 명령어 두 개로 처리될 내용을 하나의 명령어로 처리할 수 있다.
  • 다중 로드/스토어 명령: 단일 명령으로 여러 레지스터의 로드/스토어를 동시에 제어할 수 있다. 단일 명령어를 1사이클에 처리해야 한다는 RISC 명령어의 원칙에 위배되는 대표적인 명령어이지만 코드 크기 절감과 코드 디코딩 부하 경감(그리고 그로 인한 전력 절감)에 도움이 된다.
  • Thumb 16비트 명령어 세트: ARM이 고성능 컨트롤러 시장을 석권하는데 가장 크게 일조한 특징이자 ARM의 오늘날을 있게 한 특징이다. 일반적인 32비트 크기의 ARM 명령어와는 아예 별도의 16비트 크기의 명령어 세트를 따로 가지고 있다. 명령어 크기가 16비트라고 해도 일반 목적 레지스터 크기는 여전히 32비트이므로 ARM 자체가 32비트인 건 변하지 않는다. Thumb 명령어는 마이크로컨트롤러 제품군에서는 극히 유용하기 때문에 심지어 최신형 Cortex-M 제품군은 Thumb2 명령어만을 지원하게 되었다. 사실 메모리 서브시스템의 속도가 낮거나 실행속도가 별 문제되지 않는 코드의 경우 코드 바이너리 크기를 줄이는 게 유리하기 때문에 고성능 위주의 Cortex-A가 적용된 시스템에서조차도 연산 성능에 민감하지 않은 코드들은 Thumb로 컴파일되었을 정도.
  • Thumb-2 16/32비트 명령어 세트: 위 Thumb의 확장형으로, Thumb의 16비트 크기 명령어에 더해 32비트 크기 명령어가 추가된 형태. 기존의 16비트 Thumb 명령어와 섞어서 쓸 수 있다.
다만 위의 특징들은 새로 도입되는 ARMv8의 64비트 명령어 세트에서는 상당 부분 사라지게 되었다. 이는 저러한 특징들이 도입되는 1985년도에는 나름대로 합리적인 이유가 있었으나 기술의 발전으로 인해 굳이 명령어 수준에서의 복잡성을 늘려놓을 필요가 없게 되었기 때문. 대체적인 특징들이 컨트롤러급 저속 CPU에서 ISR을 빠르게 처리하는 데 유리한 구조라거나 코드 크기 절감에 유리한 구조 등은 수십 MHz 대역에 1~2단 파이프라인이 일반적인 시절에는 타당한 측면이 있었으나 현재 기준에서는 그다지 적합하지 않은 측면이 많다.
통상 MMU가 내장된 제품군(대표적인 예가 Cortex-A 계열)들은 리눅스나 유닉스 계열, 그리고 윈도우 CE 계열의 지원을 받는다. 반면 MMU가 아닌 보다 단순한 MPU가 내장된 제품군(대표적으로 Cortex-R)은 주로 Real-time OS(RTOS)의 지원을 받는 경우가 많다. MPU도 없는 보다 작은 규모의 마이크로컨트롤러 대상 제품군(대표적으로 Cortex-M)들은 OS의 지원이 필요 없거나, 스케줄러 수준의 단순한 OS의 지원을 받는 경우가 많으며, 이러한 제품들은 캐시도 없고 동작 속도도 수십 MHz에 불과한 경우가 대다수.
2014년경부터 ARMv8A-AArch64 명령어 세트가 적용된 Cortex-A5x 계열 프로세서가 시장에 출시되고 이어서 본격적으로 64비트의 시대를 열게 되었다. 이미 Cortex-A15 CPU에 적용된 RAM의 크기가 32비트 메모리 공간의 한계인 4GB에 근접하는 3GB까지 늘어난 상황이기 때문에 Cortex-A15 이후의 Cortex-A에 64비트 구조를 적용하는 것은 시기적절한 선택. 다만 64비트 CPU를 다루는 명령어라고 해도 명령어의 워드 크기는 여전히 32비트이므로 명령어 세트 구조 자체는 크게 복잡해지지는 않는다. 반면 CISC인 x86의 경우에는 64비트 구조가 도입되면서 64비트용 명령어에는 일률적으로 8bit의 prefix가 붙게 되었다.

3.2. 전력소모


소모 전력은 고성능 위주의 Cortex-A 계열의 경우도 코어당 수백 mW, Cortex-M 계열은 말 그대로 '''남들 대기전력 수준이 ARM의 동작전력'''인 경우도 흔하다. 범용 CPU의 대표격인 x86이 대체로 20~100W 정도의 전력 소모를 보이는 것에 비한다면… 한마디로 '''노는 물이 다르다'''. 다만 Cortex-A 제품군 중 고성능 제품에 한정하여 태블릿용 마켓에서 저전력 x86 제품들과의 전력 소모 수준이 겹치는 상황이 벌어지고 있다. 상세한 사항은 아래의 x86 계열과의 비교를 참조.
ARM 사에서는 Cortex-A 제품군의 전력 소모 영역을 Entry/Midrange/Premium 별로 코어당 각각 150mW/450mW/750mW 정도를 목표로 잡고 있다. 프리미엄급의 경우 보통 8코어급 제품으로 출시되는 경우가 많으므로 ARM 코어 자체의 최대 전력 소모량은 3W 정도로 잡아도 무방하다. 단 이는 열설계전력인 TDP나 인텔이 주장하는 상황설계전력 SDP보다 훨씬 높은 값이고 해당 코어를 제품화한 AP의 경우에는 메모리 컨트롤러와 GPU 등에서 소모되는 전력이 추가로 포함되므로 섣부른 비교는 금물.

3.3. 성능


업계에서의 ARM 프로세서의 성능에 대한 평가는 전통적으로 '''전력당 성능비는 쩌는데 성능 자체는 별 볼일 없는''' CPU였다. (물론 현재도 x86에 비교하면 크게 다르지 않은 기조이다.) 따라서 과거엔 성능이 필요한 경우에는 ARM보다는 MIPS나 PowerPC 계열 제품 중에서 고성능 제품군을 고르는 경우가 많았다. 다만 이러한 상황은 그 동안 ARM이 '''전력소모 상한을 정해놓고 그 범위 내에서 성능을 추구하는''' 개발방향을 취하면서 벌어졌던 당연한 경우에 가깝다. 사실 ARM을 주로 사용했던 업계 환경은 성능에 대해서는 어느 정도 무관심했던 분위기 때문에 성능지표에 대한 계측이나 발표도 크게 관심을 받지 못했다.
ARM의 경우 성능에 대한 평가는 주로 DMIPS/MHz로 표기되어 있는데, 이는 '''Dhrystone 명령이 해당 단위당 몇 개 처리되느냐'''를 의미한다. 이는 같은 명령어를 사용하는 CPU 사이에서만 비교가 가능한 지표이지 다른 명령어 구조 기반의 CPU끼리는(예를 들어, x86 vs ARM 등) 1:1로 매칭이 가능한 지표가 아니다. 같은 명령어 세트 사이에서도 마이크로아키텍처가 변경되면 1:1 비교가 어렵다. 일례로, A8과 A7을 비교 시 A8이 약 5% 정도 우위에 있지만, 실 사용을 해 보면 A7이 약 20% 우위로 보이는 A9과 맞먹는 경우도 많다. 이는 A7의 마이크로아키텍처가 한참 뒤에 개발되면서 좀 더 최적화될 시간이 있었고 A7은 NEON SIMD 유닛이 긴밀하게 통합되어 있기 때문. RISC의 특성상 단일 명령어가 수행하는 기능의 양은 CISC보다 떨어질 수밖에 없다. 특히 로드/스토어 명령을 따로 쓸 필요가 없는 CISC 명령어들은 메모리를 대상으로 하는 단일 연산명령어가 RISC의 로드/연산/스토어의 세 명령어를 한꺼번에 수행할 수도 있다. 무엇보다도 여태까지 x86과 ARM은 주로 사용되는 플랫폼 자체가 달랐다. 애초에 PC와 모바일 디바이스를 1:1로 비교한다는 것 자체가 어려운 일인데 모바일 기반의 경우 메모리 속도나 I/O 속도 할 것 없이 모두 PC 환경보다 크게 떨어지기 때문. 그런 상황에서는 공통된 비교 기준을 수립하는 것 자체가 난해한 일이었다.
거의 같은 DIMPS를 가지는 ARM Cortex A9(2.5DMIPS/MHz)과 x86 아톰 N270(2.4DMIPS/MHz)을 비교 시, 각각 1.6GHz 에서 전자는 약 60~80MFLOPS, 아톰은 약 150~200MFLOPS가 나온다. FLOPS 또한 절대적 성능지표는 아니다. 부동소수점 명령어를 일정 시간에 얼마나 많이 수행할 수 있느냐에 대한 수치일 뿐이다. Dhrystone의 원래 개발자도 "요즘'''(당시 1999년)''' 컴퓨터의 성능을 평가하기에는 유용하지 않다"라고 EDN Magazine에서 언급한 적이 있을 정도니 시대에 뒤떨어져도 한참 뒤떨어진 성능 지표인 셈.
이러한 성능 측정상의 문제점들은 2014년 기준으로 몇 가지 변화된 부분이 있는데, 우선 모바일 산업이 급격하게 발전하면서 Geekbench나 Antutu, CineBench 같은 모바일용 벤치마크 프로그램들이 시장에 도입 되면서 해결되는 과정을 밟고 있다.
또한 모바일 AP 업계들이 경쟁적으로 저전력-고성능 CPU 코어를 개발하면서 ARM 제품군의 절대 성능 자체가 급격하게 올라가는 중이고 전성비에 초점을 맞춘 Cortex-A7/Cortex-A53/Cortex-A17 제품군들 역시 활발하게 개발되면서 성능과 전성비 영역 모두를 아우르는 모습을 보여주고 있다. 즉 제품군이 성능 위주와 전성비 위주의 제품으로 분화되고 있는 모양새이다.

3.4. 경쟁 제품



3.4.1. MIPS


ARM과 MIPS 모두 RISC구조 CPU 아키텍처의 대표 주자로 80년대 중반 유사한 시기에 시장에 첫 선을 보였으나, 90년대 이후로 MIPS는 하이엔드 제품 개발에 집중하는 동안 ARM은 저전력 구조의 SoC 및 IP 라이선스로 사업방향을 바꾸면서 큰 접점은 없는 상태였다. 하지만 MIPS 측이 2000년대 전후로 인텔 아이태니엄의 시장 진입에 때맞춰 하이엔드 제품 개발에서 철수하면서 ARM과 유사한 IP 라이선스 사업으로 전환하면서 직접적인 경쟁상대가 된다.
ARM 대비 성능상의 우위로 인해 상대적으로 고성능이 필요하던 멀티미디어나 네트워크 관련 SoC 등에 많이 채택되었으나 이후 ARM에 의해 시장을 뺏기더니 2010년도 이후로는 사실상 의미 없는 수준의 시장 점유율을 보여주는 상황. 가정용 공유기 SoC도 한 동안은 MIPS 아키텍처의 독무대였으나 ARM이 점점 그 시장도 갉아먹고 있다.

3.4.2. AMD64


처음 ARM이 출시되었던 1980년대 중반 시점에서는 양 제품은 PC 시장을 타겟으로 경쟁하였지만 이 시기의 경쟁은 알려진 바와 같이 x86의 완승으로 끝났다.
이후 ARM이 PC를 제외한 SoC 위주로 사업을 영위하게 되면서 근본적으로 차지하는 시장영역이 다른 두 제품이었지만 ARM 제품들의 성능이 급격히 향상되고 x86 역시 64비트 시대로 접어든 후 모바일과 태블릿을 타겟으로 하는 저전력 SoC 제품들이 개발되면서 경쟁이 본격화되었다. ARM 계열은 안드로이드의 급성장에 힘입어 시장을 선점할 수 있었던 상황.
2010년 초반부터 AMD64 진영의 인텔 측에서 아톰 계열 제품을 필두로 모바일과 태블릿에 적합한 저전력 제품을 개발하려는 노력이 지속되고, ARM 계열 제품도 Cortex-A15에서는 성능 확보에 중점을 두고 개발되면서 양 제품의 전력소모 갭은 거의 없어진 실정이다. 특히 2012년 4월에 출시된 메드필드부터는 ARM과도 충분히 경쟁할 만한 전성비를 보여 준다. 이는 어지간히 설계가 막장으로 흐르지 않는 이상 결국 전력소모와 성능은 비슷하게 갈 수밖에 없다는 것을 보여 주는 좋은 예.
2013년 기준으로 인텔의 신형 아톰 계열 제품인 베이트레일 4코어가 SDP 기준 2W에 터보클럭시의 소비전력 4W, 그리고 성능 면에 있어서 기존의 AMD64 코어 아키텍처에 준하는 성능을 보여주면서 전성비와 성능 양쪽 모두에서 괄목할만한 발전을 보여주고 있으며, 실제로도 전성비 상 ARM과 큰 차이를 보이지 않는 상황이고 인텔 측에서도 ARM과 대응하기 위해 저가로 프로세서를 공급하고 있으나 아직도 판매량에서는 심히 후달리는 모습을 보여주었다.
다만 ARM 역시 코어설계나 명령어 세트 라이센스 기반의 사업모델 경우 많은 공급업체들이 다양한 특성을 가진 제품들을 개발하고 양산하기 때문에 ARM 생태계에서 사업을 진행하려는 업체들은 해당 생태계 내에서 자신에게 적합한 제품을 찾을 확률이 높고 여러 공급업체의 존재로 인해 가격협상력을 확보할 수 있으며 특정 업체의 제품에 문제가 생기더라도 금방 다른 대체재를 찾기 쉽게 된다. 단적인 예가 삼성의 갤럭시 S3과 후속인 S4인데 S4의 경우 자사 엑시노스를 채용한 제품 개발에 문제가 생기자 바로 퀄컴으로 주 거래를 변경할 수 있었고 S3에서는 퀄컴의 칩셋 공급이 타이트해지자 엑시노스의 비중을 높이는 조치가 가능했다. 즉, 보다 저렴하고 안정적이면서 최적화된 사업을 하는 데 한결 유리한 조건을 가지고 있기 때문에 미디어 소비기기에서는 여전히 ARM이 우위를 쥐고 있다.
'''2021년 기준으로 애플이 x86 기반 맥을 버리고 ARM 기반 맥으로 완전히 이주하기 시작함에 따라 본격적으로 AMD64 진영과 ARM 진영간의 경쟁이 본격적으로 심화될 예정이다.'''[7] AMD64가 ARM이 차지하고 있는 시장에 들어오지도 못하는 상황에 반해 AMD64가 차지하고 있는 시장들을 ARM쪽에서 들어오고 있다는 점으로 인해 AMD64 진영들이 긴장할 수 밖에 없는 상태다. 결정적으로 첫 애플 실리콘맥에 쓰인 M1칩의 임팩트가 워낙 높아서 애플외 기업들이 독자적인 ARM칩을 개발해서 컴퓨터에 사용할거라고 선언함에 따라 인텔과 AMD에 대항할 경쟁자들이 많이 생긴건 물론 고객들을 서서히 잃을 수 밖에 없는 상황이 생기고 있다.[8] 사실상 1980년 이후로 본격적인 경쟁이 시작될걸로 보이며 참여하는 회사만 해도 Microsoft[9], 애플[10], 구글[11], 삼성[12], 퀄컴[13], AMD[14], 아마존[15], 테슬라[16], 기타등등[17]이 있고 컴퓨터 시장에 큰 변화가 예고되어 있으니 AMD64 진영쪽에 이렇다할 위협이 등장한셈이다.[18] 만약에 인텔과 AMD가 ARM의 도전에 대해 제대로 대응을 못하면 뒤쳐질 가능성이 존재한다.

3.4.2.1. AMD64 vs ARM

AMD64 vs ARM 문서 참조.

3.4.2.2. 모바일 시장에서 AMD64의 패배 요인

AMD64가 모바일 SoC 시장에서 실패한 요인은 여러 가지를 들 수 있겠지만 크게 다음과 같이 정리할 수 있다.
  • 시장 선점에 실패했다. 모바일 SoC 시장의 대세가 스마트폰용 AP로 쏠리는 상황에서 처음부터 SoC를 핵심사업으로 유지했던 ARM이 선점효과를 누릴 수밖에 없었다. ARM이 선점효과를 누리기 시작하자 소프트웨어 호환성도 ARM 명령어 세트를 중심으로 흘러갔고 후발주자로 진입한 AMD64는 호환성을 스스로 해결하거나 OS 개발사에서 해결해 주기만을 기다려야만 했다.
  • 개발속도에서 비교가 안 될 정도로 차이가 벌어졌다. AMD64의 대표주자인 인텔틱톡전략으로 공정 미세화와 아키텍처 발전을 번갈아가며 하는데, 문제는 ARM 진영의 주요 업체들 간의 경쟁이 격화되면서 12개월 주기로 신규 아키텍처와 신규 미세공정 도입이 이루어졌는데 비해 인텔은 오히려 미세공정 도입속도가 늦어지고 아키텍처 개발까지 늦어졌다. 덧붙이자면 2019년 기준으로 PC 시장용 프로세서에서조차도 14nm에서 무려 6년이나 머무르는 바람에 경쟁사의 미세공정 추격을 허용하고 말았고 현재 로드맵 대로라면 2018년에는 12nm, 2019년에는 7nm를 선점당하게 된다. 인텔은 10nm를 내놓을 계획이였지만, 번번히 실패하며 인텔은 10nm 데스크탑 프로세서를 사실상 포기한 상태이다.
  • 상대적으로 낮은 전성비. 인텔 아톰 시리즈의 성능은 베이트레일 이전까지는 싼 게 비지떡 수준이었고 전기도 ARM 대비해서 많이 먹었다. 또한 상위 CPU를 지키려고 해상도 제한을 두었는데 레티나 디스플레이로 불을 지핀 해상도 경쟁에도 패널티로 작용되었다. 초창기 넷북의 해상도가 1024×600인 이유도 바로 이 해상도 제한 때문. 이 해상도로는 인터넷도 제대로 하기 힘들었기 때문에 별도의 프로그램을 사용해서 강제로 해상도를 1024×768로 바꿔야 했다(물론 압축해상도라 화질이 나빠졌다).
  • 형편 없다 못해 이상하기 짝이 없는 재정운용 및 고객사 접근 방식도 빼놓을 수 없다. 단순히 연간 출하량 4000만 대를 달성하기 위해 리베이트를 무한정 풀어버린다는 전략은 장기적으로 고객사의 신뢰도 얻을 수 없을 뿐만 아니라 단기적으로 막대한 재정적 손실로 인해 주주들의 신뢰도 얻어낼 수 없는 방법이었다. 더욱 나쁜 것은 그러한 손실을 감추기 위해서 사업부 재편이라는 악수까지 뒀다는 것인데 표면적으로 재정 손실을 희석시킬 수는 있어도 해당 사업부의 재정 정보가 불투명해 지면서 관련 리스크를 통합된 사업부 전체에 뿌리는 역할을 하였다. 그리고 그러한 무리수를 통해 얻은 4500만 대의 AMD64 기반 제품의 점유율도 모바일 전체를 따지면 극히 미미한 점유율이었을 뿐이다.
  • 장기적인 사업 전망과 추진력의 부족. 후발업체로서 기존 시장에 진입할 때에는 한순간에 판세를 엎으려는 성급함보다는 오히려 지속적인 상품성 향상과 고객사와의 관계 확대, 시장 니즈에 대한 정보 수집과 피드백, 개발능력의 향상 등 중장기적인 접근방식을 꾸준한 추진력으로 밀고 나가면서 매출과 이익, 재투자의 선순환 관계를 점진적으로 확대해 나가는 자세가 필요하다. 그렇게 비즈니스를 유지하다가 판세를 엎을 결정적 기회가 찾아왔을 때 전사적 역량을 동원하여 승부수를 던지는 것이지 기회와 역량도 없는 상태에서 판세부터 흔들어 보려는 시도는 반드시 실패할 수밖에 없다.
  • 종합적으로 볼 때, AMD64의 실패는 AMD64의 종주업체 인텔의 사업적 판단력 부재와 역량 부족에 기인한다. 판단력 부족으로 시장 선점에 실패했을 뿐만 아니라 개발속도 내지는 역량이 뒤떨어진다는 것을 개선하기는 고사하고 인정하는 모습조차도 보이지 못했고, 뭣보다도 단기적 할당목표와 리베이트 같은 이상하기 짝이 없는 방향성만 보여준 시점에서 실패는 충분히 예견할 수 있었던 것이다.

4. 용도에 따른 제품군


2016년 현재 거의 모든 스마트폰에 ARM 기반 AP가 들어가며, 스마트폰 외에도 PDA, 닌텐도 GBA, 닌텐도 DS, 3DO, 게임파크GP32 게임파크홀딩스의 GP2X, 닌텐도 3DSPS Vita, 닌텐도 스위치, 캐논 파워샷 시리즈, 태블릿 컴퓨터iPad, 갤럭시 탭 등 거의 모든 임베디드 시스템에 사용되고 있다. 그야말로 '''임베디드의 제왕'''. 심지어 메모리스틱에서도 쓰인다.
64비트 기반의 ARMv8의 도입이 가시화 되면서 서버시장 진입을 위한 발걸음이 빨라지고 있다. 특히 삼성전자 S.LSI, 브로드컴 등을 위시하여 서버용 64비트 전용 아키텍처를 개발하는 업체들이 우후죽순처럼 올라오고 있고 서버 수요업체인 구글이나 페이스북 등도 ARMv8에 대해 자사 소프트웨어를 개발하려는 정황이 계속 포착되고 있으며, Cortex-A57을 사용한 AMD의 옵테론 A1100 시리즈가 발매되었다.
현재 ARM의 최신 라인업인 Cortex 시리즈를 세분화해 보면 다음과 같다.
엔트리 레벨부터 서버급까지 다양한 플랫폼에서의 지원을 목적으로 만들어진 제품군으로 ARM의 주력 상품군이다. 스마트폰, TV 등의 멀티미디어 기기나 아래의 M/R 제품군보다 많은 양의 리소스를 처리해야 하는 임베디드 기기에서 주로 사용된다. 자세한 내용은 항목 참조. A는 Application이다.
  • Cortex-R
RTOS 기반으로 작동하는 제품을 위한 라인업, R은 말 그대로 Real-time이며 MPU(메모리보호유닛)이나 TCM(Tight-Coupled memory)등 RTOS에서 신뢰성 높은 동작을 위한 장치들을 포함하고 있다. Cortex-A보다 대체로 낮은 성능을 가지고 있지만 R7 같은 모델은 일부 A 계열 제품을 능가하는 성능을 가지고 있기도 하다. 주로 3G/LTE 모뎀이나 RTOS 기반의 스탠드-얼론 제품, DSP 등의 용도로 사용된다.
이름 그대로 MCU, 즉 Microcontroller unit을 위한 라인업이다. 2010년도까지는 가격이 싼 8비트/16비트급 MCU에 매출이나 생산 규모에서 가격 문제로 뒤쳐졌다. 그 이후 일부 Cortex-M 계열 제품의 평균판매가격(ASP)이 1달러 벽을 돌파한 것으로 기점으로 결국 매출 기준으로 32비트급 MCU가 전체 MCU 시장에서 1등 자리를 차지하면서 32비트급 MCU 코어가 주력인 ARM의 Cortex-M이 MCU 시장에서 주도적 위치를 차지하게 되었다. #
스마트폰의 높아지는 성능 요구에 따라 신설된 라인업. Cortex-A보다도 높은 성능을 보여준다. 최근 스마트폰에서 DynamIQ를 이용하여 고성능 고전력, 저성능 저전력 코어를 모두 탑재하는 추세에서 고성능 단일 코어의 역할을 할 것으로 기대된다.

5. 대표적인 라이선스 제조사


ARM은 팹리스 업체이므로 아키텍처 개발만 하며, 직접 제조는 거의 하지 않기 때문에, 이 아키텍처를 라이선스 생산하는 CPU의 아키텍처를 의미하는 말로 쓰인다.
  • Apple: 과거에는 다른 회사의 ARM을 사다 썼지만 자체 개발을 시도 한 후 2020년 기준 성능면에서 명실상부 최고의 ARM 개발사. ARM 기반 CPU 중, Apple이 개발한 칩셋이 다른 칩셋을 3년에서 최소한 2년은 더 앞서가는 모습을 보여준다.[19] Apple Silicon 항목 참조.
  • 퀄컴: 2020년 기준 점유율면에서 명실상부 최고의 ARM 칩셋 개발사. 성능면에서는 Apple A 시리즈보다 2년정도 뒤쳐지는 모습을 보여주지만, Apple A칩은 거의 단일 기종에 맞춰 애플 입맛대로 디자인 한 물건이지만 퀄컴 칩은 다양한 라인업과 꿀리지 않는 성능, 통신칩 통합 SoC라는 장점으로 다른 하이엔드 칩 제조사를 멸종시켰다. 사실상 퀄컴의 칩셋이 없다면 안드로이드 스마트폰 시장은 거의 마비되는것이나 마찬가지인 상황. 그정도로 압도적인 지위를 차지하고 있으며, 이로 인해 ARM Windows에도 퀄컴 칩셋이 사용되었다.
또한 Apple과는 달리, 셀룰러 통신칩도 함께 만드는 회사라, 통신칩도 칩셋에 전부 임베디드할수 있다는 면에서 Apple AP보다 유리한 면도 있다. 자세한 사항은 퀄컴 스냅드래곤 항목 참조
  • 삼성전자: ARM을 라이센스하여 삼성 엑시노스 시리즈를 생산중이다.
  • Texas Instruments(TI): 모바일용(태블릿, 스마트폰) 시장에서는 철수했지만 모바일을 제외한 임베디드 영역의 사업은 계속 이어 간다고 한다.
  • NVIDIA: 2020년 9월 13일 엔비디아가 ARM을 인수하였다. 인수 전부터 라이센스를 받아 NVIDIA Tegra 시리즈를 생산했다.
  • 브로드컴
  • 프리스케일: 모토로라의 반도체 부문 분리
  • IBM
  • 텔레칩스 - 주로 PMP나 저가형 태블릿 컴퓨터에 들어가는 제품군을 생산. 한국 회사다.
  • 미디어텍 - 대만의 반도체 회사, 중저가형 스마트폰 AP로 많이 사용되고 있다.
  • 하이실리콘 - 중국 화웨이의 자회사. 화웨이의 스마트폰에 주로 들어가는 Kirin 시리즈를 만든다.
  • LG전자: 퀄컴NVIDIA 등의 AP를 주로 쓰고 있지만, 삼성전자처럼 직접 AP를 출시했었다.
  • AMD: ARM IP를 사용한 K12 마이크로아키텍처와 스카이브릿지 프로젝트를 개발 중이었지만 자금 등의 이유로 취소되었다. # 실제로 나온 제품은 K12가 아닌 ARM Cortex-A57 기반 옵테론 A1100 시리즈 뿐. 이후 ARM에 완전히 손을 떼고 기존 제품으로 공략하는 방향으로 선회하였다. #
  • 락칩: 중국의 AP 설계사. 중국제 태블릿 컴퓨터 등에 주로 사용된다.
  • Allwinner: 중국의 AP 설계사. 락칩과 마찬가지로 중국제 태블릿 컴퓨터 등에 사용됨.
  • Marvell: 인텔의 XScale을 제조했던 ARM 사업부서를 인수해서 지금도 제조를 하고 있다. 과거에는 여러 PDA블랙베리에 들어갔었다.
  • Ampere Computing: 전직 Intel 및 AMD 직원들이 2017년에 설립한 회사로 서버용 제품을 제조. 특히 CEO가 전직 Intel 사장이었음.


5.1. 대표적인 모델


모델명은 모두 라이센스 생산명이다.
MP3P용 탑재 ARM 모델은 이쪽에서 확인.
  • XScale 시리즈 - 과거에는 인텔이, 지금은 Marvell이 만드는 SoC이다. 현재 64비트를 지원하는 최신 쿼드코어 SoC인 PXA 1908이랑 옥타코어인 PXA1936을 제조하고 있다. 또한 이전에는 갤럭시 탭3 7.0, 갤럭시 S III미니 밸류 에디션 사양으로도 썼다.
  • 삼성전자 SCXXXX 시리즈 - 삼성에서 제조한 SoC이다. HP의 iPAQ 일부 기종에 탑재되었다. 멀티미디어 성능이 클럭 대비 훌륭하다고 알려져 있다. 대체로 가격이 싼 편이라 보급형에 많이 들어간다. 국내 전자사전인 누리안 Z1도 이 SoC가 탑재되어 있다.
  • Texas Instruments DaVinci 시리즈 / OMAP 시리즈 - 원래는 캠코더디지털 카메라 등에서 비디오 인코딩&디코딩 기능과 함께 내장 프로세서 기능을 동시에 수행하기 위하여 개발된 칩셋으로, 코덱과 GPU 역할을 겸하는 DSP 부분과 ARM에 기반한 CPU 부분이 통합된 듀얼코어 구조의 칩셋이다. 국내에는 맥시안의 일부 PMP에 탑재되어 잘 알려진 이 칩셋은, 멀티미디어 코덱을 칩셋 자체에 탑재한다는 개념을 처음 개발한 칩셋으로서, 동영상을 하드웨어 인코딩 및 디코딩이 가능하기 때문에 멀티미디어 재생에서 뛰어난 성능을 보여 주었다. 하지만 SoC 내부에 탑재된 CPU 코어의 성능은 떨어진다는 평이었다. 현재는 OMAP 시리즈로 이어지고 있다. 2013년부터 모바일 AP 사업은 손을 떼고 기타 임베디드 및 차량용 AP에 영업력을 집중하고 있다.
아래 모델들은 안드로이드iPhone이든 바다 폰이든 윈도폰이든 '''옴니아 시리즈를 제외한 각 회사의 대표 스마트폰'''에 사용 중이다.
  • 퀄컴 스냅드래곤 - 다수의 라인업이 레퍼런스가 아니라 커스텀이다. 성능으론 메이저 4대 AP중에서 최악으로 쳤지만(Cortex-A9 출시 이후로), 통신 칩까지 원칩이 가능한 장점 때문에 많이 사용되었다. 그러나 2012년 Krait 코어를 내면서 듀얼코어 임에도 불구하고 Cortex-A9 기반 쿼드코어와 비슷한 성능을 보여주며 스냅드 레기라는 인식을 깨부쉈다. 이후 차근차근 후속 제품을 준비하고 있다. 2014년도에도 시장 지배적인 위치를 점유하고 있으나 2014년 말 기준 최신작인 스냅드래곤 810의 제품화에 문제가 있다고 알려져 있다. 2015년 3월 기준 MWC에서 스냅드래곤 810을 탑재한 HTC M9이 발표되었다. 퀄컴은 발열문제가 해결되었다고는 하였지만 벤치마크 도중 과열로 벤치마크가 중단되는 현상이 있었다고 한다. 다음 크라이요(Kryo) 아키텍처 세대인 616, 620, 625/629, 815, 820 제품군은 삼성에게 위탁생산하여 14nm 공정으로 생산된다. 생산량을 위하여 TSMC의 16nm 공정도 주문시 선택 가능하다. 리소그래피가 낮아지는 만큼 전성비와 발열이 낮아지겠지만. 2019년 현재는 화룡같은 옛날의 불명예스러운 별명은 다 옛말이고 종합성능에서 애플 다음가는 ARM AP의 대표주자다운 매우 높은 성능을 보여주고 있다.
    2~3년 마다 엑시노스와의 성능 우위 구도가 뒤바뀌는 특징이 있다.
    3110, 4210, 4412의 카운터 파트인 S2, S3, MSM8960은 스냅드래곤의 상대적 열세.[20] S4 Pro 세대부터 스냅드래곤 801까지는 스냅드래곤의 상대적인 우세.[21] 5430/5433, 7420, 8890의 카운터 파트인 805, 808/810, 820/821은 스냅드래곤의 상대적 열세.[22] 8895 vs 835는 성능상으로는 8895가 소폭 우세였으나 전력효율 면에는 835가 우세인 구도였다.[23] 그 이후의 9810~9830을 상대하는 845~865는 스냅드래곤의 상대적 우세. 예외사항으로는 7nm EUV 공정덕에 855와 비슷한 성능을 가졌다는 9825 밖에 없다.[24]
  • 삼성전자 엑시노스 시리즈: iPhone 3GS에 탑재되었던 허밍버드로 시작하여, 후속 SoC로 출시된 엑시노스 4210에서부터 '엑시노스'라는 브랜드를 적용하기 시작했다. 이후 최고의 AP로 생각되었으나, 2012년 스냅드래곤의 부상으로 주춤했고 2013년과 2014년에는 스냅드래곤에 완연히 밀리는 모습을 보이고 있다. 이후 2014년 하반기에 출시된 엑시노스 5430과 5433이 시장에서 좋은 스타트를 끊은 상황으로 2015년 실적이 기대되는 중. 엑시노스 7420이 탑재된 갤럭시 S6가 발열 문제로 병크를 일으킨 스냅드래곤 810을 뛰어넘는 벤치점수를 보여주고 있다.# 갤럭시 s시리즈 초기부터 준수한 퍼포먼스를 보여주며 스냅드래곤 대비 우세라는 좋은 이미지를 가지고 있었으나, 자체설계한 M3 빅코어 도입 이후로 상당히 부진한 모습을 보여주고 있다. 9810의 경우 최대 멀티쓰레드 성능은 우수하나 설계에 문제가 있는지 실사용에서는 스냅드래곤은 물론이고 화웨이 기린에게조차 다소 처지는 경우가 많다. 9820, 9825 들어서는 그나마 좀 나아지긴 했으나 여전히 성능, 전력소모, 발열 등 전반적으로 스냅드래곤 대비 열세이고 과거의 영광은 많이 퇴색되었다. 게다가 긱벤치가 5버전부터는 메모리 부분의 배점을 확 낮추면서 엑시노스의 점수는 그야말로 떡락했고, 벤치상으로 스냅드래곤과 동급 수준의 배점에 전력효율은 2/3 수준에 그치는 굴욕을 당했다. [25] 엑시노스 몽구스 코어 설계 팀이 해체됐다는 등 다시 ARM 레퍼런스 코어로 전환할지 모른다는 루머가 계속 나오는 중이다. 3D게임 성능도 암울한 편인데 탑재된 GPU인 말리가 이론상 연산성능은 좋으나 게임 및 드라이버 호환성이 열악해 실제 게임 구동에서 퍼포먼스가 영 좋지 못한 것이 고질적인 큰 단점이다. 과거 엑시노스가 높은 CPU성능으로 명성을 떨치던 시절에조차도 게임 그래픽 성능만큼은 구리다는 평을 지속적으로 들었다.
  • NVIDIA Tegra - NEON SIMD 유닛을 잘라내었기 때문에 동급 메이저 4대 AP 중 가장 다이 사이즈가 작다. 덕분에 동영상 H/W 가속 부분은 고자급이 되었다. GeForce 7000대의 아키텍처를 기반으로 하는 그래픽 코어를 한 동안 우려먹었으며, 게임에 한해 다른 AP에 비해 막강함을 보이며 Tegra Zone에 등록된 앱의 특수효과를 타 AP에 비해 화려하게 볼 수 있는 장점이 있다. Tegra 3부터는 NVIDIA도 NEON SIMD 유닛을 추가했다. 커널지원이 매우 빈약하며, 소스공개에도 폐쇄적이기 때문에 여러모로 욕을 들었다. [26] 이상은 Tegra 2 시절 이야기. Tegra 3 이후는 제법 좋아졌으나, 괜히 테구라라고 하는 게 아니다. 넥서스 7의 테그라 3세대 이후의 테그라가 사용된 물건은 손에 꼽을 수준. 2014년도에 Tegra 4가 출시되면서 기존의 테구라라는 이미지를 떨쳐내고 가장 뛰어난 성능의 AP중 하나로 취급받는 중. 그러나 격화되는 겅쟁속에서 결국 스마트폰 시장은 포기하고 태블릿, 콘솔, 자동차 전장품으로 방향을 돌렸다. 이는 경쟁사들의 AP 대비 GPU 성능만 쓸만하고 CPU성능에선 되려 전성비가 밀리는 모습을 보여준 것도 한몫했다.
  • 프리스케일 i.MX5/6 시리즈 등을 출시하고는 있는데 이 제품은 주로 모바일용이 아닌 차량/임베디드용으로 기획되었다. 최신 AP에 들어간 ARM 코어도 Cortex-A9라서 성능 경쟁에서는 두 발짝 밀려난 상황. i.MX7은 묻혔고 i.MX8이 2019년 출시 예정이다.
  • 텔레칩스 TCC88XX 시리즈 - 진저브레드 및 허니콤 지원을 위한 시리즈. Cortex-A8을 탑재했다. GPU는 Mali-200(엑시노스에 들어가는 Mali-400의 2세대전 모델). Cortex-A5 MP2 코어도 출시되었다. 전력소모 면에서는 이점이 있을지 모르나 Cortex-A5의 성능은 Cortex-A9의 60% 정도밖에 안 된다.
  • Apple Silicon A6 - iPhone/iPad/Mac용. ARM에 라이센스를 받아 재설계한 최초의 모델(생산은 삼성전자)로 Cortex-A9와 A15의 중간 수준에 해당하는 커스텀 계열로 보고 있다.요약기사 CNET기사(A6 제작과정) iPhone 초기부터 PA semi라는 PPC 계열 AP 개발 관련 회사를 인수하며 지속적으로 개발 중이었다. 2014년 기준으로 A8의 수탁생산 업체가 TSMC로 변경되면서 기존에 Apple의 AP를 독점 생산하던 삼성 시스템LSI사업부가 큰 타격을 받게 되었다. A9 즈음부터는 확실히 경쟁사 대비 앞선 퍼포먼스를 내기 시작하였으며, A11 Bionic이후로는 경쟁사 대비 가히 압도적인 성능을 보여주고 있다. 타사에 비해 1년 이상 앞서있다는 평.[27] 특히 싱글쓰레드 성능은 정말로 압도적으로 높다. 그러고도 타사 대비 칩셋 다이사이즈나 전력소모는 오히려 낮은 등 현재 ARM 진영에서 AP설계 끝판왕으로 취급받는 중.[28] A13부터는 정수연산 성능에서는 x86의 하이엔드 CPU인 9900K, 3900X와 동급을 달성했고 부동소수점 연산 성능에서도 20% 열세에 불과할 정도로 엄청난 성능을 뽑아내고 있다.# 이는 경쟁사와 비교했을 때 절대성능도 압도적이지만 전력 대비 성능 또한 최대 2배에 가까운 수준이다. 또한 iPad Pro용으로 AP구성을 확장한 커스텀칩을 따로 제작해서 탑재하는데, 이 커스텀칩의 성능은 일반적으로 동세대 iPhone용 칩에 비해 CPU는 멀티쓰레드 기준 1.5배 이상, GPU는 2배 이상의 성능을 자랑한다.
  • ST-에릭슨 NovaThor(노바토르) - 소니 모바일의 엑스페리아 P, 삼성전자의 갤럭시 에이스 2, 갤럭시 3 미니 등에 사용되었다. 주 모델은 NovaThor U8500으로 Cortex-A9 기반 듀얼코어. 차기 모델로 Cortex-A15 기반 듀얼코어도 예정 중이나 2012년 12월경에 AP 사업 철수 얘기가 나오다가 결국 2013년에 철수.
  • 미디어텍 MTXXXX: 대만제 칩셋이며, 가격이 저렴하다는 특징으로 중국제 태블릿 컴퓨터에 많이 사용되고 있다. 물론, 밑에 나열된 저가형 칩셋과 달리 기본 성능도 탄탄하다는 큰 장점이 있다. 통신칩까지 들어갈수 있다는 장점 때문에 패블릿이나, 갤럭시 탭과 같은 몬스터폰 종류에도 많이 사용되고 있다. 하지만 2015년도에 나온 Helio 시리즈들은 스냅드래곤이나 엑시노스와 경쟁이 될 만큼 성능과 가격이 올라갔다.
  • 하이실리콘: 중국 화웨이의 자회사인 AP 제조사, K3V2계열의 ARM Cortex-A9 칩과, Kirin 시리즈의 A15 칩이 존재한다. 사실상 화웨이 단독사용이지만 삼성과 마찬가지로 회사의 스마트폰 출고량이 워낙 많다 보니 메이저한 칩으로 취급받는 중. 성능 또한 매우 준수한 평가를 받는다. 삼성이 M3 코어에서 거나하게 삽질하는 동안 기린 980/990 들어서는 동시기 스냅드래곤과 거의 대등한 퍼포먼스를 보여주는 중. 물론 이쪽도 ARM 레퍼런스 코어를 사용한다.
그 외 ARM 코어를 탑재한 저가형 칩셋류
이러한 모델들은 대부분 원가 절감을 위해서 GPS, 통신칩은 포함되지 않으며, 심지어 블루투스조차 빠지는 경우가 종종 있다.
  • 락칩 RK 시리즈 - 2011년에 나온 RK2918의 경우는 중국산 태블릿에 무더기로 깔리는 중인데 상당히 쓸만하다는 평을 받고 있다. 전체 성능은 Exynos 3 Single(삼성 허밍버드-> Exynos 3110-> Exynos 3 Single)을 이기고 엑시노스 4에게는 지는 수준이다. 2012년 중순에는 당시 최신형 듀얼코어인 RK3066을 지원하느라 정신이 없는지 RK2918의 지원이 거의 끊어지다시피한 수준이라는 단점이 있다. RK3066의 성능은 엑시노스 4 듀얼 45nm급인데 발열을 아직 제대로 못 잡아서 실사용을 할 때는 주의해야 할 수준이었다가, 대략 2012년 8월쯤부터 나오는 제품들은 발열을 잡은 편이다. Action의 저가 정책에 많이 말렸는지, RK3026으로 다운클럭, GPU를 반토막내고 RAM 최대지원도 반토막난 저가형 모델과. 쿼드코어 RK3188, GPU만 SGX 540으로 바꾼 RK3168이 존재. 2014년에 Cortex A17 쿼드코어 기반의 RK3288이 공개되었다. 2015년에는 Cortex A53 옥타코어 기반의 RK3368과 2016년에는 Cortex A53 쿼드코어, A72 듀얼코어로 구성된 RK3399가 출시되었다.
  • Allwinner A 시리즈 - 대표적인 모델이었던 A10이 중국에서 락칩 RK2918과 경쟁하는 칩셋인데 서로 장단점이 있다는 평을 듣는다. 락칩 RK2918은 장점이 I/O 성능이 좋은 대신 그래픽 부분이 살짝 약하고 동영상 코덱이 약간 부족한 것이 단점이다. 영상 코덱은 어느 정도 되는데 사운드 코덱이 AAC 코덱지원이 잘 안 된다는 평이 있다. Allwinner A10은 동영상 쪽과 GPU는 좋지만 I/O가 좀 떨어진다는 평이 있다. A10은 2160P지원이라고 광고하며 GPU는 Mali-400 MP1이 탑재되었다. 2012년 중순에는 대부분이 아이스크림 샌드위치로 업그레이드 되었으며 몇몇 제작사들에서는 벌써 젤리빈(안드로이드 4.1)을 테스트 해보는 등 사후지원이 RK2918보다 좋아진 편이다. 하지만 Cortex A7기반으로 듀얼, 쿼드를 만들 거라고 발표해 놓고 차기작 출시가 늦어지고 있는 중이다. Cortex A7 기반 듀얼 코어는 A23/20, 쿼드 코어는 A31/31S로 명명되어 2013년 출시되었다. 대표적인 모델은 Onda V972와 NOVO9 Spark가 있다. A10과 A13이 있으며 둘 간 차이는 SATA, HDMI, 2160p 가동 유무의 차이밖에 없으며, 전체적으로 A13이 A10의 마이너 염가판 모델이다. 2014년 6월, 보급형 기기를 공략하기 위한 칩셋인 A33을 공개하였다.
  • AMLogic - Allwinner와 RockChip의 서로의 단점, 그래픽 성능 + I/O 성능을 서로 보완한 물건이다. 다들 55nm 이하 공정으로 가는 판에 홀로 65nm 공정인 점에서 흠. 2012년 기준, 8726-M6/MX는 Cortex A9 MP2 에 Mail-400 MP2를 장착했으며, 젤리빈이 올라간 물건도 심심찮게 보인다. 대략적인 성능은 RK 3066의 클럭다운 버전이라고 보면 되는정도. GPU 코어수가 2배 차이가 나기는 하나 상대적으로 높은 클럭으로 인해 성능은 20%~30% 정도밖에 차이나지 않는다. 8726 ML, M3 같은 싱글코어는 PSP 짝퉁 게임기에 쓰인 이력도 있다.
  • VIA WonderMedia - WM8650 ARM9와, WM8850 Cortex-A8? 9? 가 있다. 주로 아이패드 짝퉁 디자인, 감압식 패널에, 2USB Port, Eternet 단자가 있는 20핀 외장 OTG 젠더를 사용하는 것이 큰 특징이다. 이더넷, HDMI, 일반 USB 등 수많은 외장 포트를 가진 스마트북/넷북 모델로도 많이 출시되어 있다.
  • Nufront - AML과 유사하나 Mali MP 시리즈가 아닌 싱글이다.
  • Action - A9 Family 기반 ATM7029 MP4 GC1000 MP2 모델이 존재. 공식사이트에선 ARM v7 instruction set, A9 family 라고 되어 있으나. 각 안드로이드 포럼에선 A5, A7, A9, A5 dual+A9 dual 등의 이견이 엇갈라고 있으며 대다수의 의견은 A5로 추정이 되고 있다. 최근에는 ATM 7021 MP2와,(ATM7029와 동일 코어로 추정.) 공식사이트에서도 Family 가 아닌 A9 이라고 소개하는 ATM7039 MP4 + SGX 544가 출시되었다,

6. big.LITTLE


ARM의 아키텍처들이 고성능화 되면서 갈수록 떨어지는 전성비(전력 대비 성능 비율) 문제를 해결하기 위해서 개발한 전력 소모율 개선 솔루션. 자세한 내용은 ARM big.LITTLE 솔루션 문서 참조.

7. 개발환경 구축


당연하지만 아직 현실적으로 성능이 우수한 ARM 기반 빌드 머신을 구축할 방법이 없기 때문에 사실상 거의 모든 프로젝트가 Cross-compile 환경에서 개발된다. 구축 자체는 가능하지만 Cross-compile 환경의 비효율보다 절대적 성능의 격차가 더 크기 때문. Cross-compile 환경에서 3분 걸릴 소스가 ARM Host에서 빌드할 때 3시간도 넘게 걸리고, 컴퓨터의 가격이 프로그래머의 1개월치 인건비 수준이라 사실상 개발비용을 절감하는 것은 인건비를 줄이는 게 최선이다. 과거야 연산성능이 좋은 컴퓨터가 매우 비싸서 비효율성을 용납하지 않았지만 지금은 컴퓨터보다 인건비가 비싸므로 사람을 효율적으로 굴리기 위해서 컴퓨터가 더 고생해도 된다.
리눅스 계열 빌드 머신으로 개발할 때에는 당연히 Linaro나 Buildroot 등의 GCC Toolchain을 사용하는 경우가 대다수이고, 윈도우 환경에서는 ARM에서 판매하는 ADS, RVDS 개발환경을 사용하거나 Cygwin 위에서 GCC 툴체인을 돌리는 경우도 있다. 최근에는 ARM 기반 컨트롤러 제품을 대상으로 하는 Keil 사의 개발환경도 사용되는 추세. WSL의 출시 이후 WSL 환경에 GCC를 올리는 사례도 늘어났다.
대표적인 스마트폰 플랫폼인 안드로이드의 경우 프로젝트 소스 안에 빌드에 맞는 GCC Toolchain을 제공하므로 별도의 Toolchain을 구축할 필요가 없다. 사실 엄밀히 말하면, 보통의 안드로이드 App은 ART라는 이름의 JVM 위에서 돌아가므로 기계어 코드를 만들 필요가 거의 없고, 리눅스 커널이나 안드로이드 OS 자체를 제작할 때, 혹은 네이티브 코드를 만들 때에나 리눅스 환경에서 크로스컴파일을 하면 된다.
지나친 커스텀으로 인해 OS 개발자들이 싫어한다고 한다. 리누스 토발즈 또한 ARM을 보면 골치아파진다고 토로했으며, # 명령어 세트(RISC, CISC 등) 같은 것 보다 호환성, 표준화, 지원여부가 더 중요하다면서 x86 계열은 이게 더 잘되어 있어 ARM보다 우월하다고 했다.#[29]

8. ARM 기반 AP 벤치마크 모음




9. 관련 문서



[1] 영국 BBC의 교육용 컴퓨터 기획을 Acorn에서 수주해서 개발한 것으로, 보조 프로세서를 연결할 수 있는 인터페이스를 갖추고 있어서 다양한 확장 프로세서 키트를 연결해 쓸 수 있었다.[2] 하지만 Acorn사는 이 즈음부터 사세가 기울어, 결국 2000년 브로드컴에 인수되는 것으로 역사에 종지부를 찍게 된다.[3] 네이밍 순서대로 나열함[4] S1,S3[5] 리네이밍급 변경[6] Krait300,400 [7] 물론 애플외엔 2021년부터 개발을 시작해도 몇년후에나 등장할 가능성이 높다. 적어도 퀄컴이 이미 프로토타입을 내놓았다는 소식이 있을 뿐...[8] 인텔은 노트북 시장과 서버 시장이 주력인데 둘다 직접적인 위협을 받고 있는 상황이다. 노트북의 경우, 이미 M1칩의 성능이 대부분 AMD64기반의 노트북 CPU를 압도하며 이마저도 발열량과 전력소모량까지 따지면 비교 및 경쟁할만한 AMD64기반 CPU는 전혀 없다. 서버의 경우, 이미 ARM칩을 활용한 서버가 계속해서 등장하고 있다.[9] 자사 서피스는 물론 서버까지 ARM칩을 대체할 예정.[10] 2022년까지 모든 맥들이 ARM기반으로 교체[11] 스마트폰과 크롬북을 위한 독자적인 칩 개발중[12] 컴퓨터용 ARM칩을 개발중[13] M1칩에 대응할 모바일 칩 개발중[14] M1칩에 대응할 모바일 칩 개발중[15] 이미 ARM칩 기반 서버를 서서히 확장하고 있다.[16] 최적화 이후로 엔비디아를 버리고 독자적인 ARM칩으로 대체[17] 여러 중국회사들도 존재하고 있고 노트북과 데스크탑외에도 ARM으로 이주할려는 회사들이 많이 존재한다. 대표적으로 테슬라[18] 사실상 인텔이 독점을 통해 삽질한 결과이며 당장 애플과 마소둘다 탈인텔을 대놓고 하고 있는 회사다.[19] 다만, Apple 칩들은 동시기 SoC와 비슷하거나 좀 더 큰 사이즈인데 타사 SoC들은 모뎀 포함 사이즈인 걸 감안하는 게 좋다. 하지만 그걸 감안해도 애초에 더 큰 다이 사이즈에 더 적은 전력소모를 보여주고 있기 때문에 기술적으로 가장 앞선 것은 사실이다. 또한 Apple이 ARM의 창립멤버이자 현재까지도 막강한 영향력을 유지하고 있는 점 덕분에 여러가지 면에서 ARM 진영 전체의 개발 방향 주도권을 크게 차지하고 있기도 하다.[20] S1부터 S3의 출시시기에 해당된다.[21] Note2부터 S5의 출시시기에 해당된다.[22] Note4부터 Note7(현재는 단종됨)의 출시시기에 해당된다.[23] S8부터 Note8의 출시시기에 해당된다.[24] S9부터 S20의 출시시기에 해당된다.[25] GB4 기준으로는 9810의 점수는 845에 비해 2배 가까운 점수의 우위를 가졌으나 GB5, SPEC 기준 1.5배 수준의 차이로 좁혀졌다. 역시 GB4 기준 9820/9825의 점수는 855보다 한등급 높았으나, SPEC, GB5 기준 동일 수준의 점수를 보여준다. 싱글코어 기준 820 vs 780으로 엑시노스 측이 소폭 높으나 GB4처럼 압도적인 점수차를 보여주지는 못하는 상황.[26] 1분 45초경 참고. 참고로 손가락을 날리신 분은 리눅스의 아버지 리누스 토르발스.[27] 2017년에 나온 A11 Bionic을 2019년에 나온 스냅드래곤 855가 확실하게 앞서지 못하고 엎치락 뒤치락 할 정도이다. 물론 Apple은 동년 A13 Bionic에서 또 A12 Bionic대비 성능을 20%나 확장시켜 여전히 경쟁사 대비 저 멀리 앞서가 있는 상황.[28] 물론 다이사이즈가 작은 것은 Apple 칩셋들이 엑시노스나 스냅드래곤과 달리 모뎀이 AP에 통합되지 않고 또한 월등한 퍼포먼스 또한 하드웨어와 소프트웨어를 동시에 설계하는 Apple 특성상 최적화에 훨씬 유리한 것도 있다. 어쨌든 결과적으로 나오는 퍼포먼스 아웃풋은 월등하게 높은 편.[29] 다만 토발즈가 ARM 자체를 싫어하는 건 아니다. 그는 항상 노트북급 성능을 가지는 ARM CPU가 있었으면 좋겠다고 했으며, 실제로 2020년 애플에서 x86 대신 ARM(Apple Silicon)을 넣은 Mac을 발표하자, 해당 소식에 기뻐했다. #