Seznam mikroarchitektur ARM - List of ARM microarchitectures
Toto je seznam microarchitectures založených na architektuře ARM rodiny instrukčních sad navržených ARM Holdings a 3. stran řazeny dle verze ARM instrukční sady, uvolnění a jména. V roce 2005 ARM poskytlo shrnutí mnoha prodejců, kteří implementují jádra ARM do svého designu. Keil také poskytuje poněkud novější souhrn prodejců procesorů založených na ARM. ARM dále poskytuje graf zobrazující přehled sestavy procesorů ARM s výkonem a funkcemi oproti možnostem pro novější rodiny jader ARM.
ARM jádra
Navrhl ARM
ARM rodina | ARM architektura | ARM jádro | Vlastnosti | Cache (I / D), MMU | Typické MIPS @ MHz | Odkaz |
---|---|---|---|---|---|---|
ARM1 | ARMv1 | ARM1 | První implementace | Žádný | ||
ARM2 | ARMv2 | ARM2 | ARMv2 přidal instrukci MUL (multiply) | Žádný | 4 MIPS při 8 MHz 0,33 DMIPS /MHz |
|
ARMv2a | ARM250 | Integrovaný MEMC (MMU), grafický a I/O procesor. ARMv2a přidal pokyny SWP a SWPB (swap) | Žádné, MEMC1a | 7 MIPS při 12 MHz | ||
ARM3 | ARMv2a | ARM3 | První integrovaná paměť cache | 4 KB sjednoceno | 12 MIPS při 25 MHz 0,50 DMIPS/MHz |
|
ARM6 | ARMv3 | ARM60 | ARMv3 nejprve podporuje 32bitový adresní prostor paměti (dříve 26bitový). ARMv3M nejprve přidal dlouhé multiplikační instrukce (32x32 = 64). |
Žádný | 10 MIPS při 12 MHz | |
ARM600 | Jako ARM60, sběrnice mezipaměti a koprocesoru (pro jednotku s pohyblivou řádovou čárkou FPA10) | 4 KB sjednoceno | 28 MIPS při 33 MHz | |||
ARM610 | Jako ARM60, mezipaměť, žádná sběrnice koprocesoru | 4 KB sjednoceno | 17 MIPS při 20 MHz 0,65 DMIPS/MHz |
|||
ARM7 | ARMv3 | ARM700 | 8 KB sjednoceno | 40 MHz | ||
ARM710 | Jako ARM700, žádná koprocesorová sběrnice | 8 KB sjednoceno | 40 MHz | |||
ARM710a | Jako ARM710 | 8 KB sjednoceno | 40 MHz 0,68 DMIPS/MHz |
|||
ARM7T | ARMv4T | ARM7TDMI (-S) | 3-stupňová pipeline, Palec, armv4 nejprve klesnout starší ARM 26-bit adresování | Žádný | 15 MIPS při 16,8 MHz 63 DMIPS při 70 MHz |
|
ARM710T | Jako ARM7TDMI, mezipaměť | 8 KB sjednoceno, MMU | 36 MIPS při 40 MHz | |||
ARM720T | Jako ARM7TDMI, mezipaměť | 8 KB sjednocené, MMU s FCSE (Fast Context Switch Extension) | 60 MIPS při 59,8 MHz | |||
ARM740T | Jako ARM7TDMI, mezipaměť | MPU | ||||
ARM7EJ | ARMv5TEJ | ARM7EJ-S | 5stupňové potrubí, Thumb, Jazelle DBX, vylepšené pokyny DSP | Žádný | ||
ARM8 | ARMv4 | ARM810 | 5stupňové potrubí, predikce statické větve, paměť s dvojitou šířkou pásma | 8 KB sjednoceno, MMU | 84 MIPS při 72 MHz 1,16 DMIPS/MHz |
|
ARM9T | ARMv4T | ARM9TDMI | 5stupňové potrubí, palec | Žádný | ||
ARM920T | Jako ARM9TDMI, mezipaměť | 16 KB / 16 KB, MMU s FCSE (Fast Context Switch Extension) | 200 MIPS při 180 MHz | |||
ARM922T | Jako ARM9TDMI ukládá do mezipaměti | 8 KB / 8 KB, MMU | ||||
ARM940T | Jako ARM9TDMI ukládá do mezipaměti | 4 KB / 4 KB, MPU | ||||
ARM9E | ARMv5TE | ARM946E-S | Palec, vylepšené pokyny DSP, mezipaměti | Variabilní, pevně spojené paměti, MPU | ||
ARM966E-S | Palec, vylepšené pokyny DSP | Žádná mezipaměť, TCM | ||||
ARM968E-S | Jako ARM966E-S | Žádná mezipaměť, TCM | ||||
ARMv5TEJ | ARM926EJ-S | Thumb, Jazelle DBX, vylepšené pokyny DSP | Proměnná, TCM, MMU | 220 MIPS při 200 MHz | ||
ARMv5TE | ARM996HS | Bezdotykový procesor, jako ARM966E-S | Žádné mezipaměti, TCM, MPU | |||
ARM10E | ARMv5TE | ARM1020E | 6stupňové potrubí, palec, vylepšené pokyny DSP, (VFP) | 32 KB / 32 KB, MMU | ||
ARM1022E | Jako ARM1020E | 16 KB / 16 KB, MMU | ||||
ARMv5TEJ | ARM1026EJ-S | Thumb, Jazelle DBX, vylepšené pokyny DSP, (VFP) | Variabilní, MMU nebo MPU | |||
ARM11 | ARMv6 | ARM1136J (F) -S | 8stupňový kanál, SIMD , Thumb, Jazelle DBX, (VFP), vylepšené pokyny DSP, nezarovnaný přístup do paměti | Proměnná, MMU | 740 při 532–665 MHz (i.MX31 SoC), 400–528 MHz | |
ARMv6T2 | ARM1156T2 (F) -S | 9stupňové potrubí, SIMD , Thumb-2, (VFP), vylepšené pokyny DSP | Proměnná, MPU | |||
ARMv6Z | ARM1176JZ (F) -S | Jako ARM1136EJ (F) -S | Proměnná, MMU + TrustZone | 965 DMIPS @ 772 MHz, až 2600 DMIPS se čtyřmi procesory | ||
ARMv6K | ARM11MPJádro | Jako ARM1136EJ (F) -S, 1–4 jádrový SMP | Proměnná, MMU | |||
SecurCore | ARMv6-M | SC000 | Jako Cortex-M0 | 0,9 DMIPS/MHz | ||
ARMv4T | SC100 | Jako ARM7TDMI | ||||
ARMv7-M | SC300 | Jako Cortex-M3 | 1,25 DMIPS/MHz | |||
Cortex-M | ARMv6-M | Cortex-M0 | Profil mikrokontroléru, většina Thumb + některé Thumb-2, instrukce pro multiplikátor hardwaru (volitelně malé), volitelný systémový časovač, volitelná paměť pro blokování bitů | Volitelná mezipaměť, bez TCM, bez MPU | 0,84 DMIPS/MHz | |
Cortex-M0+ | Profil mikrokontroléru, většina Thumb + některé Thumb-2, instrukce pro multiplikátor hardwaru (volitelně malé), volitelný systémový časovač, volitelná paměť pro blokování bitů | Volitelná mezipaměť, bez TCM, volitelně MPU s 8 regiony | 0,93 DMIPS/MHz | |||
Cortex-M1 | Profil mikrokontroléru, většina Thumb + nějaký Thumb-2, instrukce pro násobení hardwaru (volitelně malé), možnost OS přidává ukazatel SVC / banked stack, volitelný systémový časovač, žádná paměť pro blokování bitů | Volitelná mezipaměť, 0–1024 KB I-TCM, 0–1024 KB D-TCM, bez MPU | 136 DMIPS při 170 MHz (0,8 DMIPS/MHz v závislosti na FPGA) | |||
ARMv7-M | Cortex-M3 | Mikrokontrolérový profil, Thumb / Thumb-2, pokyny pro násobení a dělení hardwaru, volitelná paměť pro bitové pásmo | Volitelná mezipaměť, bez TCM, volitelně MPU s 8 regiony | 1,25 DMIPS/MHz | ||
ARMv7E-M | Cortex-M4 | Profil mikrokontroléru, Thumb / Thumb-2 / DSP / volitelně VFPv4-SP FPU s jednou přesností , pokyny pro násobení a dělení hardwaru, volitelná paměť pro bitové pásmo | Volitelná mezipaměť, bez TCM, volitelně MPU s 8 regiony | 1,25 DMIPS/MHz (1,27 s FPU) | ||
Cortex-M7 | Mikrokontrolérový profil, Thumb / Thumb-2 / DSP / volitelně VFPv5 s jednoduchou a dvojitou přesností FPU , pokyny pro násobení a dělení hardwaru | 0–64 KB I-cache, 0−64 KB D-cache, 0–16 MB I-TCM, 0–16 MB D-TCM (všechny tyto s volitelným ECC), volitelná MPU s 8 nebo 16 oblastmi | 2,14 DMIPS/MHz | |||
Základní linie ARMv8-M | Cortex-M23 | Profil mikrokontroléru, Thumb-1 (většina), Thumb-2 (některé), Divide, TrustZone | Volitelná mezipaměť, bez TCM, volitelně MPU se 16 oblastmi | 0,99 DMIPS/MHz | ||
Hlavní řada ARMv8-M | Cortex-M33 | Profil mikrokontroléru, Thumb-1, Thumb-2, nasycený, DSP, Divide, FPU (SP), TrustZone, koprocesor | Volitelná mezipaměť, bez TCM, volitelně MPU se 16 oblastmi | 1,50 DMIPS/MHz | ||
Cortex-M35P | Profil mikrokontroléru, Thumb-1, Thumb-2, nasycený, DSP, Divide, FPU (SP), TrustZone, koprocesor | Vestavěná mezipaměť (s možností 2–16 KB), I-mezipaměť, bez TCM, volitelně MPU se 16 oblastmi | 1,50 DMIPS/MHz | |||
Hlavní řada ARMv8.1-M | Cortex-M55 | |||||
Cortex-R | ARMv7-R | Cortex-R4 | Profil v reálném čase, Thumb / Thumb-2 / DSP / volitelný VFPv3 FPU , pokyny pro multiplikátor hardwaru a volitelné dělení, volitelná parita a ECC pro interní sběrnice / mezipaměť / TCM, 8stupňový dvoujádrový běžící lockstep s logikou poruch | 0–64 KB / 0–64 KB, 0–2 z 0–8 MB TCM, volitelně MPU s 8/12 regiony | 1,67 DMIPS/MHz | |
Cortex-R5 | Profil v reálném čase, Thumb / Thumb-2 / DSP / volitelný VFPv3 FPU a přesnost, pokyny pro násobení hardwaru a volitelné dělení, volitelná parita a ECC pro interní sběrnice / mezipaměť / TCM, 8stupňový dvoujádrový potrubní chod chybová logika / volitelně jako 2 nezávislá jádra, periferní port s nízkou latencí (LLPP), port koherentního akcelerátoru (ACP) | 0–64 KB / 0–64 KB, 0–2 z 0–8 MB TCM, volitelně MPU s 12/16 regiony | 1,67 DMIPS/MHz | |||
Cortex-R7 | Profil v reálném čase, Thumb / Thumb-2 / DSP / volitelný VFPv3 FPU a přesnost, pokyny pro násobení hardwaru a volitelné dělení, volitelná parita a ECC pro interní sběrnice / mezipaměť / TCM, 11stupňový dvoujádrový potrubní chod chybová logika / provedení mimo pořadí / přejmenování dynamického registru / volitelně jako 2 nezávislá jádra, periferní port s nízkou latencí (LLPP), ACP | 0–64 KB / 0–64 KB,? 0–128 KB TCM, volitelně MPU se 16 regiony | 2,50 DMIPS/MHz | |||
Cortex-R8 | TBD | 0–64 KB / 0–64 KB L1, 0–1 / 0–1 MB TCM, volitelně MPU s 24 regiony | 2,50 DMIPS/MHz | |||
ARMv8-R | Cortex-R52 | TBD | 0–32 KB / 0–32 KB L1, 0–1 / 0–1 MB TCM, volitelně MPU s 24+24 regiony | 2,16 DMIPS/MHz | ||
Cortex-R82 | TBD | 16–128 KB / 16–64 KB L1, 64K – 1 MB L2, 0,16–1 / 0,16–1 MB TCM,
zvolit MPU s 32+32 regiony |
3,41 DMIPS/MHz | |||
Cortex-A (32bitový) |
ARMv7-A | Cortex-A5 | Profil aplikace, ARM / Thumb / Thumb-2 / DSP / SIMD / Volitelně VFPv4-D16 FPU / Volitelně NEON / Jazelle RCT a DBX, 1–4 jádra / volitelně MPCore, řídicí jednotka snoop (SCU), řadič generického přerušení (GIC) , port koherence akcelerátoru (ACP) | 4−64 KB / 4−64 KB L1, MMU + TrustZone | 1,57 DMIPS/MHz na jádro | |
Cortex-A7 | Profil aplikace, ARM / Thumb / Thumb-2 / DSP / VFPv4 FPU / NEON / Jazelle RCT a DBX / Virtualizace hardwaru, provádění v pořadí, superskalární , 1–4 jádra SMP, MPCore, Large Physical Address Extensions (LPAE), snoop řídicí jednotka (SCU), generický řadič přerušení (GIC), architektura a sada funkcí jsou totožné s A15, 8–10 stupňové potrubí, nízkoenergetické provedení | 8−64 KB / 8−64 KB L1, 0–1 MB L2, MMU + TrustZone | 1,9 DMIPS/MHz na jádro | |||
Cortex-A8 | Profil aplikace, ARM / Thumb / Thumb-2 / VFPv3 FPU / NEON / Jazelle RCT a DAC, 13stupňové superskalární potrubí | 16–32 KB / 16–32 KB L1, 0–1 MB L2 opt. ECC, MMU + TrustZone | Až 2000 (2,0 DMIPS/MHz při rychlosti od 600 MHz do více než 1 GHz ) | |||
Cortex-A9 | Profil aplikace, ARM / Thumb / Thumb-2 / DSP / Volitelně VFPv3 FPU / Volitelně NEON / Jazelle RCT a DBX, superskalární spekulativní emise mimo objednávku , jádra 1–4 SMP, MPCore, řídicí jednotka snoop (SCU), generická řadič přerušení (GIC), koherenční port akcelerátoru (ACP) | 16–64 KB / 16–64 KB L1, 0–8 MB L2 volitelně parita, MMU + TrustZone | 2,5 DMIPS/MHz na jádro, 10 000 DMIPS @ 2 GHz s optimalizovaným výkonem TSMC 40G (dvoujádrový) | |||
Cortex-A12 | Profil aplikace, ARM / Thumb-2 / DSP / VFPv4 FPU / NEON / Virtualizace hardwaru, superskalární spekulativní problém mimo objednávku , jádra 1–4 SMP, Large Physical Address Extensions (LPAE), snoop control unit (SCU), generic řadič přerušení (GIC), koherenční port akcelerátoru (ACP) | 32–64 kB | 3,0 DMIPS/MHz na jádro | |||
Cortex-A15 | Profil aplikace, ARM / Thumb / Thumb-2 / DSP / VFPv4 FPU / NEON / celočíselné dělení / fúzovaný MAC / Jazelle RCT / hardwarová virtualizace, superskalární out-of-order spekulativní problém , 1–4 jádra SMP, MPCore, velká fyzická adresa Extensions (LPAE), snoop control unit (SCU), generic interrupt controller (GIC), ACP, 15-24 stage pipeline | 32 KB s paritou/ 32 KB s ECC L1, 0–4 MB L2, L2 má ECC, MMU + TrustZone | Minimálně 3,5 DMIPS/MHz na jádro (až 4,01 DMIPS/MHz v závislosti na implementaci) | |||
Cortex-A17 | Profil aplikace, ARM / Thumb / Thumb-2 / DSP / VFPv4 FPU / NEON / celočíselné dělení / fúzovaný MAC / Jazelle RCT / hardwarová virtualizace, superskalární out-of-order spekulativní problém , 1–4 jádra SMP, MPCore, velká fyzická adresa Rozšíření (LPAE), řídicí jednotka snoop (SCU), generický řadič přerušení (GIC), ACP | 32 KB L1, 256 KB – 8 MB L2 s volitelným ECC | 2,8 DMIPS/MHz | |||
ARMv8-A | Cortex-A32 | Profil aplikace, AArch32, 1–4 jádra SMP, TrustZone, NEON advanced SIMD, VFPv4, virtualizace hardwaru, dvojí vydání, potrubí na objednávku | 8–64 KB s volitelnou paritou/8–64 KB s volitelným ECC L1 na jádro, 128 KB – 1 MB L2 s volitelným sdíleným ECC | |||
Cortex-A (64bitový) |
ARMv8-A | Cortex-A34 | Profil aplikace, AArch64, 1–4 jádra SMP, TrustZone, NEON advanced SIMD, VFPv4, virtualizace hardwaru, dekódování 2 šířky, potrubí v pořadí | 8−64 KB s paritou/8−64 KB s ECC L1 na jádro, 128 KB – 1 MB L2 sdílené, 40bitové fyzické adresy | ||
Cortex-A35 | Profil aplikace, AArch32 a AArch64, 1–4 jádra SMP, TrustZone, NEON advanced SIMD, VFPv4, hardwarová virtualizace, 2-šířka dekódování, potrubí v pořadí | 8−64 KB s paritou/8−64 KB s ECC L1 na jádro, 128 KB – 1 MB L2 sdílené, 40bitové fyzické adresy | 1,78 DMIPS/MHz | |||
Cortex-A53 | Profil aplikace, AArch32 a AArch64, 1–4 jádra SMP, TrustZone, NEON advanced SIMD, VFPv4, hardwarová virtualizace, 2-šířka dekódování, potrubí v pořadí | 8−64 KB s paritou/8−64 KB s ECC L1 na jádro, 128 KB – 2 MB L2 sdílené, 40bitové fyzické adresy | 2,3 DMIPS/MHz | |||
Cortex-A57 | Profil aplikace, AArch32 a AArch64, 1–4 jádra SMP, TrustZone, NEON advanced SIMD, VFPv4, virtualizace hardwaru, superskalární dekódování se 3 šířkami, hluboce mimo pořadí potrubí | 48 kB s paritou DED/32 kB s ECC L1 na jádro; 512 KB – 2 MB L2 sdílené s ECC; 44bitové fyzické adresy | 4,1–4,5 DMIPS/MHz | |||
Cortex-A72 | Profil aplikace, AArch32 a AArch64, 1–4 jádra SMP, TrustZone, NEON advanced SIMD, VFPv4, hardwarová virtualizace, 3-šířka superskalární, hluboce mimo pořadí potrubí | 48 kB s paritou DED/32 kB s ECC L1 na jádro; 512 KB – 2 MB L2 sdílené s ECC; 44bitové fyzické adresy | 4,7 DMIPS/MHz | |||
Cortex-A73 | Profil aplikace, AArch32 a AArch64, 1–4 jádra SMP, TrustZone, NEON advanced SIMD, VFPv4, hardwarová virtualizace, 2-šířka superskalární, hluboce mimo pořadí potrubí | 64 KB / 32−64 KB L1 na jádro, 256 KB – 8 MB L2 sdílené s volitelným ECC, 44bitové fyzické adresy | 4,8 DMIPS/MHz | |||
ARMv8.2-A | Cortex-A55 | Profil aplikace, AArch32 a AArch64, 1–8 jader SMP, TrustZone, NEON advanced SIMD, VFPv4, hardwarová virtualizace, 2-šířka dekódování, potrubí v pořadí | 16−64 KB / 16−64 KB L1, 256 KB L2 na jádro, 4 MB L3 sdílené | |||
Cortex-A65 | Profil aplikace, AArch64, 1–8 jader SMP, TrustZone, NEON advanced SIMD, VFPv4, hardwarová virtualizace, 2-široký dekódovací superskalární, problém se 3 šířkami, potrubí mimo objednávku, SMT | |||||
Cortex-A65AE | Jako ARM Cortex-A65 přidává dvoujádrový lockstep pro bezpečnostní aplikace | 64/64 KB L1, 256 KB L2 na jádro, 4 MB L3 sdílené | ||||
Cortex-A75 | Profil aplikace, AArch32 a AArch64, 1–8 jader SMP, TrustZone, NEON advanced SIMD, VFPv4, virtualizace hardwaru, superskalární dekódování se 3 šířkami, hluboce mimo pořadí potrubí | 64/64 KB L1, 512 KB L2 na jádro, 4 MB L3 sdílené | ||||
Cortex-A76 | Profil aplikace, AArch32 (pouze privilegovaná úroveň nebo pouze EL0) a AArch64, 1–4 jádra SMP, TrustZone, NEON Advanced SIMD, VFPv4, virtualizace hardwaru, superskalární dekódování se 4 šířkami, 8cestný problém, 13stupňové potrubí, hluboký výstup -potrubí na objednávku | 64/64 KB L1, 256−512 KB L2 na jádro, 512 KB − 4 MB L3 sdílené | ||||
Cortex-A76AE | Jako ARM Cortex-A76 přidává dvoujádrový lockstep pro bezpečnostní aplikace | |||||
Cortex-A77 | Profil aplikace, AArch32 (pouze privilegovaná úroveň nebo pouze EL0) a AArch64, 1–4 jádra SMP, TrustZone, NEON advanced SIMD, VFPv4, virtualizace hardwaru, superskalární dekódování se 4 šířkami, načítání instrukcí se 6 šířkami, 12cestný problém, 13stupňové potrubí, potrubí hluboce mimo provoz | Mezipaměť 1,5 M L0 MOP, 64/64 KB L1, 256−512 KB L2 na jádro, 512 KB − 4 MB L3 sdílené | ||||
Cortex-A78 | ||||||
Cortex-A78AE | Jako ARM Cortex-A78 přidává dvoujádrový lockstep pro bezpečnostní aplikace | |||||
Cortex-X1 | Výkonově vyladěná varianta Cortex-A78 | |||||
Cortex-A78C | ||||||
ARMv9-A | Cortex-A710 | První „velký“ procesor generace Armv9 | ||||
Neoverse | Neoverse N1 | Profil aplikace, AArch32 (pouze privilegovaná úroveň nebo pouze EL0) a AArch64, 1–4 jádra SMP, TrustZone, NEON advanced SIMD, VFPv4, virtualizace hardwaru, superskalární dekódování se 4 šířkami, 8cestné odesílání/problém, 13stupňové potrubí, hluboce mimo pořadí potrubí | 64/64 KB L1, 512−1024 KB L2 na jádro, 2−128 MB L3 sdílené, 128 MB mezipaměť na úrovni systému | |||
Neoverse E1 | Profil aplikace, AArch64, 1–8 jader SMP, TrustZone, NEON advanced SIMD, VFPv4, hardwarová virtualizace, 2-široký dekódovací superskalární, problém se 3 šířkami, 10stupňové potrubí, potrubí mimo pořadí, SMT | 32−64 KB / 32−64 KB L1, 256 KB L2 na jádro, 4 MB L3 sdílené | ||||
ARM rodina | ARM architektura | ARM jádro | Vlastnosti | Cache (I / D), MMU | Typické MIPS @ MHz | Odkaz |
Navrženo třetími stranami
Tato jádra implementují instrukční sadu ARM a byla vyvinuta nezávisle společnostmi s architektonickou licencí od ARM.
Základní rodina | Instrukční sada | Mikroarchitektura | Vlastnosti | Cache (I / D), MMU | Typické MIPS @ MHz |
---|---|---|---|---|---|
StrongARM ( digitální ) |
ARMv4 | SA-110 | 5stupňové potrubí | 16 KB / 16 KB, MMU | 100–233 MHz 1,0 DMIPS/MHz |
SA-1100 | derivát SA-110 | 16 KB / 8 KB, MMU | |||
Faraday ( Faraday Technology ) |
ARMv4 | FA510 | 6stupňové potrubí | Mezipaměť až 32 kB / 32 kB, MPU | 1,26 DMIPS/MHz 100–200 MHz |
FA526 | Mezipaměť až 32 kB / 32 kB, MMU | 1,26 MIPS/MHz 166–300 MHz |
|||
FA626 | 8stupňové potrubí | Mezipaměť 32 KB / 32 KB, MMU | 1,35 DMIPS/MHz 500 MHz |
||
ARMv5TE | FA606TE | 5stupňové potrubí | Žádná mezipaměť, žádná MMU | 1,22 DMIPS/MHz 200 MHz |
|
FA626TE | 8stupňové potrubí | Mezipaměť 32 KB / 32 KB, MMU | 1,43 MIPS/MHz 800 MHz |
||
FMP626TE | 8stupňové potrubí, SMP | 1,43 MIPS/MHz 500 MHz |
|||
FA726TE | 13stupňové potrubí, dvojí vydání | 2,4 DMIPS/MHz 1000 MHz |
|||
XScale ( Intel / Marvell ) |
ARMv5TE | XScale | 7stupňové potrubí, palec, vylepšené pokyny DSP | 32 KB / 32 KB, MMU | 133–400 MHz |
Bulverde | Bezdrátový MMX , bezdrátový SpeedStep přidán | 32 KB / 32 KB, MMU | 312–624 MHz | ||
Monahané | Bezdrátový MMX2 přidán | 32 KB / 32 KB L1, volitelně L2 cache až 512 KB, MMU | Až 1,25 GHz | ||
Sheeva (Marvell) |
ARMv5 | Feroceon | 5–8stupňové potrubí, jediné vydání | 16 KB / 16 KB, MMU | 600–2 000 MHz |
Jolteon | 5–8stupňové potrubí, dvojí vydání | 32 KB / 32 KB, MMU | |||
PJ1 (Mohawk) | 5–8stupňové potrubí, jediné vydání, Wireless MMX2 | 32 KB / 32 KB, MMU | 1,46 DMIPS/MHz 1,06 GHz |
||
ARMv6 / ARMv7-A | PJ4 | 6–9stupňové potrubí, dvojí vydání, Wireless MMX2, SMP | 32 KB / 32 KB, MMU | 2,41 DMIPS/MHz 1,6 GHz |
|
Snapdragon ( Qualcomm ) |
ARMv7-A | Štír | 1 nebo 2 jádra. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv3 FPU / NEON (128bitová šířka) | 256 KB L2 na jádro | 2,1 DMIPS/MHz na jádro |
Krait | 1, 2 nebo 4 jádra. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv4 FPU / NEON (128bitová šířka) | 4 KB / 4 KB L0, 16 KB / 16 KB L1, 512 KB L2 na jádro | 3,3 DMIPS/MHz na jádro | ||
ARMv8-A | Kryo | 4 jádra. | ? | Až 2,2 GHz
(6,3 DMIPS/MHz) |
|
Sekera ( Apple ) |
ARMv7-A | Rychlý | 2 jádra. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv4 FPU / NEON | L1: 32 KB / 32 KB, L2: 1 MB sdílené | 3,5 DMIPS/MHz na jádro |
ARMv8-A | Cyklón | 2 jádra. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv4 FPU / NEON / TrustZone / AArch64 . Mimo pořadí, superskalární. | L1: 64 KB / 64 KB, L2: 1 MB sdílené SLC: 4 MB |
1,3 nebo 1,4 GHz | |
ARMv8-A | Tajfun | 2 nebo 3 jádra. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv4 FPU / NEON / TrustZone / AArch64 | L1: 64 KB / 64 KB, L2: 1 MB nebo 2 MB sdílené SLC: 4 MB |
1,4 nebo 1,5 GHz | |
ARMv8-A | Twister | 2 jádra. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv4 FPU / NEON / TrustZone / AArch64 | L1: 64 KB / 64 KB, L2: 2 MB sdílené SLC: 4 MB nebo 0 MB |
1,85 nebo 2,26 GHz | |
ARMv8-A | Hurikán a Zephyr | Hurikán: 2 nebo 3 jádra. AArch64, mimo pořadí, superskalární, 6 dekódování, 6 emisí, 9 širokých Zephyrů: 2 nebo 3 jádra. AArch64, mimo pořadí, superskalární. |
L1: 64 KB / 64 KB, L2: 3 MB nebo 8 MB sdílené L1: 32 KB / 32 KB. L2: žádný SLC: 4 MB nebo 0 MB |
2,34 nebo 2,38 GHz, 1,05 GHz |
|
ARMv8.2-A | Monzun a Mistral | Monzun: 2 jádra. AArch64, mimo pořadí, superskalární, 7-dekódovací,? -Issue, 11-široký Mistral: 4 jádra. AArch64, mimo pořadí, superskalární. Na základě Swift. |
L1I: 128 KB, L1D: 64 KB, L2: 8 MB sdílené L1: 32 KB / 32 KB, L2: 1 MB sdílené SLC: 4 MB |
2,39 GHz 1,70 GHz |
|
ARMv8.3-A | Vortex a Tempest | Vortex: 2 nebo 4 jádra. AArch64, mimo pořadí, superskalární, 7-dekódovací,? -Issue, 11-široký Tempest: 4 jádra. AArch64, mimo pořadí, superskalární, 3 dekódování. Na základě Swift. |
L1: 128 KB / 128 KB, L2: 8 MB sdílené L1: 32 KB / 32 KB, L2: 2 MB sdílené SLC: 8 MB |
2,49 GHz 1,59 GHz |
|
ARMv8.4-A | Blesk a hrom | Blesk: 2 jádra. AArch64, mimo pořadí, superskalární, 7-dekódovací,? -Issue, 11-široký Thunder: 4 jádra. AArch64, mimo pořadí, superskalární. |
L1: 128 KB / 128 KB, L2: 8 MB sdílené L1: 32 KB / 48 KB, L2: 4 MB sdílené SLC: 16 MB |
2,66 GHz 1,73 GHz |
|
ARMv8.4-A | Firestorm a Icestorm | Firestorm: 2 jádra. AArch64, mimo pořadí, superskalární, 8-dekódovací,? -Issue, 14-široký Icestorm: 4 jádra. AArch64, mimo pořadí, superskalární, 4 dekódování,? Emise, 7 šířek. |
L1: 192 KB / 128 KB, L2: 8 MB sdílené L1: 128 KB / 64 KB, L2: 4 MB sdílené SLC: 16 MB |
2,99 GHz 1,82 GHz |
|
X-Gene ( Applied Micro ) |
ARMv8-A | X-gen | 64bitové, čtyřjádrové, SMP, 64 jader | Cache, MMU, virtualizace | 3 GHz (4,2 DMIPS/MHz na jádro) |
Denver ( Nvidia ) |
ARMv8-A | Denver | 2 jádra. AArch64 , 7- superskalární , dynamická optimalizace kódu v pořadí, dynamická paměť 128 MB, Denver1: 28nm, Denver2: 16nm |
128 kB I-cache / 64 KB D-cache | Až 2,5 GHz |
Carmel ( Nvidia ) |
ARMv8.2-A | Karmel | 2 jádra. AArch64 , 10-široká superskalární , dynamická optimalizace kódu v pořadí ,? Mezipaměť optimalizace MB, funkční bezpečnost, dvojí provedení, parita a ECC |
? KB I-cache /? KB D-cache | Až do ? GHz |
ThunderX ( kavium ) |
ARMv8-A | ThunderX | 64bitový, se dvěma modely s 8–16 nebo 24–48 jádry (× 2 s dvěma čipy) | ? | Až 2,2 GHz |
K12 ( AMD ) |
ARMv8-A | K12 | ? | ? | ? |
Exynos ( Samsung ) |
ARMv8-A | M1/M2 („Mongoose“) | 4 jádra. AArch64, 4násobný, čtyřdílný, superskalární, mimo pořadí | 64 KB I-cache / 32 KB D-cache, L2: 16-way shared 2 MB | 5,1 DMIPS/MHz
(2,6 GHz) |
ARMv8-A | M3 ("Surikata") | 4 jádra, AArch64, 6 dekódování, 6 emisí, 6 šířek. superskalární, mimo pořadí | 64 KB I-cache / 32 KB D-cache, L2: 8-way private 512 KB, L3: 16-way shared 4 MB | ? | |
ARMv8.2-A | M4 („Cheetah“) | 2 jádra, AArch64, 6 dekódování, 6 emisí, 6 šířek. superskalární, mimo pořadí | 64 KB I-cache / 32 KB D-cache, L2: 8-way private 512 KB, L3: 16-way shared 4 MB | ? |
Časová osa jádra ARM
Následující tabulka uvádí jednotlivá jádra do roku, kdy byla oznámena.
Rok | Klasická jádra | Jádra kůry | Neoverse jádra | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
ARM1-6 | ARM7 | ARM8 | ARM9 | ARM10 | ARM11 | Mikrokontrolér | Reálný čas |
Aplikace (32bitová) |
Aplikace (64bitová) |
Aplikace (64bitová) |
|
1985 | ARM1 | ||||||||||
1986 | ARM2 | ||||||||||
1989 | ARM3 | ||||||||||
1992 | ARM250 | ||||||||||
1993 | ARM60 ARM610 |
ARM700 | |||||||||
1994 | ARM710 ARM7DI ARM7TDMI |
||||||||||
1995 | ARM710a | ||||||||||
1996 | ARM810 | ||||||||||
1997 | ARM710T ARM720T ARM740T |
||||||||||
1998 | ARM9TDMI ARM940T |
||||||||||
1999 | ARM9E-S ARM966E-S |
||||||||||
2000 | ARM920T ARM922T ARM946E-S |
ARM1020T | |||||||||
2001 | ARM7TDMI-S ARM7EJ-S |
ARM9EJ-S ARM926EJ-S |
ARM1020E ARM1022E |
||||||||
2002 | ARM1026EJ-S | ARM1136J (F) -S | |||||||||
2003 | ARM968E-S | ARM1156T2 (F) -S ARM1176JZ (F) -S |
|||||||||
2004 | Cortex-M3 | ||||||||||
2005 | ARM11MPJádro | Cortex-A8 | |||||||||
2006 | ARM996HS | ||||||||||
2007 | Cortex-M1 | Cortex-A9 | |||||||||
2008 | |||||||||||
2009 | Cortex-M0 | Cortex-A5 | |||||||||
2010 | Cortex-M4 (F) | Cortex-A15 | |||||||||
2011 | Cortex-R4 Cortex-R5 Cortex-R7 |
Cortex-A7 | |||||||||
2012 | Cortex-M0+ | Cortex-A53 Cortex-A57 |
|||||||||
2013 | Cortex-A12 | ||||||||||
2014 | Cortex-M7 (F) | Cortex-A17 | |||||||||
2015 | Cortex-A35 Cortex-A72 |
||||||||||
2016 | Cortex-M23 Cortex-M33 (F) |
Cortex-R8 Cortex-R52 |
Cortex-A32 | Cortex-A73 | |||||||
2017 | Cortex-A55 Cortex-A75 |
||||||||||
2018 | Cortex-M35P (F) | Cortex-A65AE Cortex-A76 Cortex-A76AE |
|||||||||
2019 | Cortex-A77 | Neoverse E1 Neoverse N1 |
|||||||||
2020 | Cortex-M55 (F) | Cortex-R82 | Cortex-A78 Cortex-X1 |
Neoverse V1 | |||||||
2021 | Cortex-A510 Cortex-A710 Cortex-X2 |
Neoverse N2 |