EasyManuals Logo

ARM Cortex-A76 Core User Manual

ARM Cortex-A76 Core
602 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #74 background imageLoading...
Page #74 background image
A6.2.4 Data cache maintenance considerations
DC IVAC operations in AArch64 state are treated as DC CIVAC except for permission checking and
watchpoint matching.
DC ISW operations in AArch64 state, perform both a clean and invalidate of the target set/way. The
values of HCR.SWIO and HCR_EL2.SWIO have no effect.
See the Arm
®
Architecture Reference Manual Armv8, for Armv8-A architecture profile for more
information.
A6.2.5 Data cache coherency
To maintain data coherency between multiple cores, the Cortex-A76 core uses the MESI protocol.
A6.2.6 Write streaming mode
A cache line is allocated to the L1 on either a read miss or a write miss.
However, there are some situations where allocating on writes is not required. For example, when
executing the C standard library memset() function to clear a large block of memory to a known value.
Writes of large blocks of data can pollute the cache with unnecessary data. It can also waste power and
performance if a linefill must be performed only to discard the linefill data because the entire line was
subsequently written by the memset().
To counter this, the L1 memory system includes logic to detect when the core has stores pending to a full
cache line when it is waiting for a linefill to complete, or when it detects a DCZVA (full cache line write to
zero). If this situation is detected, then it switches into write streaming mode.
When in write streaming mode, loads behave as normal, and can still cause linefills, and writes still
lookup in the cache, but if they miss then they write out to L2 (or possibly L3, system cache, or DRAM)
rather than starting a linefill.
The L1 memory system continues in write streaming mode until it can no longer create a full cacheline
of store (for example because of a lack of resource in the L1 memory system) or has detected a high
proportion of store hitting in the cache.
Note
The L1 memory system is monitoring transaction traffic through L1 and, depending on different
thresholds, can set a stream to go out to L2, L3, and system cache and DRAM.
The following registers control the different thresholds:
AArch64 state
CPUECTLR_EL1 configure the L2, L3, and L4 write streaming mode threshold. See
B2.26 CPUECTLR_EL1, CPU Extended Control Register, EL1 on page B2-172.
A6 Level 1 memory system
A6.2 Cache behavior
100798_0300_00_en Copyright © 2016–2018 Arm Limited or its affiliates. All rights
reserved.
A6-74
Non-Confidential

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the ARM Cortex-A76 Core and is the answer not in the manual?

ARM Cortex-A76 Core Specifications

General IconGeneral
ArchitectureARMv8.2-A
MicroarchitectureCortex-A76
Pipeline Depth13 stages
FrequencyUp to 3.0 GHz
Process Technology7nm
Core TypeOut-of-order
NEONYes
Power EfficiencyImproved over Cortex-A75
Performance Improvement35% over Cortex-A75
Core Count1-4 cores per cluster
ISA SupportAArch64 and AArch32
Branch PredictionYes
L1 Data Cache32KB, per core
L2 Cache256KB or 512KB, per core
L3 CacheUp to 4MB
Memory SupportLPDDR4, LPDDR4X, DDR4
DynamIQ Shared Unit (DSU)DynamIQ Shared Unit (DSU)
Cryptography ExtensionsYes
Virtualization SupportYes
L1 Cache64 KB per core

Related product manuals