<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE register_page SYSTEM "registers.dtd">
<!-- Copyright (c) 2010-2026 Arm Limited or its affiliates. All rights reserved. -->
<!-- This document is Non-Confidential. This document may only be used and distributed in accordance with the terms of the agreement entered into by Arm and the party that Arm delivered this document to. -->
<!--The data contained in this document is preliminary and subject to change or correction following further review. -->
<?xml-stylesheet href="one_register.xsl" type="text/xsl" ?>







<register_page>
  <registers>
  
    <register is_register="True" is_internal="False" is_stub_entry="False">
      <reg_short_name>AMIIDR</reg_short_name>
        
        <reg_long_name>Activity Monitors Implementation Identification Register</reg_long_name>

        <power_domain_text>It is <arm-defined-word>IMPLEMENTATION DEFINED</arm-defined-word> whether AMIIDR is implemented in the Core power domain or in the Debug power domain</power_domain_text>

        <reg_parent_link id="amu.xml">AMU</reg_parent_link>

      
            <reg_condition otherwise="RES0">when FEAT_AMUv1 is implemented and FEAT_AMU_EXT is implemented</reg_condition>
      



    
    <reg_address
        external_access="False"
        mem_map_access="False"
        block_access="True"
        memory_access="True"
        table_id="AMUacccessor0"
    >
  
  <reg_frame>AMU</reg_frame>
  
    
    <reg_offset><hexnumber>0xE08</hexnumber></reg_offset>
    <reg_access>
    
        
      <reg_access_state>
          <reg_access_level>When FEAT_RME is implemented, FEAT_AMU_EXTACR is implemented, an access is Secure, and AMROOTCR().RA IN {'001', '000'}</reg_access_level>
          <reg_access_type>RAZ/WI</reg_access_type>
      </reg_access_state>
        
      <reg_access_state>
          <reg_access_level>When FEAT_RME is implemented, FEAT_AMU_EXTACR is implemented, an access is Realm, and AMROOTCR().RA IN {'010', '000'}</reg_access_level>
          <reg_access_type>RAZ/WI</reg_access_type>
      </reg_access_state>
        
      <reg_access_state>
          <reg_access_level>When FEAT_RME is implemented, FEAT_AMU_EXTACR is implemented, an access is Non-secure, and AMROOTCR().RA != '011'</reg_access_level>
          <reg_access_type>RAZ/WI</reg_access_type>
      </reg_access_state>
        
      <reg_access_state>
          <reg_access_level>When FEAT_RME is not implemented, FEAT_AMU_EXTACR is implemented, an access is Non-secure, and AMSCR().NSRA == '0'</reg_access_level>
          <reg_access_type>RAZ/WI</reg_access_type>
      </reg_access_state>
        
      <reg_access_state>
          <reg_access_type>RO</reg_access_type>
      </reg_access_state>
    </reg_access>
</reg_address>

    
    <reg_address
        external_access="False"
        mem_map_access="False"
        block_access="True"
        memory_access="True"
        table_id="AMUacccessor1"
    >
  
  <reg_frame>AMU</reg_frame>
  
    
    <reg_offset><hexnumber>0xE08</hexnumber></reg_offset>
    <reg_access>
    
        
      <reg_access_state>
          <reg_access_level>When FEAT_RME is implemented, FEAT_AMU_EXTACR is implemented, an access is Secure, and AMROOTCR().RA IN {'001', '000'}</reg_access_level>
          <reg_access_type>RAZ/WI</reg_access_type>
      </reg_access_state>
        
      <reg_access_state>
          <reg_access_level>When FEAT_RME is implemented, FEAT_AMU_EXTACR is implemented, an access is Realm, and AMROOTCR().RA IN {'010', '000'}</reg_access_level>
          <reg_access_type>RAZ/WI</reg_access_type>
      </reg_access_state>
        
      <reg_access_state>
          <reg_access_level>When FEAT_RME is implemented, FEAT_AMU_EXTACR is implemented, an access is Non-secure, and AMROOTCR().RA != '011'</reg_access_level>
          <reg_access_type>RAZ/WI</reg_access_type>
      </reg_access_state>
        
      <reg_access_state>
          <reg_access_level>When FEAT_RME is not implemented, FEAT_AMU_EXTACR is implemented, an access is Non-secure, and AMSCR().NSRA == '0'</reg_access_level>
          <reg_access_type>RAZ/WI</reg_access_type>
      </reg_access_state>
        
      <reg_access_state>
          <reg_access_type>RO</reg_access_type>
      </reg_access_state>
    </reg_access>
</reg_address>


          <reg_reset_value></reg_reset_value>

      <reg_mappings>
        




      </reg_mappings>

        <reg_purpose>
          
    
      <purpose_text>
        <para>Defines the implementer and revisions of the AMU.</para>
      </purpose_text>

        </reg_purpose>

      <reg_groups>
          <reg_group>AMU</reg_group>
      </reg_groups>
      
      
        
      <reg_attributes>
          
    
      <attributes_text>
        <para>AMIIDR is a:</para>

      </attributes_text>
      <attributes_text>
        <list type="unordered">
<listitem><content>64-bit register when FEAT_AMU_EXT64 is implemented</content>
</listitem><listitem><content>32-bit register otherwise</content>
</listitem></list>
      </attributes_text>

      </reg_attributes>
      <reg_fieldsets>
        






<fields id="fieldset_0" length="64">
  <fields_condition>When FEAT_AMU_EXT64 is implemented</fields_condition>
  <text_before_fields/>
  <field id="fieldset_0-63_32" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="False" is_partial_field="False" is_conditional_field_name="False" rwtype="RES0">
    <field_msb>63</field_msb>
    <field_lsb>32</field_lsb>
    <rel_range>63:32</rel_range>
    <field_description order="before"/>
    <field_description order="before">
      <para>Reserved, <arm-defined-word>RES0</arm-defined-word>.</para>
    </field_description>
  </field>
  <field id="fieldset_0-31_20" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="True" is_partial_field="False" is_conditional_field_name="False">
    <field_name>ProductID</field_name>
    <field_msb>31</field_msb>
    <field_lsb>20</field_lsb>
    <rel_range>31:20</rel_range>
    <field_description order="before"><para>Part number of the AMU, bits [11:0].
The part number is selected by the designer of the component.</para>
<para>Matches the part number represented in the Peripheral ID registers AMPIDRn, if those registers are present.</para></field_description>
    <field_description order="after">
      <para>This field has an <arm-defined-word>IMPLEMENTATION DEFINED</arm-defined-word> value.</para>
    </field_description>
    <field_access>
      <field_access_state>
        <field_access_type>RO</field_access_type>
      </field_access_state>
    </field_access>
  </field>
  <field id="fieldset_0-19_16" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="True" is_partial_field="False" is_conditional_field_name="False">
    <field_name>Variant</field_name>
    <field_msb>19</field_msb>
    <field_lsb>16</field_lsb>
    <rel_range>19:16</rel_range>
    <field_description order="before"><para>Component major revision.</para>
<para>Defines either a variant of the component defined by AMIIDR.ProductID, or the major revision of the component.
When defining a major revision, AMIIDR.Variant and AMIIDR.Revision together form the revision number of the component, with this field being the most significant part.
When a component is changed, AMIIDR.Variant or AMIIDR.Revision is increased to ensure that software can differentiate between different revisions of the component.
If this field is increased, AMIIDR.Revision should be set to <binarynumber>0b0000</binarynumber>.</para></field_description>
    <field_description order="after"><para>Arm recommends this field matches the <register_link id="amu.ampidr2.xml" state="">AMPIDR2</register_link>.REVISION field, if present.</para>
<para>This field has an <arm-defined-word>IMPLEMENTATION DEFINED</arm-defined-word> value.</para></field_description>
    <field_access>
      <field_access_state>
        <field_access_type>RO</field_access_type>
      </field_access_state>
    </field_access>
  </field>
  <field id="fieldset_0-15_12" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="True" is_partial_field="False" is_conditional_field_name="False">
    <field_name>Revision</field_name>
    <field_msb>15</field_msb>
    <field_lsb>12</field_lsb>
    <rel_range>15:12</rel_range>
    <field_description order="before"><para>Component minor revision.</para>
<para>AMIIDR.Variant and AMIIDR.Revision together form the revision number of the component, with this field being the least significant part.
When a component is changed, AMIIDR.Variant or AMIIDR.Revision is increased to ensure that software can differentiate between different revisions of the component.
If AMIIDR.Variant field is increased, this field should be set to <binarynumber>0b0000</binarynumber>, otherwise the value in this field should be increased.</para></field_description>
    <field_description order="after"><para>Arm recommends this field matches the <register_link id="amu.ampidr3.xml" state="">AMPIDR3</register_link>.REVAND field, if present.</para>
<para>This field has an <arm-defined-word>IMPLEMENTATION DEFINED</arm-defined-word> value.</para></field_description>
    <field_access>
      <field_access_state>
        <field_access_type>RO</field_access_type>
      </field_access_state>
    </field_access>
  </field>
  <field id="fieldset_0-11_0" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="True" is_partial_field="False" is_conditional_field_name="False">
    <field_name>Implementer</field_name>
    <field_msb>11</field_msb>
    <field_lsb>0</field_lsb>
    <rel_range>11:0</rel_range>
    <field_description order="before"><para>Contains the JEP106 manufacturer's identification code of the designer of the AMU.</para>
<para>The code identifies the designer of the component, which might not be the same as the implementer of the device containing the component.</para>
<para>Zero is not a valid JEP106 identification code, meaning a value of zero for AMIIDR indicates this register is not implemented.</para>
<para>For an implementation designed by Arm, this field reads as <hexnumber>0x43B</hexnumber>.</para></field_description>
    <field_description order="after"><para>Bits [11:8] contain the JEP106 bank identifier of the designer minus 1.</para>
<para>Bit 7 is <arm-defined-word>RES0</arm-defined-word>.</para>
<para>Bits [6:0] contain bits [6:0] of the JEP106 manufacturer's identification code of the designer.</para>
<para>If <register_link id="amu.ampidr4.xml" state="">AMPIDR4</register_link> is implemented, <register_link id="amu.ampidr4.xml" state="">AMPIDR4</register_link>.DES_2 matches bits [11:8] of this field.</para>
<para>If <register_link id="amu.ampidr2.xml" state="">AMPIDR2</register_link> is implemented, <register_link id="amu.ampidr2.xml" state="">AMPIDR2</register_link>.DES_1 matches bits [6:4] of this field.</para>
<para>If <register_link id="amu.ampidr1.xml" state="">AMPIDR1</register_link> is implemented, <register_link id="amu.ampidr1.xml" state="">AMPIDR1</register_link>.DES_0 matches bits [3:0] of this field.</para>
<para>This field has an <arm-defined-word>IMPLEMENTATION DEFINED</arm-defined-word> value.</para></field_description>
    <field_access>
      <field_access_state>
        <field_access_type>RO</field_access_type>
      </field_access_state>
    </field_access>
  </field>
  <text_after_fields/>
</fields>



<fields id="fieldset_1" length="32">
  <fields_condition/>
  <text_before_fields/>
  <field id="fieldset_1-31_20" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="True" is_partial_field="False" is_conditional_field_name="False">
    <field_name>ProductID</field_name>
    <field_msb>31</field_msb>
    <field_lsb>20</field_lsb>
    <rel_range>31:20</rel_range>
    <field_description order="before"><para>Part number of the AMU, bits [11:0].
The part number is selected by the designer of the component.</para>
<para>Matches the part number represented in the Peripheral ID registers AMPIDRn, if those registers are present.</para></field_description>
    <field_description order="after">
      <para>This field has an <arm-defined-word>IMPLEMENTATION DEFINED</arm-defined-word> value.</para>
    </field_description>
    <field_access>
      <field_access_state>
        <field_access_type>RO</field_access_type>
      </field_access_state>
    </field_access>
  </field>
  <field id="fieldset_1-19_16" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="True" is_partial_field="False" is_conditional_field_name="False">
    <field_name>Variant</field_name>
    <field_msb>19</field_msb>
    <field_lsb>16</field_lsb>
    <rel_range>19:16</rel_range>
    <field_description order="before"><para>Component major revision.</para>
<para>Defines either a variant of the component defined by AMIIDR.ProductID, or the major revision of the component.
When defining a major revision, AMIIDR.Variant and AMIIDR.Revision together form the revision number of the component, with this field being the most significant part.
When a component is changed, AMIIDR.Variant or AMIIDR.Revision is increased to ensure that software can differentiate between different revisions of the component.
If this field is increased, AMIIDR.Revision should be set to <binarynumber>0b0000</binarynumber>.</para></field_description>
    <field_description order="after"><para>Arm recommends this field matches the <register_link id="amu.ampidr2.xml" state="">AMPIDR2</register_link>.REVISION field, if present.</para>
<para>This field has an <arm-defined-word>IMPLEMENTATION DEFINED</arm-defined-word> value.</para></field_description>
    <field_access>
      <field_access_state>
        <field_access_type>RO</field_access_type>
      </field_access_state>
    </field_access>
  </field>
  <field id="fieldset_1-15_12" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="True" is_partial_field="False" is_conditional_field_name="False">
    <field_name>Revision</field_name>
    <field_msb>15</field_msb>
    <field_lsb>12</field_lsb>
    <rel_range>15:12</rel_range>
    <field_description order="before"><para>Component minor revision.</para>
<para>AMIIDR.Variant and AMIIDR.Revision together form the revision number of the component, with this field being the least significant part.
When a component is changed, AMIIDR.Variant or AMIIDR.Revision is increased to ensure that software can differentiate between different revisions of the component.
If AMIIDR.Variant field is increased, this field should be set to <binarynumber>0b0000</binarynumber>, otherwise the value in this field should be increased.</para></field_description>
    <field_description order="after"><para>Arm recommends this field matches the <register_link id="amu.ampidr3.xml" state="">AMPIDR3</register_link>.REVAND field, if present.</para>
<para>This field has an <arm-defined-word>IMPLEMENTATION DEFINED</arm-defined-word> value.</para></field_description>
    <field_access>
      <field_access_state>
        <field_access_type>RO</field_access_type>
      </field_access_state>
    </field_access>
  </field>
  <field id="fieldset_1-11_0" has_partial_fieldset="False" is_linked_to_partial_fieldset="False" is_access_restriction_possible="False" is_variable_length="False" is_constant_value="True" is_partial_field="False" is_conditional_field_name="False">
    <field_name>Implementer</field_name>
    <field_msb>11</field_msb>
    <field_lsb>0</field_lsb>
    <rel_range>11:0</rel_range>
    <field_description order="before"><para>Contains the JEP106 manufacturer's identification code of the designer of the AMU.</para>
<para>The code identifies the designer of the component, which might not be the same as the implementer of the device containing the component.</para>
<para>Zero is not a valid JEP106 identification code, meaning a value of zero for AMIIDR indicates this register is not implemented.</para>
<para>For an implementation designed by Arm, this field reads as <hexnumber>0x43B</hexnumber>.</para></field_description>
    <field_description order="after"><para>Bits [11:8] contain the JEP106 bank identifier of the designer minus 1.</para>
<para>Bit 7 is <arm-defined-word>RES0</arm-defined-word>.</para>
<para>Bits [6:0] contain bits [6:0] of the JEP106 manufacturer's identification code of the designer.</para>
<para>If <register_link id="amu.ampidr4.xml" state="">AMPIDR4</register_link> is implemented, <register_link id="amu.ampidr4.xml" state="">AMPIDR4</register_link>.DES_2 matches bits [11:8] of this field.</para>
<para>If <register_link id="amu.ampidr2.xml" state="">AMPIDR2</register_link> is implemented, <register_link id="amu.ampidr2.xml" state="">AMPIDR2</register_link>.DES_1 matches bits [6:4] of this field.</para>
<para>If <register_link id="amu.ampidr1.xml" state="">AMPIDR1</register_link> is implemented, <register_link id="amu.ampidr1.xml" state="">AMPIDR1</register_link>.DES_0 matches bits [3:0] of this field.</para>
<para>This field has an <arm-defined-word>IMPLEMENTATION DEFINED</arm-defined-word> value.</para></field_description>
    <field_access>
      <field_access_state>
        <field_access_type>RO</field_access_type>
      </field_access_state>
    </field_access>
  </field>
  <text_after_fields/>
</fields>





<reg_fieldset length="64">
  <fields_condition>When FEAT_AMU_EXT64 is implemented</fields_condition>
  <fieldat id="fieldset_0-63_32" msb="63" lsb="32"/>
  <fieldat id="fieldset_0-31_20" msb="31" lsb="20"/>
  <fieldat id="fieldset_0-19_16" msb="19" lsb="16"/>
  <fieldat id="fieldset_0-15_12" msb="15" lsb="12"/>
  <fieldat id="fieldset_0-11_0" msb="11" lsb="0"/>
</reg_fieldset>

<reg_fieldset length="32">
  <fields_condition/>
  <fieldat id="fieldset_1-31_20" msb="31" lsb="20"/>
  <fieldat id="fieldset_1-19_16" msb="19" lsb="16"/>
  <fieldat id="fieldset_1-15_12" msb="15" lsb="12"/>
  <fieldat id="fieldset_1-11_0" msb="11" lsb="0"/>
</reg_fieldset>


      </reg_fieldsets>

      <access_mechanisms>
          






    
        
        <access_mechanism type="BlockAccessAbstract" table_id="AMUacccessor0">
        
        
        
        
        <access_header>Accessible at offset <hexnumber>0xE08</hexnumber> from AMU</access_header>
        <access_condition>
When FEAT_AMU_EXT64 is implemented
        </access_condition>
    </access_mechanism>
    
        
        <access_mechanism type="BlockAccessAbstract" table_id="AMUacccessor1">
        
        
        
        
        <access_header>Accessible at offset <hexnumber>0xE08</hexnumber> from AMU</access_header>
        <access_condition>
When FEAT_AMU_EXT32 is implemented
        </access_condition>
    </access_mechanism>

      </access_mechanisms>

      <arch_variants>
      </arch_variants>
  </register>
</registers>
<timestamp>2026-03-26 20:27:25</timestamp>
<commit_id>2026-03_rel</commit_id>
</register_page>