ARM 아키텍처 제품군
ARM architecture family디자이너 | |
---|---|
비트 | 32비트, 64비트 |
소개했다 | 1985; | 전 1985)
설계. | RISC |
유형 | 등록-등록 |
분기 | 조건코드, 비교 및 분기 |
열다. | 독점적 |
소개했다 | 2011; |
---|---|
버전 | ARMv8-R, ARMv8-A, ARMv8.1-A, ARMv8.2-A, ARMv8.3-A, ARMv8.4-A, ARMv8.5-A, ARMv8.6-A, ARMv8.7-A, ARMv8.8-A, ARMv8.9-A, ARMv9.0-A, ARMv9.1-A, ARMv9.2-A, ARMv9.3-A, ARMv9.4-A |
인코딩 | AArch64/A64 및 AArch32/A32는 32비트 명령어를 사용하고, T32(Thumb-2)는 16비트 및 32비트 혼합[1] 명령어를 사용합니다. |
엔디안니스 | Bi(기본값보다 작음) |
확장 | SVE, SVE2, SME, AES, SHA, TME; 필수 사항: 엄지-2, 네온, VFPv4-D16, VFPv4, 오래됨: 자젤 |
레지스터 | |
범용 | 31 × 64비트 정수 레지스터[1] |
부동소수점 | 스칼라 32비트 및 64비트 FP 또는 SIMD FP 또는 정수를 위한 32 × 128비트 레지스터[1]; 또는 암호학 |
버전 | ARMv9-R, ARMv9-M, ARMv8-R, ARMv8-M, ARMv7-A, ARMv7-R, ARMv7E-M, ARMv7-M, ARMv6-M |
---|---|
인코딩 | 엄지-2 확장자를 제외한 32비트는 16비트와 32비트가 혼합된 명령어를 사용합니다. |
엔디안니스 | Bi(기본값보다 작음) |
확장 | 엄지-2, 네온, 자젤, AES, SHA, DSP, 포화, FPv4-SP, FPv5, 헬륨 |
레지스터 | |
범용 | R14(링크 레지스터)를 포함한 15 × 32비트 정수 레지스터(R15(PC)는 포함하지 않음) |
부동소수점 | 최대 32 × 64비트 레지스터,[2] SIMD/플로팅 포인트(옵션) |
버전 | ARMv6, ARMv5, ARMv4T, ARMv3, ARMv2 |
---|---|
인코딩 | 엄지 확장자가 16비트와 32비트 명령어를 혼합하여 사용하는 것을 제외한 32비트. |
엔디안니스 | ARMv3 이상에서 Bi(기본값으로 작음) |
확장 | 엄지, 자젤 |
레지스터 | |
범용 | R14(링크 레지스터)를 포함한 15 × 32비트 정수 레지스터, R15(PC, 이전 버전의 26비트 주소 지정) |
부동소수점 | 없음. |
ARM(소문자는 arm으로 표기되며, 이전에는 고급 RISC Machine의 약자였으며, 원래는 Acorn RISC Machine의 약자)은 컴퓨터 프로세서를 위한 ISA(RISC 명령 집합 아키텍처) 제품군입니다. Arm Ltd.는 ISA를 개발하고 다른 회사에 라이센스를 부여하며, 그들은 명령 세트를 사용하는 물리적 장치를 만듭니다. 또한 이러한 ISA를 구현하는 코어를 설계하고 라이센스를 부여합니다.
ARM 프로세서는 저렴한 비용, 낮은 전력 소비 및 낮은 발열로 인해 스마트폰, 노트북, 태블릿 컴퓨터를 포함한 가볍고 휴대 가능한 배터리로 구동되는 장치와 임베디드 시스템에 유용합니다.[3][4][5] 그러나 ARM 프로세서는 2020년부터[6] 2022년까지 세계에서 가장 빠른 슈퍼컴퓨터(후가쿠)를 포함하여 데스크톱과 서버에도 사용됩니다. ARM은 2,300억 개 이상의 ARM 칩을 생산하고 [7][8][9]있으며, 2022년[update] 현재 가장 널리 사용되는 명령 집합 아키텍처 제품군입니다.[10][4][11][12][13]
ARM 디자인은 여러 세대에 걸쳐 존재해 왔습니다. 원래 ARM1은 32비트 내부 구조를 사용했지만 26비트 어드레스 공간이 있어 64MB의 메인 메모리로 제한되었습니다. 이 제한은 32비트 주소 공간이 있는 ARMv3 시리즈에서 제거되었으며, ARMv7까지의 추가 세대는 32비트로 유지되었습니다. 2011년에 출시된 ARMv8-A 아키텍처는 새로운 32비트 고정 길이 명령어 세트를 통해 64비트 주소 공간과 64비트 산술을 지원합니다.[14] 암 주식회사 또한 다른 규칙을 위한 일련의 추가 명령어 세트를 출시했습니다. "툼" 확장은 코드 밀도를 향상시키기 위해 32비트와 16비트 명령어를 모두 추가하는 반면, 자젤은 자바 바이트코드를 직접 처리하기 위한 명령어를 추가했습니다. 보다 최근의 변경 사항으로는 성능 또는 내결함성 향상을 위해 동시 다중 판독(SMT)을 추가하는 것이 있습니다.[15]
역사
BBC 마이크로
에이콘 컴퓨터의 최초의 성공적인 디자인은 1981년 12월에 소개된 BBC 마이크로였습니다. 이것은 MOS Technology 6502 CPU를 기반으로 한 비교적 전통적인 기계였지만, 더 빠른 DRAM을 사용했기 때문에 애플 II와 같은 경쟁 디자인의 성능보다 대략 두 배의 속도로 작동했습니다. 그 시대의 일반적인 DRAM은 약 2 MHz에서 작동했습니다. Acorn은 Hitachi와 더 빠른 4 MHz 부품 공급을 위한 계약을 체결했습니다.[16]
그 시대의 기계들은 일반적으로 프로세서와 프레임 버퍼 사이에 메모리를 공유했고, 이를 통해 프로세서는 별도의 입출력(I/O)을 수행할 필요 없이 화면의 내용을 빠르게 업데이트할 수 있었습니다. 비디오 디스플레이의 타이밍이 정확하기 때문에 비디오 하드웨어는 해당 메모리에 우선적으로 액세스해야 했습니다. 6502의 설계에 이상이 생겼기 때문에 CPU는 절반의 시간 동안 메모리를 그대로 두었습니다. 따라서 CPU를 1MHz로 실행함으로써 비디오 시스템은 다운 시간 동안 데이터를 읽을 수 있었고 RAM의 총 2MHz 대역폭을 차지했습니다. BBC Micro에서는 4 MHz RAM을 사용하여 동일한 기술을 사용할 수 있었지만 두 배의 속도로 실행되었습니다. 이를 통해 시장에서 유사한 기계를 능가할 수 있었습니다.[17]
에이콘 비즈니스 컴퓨터
1981년은 IBM Personal Computer가 도입된 해이기도 했습니다. 6502의 8비트 설계와 비교하여 16비트 CPU인 인텔 8088을 사용하여 전체적으로 더 높은 성능을 제공했습니다. 이 제품의 도입으로 데스크톱 컴퓨터 시장은 크게 변화했습니다. 지난 5년 동안 주로 취미 및 게임 시장이 생겨났던 것이 이전의 8비트 디자인으로는 경쟁할 수 없는 필수 비즈니스 도구로 바뀌기 시작했습니다. 모토로라 68000[18] 및 National Semiconductor NS32016과 같은 더 새로운 32비트 디자인도 출시되었습니다.[19]
Acorn은 이 시장에서 경쟁하는 방법을 고려하기 시작했고 Acorn Business Computer라는 이름의 새로운 종이 디자인을 제작했습니다. 그들은 BBC 마이크로의 열 배의 성능을 가진 기계를 생산하는 것을 목표로 삼았지만, 가격은 같았습니다.[20] 이것은 PC보다 성능이 뛰어나고 가격이 저렴합니다. 동시에, 최근 애플 리사의 도입은 그래픽 사용자 인터페이스(GUI) 개념을 더 많은 청중에게 제공하고 GUI를 가진 기계의 미래를 제안했습니다.[21] 그러나 Lisa는 지원 칩, 대용량 메모리, 하드 디스크 드라이브로 가득 차 있어 가격이 9,995달러로 매우 비쌌습니다.[22]
그런 다음 엔지니어들은 사용 가능한 모든 CPU 설계를 연구하기 시작했습니다. 기존의 16비트 디자인에 대한 그들의 결론은 훨씬 더 비싸고 여전히 BBC Micro 디자인보다 약간 더 높은 성능만을 제공하는 [23]"약간 엉망"이라는 것이었습니다. 그들은 또한 그 수준에서도 작동하기 위해 거의 항상 많은 수의 지원 칩을 요구했고, 이것은 컴퓨터 전체의 비용을 상승시켰습니다. 이러한 시스템은 단순히 설계 목표에 도달하지 못할 것입니다.[23] 그들은 또한 새로운 32비트 디자인을 고려했지만, 이러한 디자인들은 훨씬 더 비용이 많이 들고 지원 칩에도 같은 문제가 있었습니다.[24] 소피 윌슨(Sophie Wilson)에 따르면 당시 테스트한 모든 프로세서는 약 4 Mbit/초 대역폭으로 거의 동일한 성능을 발휘했습니다.[25][a]
두 가지 중요한 사건이 에이콘을 ARM으로 이끌었습니다. 하나는 캘리포니아 대학교 버클리에서 일련의 보고서를 발표한 것인데, 이 보고서는 단순한 칩 디자인은 그럼에도 불구하고 시장에 나와 있는 최신 32비트 디자인보다 훨씬 높은 매우 높은 성능을 가질 수 있다고 제안했습니다.[26] 두 번째는 스티브 퍼버(Steve Furber)와 소피 윌슨(Sophie Wilson)이 MOS 팀의 논리적 후계자가 되어 WDC 65C02와 같은 새로운 버전을 제공하는 빌 멘쉬(Bill Mensch)와 그의 여동생이 운영하는 회사인 웨스턴 디자인 센터(Western Design Center)를 방문한 것입니다. Acorn 팀은 고등학생들이 Apple II 기계에서 칩 레이아웃을 만드는 것을 보았고, 이것은 누구나 할 수 있다는 것을 암시했습니다.[27][28] 이와는 대조적으로, 현대식 32비트 CPU를 연구하는 또 다른 디자인 회사를 방문한 결과, 12명 이상의 멤버로 구성된 팀이 이미 디자인 H 개정 작업을 진행 중이었지만 여전히 버그가 포함되어 있는 것으로 나타났습니다.[b] 이로써 1983년 말에 자체 CPU 설계인 Acorn RISC Machine을 시작하기로 결정했습니다.[29]
디자인 컨셉
Berkeley RISC의 원래 디자인은 어떤 의미에서는 교육 시스템이었고, 완전한 성능을 위해 특별히 설계된 것이 아닙니다. RISC의 기본적인 레지스터 헤비 및 로드/스토어 개념에 ARM은 6502의 좋은 평가를 받은 디자인 노트를 많이 추가했습니다. 그중에서도 가장 중요한 것은 인터럽트를 신속하게 처리할 수 있다는 점이었습니다. 이를 통해 기계는 외부 하드웨어를 추가하지 않고도 합리적인 입출력 성능을 제공할 수 있었습니다. 6502와 유사한 성능의 인터럽트를 제공하기 위해 ARM 설계는 물리적 주소 공간을 총 주소 지정 가능 공간의 64MB로 제한하여 26비트의 주소가 필요합니다. 명령어의 길이가 4바이트(32비트)이고 4바이트 경계에 정렬되어야 하므로 명령어 주소의 하위 2비트는 항상 0이었습니다. 이는 프로그램 카운터(PC)가 24비트만 있으면 된다는 것을 의미하며, 32비트 레지스터에 8비트 프로세서 플래그와 함께 저장할 수 있습니다. 즉, 인터럽트를 받으면 한 번의 작업으로 전체 시스템 상태를 저장할 수 있는 반면, PC가 완전한 32비트 값이라면 PC와 상태 플래그를 저장하기 위해 별도의 작업이 필요합니다. 이 결정으로 인터럽트 오버헤드가 절반으로 줄었습니다.[30]
실질적인 실제 성능 측면에서 가장 중요한 또 다른 변화는 페이지 모드 DRAM을 활용하도록 명령어 세트를 수정한 것입니다. 최근에 도입된 페이지 모드는 후속 메모리 액세스가 DRAM 칩에서 대략 동일한 위치, 즉 "페이지"에 있는 경우 두 배의 속도로 실행되도록 허용했습니다. 버클리의 디자인은 페이지 모드를 고려하지 않았고 모든 메모리를 동등하게 취급했습니다. ARM 디자인은 페이지 모드를 사용하여 하나의 페이지에 여러 레지스터를 채우거나 저장하는 데 사용할 수 있는 벡터와 같은 특별한 메모리 액세스 명령어인 "S-cycles"를 추가했습니다. 이를 통해 사용할 수 있을 때 메모리 성능이 두 배로 향상되었으며 그래픽 성능에 특히 중요했습니다.[31]
Berkeley RISC 설계는 레지스터 창을 사용하여 프로시저 호출에서 수행되는 레지스터 저장 및 복원 수를 줄였지만 ARM 설계는 이를 채택하지 않았습니다.
Wilson은 명령어 세트를 개발하여 BBC BASIC에서 프로세서 시뮬레이션을 작성하고 두 번째 6502 프로세서를 BBC Micro에서 실행했습니다.[32][33] 이것은 에이콘 엔지니어들이 올바른 길을 가고 있다는 것을 확신시켰습니다. 윌슨은 에이콘의 CEO인 헤르만 하우저에게 다가가 더 많은 자료를 요청했습니다. Hauser는 Wilson의 ISA를 기반으로 실제 프로세서를 설계하기 위해 승인을 하고 소규모 팀을 구성했습니다.[34] 공식적인 Acorn RISC Machine 프로젝트는 1983년 10월에 시작되었습니다.
ARM1
Acorn은 VLSI Technology를 "실리콘 파트너"로 선택했는데, 이는 Acorn의 ROM 및 커스텀 칩 공급원이었기 때문입니다. Acorn은 디자인을, VLSI는 레이아웃과 제작을 제공했습니다. ARM 실리콘의 첫 번째 샘플은 1985년 4월 26일에 처음으로 받고 테스트했을 때 제대로 작동했습니다.[3] ARM1로 알려진 이 버전들은 6MHz에서 실행되었습니다.[35]
최초의 ARM 애플리케이션은 BBC Micro의 두 번째 프로세서로서 지원 칩(VIDC, IOC, MEMC)의 개발을 완료하기 위한 시뮬레이션 소프트웨어 개발을 도왔고, ARM2 개발에 사용된 CAD 소프트웨어의 속도를 높였습니다. 윌슨은 이후 BBC BASIC을 ARM 어셈블리 언어로 다시 썼습니다. 명령어 세트를 설계하면서 얻은 심층적인 지식은 코드의 밀도를 매우 높게 하여 ARM BBC BASIC을 모든 ARM 에뮬레이터에게 매우 좋은 테스트로 만들었습니다.
ARM2
ARM1 보드의 시뮬레이션 결과는 8 MHz에서 작동하는 ARM2 설계가 1986년 말에 도입되었고, 1987년 초에는 10~12 MHz에서 속도 범프 버전이 도입되었습니다.[c] 이전에는 소프트웨어로 곱셈을 수행해야 했지만, 기본 아키텍처에서 큰 변화는 부스 곱셈기가 추가되었다는 것입니다.[37] 또한 새로운 Fast Interrupt reQuest 모드, 줄여서 FIQ는 레지스터 8~14를 인터럽트 자체의 일부로 교체할 수 있게 했습니다. 이는 FIQ 요청이 레지스터를 저장할 필요가 없다는 것을 의미하며 추가 속도 중단을 의미합니다.[38]
Drrystone 벤치마크에 따르면, ARM2는 Amiga나 Macintosh SE와 같은 일반적인 7 MHz 68000 기반 시스템의 성능보다 약 7배나 뛰어났습니다. 16MHz로 동작하는 인텔 80386보다 2배 빠르며, 멀티 프로세서 VAX-11/784 슈퍼미니 컴퓨터와 거의 같은 속도였습니다. 이를 능가하는 유일한 시스템은 Sun SPARC와 MIPS R2000 RISC 기반 워크스테이션이었습니다.[39] 또한 CPU는 고속 I/O를 위해 설계되었기 때문에 이러한 기계에서 볼 수 있는 많은 지원 칩을 분리했습니다. 특히 워크스테이션에서 자주 볼 수 있는 전용 DMA(Direct Memory Access) 컨트롤러가 없었습니다. 또한 메모리와 타이밍에 대한 동일한 기본 가정을 바탕으로 그래픽 시스템을 단순화했습니다. 결과적으로 설계가 대폭 간소화되어 고가의 워크스테이션과 동등한 성능을 제공하면서도 현대의 데스크톱과 유사한 가격대의 성능을 제공했습니다.[39]
ARM2는 32비트 데이터 버스, 26비트 주소 공간, 27개의 32비트 레지스터를 갖추고 있으며, 이 중 16개는 한 번에 액세스할 수 있습니다(PC 포함).[40] ARM2는 트랜지스터 수가 30,000개에 [41]불과했고 모토로라의 6년 된 68,000 모델은 68,000개 정도였습니다. 이러한 단순성의 대부분은 68000개 트랜지스터의 약 1/4에서 1/3에 해당하는 마이크로코드의 부족과 (당일 대부분의 CPU와 마찬가지로) 캐시의 부족에서 비롯되었습니다. 이러한 단순성 덕분에 ARM2는 낮은 전력 소비와 더 간단한 열 패키징을 구현할 수 있었습니다. 이는 더 적은 수의 전력 트랜지스터를 사용하면서도 현재의 IBM PS/2 모델 50보다 더 나은 성능을 제공하는 1987년의 Intel 80286을 사용하여 1.8 MIPS @ 10 MHz를 제공하고 이후 1987년 PS/270의 2 MIPS를 제공합니다. Intel 386 DX @ 16 MHz를 사용합니다.[42][43]
후속 제품인 ARM3는 4KB 캐시로 생산되어 성능이 더욱 향상되었습니다.[44] 주소 버스는 ARM6에서 32비트로 확장되었지만 상태 플래그에 대한 예약 비트 때문에 프로그램 코드는 26비트 호환 모드에서 처음 64MB 메모리 내에 있어야 했습니다.[45]
Advanced RISC Machine Ltd – ARM6
1980년대 후반, 애플 컴퓨터와 VLSI 테크놀로지는 ARM 코어의 새로운 버전에 대해 에이콘과 협력하기 시작했습니다. 1990년, Acorn은 디자인 팀을 Advanced RISC Machine [46][47][48]Ltd라는 이름의 새로운 회사로 분사했고, 1998년 모회사인 Arm Holdings plc가 런던 증권 거래소와 나스닥에 상장하면서 ARM Ltd가 되었습니다.[49] 새로운 애플-ARM 작업은 결국 1992년 초에 처음 출시된 ARM6로 진화하게 됩니다. 애플은 ARM6 기반의 ARM610을 애플 뉴턴 PDA의 기반으로 사용했습니다.
초기 라이센스 보유자
1994년, 에이콘은 RiscPC 컴퓨터의 메인 중앙 처리 장치(CPU)로 ARM610을 사용했습니다. DEC는 ARMv4 아키텍처에 라이선스를 부여하고 StrongARM을 생산했습니다.[50] 233 MHz에서 이 CPU는 1와트(신형은 훨씬 적은)만을 끌어 들였습니다. 이 작업은 나중에 소송 조정의 일환으로 인텔에 전달되었고, 인텔은 StrongARM으로 i960 제품군을 보완할 기회를 잡았습니다. 인텔은 나중에 XScale이라는 이름의 고성능 구현체를 자체 개발하여 이후 마벨에 판매했습니다. ARM 코어의 트랜지스터 수는 이러한 변화 동안 본질적으로 동일하게 유지되었습니다. ARM2는 30,000개의 트랜지스터를 가지고 있었던 [51]반면, ARM6는 35,000개로 증가하는 데 그쳤습니다.[52]
2005년에는 판매된 모든 휴대폰의 약 98%가 적어도 하나의 ARM 프로세서를 사용했습니다.[53] 2010년 ARM 아키텍처를 기반으로 한 칩 생산업체들은 스마트폰의 95%, 디지털 텔레비전 및 셋톱 박스의 35%, 모바일 컴퓨터의 10%를 차지하는 61억 개의 ARM 기반 프로세서의 출하량을 보고했습니다. 2011년 32비트 ARM 아키텍처는 모바일 장치에서 가장 널리 사용되는 아키텍처이며 임베디드 시스템에서 가장 널리 사용되는 32비트 아키텍처였습니다.[54] 2013년에는 100억 개가 생산되었으며[55] "ARM 기반 칩은 전 세계 모바일 기기의 거의 60%에서 발견됩니다."[56]
라이센싱
코어 라이선스
Arm Ltd.의 주요 사업은 IP 코어를 판매하는 것인데, 라이센스 계약자는 해당 코어를 기반으로 마이크로컨트롤러(MCU), CPU 및 시스템 온 칩을 만드는 데 사용합니다. 원래 설계 제조업체는 ARM 코어를 다른 부품과 결합하여 완전한 장치를 생산하는데, 일반적으로 기존의 반도체 제조 공장(팹)에서 저렴한 비용으로 제조할 수 있고 여전히 상당한 성능을 제공합니다. 가장 성공적인 구현은 ARM7이었습니다.억대 판매 TDMI. Atmel은 ARM7TDMI 기반 임베디드 시스템의 전구체 디자인 센터였습니다.
스마트폰, PDA 및 기타 모바일 장치에 사용되는 ARM 아키텍처는 ARMv5에서 ARMv8-A에 이르기까지 다양합니다.
2009년, 일부 제조업체들은 인텔 Atom 기반의 넷북과 직접적인 경쟁 관계에서 ARM 아키텍처 CPU를 기반으로 한 넷북을 선보였습니다.[57]
Arm Ltd.는 비용과 성과물이 다양한 다양한 라이센스 조건을 제공합니다. Arm Ltd.는 모든 라이센스 사용자에게 ARM 코어에 대한 통합 가능한 하드웨어 설명과 완전한 소프트웨어 개발 도구 세트(컴파일러, 디버거, 소프트웨어 개발 키트) 및 ARM CPU가 포함된 제조된 실리콘을 판매할 권리를 제공합니다.
ARM의 핵심 디자인을 통합한 SoC 패키지에는 엔비디아 테그라의 첫 3세대, CSR plc의 Quatro 제품군, ST-Ericsson의 Nova 및 NovaThor, 실리콘 랩스의 Precision32 MCU, 텍사스 인스트루먼트의 OMAP 제품, 삼성의 Hummingbird 및 Exynos 제품, 애플의 A4, A5 및 A5X, NXP의 i.MX가 포함됩니다.
ARM 코어를 자체 칩 설계에 통합하고자 하는 팹리스 라이센스 보유자들은 일반적으로 즉시 제조할 수 있는 검증된 반도체 지적 재산권 코어를 획득하는 데에만 관심이 있습니다. Arm Ltd.는 이러한 고객을 위해 선택한 ARM 코어에 대한 게이트 넷리스트 설명과 함께 추상화된 시뮬레이션 모델 및 테스트 프로그램을 제공하여 설계 통합 및 검증을 지원합니다. IDM(Integrated Device Manufacturer) 및 주조 공장 운영자를 포함한 보다 야심찬 고객들은 프로세서 IP를 합성 가능한 RTL(Verilog) 형태로 구입하기로 선택합니다. 합성 가능한 RTL을 통해 고객은 아키텍처 수준의 최적화 및 확장을 수행할 수 있습니다. 이를 통해 설계자는 수정되지 않은 넷리스트(높은 클럭 속도, 매우 낮은 전력 소비, 명령 집합 확장 등)로 가능하지 않은 이색적인 설계 목표를 달성할 수 있습니다. Arm Ltd.는 ARM 아키텍처 자체를 재판매할 수 있는 권리를 라이센스 소유자에게 부여하지 않지만, 라이센스 소유자는 칩 장치, 평가 보드 및 완전한 시스템과 같은 제조 제품을 자유롭게 판매할 수 있습니다. 상인 주조 공장은 특수한 경우가 될 수 있습니다. 일반적으로 ARM 코어가 포함된 실리콘 완제품을 판매할 수 있을 뿐만 아니라 다른 고객을 위해 ARM 코어를 재제조할 수 있는 권리를 가지고 있습니다.
Arm Ltd.는 인지된 가치에 따라 IP 가격을 책정합니다. 일반적으로 낮은 성능의 ARM 코어는 높은 성능의 코어보다 라이센스 비용이 낮습니다. 구현 측면에서 합성 가능한 코어는 하드 매크로(블랙박스) 코어보다 비용이 더 듭니다. 가격 문제가 복잡해지는 삼성이나 후지쯔와 같이 ARM 라이센스를 보유하고 있는 한 머천트 파운드리는 팹 고객에게 라이센스 비용을 줄일 수 있습니다. 주조 공장의 사내 설계 서비스를 통해 ARM 코어를 획득하는 대가로, 고객은 ARM의 초기 라이센스 비용을 절감하거나 없앨 수 있습니다.
Fujitsu/Samsung은 자체 설계 서비스가 없는 전용 반도체 주조 공장(TSMC 및 UMC 등)과 비교하여 제조된 웨이퍼당 2~3배의 비용을 청구합니다.[citation needed] 디자인 서비스 주조 공장은 낮은 용량에서 중간 용량의 애플리케이션에 대해 전반적으로 낮은 가격(라이선스 수수료 보조를 통해)을 제공합니다. 대량 양산 부품의 경우 낮은 웨이퍼 가격을 통해 달성할 수 있는 장기적인 비용 절감을 통해 ARM의 NRE(비재순환 엔지니어링) 비용의 영향을 줄여 전용 주조 공장이 더 나은 선택을 할 수 있습니다.
Companies that have developed chips with cores designed by Arm include Amazon.com's Annapurna Labs subsidiary,[58] Analog Devices, Apple, AppliedMicro (now: MACOM Technology Solutions[59]), Atmel, Broadcom, Cavium, Cypress Semiconductor, Freescale Semiconductor (now NXP Semiconductors), Huawei, Intel,[dubious ] Maxim Integrated, Nvidia, NXP, Qualcomm, Renesas, 삼성전자, ST마이크로일렉트로닉스, 텍사스인스트루먼츠, 자일링스.
ARM Cortex 기술 라이센스를 기반으로 제작
2016년 2월, ARM은 BoC(Built on Cortex) 라이선스로 단축된 빌드 온 ARM Cortex Technology 라이선스를 발표했습니다. 이 라이선스는 기업들이 ARM과 협력하여 ARM Cortex 디자인을 수정할 수 있도록 해줍니다. 이러한 디자인 수정은 다른 회사와 공유되지 않습니다. 이러한 세미 커스텀 코어 디자인은 Kryo 280과 같은 브랜드 자유도를 가지고 있습니다.
현재 Build on ARM Cortex Technology의 라이센스를 보유하고 있는 회사로는 Qualcomm이 있습니다.[60]
건축허가
기업은 또한 ARM 명령어 세트를 사용하여 자체 CPU 코어를 설계하기 위해 ARM 아키텍처 라이센스를 획득할 수 있습니다. 이러한 코어는 ARM 아키텍처를 완전히 준수해야 합니다. ARM 아키텍처를 구현하는 코어를 설계한 회사는 애플, AppliedMicro(현재: 암페어 컴퓨팅), Broadcom, Cavium(현재: 마벨), Digital Equipment Corporation, Intel, Nvidia, Qualcomm, Samsung Electronics, Fujitsu, NUVIA Inc. (2021년 Qualcomm에 인수됨) 등입니다.
ARM 플렉서블 액세스
2019년 7월 16일, ARM은 ARM Flexible Access를 발표했습니다. ARM Flexible Access는 개발을 위해 포함된 ARM 지적 재산권(IP)에 무제한으로 액세스할 수 있습니다. 고객이 주조 공장 테이프아웃 또는 시제품 제작에 도달하면 제품별 라이센스 비용이 필요합니다.[61][62]
지난 2년간 ARM의 가장 최근 IP의 75%가 ARM Flexible Access에 포함되어 있습니다. 2019년 10월 기준:
- CPU: Cortex-A5, Cortex-A7, Cortex-A32, Cortex-A34, Cortex-A35, Cortex-A53, Cortex-R5, Cortex-R8, Cortex-R52, Cortex-M0, Cortex-M0+, Cortex-M3, Cortex-M4, Cortex-M7, Cortex-M23, Cortex-M33
- GPU: Mali-G52, Mali-G31. 말리 드라이버 개발 키트(DDK)가 포함되어 있습니다.
- 상호 연결: CoreLink NIC-400, CoreLink NIC-450, CoreLink CCI-400, CoreLink CCI-500, CoreLink CCI-550, ADB-400 AMBA, XHB-400 AXI-AHB
- 시스템 컨트롤러: CoreLink GIC-400, CoreLink GIC-500, PL192 VIC, BP141 TrustZone 메모리 래퍼, CoreLink TZC-400, CoreLink L2C-310, CoreLink MMU-500, BP140 메모리 인터페이스
- 보안 IP: CryptoCell-312, CryptoCell-712, TrustZone 참 난수 생성기
- 주변 컨트롤러: PL011 UART, PL022 SPI, PL031 RTC
- 디버그 & 트레이스: 코어사이트 SoC-400, 코어사이트 SDC-600, 코어사이트 STM-500, 코어사이트 시스템 트레이스 매크로셀, 코어사이트 트레이스 메모리 컨트롤러
- 디자인 키트: 코르스톤-101, 코르스톤-201
- 물리 IP: 메모리 컴파일러, 로직 라이브러리, GPIO 및 문서를 포함한 Cortex-M33 TSMC 22ULL용 아티잔 PIK
- 공구 및 재료: 소크라테스 IP 툴링ARM Design Studio, 가상 시스템 모델
- 지원: 표준 ARM 기술 지원, ARM 온라인 교육, 유지보수 업데이트, 현장 교육 및 설계 검토에 대한 크레딧
코어
건축 | 코어 비트폭의 | 코어 | 프로필 | 참조- 귀천 | |
---|---|---|---|---|---|
암 주식회사 | 서드 파티 | ||||
ARMv1 | ARM1 | 클래식 | |||
ARMv2 | 32 | ARM2, ARM250, ARM3 | 호박색, STORM 개방 소프트[63] 코어 | 클래식 | |
ARMv3 | 32 | ARM6, ARM7 | 클래식 | ||
ARMv4 | 32 | ARM8 | StrongARM, FA526, ZAP 오픈 소스 프로세서 코어 | 클래식 | |
ARMv4T | 32 | ARM7TDMI, ARM9TDMI, SecurCore SC100 | 클래식 | ||
ARMv5TE | 32 | ARM7EJ, ARM9E, ARM10E | XScale, FA626TE, Feroceon, PJ1/Mohawk | 클래식 | |
ARMv6 | 32 | ARM11 | 클래식 | ||
ARMv6-M | 32 | ARM Cortex-M0, ARM Cortex-M0+, ARM Cortex-M1, 보안코어 SC000 | |||
ARMv7-M | 32 | ARM Cortex-M3, SecurCore SC300 | 애플 M7 모션 코프로세서 | 마이크로컨트롤러 | |
ARMv7E-M | 32 | ARM Cortex-M4, ARM Cortex-M7 | 마이크로컨트롤러 | ||
ARMv8-M | 32 | ARM Cortex-M23,[65] ARM Cortex-M33[66] | 마이크로컨트롤러 | ||
ARMv8.1-M | 32 | ARM Cortex-M55, ARM Cortex-M85 | 마이크로컨트롤러 | ||
ARMv7-R | 32 | ARM Cortex-R4, ARM Cortex-R5, ARM Cortex-R7, ARM Cortex-R8 | |||
ARMv8-R | 32 | ARM 코텍스-R52 | 실시간 | ||
64 | ARM 코텍스-R82 | 실시간 | |||
ARMv7-A | 32 | ARM Cortex-A5, ARM Cortex-A7, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A12, ARM Cortex-A15, ARM Cortex-A17 | 퀄컴 스콜피온/크레이트, PJ4/쉬바, 애플 스위프트 (A6, A6X) | ||
ARMv8-A | 32 | ARM 코텍스-A32[72] | 어플 | ||
64/32 | ARM Cortex-A35,[73] ARM Cortex-A53, ARM Cortex-A57,[74] ARM Cortex-A72,[75] ARM Cortex-A73[76] | X-Gene, Nvidia 덴버 1/2, Cavium ThunderX, AMD K12, Apple Cyclone (A7)/태풍 (A8, A8X)/트위스터 (A9, A9X)/허리케인+제퍼 (A10, A10X), Qualcomm Kryo, 삼성 M1/M2 ("Mongoose")/M3 ("Meerkat") | 어플 | ||
ARM 코텍스-A34[82] | 어플 | ||||
ARMv8.1-A | 64/32 | TBA | 카비움 썬더X2 | 어플 | |
ARMv8.2-A | 64/32 | ARM Cortex-A55,[84] ARM Cortex-A75,[85] ARM Cortex-A76,[86] ARM Cortex-A77, ARM Cortex-A78, ARM Cortex-X1, ARM Neoverse N1 | Nvidia Carmel, Samsung M4("치타"), Fujitsu A64FX(ARMv8 SVE 512비트) | 어플 | |
64 | ARM Cortex-A65, ARM Neoverse E1(SMT), ARM Cortex-A65AE[90](예: AE도 있음). ARMv8.4 Dot 제품; 고급 운전자 보조 시스템(ADAS)과 같은 안전 중요 작업을 위해 제작됨 | 애플 몬순+미스트랄(A11) (2017년 9월) | 어플 | ||
ARMv8.3-A | 64/32 | TBA | 어플 | ||
64 | TBA | 애플 보텍스+템페스트 (A12, A12X, A12Z), 마블 썬더X3 (v8.3+)[91] | 어플 | ||
ARMv8.4-A | 64/32 | TBA | 어플 | ||
64 | ARM 네오오버 V1 | 애플 라이트닝+썬더(A13), 애플 파이어스톰+Icestorm (A14, M1) | 어플 | ||
ARMv8.5-A | 64/32 | TBA | 어플 | ||
64 | TBA | 어플 | |||
ARMv8.6-A | 64 | TBA | 애플아발란치+눈보라(A15, M2), 애플에베레스트+톱니(A16)[92] | 어플 | |
ARMv8.7-A | 64 | TBA | 어플 | ||
ARMv8.8-A | 64 | TBA | 어플 | ||
ARMv8.9-A | 64 | TBA | 어플 | ||
ARMv9.0-A | 64 | ARM Cortex-A510, ARM Cortex-A710, ARM Cortex-A715, ARM Cortex-X2, ARM Cortex-X3, ARM Neoverse E2, ARM Neoverse N2, ARM Neoverse V2 | 어플 | ||
ARMv9.1-A | 64 | TBA | 어플 | ||
ARMv9.2-A | 64 | ARM Cortex-A520, ARM Cortex-A720, ARM Cortex-X4 | 어플 | ||
ARMv9.3-A | 64 | TBA |