Upload
vocong
View
239
Download
0
Embed Size (px)
Citation preview
Cuprins
1. Introducere
2. Modele și limbaje pentru specificația sistemelor
3. Interfețe de comunicație
4. Periferice pentru sisteme dedicate
5. Microcontrolere
6. Procesoare dedicate
7. Dezvoltarea programelor
8. Implementarea sistemelor dedicate
Sisteme de calcul dedicate (06-1) 11.12.2018 1
Procesoare dedicate
•Procesoare ARM
•Procesoare Intel
•Procesoare AMD
Sisteme de calcul dedicate (06-1) 11.12.2018 2
Procesoare ARM
Prezentare generală
Arhitecturile ARMv1 .. ARMv6
Arhitectura ARMv7
Arhitectura ARMv8
Sisteme de calcul dedicate (06-1) 11.12.2018 3
Prezentare generală (1)
•ARM – Advanced RISC Machine•Denumirea inițială: Acorn RISC Machine•Arhitectura a fost proiectată la firma AcornComputers (UK)Primul procesor ARM comercial: ARM1 (1985) utilizat în calculatorul personal BBC MicroBazat pe procesorul Motorola 6502 (8 biți)Modificări: arhitectură RISC de 32 de biți; lungime fixă a instrucțiunilor; arhitectură load/store
Sisteme de calcul dedicate (06-1) 11.12.2018 4
Prezentare generală (2)
•ARM2 (8 MHz) s-a utilizat în calculatorul personal Archimedes (1987)
•ARM3 (24 .. 33 MHz) conținea o memorie cache de instrucțiuni și de date (1989)
•Dezvoltarea procesoarelor ARM a continuat în cadrul firmei Advanced RISC Machines Ltd. (1990)Acorn Computers
VLSI Technology Inc.
Apple ComputerSisteme de calcul dedicate (06-1) 11.12.2018 5
Prezentare generală (3)
•Primul procesor dezvoltat de ARM Ltd.: ARM6(1992)
Au fost licențiate diferite versiuni ARM6: ARM610(Apple), StrongARM (DEC), XScale (Intel)
•În 1998, ARM Ltd. a devenit ARM Holdings
A fost achiziționat de SoftBank Group (2016)
•Dezvoltarea procesoarelor ARM a continuat cu seriile ARM7 .. ARM11, iar apoi cu seriile ARM Cortex-M, Cortex-R, Cortex-A
Sisteme de calcul dedicate (06-1) 11.12.2018 6
Prezentare generală (4)
•ARM Holdings:Proiectează arhitectura procesoarelor ARMLicențiază proiectele către partenerii care fabrică procesoareleDezvoltă tehnologii pentru asistarea proiectării•Magistrale, periferice, instrumente software, plăci
de dezvoltare, depanatoare
•Procesoarele ARM se utilizează pe scară largă în: dispozitive mobile, sisteme înglobate, calculatoare portabile
Sisteme de calcul dedicate (06-1) 11.12.2018 7
Prezentare generală (5)
Sisteme de calcul dedicate (06-1) 11.12.2018 8
•Nucleele ARM pot fi integrate în circuite SoC (System-on-Chip) ale diferiților producătorinVidia: Tegra (de ex., Tegra X2)
Apple: A4, A5, A6 etc. (de ex., Apple A11)
Samsung Electronics: Exynos (de ex., Exynos9810)
Qualcomm: Snapdragon (de ex., Snapdragon845)
Prezentare generală (6)
•Magistrale bazate pe standardul ARM AMBA (Advanced Microcontroller Bus Architecture)AMBA 2 definește:•Magistrala AHB (Advanced High-performance Bus)•Vers. 2 a magistralei APB (Advanced Peripheral Bus) accesul la registrele de control al perifericelor
AMBA 3 definește:•Magistrala AHB-Lite: magistrală AHB simplificată
pentru sisteme cu un singur dispozitiv master
Sisteme de calcul dedicate (06-1) 11.12.2018 9
Prezentare generală (7)
•Interfața AXI3 (Advanced eXtensible Interface 3): interconexiune de viteză ridicată
AMBA 4 definește:•Vers. 4 a interfeței AXI (AXI4): îmbunătățește
utilizarea magistralei la sistemele multi-master
•Varianta AXI4-Lite a interfeței AXI4: interfață simplificată pentru perifericele din circuit
•Extensia AXI Coherency Extensions (ACE): se extinde interfața AXI cu trei canale pentru partajarea memoriilor cache între procesoare
Sisteme de calcul dedicate (06-1) 11.12.2018 10
Prezentare generală (8)
•Arhitectura ARM definește:O mașină abstractă EP (element de procesare) Reguli de utilizare a EP
•Modelul de programare ARMRegistre de uz generalModuri ale procesoruluiFiecare mod poate oferi diferite tipuri de accese la memorie și poate avea un subset propriu de registre
Sisteme de calcul dedicate (06-1) 11.12.2018 11
Procesoare ARM
Prezentare generală
Arhitecturile ARMv1 .. ARMv6
Arhitectura ARMv7
Arhitectura ARMv8
Sisteme de calcul dedicate (06-1) 11.12.2018 12
Arhitecturile ARMv1 .. ARMv6 (1)
•Nu trebuie confundată vers. arhitecturii cu procesorul având același numărEx.: ARMv3 (arhitectură); ARM3 (procesor)•Arhitectura ARMv1Adresare pe 26 de biți a memoriei de programAdresare pe 32 de biți a memoriei de dateFără instrucțiuni de înmulțireInstrucțiuni de salt și apel (BL)Instrucțiune de întrerupere software pentru apelul funcțiilor SO
Sisteme de calcul dedicate (06-1) 11.12.2018 13
Arhitecturile ARMv1 .. ARMv6 (2)
Moduri ale EP•User (USR): mod neprivilegiat•Interrupt Request (IRQ): întreruperi normale•Fast Interrupt Request (FIQ): întreruperi rapide•Supervisor (SVC): după resetare sau o instrucțiune
de întrerupere software
Registre vizibile în modurile USR, SVC: R0..R15•R13: Stack Pointer (SP)•R14: Link Register (LR)•R15: Program Counter (PC), registru al indicatorilor
de stare și de mod
Sisteme de calcul dedicate (06-1) 11.12.2018 14
Arhitecturile ARMv1 .. ARMv6 (3)
În modurile IRQ și FIQ există copii private ale anumitor registre •Crește viteza tratării întreruperilor
Modul IRQ: copii ale registrelor R13 și R14 R13_irq, R14_irq
Modul FIQ: copii ale registrelor R10 .. R14 R10_fiq .. R14_fiq
Singura implementare: procesorul ARM1
Sisteme de calcul dedicate (06-1) 11.12.2018 15
Arhitecturile ARMv1 .. ARMv6 (4)
•Arhitectura ARMv2S-a păstrat adresarea pe 26 de bițiInstrucțiuni de înmulțire și înmulțire cu acumulare (MAC)Interfață pentru până la 16 coprocesoare logice, CP0 .. CP15Două registre suplimentare vizibile în modul FIQ, R8_fiq și R9_fiqInstrucțiuni Load/Store atomice (SWP, SWPB) Implementări: ARM2, ARM3, ARM250
Sisteme de calcul dedicate (06-1) 11.12.2018 16
Arhitecturile ARMv1 .. ARMv6 (5)
•Arhitectura ARMv3Adresare pe 32 de biți a memoriei de program
Informația din registrul R15 a fost mutată în registrul CPSR (Current Program Status Reg.)
Pentru fiecare mod de excepție există un registru SPSR (Saved Program Status Reg.)
S-au introdus modurile Abort și Undefined•Abort: acces ilegal la memoria de date (Data Abort)
sau la memoria de program (Prefetch Abort)
•Undefined: excepție de instrucțiune nedefinită
Sisteme de calcul dedicate (06-1) 11.12.2018 17
Arhitecturile ARMv1 .. ARMv6 (6)
Variantele M: înmulțire și operații MAC de 32 x 32 biți, cu rezultat pe 64 biți
Posibilitatea de a schimba ordinea octeților (little-endian sau big-endian)
Implementări: ARM6, ARM7
•Arhitectura ARMv4Instrucțiuni Load/Store pentru semicuvinte
Instrucțiuni Load cu extensie de semn pentru octeți și semicuvinte
Sisteme de calcul dedicate (06-1) 11.12.2018 18
Arhitecturile ARMv1 .. ARMv6 (7)
S-a introdus modul privilegiat System•Acces la aceleași registre ca și modul User
Variantele T: extensia Thumb•Subset al instrucțiunilor ARM•Instrucțiunile sunt comprimate pe 16 biți •Instrucțiunile Thumb sunt decomprimate pe 32 de
biți înainte de execuție•Există limitări ale setului de instrucțiuni Thumb
Comutarea între starea ARM și starea Thumb: cu instrucțiunea BX (Branch and eXchange)Implementări: StrongARM, ARM8, ARM9
Sisteme de calcul dedicate (06-1) 11.12.2018 19
Arhitecturile ARMv1 .. ARMv6 (8)
•Arhitectura ARMv5Instrucțiune Count Leading Zeros (CLZ)
Instrucțiune de suspendare a execuției pentru depanare (breakpoint)
Extensia VFP (Vector Floating Point), vers. 2 (VFPv2): instrucțiuni în virgulă mobilă cu precizie simplă și precizie dublă
Variantele E: extensia DSP•Adunarea și scăderea utilizează aritmetica saturată
cu semnSisteme de calcul dedicate (06-1) 11.12.2018 20
Arhitecturile ARMv1 .. ARMv6 (9)
Variantele J: extensia Jazelle DBX (Direct Bytecode Execution)•O nouă stare de execuție, Java instrucțiunea BXJ
(Branch and Exchange Jazelle)•Implementează execuția codului Java prin hardware•S-a adăugat un nou registru CPSR•Întreruperile apărute în starea Java sunt tratate
imediat•Unor registre li se asignează funcții specifice stării
Java: SP, variabile locale
Implementări: ARM7EJ, ARM9E, ARM10E
Sisteme de calcul dedicate (06-1) 11.12.2018 21
Arhitecturile ARMv1 .. ARMv6 (10)
•Arhitectura ARMv6Îmbunătățirea sistemului de gestiune a memoriei•Reducerea timpului de încărcare pentru
instrucțiuni și date
•Creșterea performanțelor cu până la 30%
Suport pentru sisteme multiprocesor•Instrucțiuni Load/Store Exclusive
•Posibilitatea unor metode mai complexe de sincronizare pentru memoria partajată
Sisteme de calcul dedicate (06-1) 11.12.2018 22
Arhitecturile ARMv1 .. ARMv6 (11)
Instrucțiuni pentru aplicații multimedia•Set de instrucțiuni SIMD de 32 de biți
•Implementarea mai eficientă a aplicațiilor audio, video, grafică 3D
Gestiunea mai eficientă a datelor•Suport îmbunătățit pentru subsisteme cu ordinea
diferită a octeților
•Gestiunea unor date nealiniate
Gestiunea mai eficientă a întreruperilor și a excepțiilor
Sisteme de calcul dedicate (06-1) 11.12.2018 23
Arhitecturile ARMv1 .. ARMv6 (12)
Extensia Thumb-2•Noi instrucțiuni de 32 de biți
•Set de instrucțiuni extins: operații pe câmpuri de biți, execuție condițională
•Se pot genera instrucțiuni Thumb sau ARM din același cod sursă limbaj de asamblare unificat (UAL – Unified Assembly Language)
•Performanțe superioare față de setul Thumb: dimensiunea memoriei redusă cu 30%; performanța îmbunătățită cu până la 38%
Implementare: ARM11 Sisteme de calcul dedicate (06-1) 11.12.2018 24
Procesoare ARM
Prezentare generală
Arhitecturile ARMv1 .. ARMv6
Arhitectura ARMv7
Arhitectura ARMv8
Sisteme de calcul dedicate (06-1) 11.12.2018 25
Arhitectura ARMv7
Arhitectura ARMv7•Prezentare generală
•Extensia ARM NEON
•Extensia ARM TrustZone
•Tehnologia ARM MPCore
•Tehnologia ARM big.LITTLE
Sisteme de calcul dedicate (06-1) 11.12.2018 26
Prezentare generală (1)
•Sunt definite trei profiluri arhitecturaleProfilul A (Application): Cortex-A•Pentru sisteme care necesită performanțe ridicate:
tablete, telefoane, aparate TV
•Implementări: Cortex-A7, Cortex-A8, Cortex-A9, Cortex-A12, Cortex-A15
Profilul R (Real-time): Cortex-R•Pentru sisteme înglobate cu performanțe ridicate:
sisteme pentru automobile, medicale, industriale
•Implementări: Cortex-R4, Cortex-R5, Cortex-R7
Sisteme de calcul dedicate (06-1) 11.12.2018 27
Prezentare generală (2)
Profilul M (Microcontroller): Cortex-M•Pentru sisteme înglobate cu consum și cost redus:
electronica de consum, instrumente medicale
•Implementări: Cortex-M3, Cortex-M4
•Extensia arhitecturală VFP, vers. 3 (VFP3) sau vers. 4 (VFPv4)•Definită pentru profilurile ARMv7-A și ARMv7-R
•Vers. 4: date de 16 biți; instrucțiuni MAC fuzionate
•32 registre de 64 de biți (VFPvx-D32), sau
•16 registre de 64 de biți (VFPvx-D16)
Sisteme de calcul dedicate (06-1) 11.12.2018 28
Prezentare generală (3)
•În general, implementările ARMv7-A și ARMv7-R includ extensiile:Thumb; Thumb-2; DSP; Jazelle DBX
•Alte extensii și tehnologii:Extensia NEON: instrucțiuni SIMD avansate
Extensia TrustZone: extensie de securitate
Extensia de virtualizare: suport hardware
Tehnologia MPCore: implementarea unor nuclee multiple într-un circuit SoC
Tehnologia big.LITTLE: optimizarea consumului
Sisteme de calcul dedicate (06-1) 11.12.2018 29
Arhitectura ARMv7
Arhitectura ARMv7•Prezentare generală
•Extensia ARM NEON
•Extensia ARM TrustZone
•Tehnologia ARM MPCore
•Tehnologia ARM big.LITTLE
Sisteme de calcul dedicate (06-1) 11.12.2018 30
Extensia ARM NEON (1)
•Extensie SIMD avansatăSet de instrucțiuni SIMD de 64 și 128 de biți
•Accelerare pentru aplicații multimedia și de prelucrare a semnalelorCodificare/decodificare video și audio, grafică
2D/3D, sinteza vocii, prelucrarea imaginilor
•32 de registre x 64 de bițiPot fi utilizate ca 16 registre x 128 de biți
Registrele sunt considerate ca vectori sau elemente de același tip
Sisteme de calcul dedicate (06-1) 11.12.2018 31
Extensia ARM NEON (2)
•Tipuri de date:Întregi de 8, 16, 32 sau 64 de biți, cu/fără semn
În VM cu precizie simplă (32 de biți)
•Se pot executa până la 16 operații simultan
•Avantaje:Suport pentru diferite standarde: MPEG-4, H.264,
Real, AVS
Se poate utiliza pentru prelucrare vectorială
Performanță crescută cu 60..150% pentru codec-uri video și de 4..8 ori pentru algoritmi DSP simpli
Sisteme de calcul dedicate (06-1) 11.12.2018 32
Arhitectura ARMv7
Arhitectura ARMv7•Prezentare generală
•Extensia ARM NEON
•Extensia ARM TrustZone
•Tehnologia ARM MPCore
•Tehnologia ARM big.LITTLE
Sisteme de calcul dedicate (06-1) 11.12.2018 33
Extensia ARM TrustZone (1)
•Extensie de securitate
•Arhitectură hardware care permite rularea unui kernel considerat sigurTEE (Trusted Execution Environment)
Se poate utiliza pentru rularea unor aplicații de încredere
Avantaje: performanță ridicată; acces la o memorie cu dimensiune mai ridicată
•Alternativă la adăugarea unui nucleu de securitate dedicat la un circuit SoC
Sisteme de calcul dedicate (06-1) 11.12.2018 34
Extensia ARM TrustZone (2)
•Resursele hardware și software se pot afla într-una din două stări (domenii):Starea sigură: subsistemul de securitateStarea normală: restul sistemului
•Procesoarele TrustZone conțin două nuclee virtuale pentru cele două stăriComutarea contextului între nuclee: printr-un nou mod al procesorului, Monitor •Intrarea în modul Monitor: instrucțiunea SMC
(Secure Monitor Call) sau printr-o excepție hardwareSisteme de calcul dedicate (06-1) 11.12.2018 35
Arhitectura ARMv7
Arhitectura ARMv7•Prezentare generală
•Extensia ARM NEON
•Extensia ARM TrustZone
•Tehnologia ARM MPCore
•Tehnologia ARM big.LITTLE
Sisteme de calcul dedicate (06-1) 11.12.2018 36
Tehnologia ARM MPCore (1)
•Permite implementarea a până la 4 nuclee de procesoare într-un circuit SoC
•Utilizează un protocol MESI modificat pentru coerența memoriilor cacheMESI – Modified, Exclusive, Shared, InvalidPermite transferul datelor între memoriile cache,
fără scrierea în memoria principală
•Port opțional ACP (Accelerator Coherency Port)Permite unor controlere și acceleratoare fără
memorii cache să acceseze ierarhia memoriilor cache din nucleele de procesoare
Sisteme de calcul dedicate (06-1) 11.12.2018 37
Tehnologia ARM MPCore (2)
•Moduri de operare: cu memorie distribuită sau cu memorie partajată
Cu memorie distribuită•Nucleele comunică prin transmitere de mesaje
•AMP – Asymmetric Multi-Processing
•Unele nuclee pot fi dedicate unor taskuri
Cu memorie partajată•Nucleele au acces la toate perifericele de I/E
•SMP – Symmetric Multi-Processing
•Niciun nucleu nu este rezervat pentru funcții speciale
Sisteme de calcul dedicate (06-1) 11.12.2018 38
Arhitectura ARMv7
Arhitectura ARMv7•Prezentare generală
•Extensia ARM NEON
•Extensia ARM TrustZone
•Tehnologia ARM MPCore
•Tehnologia ARM big.LITTLE
Sisteme de calcul dedicate (06-1) 11.12.2018 39
Tehnologia ARM big.LITTLE (1)
•Tehnologie de optimizare a consumului de energie pentru platformele mobileCombinarea într-un circuit SoC a unor nuclee cu
performanțe ridicate (“big”) cu nuclee eficiente ca și consum de energie (“LITTLE”)•Exemplu: 2 x Cortex-A17 și 2 x Cortex-A7
Taskurile sunt alocate în mod dinamic unuia din cele două tipuri de nuclee
•Se poate obține o reducere a consumului de energie cu până la 75%
Sisteme de calcul dedicate (06-1) 11.12.2018 40
Tehnologia ARM big.LITTLE (2)
•Pentru conectarea nucleelor se utilizează o interconexiune care asigură coerența între memoriile cache
•Exemplu de interconexiune: CoreLink Cache Coherent Interconnect (CCI)Asigură coerența memoriilor cache între nuclee,
GPU și alte interfețe sau acceleratoare
•Alocarea taskurilor la nuclee: cu modelul software Global Task Scheduling (GTS)Se anticipează cerințele de performanță ale firelor
de execuțieSisteme de calcul dedicate (06-1) 11.12.2018 41
Procesoare ARM
Prezentare generală
Arhitecturile ARMv1 .. ARMv6
Arhitectura ARMv7
Arhitectura ARMv8
Sisteme de calcul dedicate (06-1) 11.12.2018 42
Arhitectura ARMv8
Arhitectura ARMv8•Prezentare generală
•Starea de execuție AArch32
•Starea de execuție AArch64
Sisteme de calcul dedicate (06-1) 11.12.2018 43
Prezentare generală (1)
•Se păstrează profilurile arhitecturale introduse în versiunea ARMv7: A, R, M
•Se va descrie doar profilul ARMv8-A
•S-au păstrat majoritatea extensiilor din versiunile precedente, cu excepția Jazelle DBX
Extensia NEON și arhitectura VFP fac parte din arhitectura ARMv8-A de bază
Extensie criptografică opțională: pentru algoritmul de criptare AES și funcțiile SHA-1, SHA-256
Sisteme de calcul dedicate (06-1) 11.12.2018 44
Prezentare generală (2)
•Stare de execuție: definește mediul de execuție pentru un EPRegistre, seturi de instrucțiuni, modelul excepțiilor
•Două stări de execuție, AArch32 și AArch64AArch32: stare de execuție de 32 de biți•Compatibilă cu versiunile precedente ale arhitecturii•Setul de instrucțiuni A32 (ARM)•Setul de instrucțiuni T32 (Thumb-2)
AArch64: stare de execuție de 64 de biți•Adrese de 64 de biți, operanzi de 32 sau 64 de biți•Nou set de instrucțiuni, A64
Sisteme de calcul dedicate (06-1) 11.12.2018 45
Prezentare generală (3)
•Modelul excepțiilorAArch32•Același model ca și în arhitectura ARMv7•Bazat pe modurile EP
AArch64•Bazat pe patru nivele de excepție, EL0 .. EL3•Nivelul EL0: neprivilegiat •Nivelele EL1, EL2, EL3: privilegiate•Execuția poate trece de la un nivel la altul doar la
apariția unei excepții sau la revenirea dintr-o excepție
•Implementări: Cortex-A5x, Cortex-A7x, AppleAx, Qualcomm Snapdragon 83x/84x/85x
Sisteme de calcul dedicate (06-1) 11.12.2018 46
Arhitectura ARMv8
Arhitectura ARMv8•Prezentare generală
•Starea de execuție AArch32
•Starea de execuție AArch64
Sisteme de calcul dedicate (06-1) 11.12.2018 47
Starea de execuție AArch32 (1)
•Moduri ale EPSunt prevăzute pentru execuția normală a
programelor și pentru tratarea excepțiilorFiecare mod este implementat la un anumit nivel
de excepțieUser (usr): execuție neprivilegiată (EL0)•Programele executate în acest mod nu pot accesa
resurse sau zone de memorie protejate
FIQ (fiq): tratarea unei cereri de întrerupere rapidă (EL1 sau EL3)IRQ (irq): tratarea unei cereri de întrerupere
normală (EL1 sau EL3)
Sisteme de calcul dedicate (06-1) 11.12.2018 48
Starea de execuție AArch32 (2)
Supervisor (svc): tratarea excepției Supervisor Call instrucțiunea SVC (EL1 sau EL3)Monitor (mon): tratarea excepției Secure Monitor
Call instrucțiunea SMC (EL3)Abort (abt): tratarea excepției Data Abort sau
Prefetch Abort (EL1 sau EL3)Hyp (hyp): tratarea excepției Hypervisor Call
instrucțiunea HVC (EL2)Undefined (und): tratarea excepției de
instrucțiune nedefinită (EL1 sau EL3)System (sys): nu apare în urma unei excepții, ci
prin scrierea biților de mod din registrul CPSR
Sisteme de calcul dedicate (06-1) 11.12.2018 49
Starea de execuție AArch32 (3)
•Registre disponibilePentru aplicații •Registrele generale R0 .. R14•R13: SP (Stack Pointer)
•R14: LR (Link Register)
•Registre speciale: R15 (PC – Program Counter); APSR (Application Program Status Register)
Pentru sistem•Copii ale unor registre: SP (de ex., SP_svc), LR (de
ex., LR_fiq), CPSR (de ex., SPSR_irq)
Sisteme de calcul dedicate (06-1) 11.12.2018 50
Starea de execuție AArch32 (5)
•Registre pentru instrucțiuni SIMD și în VMSet de registre separat de registrele generaleInstrucțiuni SIMD avansate: operații asupra elementelor vectorilor •Un registru poate conține elemente de același tip•Elementele pot fi întregi sau valori în VM cu precizie
simplă•Numărul de elemente depinde de tipul lor și
dimensiunea registrului
Instrucțiuni în VM: operații scalare în VM cu precizie simplă sau dublă
Sisteme de calcul dedicate (06-1) 11.12.2018 52
Starea de execuție AArch32 (6)
Set comun de registre (SIMD și VM): 32 registre de 64 bițiVederi diferite ale registrelor pentru instrucțiunile SIMD avansate și cele în VMInstrucțiuni SIMD avansate: •32 registre de 64 biți, D0 .. D31, sau•16 registre de 128 biți, Q0 .. Q15
Instrucțiuni în VM:•32 registre de 32 biți, S0 .. S31, sau•32 registre de 64 biți, D0 .. D31
Sisteme de calcul dedicate (06-1) 11.12.2018 53
Arhitectura ARMv8
Arhitectura ARMv8•Prezentare generală
•Starea de execuție AArch32
•Starea de execuție AArch64
Sisteme de calcul dedicate (06-1) 11.12.2018 55
Starea de execuție AArch64 (1)
•31 registre generale: R0 .. R30Pot fi accesate ca registre de 64 biți (X0 .. X30)
sau ca registre de 32 de biți (W0 .. W30)X30: registru de legăturăZR: registru zero nu este un registru fizic
•SP: indicator de stivă dedicat (64 biți)Cuvântul inferior poate fi accesat prin numele
WSP
•PC: contor de program (64 biți)Nu poate fi înscris prin program
Sisteme de calcul dedicate (06-1) 11.12.2018 56
Starea de execuție AArch64 (2)
•Set comun de registre pentru instrucțiuni SIMD avansate și în VM32 registre de 128 biți, V0 .. V31
Registrele pot fi accesate ca și: •Cuvinte cvadruple (128 biți), Q0 .. Q31
•Cuvinte duble (64 biți), D0 .. D31
•Cuvinte (32 biți), S0 .. S31
•Semi-cuvinte (16 biți), H0 .. H31
•Octeți, B0 .. B31
Sisteme de calcul dedicate (06-1) 11.12.2018 57