← Home

TLBIDIDR_EL1

TLBI Domains Identification Register (EL1)

Provides information on how many bits of the TLBID field are implemented for TLBI IS and TLBI OS instructions.

Configuration

This register is present only when FEAT_TLBID is implemented and FEAT_AA64 is implemented. Otherwise, direct accesses to TLBIDIDR_EL1 are UNDEFINED.

Attributes

TLBIDIDR_EL1 is a 64-bit register.

Field descriptions

6362616059585756555453525150494847464544434241403938373635343332
313029282726252423222120191817161514131211109876543210
RES0NVOSRES0NOS
RES0NVISRES0NIS

Bits [63:45]:

Reserved, RES0.

NVOS, bits [44:40]:

Number of bits of Virtual TLBI Domain supported for Outer Shareable TLBI instructions.

The value of this field is an IMPLEMENTATION DEFINED choice of:

NVOSMeaning
0b00000

There are no Virtual TLBI Domain Outer shareable bits.

0b00001..0b00101

The number of Virtual TLBI Domain Outer shareable bits.

The permitted values of this field depend on the value of NOS, as follows:

Access to this field is RO.

Bits [39:37]:

Reserved, RES0.

NOS, bits [36:32]:

Number of bits of TLBI Domain supported for Outer Shareable TLBI instructions.

Values greater than 16 are reserved.

The value of this field additionally determines the width of the VTLBIDOS<n>_EL2.TD<m> fields, as follows:

The value of this field is an IMPLEMENTATION DEFINED choice of:

NOSMeaning
0b00000

The VTLBIDOS<n>_EL2 registers are not implemented.

0b00001..0b01000

Each TD<m> field is 8 bits wide. NVOS is between 0 and 5.

0b01001..0b10000

Each TD<m> field is 16 bits wide. NVOS must be between 0 and 4.

Access to this field is RO.

Bits [31:13]:

Reserved, RES0.

NVIS, bits [12:8]:

Number of bits of Virtual TLBI Domain supported for Inner Shareable TLBI instructions.

The value of this field is an IMPLEMENTATION DEFINED choice of:

NVISMeaning
0b00000

There are no Virtual TLBI Domain Inner shareable bits.

0b00001..0b00101

The number of Virtual TLBI Domain Inner shareable bits.

The permitted values of this field depend on the value of NIS, as follows:

Access to this field is RO.

Bits [7:5]:

Reserved, RES0.

NIS, bits [4:0]:

Number of bits of TLBI Domain supported for Inner Shareable TLBI instructions.

Values greater than 16 are reserved.

The value of this field additionally determines the width of the VTLBID<n>_EL2.TD<m> fields, as follows:

The value of this field is an IMPLEMENTATION DEFINED choice of:

NISMeaning
0b00000

The VTLBID<n>_EL2 registers are not implemented.

0b00001..0b01000

Each TD<m> field is 8 bits wide. NVIS is between 0 and 5.

0b01001..0b10000

Each TD<m> field is 16 bits wide. NVIS is between 0 and 4.

Access to this field is RO.

Access Instructions

Accesses to this register use the following encodings in the System register encoding space:

MRS <Xt>, TLBIDIDR_EL1

(op0 = 0b11, op1 = 0b000, CRn = 0b1010, CRm = 0b0100, op2 = 0b110)

if !(IsFeatureImplemented(FEAT_TLBID) && IsFeatureImplemented(FEAT_AA64)) then Undefined(); elsif HaveEL(EL3) && !(EffectivelyAtEL0InHost() || EffectivelyAtEL0NotInHost() || PSTATE.EL == EL3) && EL3SDDUndefPriority() && SCR_EL3().VTLBIDEn == '0' then Undefined(); elsif PSTATE.EL == EL0 then Undefined(); elsif PSTATE.EL == EL1 then if EL2Enabled() && IsFeatureImplemented(FEAT_FGT2) && ((HaveEL(EL3) && SCR_EL3().FGTEn2 == '0') || HFGRTR2_EL2().nTLBIDIDR_EL1 == '0') then AArch64_SystemAccessTrap(EL2, 0x18); elsif HaveEL(EL3) && SCR_EL3().VTLBIDEn == '0' then if EL3SDDUndef() then Undefined(); else AArch64_SystemAccessTrap(EL3, 0x18); end; else X{64}(t) = TLBIDIDR_EL1(); end; elsif PSTATE.EL == EL2 then if HaveEL(EL3) && SCR_EL3().VTLBIDEn == '0' then if EL3SDDUndef() then Undefined(); else AArch64_SystemAccessTrap(EL3, 0x18); end; else X{64}(t) = TLBIDIDR_EL1(); end; elsif PSTATE.EL == EL3 then X{64}(t) = TLBIDIDR_EL1(); 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.