Data Cache Zero ID Register
Indicates the block size that is written with byte values of 0 by the DC ZVA (Data Cache Zero by Address) System instruction.
If FEAT_MTE is implemented, this register indicates the granularity at which the DC GVA and DC GZVA instructions write.
If FEAT_MTETC is implemented, this register indicates the granularity at which the DC GBVA and DC ZGBVA instructions write.
This register is present only when FEAT_AA64 is implemented. Otherwise, direct accesses to DCZID_EL0 are UNDEFINED.
DCZID_EL0 is a 64-bit register.
| 63 | 62 | 61 | 60 | 59 | 58 | 57 | 56 | 55 | 54 | 53 | 52 | 51 | 50 | 49 | 48 | 47 | 46 | 45 | 44 | 43 | 42 | 41 | 40 | 39 | 38 | 37 | 36 | 35 | 34 | 33 | 32 |
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| RES0 | |||||||||||||||||||||||||||||||
| RES0 | TBS | DZP | BS | ||||||||||||||||||||||||||||
Reserved, RES0.
Log2 of the block size in words written by a DC ZGBVA or DC GBVA instruction. The maximum size supported is 2KB, indicated by value 0b1001.
The minimum supported size is 16B (1 Allocation tag) indicated by the value 0b0010.
This field has an IMPLEMENTATION DEFINED value.
Access to this field is RO.
Reserved, RES0.
Data Zero Prohibited. This field indicates whether use of DC ZVA instructions is permitted or prohibited.
If FEAT_MTE is implemented, this field indicates whether use of the DC GVA and DC GZVA instructions are permitted or prohibited.
If FEAT_MTETC is implemented, this field indicates whether use of the DC GBVA and DC ZGBVA instructions are permitted or prohibited.
| DZP | Meaning |
|---|---|
| 0b0 |
Instructions are permitted. |
| 0b1 |
Instructions are prohibited. |
The value read from this field is governed by the current Exception level and the values of the following fields:
Log2 of the block size in words written by a DC ZVA instruction. The maximum size supported is 2KB, indicated by value 0b1001.
If FEAT_MTE2 is implemented, then this field determines the block size written by a DC GVA or DC GZVA instruction and the minimum size supported is 16 bytes, indicated by value 0b0010.
This field has an IMPLEMENTATION DEFINED value.
Access to this field is RO.
Accesses to this register use the following encodings in the System register encoding space:
MRS <Xt>, DCZID_EL0
(op0 = 0b11, op1 = 0b011, CRn = 0b0000, CRm = 0b0000, op2 = 0b111)
if !IsFeatureImplemented(FEAT_AA64) then UnimplementedIDRegister(); elsif EffectivelyAtEL0NotInHost() then if EL2Enabled() && IsFeatureImplemented(FEAT_FGT) && (!HaveEL(EL3) || SCR_EL3().FGTEn == '1') && HFGRTR_EL2().DCZID_EL0 == '1' then AArch64_SystemAccessTrap(EL2, 0x18); else X{64}(t) = DCZID_EL0(); end; elsif EffectivelyAtEL0InHost() then X{64}(t) = DCZID_EL0(); elsif PSTATE.EL == EL1 then if EL2Enabled() && IsFeatureImplemented(FEAT_FGT) && (!HaveEL(EL3) || SCR_EL3().FGTEn == '1') && HFGRTR_EL2().DCZID_EL0 == '1' then AArch64_SystemAccessTrap(EL2, 0x18); else X{64}(t) = DCZID_EL0(); end; elsif PSTATE.EL == EL2 then X{64}(t) = DCZID_EL0(); elsif PSTATE.EL == EL3 then X{64}(t) = DCZID_EL0(); end;
Version 2026.06 — Copyright © 2010-2026 Arm Limited or its affiliates.
This site is provided as a community resource and is NOT affiliated with nor endorsed by Arm Limited.