Lista microarhitecturilor ARM - List of ARM microarchitectures

Aceasta este o listă de microarchitectures bazate pe ARM familia de seturi de instrucțiuni concepute de ARM Holdings și părțile 3, clasificate în funcție de versiunea de instrucțiuni ARM set, eliberarea și numele. În 2005, ARM a furnizat un rezumat al numeroșilor furnizori care implementează nuclee ARM în proiectarea lor. Keil oferă, de asemenea, un rezumat ceva mai nou al furnizorilor de procesoare bazate pe ARM. ARM oferă în plus o diagramă care prezintă o prezentare generală a gamei de procesoare ARM cu performanță și funcționalitate față de capabilități pentru familiile de bază ARM mai recente.

Miezuri ARM

Proiectat de ARM

Familia ARM Arhitectura ARM Miezul ARM Caracteristică Cache (I / D), MMU MIPS tipic @ MHz Referinţă
ARM1 ARMv1 ARM1 Prima implementare Nici unul
ARM2 ARMv2 ARM2 ARMv2 a adăugat instrucțiunea MUL (multiplicare) Nici unul 4 MIPS @ 8 MHz
0,33 DMIPS / MHz
ARMv2a ARM250 MEMC (MMU) integrat , grafică și procesor I / O. ARMv2a a adăugat instrucțiunile SWP și SWPB (swap) Niciuna, MEMC1a 7 MIPS @ 12 MHz
ARM3 ARMv2a ARM3 Prima memorie cache integrată KB unificat 12 MIPS @ 25 MHz
0,50 DMIPS / MHz
ARM6 ARMv3 ARM60 ARMv3 mai întâi acceptă spațiul de adresă de memorie pe 32 de biți (anterior 26 de biți).
ARMv3M a adăugat mai întâi instrucțiuni de multiplicare lungă (32x32 = 64).
Nici unul 10 MIPS @ 12 MHz
ARM600 Ca ARM60, cache și autobuz coprocesor (pentru unitatea cu virgulă mobilă FPA10) 4 KB unificat 28 MIPS @ 33 MHz
ARM610 Ca ARM60, cache, fără autobuz coprocesor 4 KB unificat 17 MIPS @ 20 MHz
0,65 DMIPS / MHz
ARM7 ARMv3 ARM700 8 KB unificat 40 MHz
ARM710 Ca ARM700, nu există nici o magistrală de coprocesor 8 KB unificat 40 MHz
ARM710a Ca ARM710 8 KB unificat 40 MHz
0,68 DMIPS / MHz
ARM7T ARMv4T ARM7TDMI (-S) Conductă în 3 etape, Thumb, ARMv4 primul care renunță la vechea adresare ARM pe 26 de biți Nici unul 15 MIPS @ 16,8 MHz
63 DMIPS @ 70 MHz
ARM710T Ca ARM7TDMI, cache 8 KB unificat, MMU 36 MIPS @ 40 MHz
ARM720T Ca ARM7TDMI, cache 8 KB unificat, MMU cu FCSE (Fast Context Switch Extension) 60 MIPS @ 59,8 MHz
ARM740T Ca ARM7TDMI, cache MPU
ARM7EJ ARMv5TEJ ARM7EJ-S Conductă în 5 etape, Thumb, Jazelle DBX, instrucțiuni DSP îmbunătățite Nici unul
ARM8 ARMv4 ARM810 Conductă în 5 etape, predicție statică a ramurilor, memorie cu lățime de bandă dublă 8 KB unificat, MMU 84 MIPS @ 72 MHz
1,16 DMIPS / MHz
ARM9T ARMv4T ARM9TDMI Conductă în 5 etape, Thumb Nici unul
ARM920T Ca ARM9TDMI, cache 16 KB / 16 KB, MMU cu FCSE (Extensie rapidă a comutatorului de context) 200 MIPS @ 180 MHz
ARM922T Ca ARM9TDMI, cache 8 KB / 8 KB, MMU
ARM940T Ca ARM9TDMI, cache 4 KB / 4 KB, MPU
ARM9E ARMv5TE ARM946E-S Thumb, instrucțiuni DSP îmbunătățite, cache-uri Amintiri variabile, bine cuplate, MPU
ARM966E-S Thumb, instrucțiuni DSP îmbunătățite Fără cache, TCM-uri
ARM968E-S Ca ARM966E-S Fără cache, TCM-uri
ARMv5TEJ ARM926EJ-S Thumb, Jazelle DBX, instrucțiuni DSP îmbunătățite Variabilă, TCM-uri, MMU 220 MIPS @ 200 MHz
ARMv5TE ARM996HS Procesor fără ceas, ca ARM966E-S Fără cache, TCM-uri, MPU
ARM10E ARMv5TE ARM1020E Conductă în 6 etape, Thumb, instrucțiuni DSP îmbunătățite, (VFP) 32 KB / 32 KB, MMU
ARM1022E Ca ARM1020E 16 KB / 16 KB, MMU
ARMv5TEJ ARM1026EJ-S Thumb, Jazelle DBX, instrucțiuni DSP îmbunătățite, (VFP) Variabilă, MMU sau MPU
ARM11 ARMv6 ARM1136J (F) -S Conductă în 8 etape, SIMD , Thumb, Jazelle DBX, (VFP), instrucțiuni DSP îmbunătățite, acces la memorie nealiniat Variabilă, MMU 740 @ 532–665 MHz (i.MX31 SoC), 400–528 MHz
ARMv6T2 ARM1156T2 (F) -S Conductă în 9 etape, SIMD , Thumb-2, (VFP), instrucțiuni DSP îmbunătățite Variabilă, MPU
ARMv6Z ARM1176JZ (F) -S Ca ARM1136EJ (F) -S Variabilă, MMU + TrustZone 965 DMIPS @ 772 MHz, până la 2.600 DMIPS cu patru procesoare
ARMv6K ARM11MPCore Ca ARM1136EJ (F) -S, SMP de 1-4 nuclee Variabilă, MMU
SecurCore ARMv6-M SC000 Ca Cortex-M0 0,9 DMIPS / MHz
ARMv4T SC100 Ca ARM7TDMI
ARMv7-M SC300 Ca Cortex-M3 1,25 DMIPS / MHz
Cortex-M ARMv6-M Cortex-M0 Profilul microcontrolerului, majoritatea Thumb + unele Thumb-2, instrucțiuni de multiplicare hardware (opțional mic), temporizator de sistem opțional, memorie opțională de bandă de biți Cache opțional, fără TCM, fără MPU 0,84 DMIPS / MHz
Cortex-M0 + Profilul microcontrolerului, majoritatea Thumb + unele Thumb-2, instrucțiuni de multiplicare hardware (opțional mic), temporizator de sistem opțional, memorie opțională de bandă de biți Cache opțional, fără TCM, MPU opțional cu 8 regiuni 0,93 DMIPS / MHz
Cortex-M1 Profilul microcontrolerului, majoritatea Thumb + unele Thumb-2, instrucțiuni de multiplicare hardware (opțional mic), opțiunea de sistem de operare adaugă un indicator SVC / stivă bancară, temporizator de sistem opțional, fără memorie cu bandă de biți Cache opțional, 0-1024 KB I-TCM, 0-1024 KB D-TCM, fără MPU 136 DMIPS @ 170 MHz, (0,8 DMIPS / MHz dependent de FPGA)
ARMv7-M Cortex-M3 Profilul microcontrolerului, Thumb / Thumb-2, instrucțiuni de multiplicare și divizare hardware, memorie opțională de bandă de biți Cache opțional, fără TCM, MPU opțional cu 8 regiuni 1,25 DMIPS / MHz
ARMv7E-M Cortex-M4 Profil microcontroler, Thumb / Thumb-2 / DSP / opțional VFPv4-SP FPU cu precizie simplă , instrucțiuni de multiplicare și divizare hardware, memorie opțională de bandă de biți Cache opțional, fără TCM, MPU opțional cu 8 regiuni 1,25 DMIPS / MHz (1,27 w / FPU)
Cortex-M7 Profil microcontroler, Thumb / Thumb-2 / DSP / opțional VFPv5 FPU de precizie simplă și dublă , instrucțiuni hardware de multiplicare și divizare 0−64 KB I-cache, 0−64 KB D-cache, 0-16 MB I-TCM, 0-16 MB D-TCM (toate acestea cu ECC opțional), MPU opțional cu 8 sau 16 regiuni 2,14 DMIPS / MHz
Linia de bază ARMv8-M Cortex-M23 Profilul microcontrolerului, Thumb-1 (majoritatea), Thumb-2 (unele), Divide, TrustZone Cache opțional, fără TCM, MPU opțional cu 16 regiuni 0,99 DMIPS / MHz
Linia principală ARMv8-M Cortex-M33 Profil microcontroler, Thumb-1, Thumb-2, Saturated, DSP, Divide, FPU (SP), TrustZone, Co-procesor Cache opțional, fără TCM, MPU opțional cu 16 regiuni 1,50 DMIPS / MHz
Cortex-M35P Profil microcontroler, Thumb-1, Thumb-2, Saturated, DSP, Divide, FPU (SP), TrustZone, Co-procesor Cache încorporat (cu opțiunea 2–16 KB), I-cache, fără TCM, MPU opțional cu 16 regiuni 1,50 DMIPS / MHz
Linia principală ARMv8.1-M Cortex-M55
Cortex-R ARMv7-R Cortex-R4 Profil în timp real, Thumb / Thumb-2 / DSP / opțional VFPv3 FPU , instrucțiuni de multiplicare hardware și opțională de divizare, paritate și ECC opționale pentru magistrale interne / cache / TCM, conductă în 8 etape dual-core care rulează blocare cu logică de eroare 0–64 KB / 0–64 KB, 0–2 din 0–8  MB TCM, opt. MPU cu 8/12 regiuni 1,67 DMIPS / MHz
Cortex-R5 Profil în timp real, Thumb / Thumb-2 / DSP / opțional VFPv3 FPU și precizie, multiplicare hardware și instrucțiuni opționale de divizare, paritate opțională și ECC pentru autobuze interne / cache / TCM, conductă în 8 etape dual-core care rulează pas cu blocare cu logică de eroare / opțional ca 2 nuclee independente, port periferic cu latență scăzută (LLPP), port de coerență a acceleratorului (ACP) 0–64 KB / 0–64 KB, 0–2 din 0–8 MB TCM, opt. MPU cu 12/16 regiuni 1,67 DMIPS / MHz
Cortex-R7 Profil în timp real, Thumb / Thumb-2 / DSP / opțional VFPv3 FPU și precizie, multiplicare hardware și instrucțiuni opționale de divizare, paritate opțională și ECC pentru autobuze interne / cache / TCM, conductă cu 11 etape dual-core care rulează blocare pas cu logica defectelor / executarea în afara comenzii / redenumirea registrului dinamic / opțional ca 2 nuclee independente, port periferic cu latență scăzută (LLPP), ACP 0–64 KB / 0–64 KB,? de 0–128 KB TCM, opt. MPU cu 16 regiuni 2,50 DMIPS / MHz
Cortex-R8 TBD 0–64 KB / 0–64 KB L1, 0-1 / 0–1 MB TCM, optează MPU cu 24 de regiuni 2,50 DMIPS / MHz
ARMv8-R Cortex-R52 TBD 0-32 KB / 0-32 KB L1, 0-1 / 0-1 MB TCM, optează MPU cu 24 + 24 de regiuni 2,16 DMIPS / MHz
Cortex-R82 TBD 16–128 KB / 16–64 KB L1, 64K – 1MB L2, 0,16–1 / 0,16–1 MB TCM,

alege MPU cu 32 + 32 de regiuni

3,41 DMIPS / MHz
Cortex-A
(32 de biți)
ARMv7-A Cortex-A5 Profil aplicație, ARM / Thumb / Thumb-2 / DSP / SIMD / Optional VFPv4-D16 FPU / Optional NEON / Jazelle RCT și DBX, 1-4 nuclee / MPCore opțional, unitate de control snoop (SCU), controler de întrerupere generic (GIC) , portul de coerență al acceleratorului (ACP) 4−64 KB / 4−64 KB L1, MMU + TrustZone 1,57 DMIPS / MHz per nucleu
Cortex-A7 Profil aplicație, ARM / Thumb / Thumb-2 / DSP / VFPv4 FPU / NEON / Jazelle RCT și virtualizare DBX / Hardware, execuție în ordine, suprascalare , 1-4 nuclee SMP, MPCore, Extensii adrese fizice mari (LPAE), snoop unitatea de control (SCU), controlerul de întrerupere generic (GIC), arhitectura și setul de caracteristici sunt identice cu conductele A15, 8-10 etape, proiectare cu putere redusă 8−64 KB / 8−64 KB L1, 0-1 MB L2, MMU + TrustZone 1,9 DMIPS / MHz per nucleu
Cortex-A8 Profil de aplicație, ARM / Thumb / Thumb-2 / VFPv3 FPU / NEON / Jazelle RCT și DAC, conductă superscalară în 13 etape 16-32 KB / 16-32 KB L1, 0-1 MB L2 opt. ECC, MMU + TrustZone Până la 2000 (2.0 DMIPS / MHz în viteză de la 600 MHz la mai mare de 1  GHz )
Cortex-A9 Profilul de aplicare, ARM / Thumb / Thumb-2 / DSP / Opțional VFPv3 FPU / Opțional NEON / Jazelle RCT și DBX, out-of-order problemă speculativ superscalar , 1-4 nuclee SMP, MPCore, unitatea de control snoop (SCU), generic controler de întrerupere (GIC), port de coerență a acceleratorului (ACP) 16–64 KB / 16–64 KB L1, 0–8 MB L2 opt. paritate, MMU + TrustZone 2,5 DMIPS / MHz per nucleu, 10 000 DMIPS @ 2 GHz pe performanță optimizată TSMC 40G (dual-core)
Cortex-A12 Profil de aplicare, ARM / Thumb-2 / DSP / VFPv4 FPU / NEON / hardware de virtualizare, out-of-order problema speculativă superscalara , 1-4 miezuri SMP, extensii de mari dimensiuni fizice Adresa (LPAE), unitatea de control spiona (SCU), generic controler de întrerupere (GIC), port de coerență a acceleratorului (ACP) 32−64 KB 3,0 DMIPS / MHz per nucleu
Cortex-A15 Profilul de aplicare, ARM / Thumb / Thumb-2 / DSP / VFPv4 FPU / NEON / întreg divide / fuzionată MAC / Jazelle RCT / virtualizare hardware, out-of-order problemă speculativ superscalar , 1-4 nuclee SMP, MPCore, Large Adresa fizică Extensii (LPAE), unitate de control snoop (SCU), controler de întrerupere generic (GIC), ACP, conductă de 15-24 etape 32 KB cu paritate / 32 KB cu ECC L1, 0-4 MB L2, L2 are ECC, MMU + TrustZone Cel puțin 3,5 DMIPS / MHz pe nucleu (până la 4,01 DMIPS / MHz în funcție de implementare)
Cortex-A17 Profilul de aplicare, ARM / Thumb / Thumb-2 / DSP / VFPv4 FPU / NEON / întreg divide / fuzionată MAC / Jazelle RCT / virtualizare hardware, out-of-order problemă speculativ superscalar , 1-4 nuclee SMP, MPCore, Large Adresa fizică Extensii (LPAE), unitate de control snoop (SCU), controler generic de întrerupere (GIC), ACP 32 KB L1, 256 KB – 8 MB L2 cu ECC opțional 2,8 DMIPS / MHz
ARMv8-A Cortex-A32 Profil de aplicație, AArch32, 1–4 nuclee SMP, TrustZone, NEON advanced SIMD, VFPv4, virtualizare hardware, dublă problemă, conductă în ordine 8–64 KB cu paritate opțională / 8−64 KB cu ECC L1 opțional per nucleu, 128 KB – 1 MB L2 cu ECC opțional partajat
Cortex-A
(64 de biți)
ARMv8-A Cortex-A34 Profil de aplicație, AArch64, 1–4 nuclee SMP, TrustZone, SIMON avansat NEON, VFPv4, virtualizare hardware, decodare cu 2 lățimi, conductă în ordine 8−64 KB cu paritate / 8−64 KB cu ECC L1 pe nucleu, 128 KB – 1 MB L2 partajat, adrese fizice de 40 de biți
Cortex-A35 Profil de aplicație, AArch32 și AArch64, 1–4 nuclee SMP, TrustZone, NEON SIMD avansat, VFPv4, virtualizare hardware, decodare cu 2 lățimi, conducte în ordine 8−64 KB cu paritate / 8−64 KB cu ECC L1 pe nucleu, 128 KB – 1 MB L2 partajat, adrese fizice de 40 de biți 1,78 DMIPS / MHz
Cortex-A53 Profil de aplicație, AArch32 și AArch64, 1–4 nuclee SMP, TrustZone, NEON SIMD avansat, VFPv4, virtualizare hardware, decodare cu 2 lățimi, conducte în ordine 8−64 KB cu paritate / 8−64 KB cu ECC L1 pe nucleu, 128 KB – 2 MB L2 partajat, adrese fizice de 40 de biți 2,3 DMIPS / MHz
Cortex-A57 Profil de aplicație, AArch32 și AArch64, 1–4 nuclee SMP, TrustZone, NEON avansat SIMD, VFPv4, virtualizare hardware, superscalare de decodare cu 3 lățimi, conductă profund scoasă din funcțiune 48 KB cu paritate DED / 32 KB cu ECC L1 per nucleu; 512 KB – 2 MB L2 partajat cu ECC; Adrese fizice pe 44 de biți 4.1–4.5 DMIPS / MHz
Cortex-A72 Profil de aplicație, AArch32 și AArch64, 1–4 nuclee SMP, TrustZone, NEON SIMD avansat, VFPv4, virtualizare hardware, superscalare cu 3 lățimi, conductă profund scoasă din funcțiune 48 KB cu paritate DED / 32 KB cu ECC L1 per nucleu; 512 KB – 2 MB L2 partajat cu ECC; Adrese fizice pe 44 de biți 4,7 DMIPS / MHz
Cortex-A73 Profil de aplicație, AArch32 și AArch64, 1–4 nuclee SMP, TrustZone, NEON avansat SIMD, VFPv4, virtualizare hardware, superscalare cu 2 lățimi, conductă profund scoasă din funcțiune 64 KB / 32−64 KB L1 pe nucleu, 256 KB – 8 MB L2 partajat cu ECC opțional, adrese fizice de 44 de biți 4,8 DMIPS / MHz
ARMv8.2-A Cortex-A55 Profil de aplicație, AArch32 și AArch64, 1–8 nuclee SMP, TrustZone, NEON advanced SIMD, VFPv4, virtualizare hardware, decodare pe 2 lățimi, conductă în ordine 16−64 KB / 16−64 KB L1, 256 KB L2 per nucleu, 4 MB L3 partajat
Cortex-A65 Profil de aplicație, AArch64, 1–8 nuclee SMP, TrustZone, NEON advanced SIMD, VFPv4, virtualizare hardware, superscalar de decodare pe 2 lățimi, problemă cu 3 lățimi, conductă ieșită din uz, SMT
Cortex-A65AE Ca ARM Cortex-A65, adaugă blocare dual core pentru aplicații de siguranță 64/64 KB L1, 256 KB L2 per nucleu, 4 MB L3 partajat
Cortex-A75 Profil de aplicație, AArch32 și AArch64, 1–8 nuclee SMP, TrustZone, NEON advanced SIMD, VFPv4, virtualizare hardware, superscalare de decodare pe 3 lățimi, conductă profund dezordonată 64/64 KB L1, 512 KB L2 per nucleu, 4 MB L3 partajat
Cortex-A76 Profil de aplicație, AArch32 (nivel fără privilegii sau doar EL0) și AArch64, 1-4 nuclee SMP, TrustZone, NEON avansat SIMD, VFPv4, virtualizare hardware, decodare cu 4 lățimi suprascalare, problemă cu 8 căi, conductă de 13 etape, profund afară -de conductă de comandă 64/64 KB L1, 256−512 KB L2 per nucleu, 512 KB − 4 MB L3 partajat
Cortex-A76AE Ca ARM Cortex-A76, adaugă blocare dual core pentru aplicații de siguranță
Cortex-A77 Profil de aplicație, AArch32 (nivel fără privilegii sau numai EL0) și AArch64, 1–4 nuclee SMP, TrustZone, SIMON avansat NEON, VFPv4, virtualizare hardware, decodare superscalară cu 4 lățimi, preluare instrucțiuni cu 6 lățimi, problemă cu 12 căi, Conductă cu 13 trepte, conductă profund defectată Cache MOP 1.5K L0, 64/64 KB L1, 256−512 KB L2 per nucleu, 512 KB − 4 MB L3 partajat
Cortex-A78
Cortex-A78AE Ca ARM Cortex-A78, adaugă blocare dual core pentru aplicații de siguranță
Cortex-X1 Varianta optimizată pentru performanță a Cortex-A78
Cortex-A78C
ARMv9-A Cortex-A710 Primul procesor „mare” din generația Armv9
Neoverse Neoverse N1 Profil de aplicație, AArch32 (nivel fără privilegii sau numai EL0) și AArch64, 1–4 nuclee SMP, TrustZone, NEON avansat SIMD, VFPv4, virtualizare hardware, decodare cu 4 lățimi suprascalare, expediere / emisiune în 8 căi, conductă de 13 etape, conductă profund defectată 64/64 KB L1, 512−1024 KB L2 per nucleu, 2−128 MB L3 partajat, 128 MB cache la nivel de sistem
Neoverse E1 Profil de aplicație, AArch64, 1–8 nuclee SMP, TrustZone, SIMON avansat NEON, VFPv4, virtualizare hardware, superscalare de decodare pe 2 lățimi, problemă cu 3 lățimi, conductă în 10 etape, conductă în afara comenzii, SMT 32−64 KB / 32−64 KB L1, 256 KB L2 per nucleu, 4 MB L3 partajat
Familia ARM Arhitectura ARM Miezul ARM Caracteristică Cache (I / D), MMU MIPS tipic @ MHz Referinţă

Proiectat de terți

Aceste nuclee implementează setul de instrucțiuni ARM și au fost dezvoltate independent de companii cu licență arhitecturală de la ARM.

Familia de bază Set de instructiuni Microarhitectura Caracteristică Cache (I / D), MMU MIPS tipic @ MHz
StrongARM
( digital )
ARMv4 SA-110 Conductă în 5 etape 16 KB / 16 KB, MMU 100–233 MHz
1,0 DMIPS / MHz
SA-1100 derivat al SA-110 16 KB / 8 KB, MMU
Faraday
( Tehnologia Faraday )
ARMv4 FA510 Conductă în 6 etape Până la 32 KB / 32 KB cache, MPU 1,26 DMIPS / MHz
100–200 MHz
FA526 Până la 32 KB / 32 KB cache, MMU 1,26 MIPS / MHz
166-300 MHz
FA626 Conductă în 8 etape 32 KB / 32 KB cache, MMU 1,35 DMIPS / MHz
500 MHz
ARMv5TE FA606TE Conductă în 5 etape Fără cache, fără MMU 1,22 DMIPS / MHz
200 MHz
FA626TE Conductă în 8 etape 32 KB / 32 KB cache, MMU 1,43 MIPS / MHz
800 MHz
FMP626TE Conductă în 8 etape, SMP 1,43 MIPS / MHz
500 MHz
FA726TE Conductă cu 13 etape, problemă dublă 2,4 DMIPS / MHz
1000 MHz
XScale
( Intel / Marvell )
ARMv5TE XScale Conductă în 7 etape, Thumb, instrucțiuni DSP îmbunătățite 32 KB / 32 KB, MMU 133–400 MHz
Bulverde Wireless MMX , fără fir SpeedStep adăugat 32 KB / 32 KB, MMU 312–624 MHz
Monahans S-a adăugat wireless MMX2 32 KB / 32 KB L1, cache L2 opțional până la 512 KB, MMU Până la 1,25 GHz
Sheeva
(Marvell)
ARMv5 Feroceon Conductă de 5–8 etape, cu un singur număr 16 KB / 16 KB, MMU 600-2000 MHz
Jolteon Conductă de 5–8 etape, cu două probleme 32 KB / 32 KB, MMU
PJ1 (Mohawk) Conductă de 5–8 etape, cu un singur număr, fără fir MMX2 32 KB / 32 KB, MMU 1,46 DMIPS / MHz
1,06 GHz
ARMv6 / ARMv7-A PJ4 Conductă de 6–9 etape, cu două probleme, fără fir MMX2, SMP 32 KB / 32 KB, MMU 2,41 DMIPS / MHz
1,6 GHz
Snapdragon
( Qualcomm )
ARMv7-A Scorpion 1 sau 2 nuclee. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv3 FPU / NEON (128-bit wide) 256 KB L2 per nucleu 2,1 DMIPS / MHz per nucleu
Krait 1, 2 sau 4 nuclee. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv4 FPU / NEON (128-bit wide) 4 KB / 4 KB L0, 16 KB / 16 KB L1, 512 KB L2 per nucleu 3,3 DMIPS / MHz per nucleu
ARMv8-A Kryo 4 nuclee. ? Până la 2,2 GHz

(6,3 DMIPS / MHz)

Topor
( Apple )
ARMv7-A Rapid 2 nuclee. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv4 FPU / NEON L1: 32 KB / 32 KB, L2: 1 MB partajat 3,5 DMIPS / MHz per nucleu
ARMv8-A Ciclon 2 nuclee. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv4 FPU / NEON / TrustZone / AArch64 . În afara ordinii, suprascalar. L1: 64 KB / 64 KB, L2: 1 MB
SLC partajat : 4 MB
1,3 sau 1,4 GHz
ARMv8-A Taifun 2 sau 3 nuclee. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv4 FPU / NEON / TrustZone / AArch64 L1: 64 KB / 64 KB, L2: 1 MB sau 2 MB
SLC partajat : 4 MB
1,4 sau 1,5 GHz
ARMv8-A Twister 2 nuclee. ARM / Thumb / Thumb-2 / DSP / SIMD / VFPv4 FPU / NEON / TrustZone / AArch64 L1: 64 KB / 64 KB, L2: 2 MB
SLC partajat : 4 MB sau 0 MB
1,85 sau 2,26 GHz
ARMv8-A Uragan și Zephyr Uragan: 2 sau 3 nuclee. AArch64, out-of-order, superscalar, 6-decode, 6-issue, 9-wide
Zephyr: 2 sau 3 nuclee. AArch64, ieșit din uz, suprascalar.
L1: 64 KB / 64 KB, L2: 3 MB sau 8 MB partajate
L1: 32 KB / 32 KB. L2: nici unul
SLC: 4 MB sau 0 MB
2,34 sau 2,38 GHz
1,05 GHz
ARMv8.2-A Musonul și Mistral Muson: 2 nuclee. AArch64, out-of-order, superscalar, 7-decode,? -Emission, 11-wide
Mistral: 4 nuclee. AArch64, ieșit din uz, suprascalar. Bazat pe Swift.
L1I: 128 KB, L1D: 64 KB, L2: 8 MB partajat
L1: 32 KB / 32 KB, L2: 1 MB partajat
SLC: 4 MB
2,39 GHz
1,70 GHz
ARMv8.3-A Vortex și Tempest Vortex: 2 sau 4 nuclee. AArch64, ieșit din ordine, suprascalar, 7-decodare,? -Emisie, 11-lățime
Tempest: 4 nuclee. AArch64, out-of-order, superscalar, 3-decode. Bazat pe Swift.
L1: 128 KB / 128 KB, L2: 8 MB partajat
L1: 32 KB / 32 KB, L2: 2 MB partajat
SLC: 8 MB
2,49 GHz
1,59 GHz
ARMv8.4-A Fulger și Tunet Fulger: 2 nuclee. AArch64, out-of-order, superscalar, 7-decode,? -Emisia, 11-wide
Thunder: 4 nuclee. AArch64, ieșit din uz, suprascalar.
L1: 128 KB / 128 KB, L2: 8 MB partajat
L1: 32 KB / 48 KB, L2: 4 MB partajat
SLC: 16 MB
2,66 GHz
1,73 GHz
ARMv8.4-A Firestorm și Icestorm Furtună: 2 nuclee. AArch64, out-of-order, superscalar, 8-decode,? -Emission, 14-wide
Icestorm: 4 nuclee. AArch64, out-of-order, superscalar, 4-decode,? -Emisie, 7-wide.
L1: 192 KB / 128 KB, L2: 8 MB partajat
L1: 128 KB / 64 KB, L2: 4 MB partajat
SLC: 16 MB
2,99 GHz
1,82 GHz
X-Gene
( Micro aplicat )
ARMv8-A X-Gene 64-bit, problemă quad, SMP, 64 nuclee Cache, MMU, virtualizare 3 GHz (4,2 DMIPS / MHz per nucleu)
Denver
( Nvidia )
ARMv8-A Denver 2 nuclee. AArch64 , superscalar cu 7 lățimi , în ordine, optimizare dinamică a codului, cache de optimizare 128 MB,
Denver1: 28nm, Denver2: 16nm
128 KB I-cache / 64 KB D-cache Până la 2,5 GHz
Carmel
( Nvidia )
ARMv8.2-A Carmel 2 nuclee. AArch64 , superscalar pe 10 lățimi , în ordine, optimizare dinamică a codului,? Cache de optimizare MB,
siguranță funcțională, execuție dublă, paritate și ECC
? KB I-cache /? KB D-cache Pâna la ? GHz
ThunderX
( Cavium )
ARMv8-A ThunderX 64 de biți, cu două modele cu 8-16 sau 24-48 nuclee (× 2 w / două cipuri) ? Până la 2,2 GHz
K12
( AMD )
ARMv8-A K12 ? ? ?
Exynos
( Samsung )
ARMv8-A M1 / M2 („Mangosta”) 4 nuclee. AArch64, 4-wide, quad-issue, superscalar, out-of-order 64 KB I-cache / 32 KB D-cache, L2: 16-way partajat 2 MB 5.1 DMIPS / MHz

(2,6 GHz)

ARMv8-A M3 („Meerkat”) 4 nuclee, AArch64, 6-decode, 6-issue, 6-wide. suprascalar, ieșit din funcțiune 64 KB I-cache / 32 KB D-cache, L2: 8-way private 512 KB, L3: 16-way shared 4 MB ?
ARMv8.2-A M4 („Ghepard”) 2 nuclee, AArch64, 6-decode, 6-issue, 6-wide. suprascalar, ieșit din funcțiune 64 KB I-cache / 32 KB D-cache, L2: 8-way privat 512 KB, L3: 16-way shared 4 MB ?

Cronologia nucleului ARM

Următorul tabel listează fiecare nucleu până în anul în care a fost anunțat.

An Miezuri clasice Miezuri de cortex Miezuri neoverse
ARM1-6 ARM7 ARM8 ARM9 ARM10 ARM11 Microcontroler Timp real Aplicație
(32 de biți)
Aplicație
(64 de biți)
Aplicație
(64 de biți)
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 ARM11MPCore 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

Vezi si

Referințe

Lecturi suplimentare