<?xml version="1.0" encoding="utf-8" standalone="no"?>
<boards xmlns="http://com.arm.targetconfigurationeditor" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://com.arm.targetconfigurationeditor board-01.xsd">
    <board endianess="little" name="soc_system_hps_0_hps" power_domain_support="Unsupported" trustzone="Unsupported" type="BOARD">
        <category language="ja">default_vendor_com addon ARM IP registers.</category>
        <description language="ja">Address map for the HHP HPS system-domain</description>
        <peripheral address_type="Non-Secure" name="mpul2" offset="0xFFFFF000">
            <gui_name language="ja">mpul2</gui_name>
            <description language="ja">This address space is allocated to the MPU L2 cache controller. For detailed information about the use of this address space, [url=http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0407f/index.html]click here[/url] to access the ARM documentation for the L2C-310.</description>
            <register name="reg0_cache_id" base_addr="mpul2" offset="0x00000000" size="0x4">
                <gui_name language="en">reg0_cache_id</gui_name>
                <description language="en">3.3.1 Cache ID Register
The reg0_cache_id Register characteristics are:
Purpose
    Returns the 32-bit device ID code it reads off the CACHEID input bus.
    The value is specified by the system integrator.
Usage constraints
    There are no usage constraints.
Configurations
    Available in all configurations.
Attributes
    RO
</description>
                <bitField access="Read Only" high_bit="31" low_bit="24" name="Implementer">
                    <gui_name language="en">Implementer</gui_name>
                    <description language="en">0x41 ARM</description>
                </bitField>
                <bitField access="Read Only" high_bit="15" low_bit="10" name="CACHE_ID">
                    <gui_name language="en">CACHE_ID</gui_name>
                    <description language="en">-</description>
                </bitField>
                <bitField access="Read Only" high_bit="9" low_bit="6" name="Part_number">
                    <gui_name language="en">Part_number</gui_name>
                    <description language="en">0x3</description>
                </bitField>
                <bitField access="Read Only" high_bit="5" low_bit="0" name="RTL_release">
                    <gui_name language="en">RTL_release</gui_name>
                    <description language="en">0x9</description>
                </bitField>
            </register>
            <register name="reg0_cache_type" base_addr="mpul2" offset="0x00000004" size="0x4">
                <gui_name language="en">reg0_cache_type</gui_name>
                <description language="en">3.3.2 Cache Type Register
The reg0_cache_type Register characteristics are:
Purpose
    Returns the 32-bit cache type.
Usage constraints
    There are no usage constraints.
Configurations
    Available in all configurations.
Attributes
    RO
</description>
                <bitField access="Read Only" high_bit="31" low_bit="31" name="Data_banking">
                    <gui_name language="en">Data_banking</gui_name>
                    <description language="en">0 = data banking not implemented
1 = data banking implemented
</description>
                </bitField>
                <bitField access="Read Only" high_bit="28" low_bit="25" name="ctype">
                    <gui_name language="en">ctype</gui_name>
                    <description language="en">0b11xy, where:
x=1 if pl310_LOCKDOWN_BY_MASTER is defined, otherwise 0
y=1 if pl310_LOCKDOWN_BY_LINE is defined, otherwise 0. See Cache lockdown
on page 3-27.
</description>
                </bitField>
                <bitField access="Read Only" high_bit="24" low_bit="24" name="H">
                    <gui_name language="en">H</gui_name>
                    <description language="en">0 = unified
1 = Harvard
</description>
                </bitField>
                <bitField access="Read Only" high_bit="23" low_bit="19" name="Dsize">
                    <gui_name language="en">Dsize</gui_name>
                    <description language="en">bit[23] SBZ/RAZ
bit[22:20] L2 cache way size: Read from Auxiliary Control Register[19:17]
bit[19] SBZ/RAZ
</description>
                </bitField>
                <bitField access="Read Only" high_bit="18" low_bit="18" name="L2_associativity_D">
                    <gui_name language="en">L2_associativity_D</gui_name>
                    <description language="en">Read from Auxiliary Control Register[16]</description>
                </bitField>
                <bitField access="Read Only" high_bit="13" low_bit="12" name="L2_cache_line_length_D">
                    <gui_name language="en">L2_cache_line_length_D</gui_name>
                    <description language="en">0b00: 32bytes</description>
                </bitField>
                <bitField access="Read Only" high_bit="11" low_bit="7" name="Isize">
                    <gui_name language="en">Isize</gui_name>
                    <description language="en">bit[11] SBZ/RAZ
bit[10:8] L2 cache way size: Read from Auxiliary Control Register[19:17]
bit[7] SBZ/RAZ
</description>
                </bitField>
                <bitField access="Read Only" high_bit="6" low_bit="6" name="L2_associativity_I">
                    <gui_name language="en">L2_associativity_I</gui_name>
                    <description language="en">Read from Auxiliary Control Register[16]</description>
                </bitField>
                <bitField access="Read Only" high_bit="1" low_bit="0" name="L2_cache_line_length_I">
                    <gui_name language="en">L2_cache_line_length_I</gui_name>
                    <description language="en">0b00: 32bytes</description>
                </bitField>
            </register>
            <register name="reg1_control" base_addr="mpul2" offset="0x00000100" size="0x4">
                    <gui_name language="en">reg1_control</gui_name>
                    <description language="en">3.3.3 Control Register
The reg1_control Register characteristics are:
Purpose
    Enables or disables the cache controller.
Usage constraints
    This register enables or disables the cache controller. Must be written
    using a secure access. It can be read using either a secure or a NS access.
    Writing to this register with a NS access causes a write response signal
    with a DECERR response, and the register is not updated, only permitting
    a secure access to enable or disable the cache controller.
    When receiving a transaction to enable or disable the cache by modifying
    this register the cache controller follows the described sequence. This
    prevents any unpredictable behavior if there are subsequent writes to any
    of the L2 registers.
    1. Lock slave ports and wait for all outstanding transactions to
       complete and all buffers to be empty by performing a cache sync.
    2. Update register.
    3. Return write response.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="L2_Cache_enable">
                    <gui_name language="en">L2_Cache_enable</gui_name>
                    <description language="en">0 = L2 Cache is disabled. This is the default value.
1 = L2 Cache is enabled.</description>
                </bitField>
            </register>
            <register name="reg1_aux_control" base_addr="mpul2" offset="0x00000104" size="0x4">
                    <gui_name language="en">reg1_aux_control</gui_name>
                    <description language="en">3.3.4 Auxiliary Control Register
The reg1_aux_control Register characteristics are:
Purpose
    Configures:
    • cache behavior
    • event monitoring
    • way size
    • associativity.
Usage constraints
    The register must be written to using a secure access and with its reserved
    bits preserved. You can read it using either a secure or a NS access. If you
    write to this register with a NS access, it results in a write response with a
    DECERR response, and the register is not updated. Writing to this register
    with the L2 cache enabled, that is bit[0] of L2 Control Register set to 1,
    results in a SLVERR. The DECERR response has priority over the
    SLVERR response.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="30" low_bit="30" name="Early_BRESP_enable">
                    <gui_name language="en">Early_BRESP_enable</gui_name>
                    <description language="en">0 = Early BRESP disabled. This is the default.
1 = Early BRESP enabled. See Early write response on page 2-37.</description>
                </bitField>
                <bitField access="Read Write" high_bit="29" low_bit="29" name="Instruction_prefetch_enable">
                    <gui_name language="en">Instruction_prefetch_enable</gui_name>
                    <description language="en">0 = Instruction prefetching disabled. This is the default.
1 = Instruction prefetching enabled.
See Prefetch Control Register on page 3-34.</description>
                </bitField>
                <bitField access="Read Write" high_bit="28" low_bit="28" name="Data_prefetch_enable">
                    <gui_name language="en">Data_prefetch_enable</gui_name>
                    <description language="en">0 = Data prefetching disabled. This is the default.
1 = Data prefetching enabled.
See Prefetch Control Register on page 3-34.</description>
                </bitField>
                <bitField access="Read Write" high_bit="27" low_bit="27" name="Nonsecure_interrupt_access_control">
                    <gui_name language="en">Nonsecure_interrupt_access_control</gui_name>
                    <description language="en">0 = Interrupt Clear, 0x220, and Interrupt Mask, 0x214, can only be
    modified or read with secure accesses. This is the default.
1 = Interrupt Clear, 0x220, and Interrupt Mask, 0x214, can be modified
    or read with secure or non-secure accesses.</description>
                </bitField>
                <bitField access="Read Write" high_bit="26" low_bit="26" name="Nonsecure_lockdown_enable">
                    <gui_name language="en">Nonsecure_lockdown_enable</gui_name>
                    <description language="en">0 = Lockdown registers cannot be modified using non-secure
    accesses. This is the default.
1 = Non-secure accesses can write to the lockdown registers.</description>
                </bitField>
                <bitField access="Read Write" high_bit="25" low_bit="25" name="Cache_replacement_policy">
                    <gui_name language="en">Cache_replacement_policy</gui_name>
                    <description language="en">0 = Pseudo-random replacement using lfsr.
1 = Round-robin replacement. This is the default.
See Replacement strategy on page 3-31.</description>
                </bitField>
                <bitField access="Read Write" high_bit="24" low_bit="23" name="Force_write_allocate">
                    <gui_name language="en">Force_write_allocate</gui_name>
                    <description language="en">0b00 = Use AWCACHE attributes for WA. This is the default.
0b01 = Force no allocate, set WA bit always 0.
0b10 = Override AWCACHE attributes, set WA bit always 1, all
       cacheable write misses become write allocated.
0b11 = Internally mapped to 00. See Cache operation on page 2-11 for
       more information.</description>
                </bitField>
                <bitField access="Read Write" high_bit="22" low_bit="22" name="Shared_attribute_override_enable">
                    <gui_name language="en">Shared_attribute_override_enable</gui_name>
                    <description language="en">0 = Treats shared accesses as specified in Shareable attribute on
    page 2-15. This is the default.
1 = Shared attribute internally ignored.</description>
                </bitField>
                <bitField access="Read Write" high_bit="21" low_bit="21" name="Parity_enable">
                    <gui_name language="en">Parity_enable</gui_name>
                    <description language="en">0 = Disabled. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="20" low_bit="20" name="Event_monitor_bus_enable">
                    <gui_name language="en">Event_monitor_bus_enable</gui_name>
                    <description language="en">0 = Disabled. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="19" low_bit="17" name="Way_size">
                    <gui_name language="en">Way_size</gui_name>
                    <description language="en">0b000 = Reserved, internally mapped to 16KB.
0b001 = 16KB
0b010 = 32KB
0b011 = 64KB
0b100 = 128KB
0b101 = 256KB
0b110 = 512KB
0b111 = Reserved, internally mapped to 512 KB.</description>
                </bitField>
                <bitField access="Read Write" high_bit="16" low_bit="16" name="Associativity">
                    <gui_name language="en">Associativity</gui_name>
                    <description language="en">0 = 8-way
1 = 16-way.</description>
                </bitField>
                <bitField access="Read Write" high_bit="13" low_bit="13" name="Shared_Attribute_Invalidate_Enable">
                    <gui_name language="en">Shared_Attribute_Invalidate_Enable</gui_name>
                    <description language="en">0 = Shared invalidate behavior disabled. This is the default.
1 = Shared invalidate behavior enabled, if Shared Attribute
    Override Enable bit not set. See Shareable attribute on
    page 2-15.</description>
                </bitField>
                <bitField access="Read Write" high_bit="12" low_bit="12" name="Exclusive_cache_configuration">
                    <gui_name language="en">Exclusive_cache_configuration</gui_name>
                    <description language="en">0 = Disabled. This is the default.
1 = Enabled. See Exclusive cache configuration on page 2-17.</description>
                </bitField>
                <bitField access="Read Write" high_bit="11" low_bit="11" name="Store_buffer_device_limitation_Enable">
                    <gui_name language="en">Store_buffer_device_limitation_Enable</gui_name>
                    <description language="en">0 = Store buffer device limitation disabled. Device writes can take all
    slots in store buffer. This is the default.
1 = Store buffer device limitation enabled. Device writes cannot take
    all slots in store buffer when connected to the Cortex-A9 MPCore
    processor. There is always one available slot to service Normal
    Memory.</description>
                </bitField>
                <bitField access="Read Write" high_bit="10" low_bit="10" name="High_Priority_for_SO_and_Dev_Reads_Enable">
                    <gui_name language="en">HP_for_SO_and_DR_Enable</gui_name>
                    <description language="en">0 = Strongly Ordered and Device reads have lower priority than
    cacheable accesses when arbitrated in the L2CC L2C-310 master
    ports. This is the default.
1 = Strongly Ordered and Device reads get the highest priority when
    arbitrated in the L2C-310 master ports.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="Full_Line_of_Zero_Enable">
                    <gui_name language="en">Full_Line_of_Zero_Enable</gui_name>
                    <description language="en">0 = Full line of write zero behavior disabled. This is the default.
1 = Full line of write zero behavior Enabled.
See Full line of zero write on page 2-37.</description>
                </bitField>
            </register>
            <register name="reg1_tag_ram_control" base_addr="mpul2" offset="0x00000108" size="0x4">
                    <gui_name language="en">reg1_tag_ram_control</gui_name>
                    <description language="en">3.3.5 Tag and Data RAM Latency Control Registers - Tag
The reg1_tag_ram_control and reg1_data_ram_control Register characteristics are:
Purpose
    Configures:
    • Tag RAM latencies for the Tag RAM Latency Control Register
    • Data RAM latencies for the Data RAM Latency Control Register.
Usage constraints
    The registers must be written using a secure access. They can be read using
    either a secure or a NS access. If you write to these registers with a NS
    access, it results in a write response with a DECERR response, and the
    registers are not updated. Writing to these registers with the L2 cache
    enabled, that is, bit[0] of the Control Register set to 1, results in a
    SLVERR.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="10" low_bit="8" name="RAM_write_access_latency">
                    <gui_name language="en">RAM_write_access_latency</gui_name>
                    <description language="en">Default value depends on the value of pl310_TAG_WRITE_LAT for reg1_tag_ram_control
or pl310_DATA_WRITE_LAT for reg1_data_ram_control.
0b000 = 1 cycle of latency, there is no additional latency
0b001 = 2 cycles of latency
0b010 = 3 cycles of latency
0b011 = 4 cycles of latency
0b100 = 5 cycles of latency
0b101 = 6 cycles of latency
0b110 = 7 cycles of latency
0b111 = 8 cycles of latency.</description>
                </bitField>
                <bitField access="Read Write" high_bit="6" low_bit="4" name="RAM_read_access_latency">
                    <gui_name language="en">RAM_read_access_latency</gui_name>
                    <description language="en">Default value depends on the value of pl310_TAG_READ_LAT for reg1_tag_ram_control or
pl310_DATA_READ_LAT for reg1_data_ram_control.
0b000 = 1 cycle of latency, there is no additional latency
0b001 = 2 cycles of latency
0b010 = 3 cycles of latency
0b011 = 4 cycles of latency
0b100 = 5 cycles of latency
0b101 = 6 cycles of latency
0b110 = 7 cycles of latency
0b111 = 8 cycles of latency.</description>
                </bitField>
                <bitField access="Read Write" high_bit="2" low_bit="0" name="RAM_setup_latency">
                    <gui_name language="en">RAM_setup_latency</gui_name>
                    <description language="en">Default value depends on the value of pl310_TAG_SETUP_LAT for reg1_tag_ram_control or
pl310_DATA_SETUP_LAT for reg1_data_ram_control.
0b000 = 1 cycle of latency, there is no additional latency
0b001 = 2 cycles of latency
0b010 = 3 cycles of latency
0b011 = 4 cycles of latency
0b100 = 5 cycles of latency
0b101 = 6 cycles of latency
0b110 = 7 cycles of latency
0b111 = 8 cycles of latency.</description>
                </bitField>
            </register>
            <register name="reg1_data_ram_control" base_addr="mpul2" offset="0x0000010C" size="0x4">
                    <gui_name language="en">reg1_data_ram_control</gui_name>
                    <description language="en">3.3.5 Tag and Data RAM Latency Control Registers - Data
The reg1_tag_ram_control and reg1_data_ram_control Register characteristics are:
Purpose
    Configures:
    • Tag RAM latencies for the Tag RAM Latency Control Register
    • Data RAM latencies for the Data RAM Latency Control Register.
Usage constraints
    The registers must be written using a secure access. They can be read using
    either a secure or a NS access. If you write to these registers with a NS
    access, it results in a write response with a DECERR response, and the
    registers are not updated. Writing to these registers with the L2 cache
    enabled, that is, bit[0] of the Control Register set to 1, results in a
    SLVERR.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="10" low_bit="8" name="RAM_write_access_latency">
                    <gui_name language="en">RAM_write_access_latency</gui_name>
                    <description language="en">Default value depends on the value of pl310_TAG_WRITE_LAT for reg1_tag_ram_control
or pl310_DATA_WRITE_LAT for reg1_data_ram_control.
0b000 = 1 cycle of latency, there is no additional latency
0b001 = 2 cycles of latency
0b010 = 3 cycles of latency
0b011 = 4 cycles of latency
0b100 = 5 cycles of latency
0b101 = 6 cycles of latency
0b110 = 7 cycles of latency
0b111 = 8 cycles of latency.</description>
                </bitField>
                <bitField access="Read Write" high_bit="6" low_bit="4" name="RAM_read_access_latency">
                    <gui_name language="en">RAM_read_access_latency</gui_name>
                    <description language="en">Default value depends on the value of pl310_TAG_READ_LAT for reg1_tag_ram_control or
pl310_DATA_READ_LAT for reg1_data_ram_control.
0b000 = 1 cycle of latency, there is no additional latency
0b001 = 2 cycles of latency
0b010 = 3 cycles of latency
0b011 = 4 cycles of latency
0b100 = 5 cycles of latency
0b101 = 6 cycles of latency
0b110 = 7 cycles of latency
0b111 = 8 cycles of latency.</description>
                </bitField>
                <bitField access="Read Write" high_bit="2" low_bit="0" name="RAM_setup_latency">
                    <gui_name language="en">RAM_setup_latency</gui_name>
                    <description language="en">Default value depends on the value of pl310_TAG_SETUP_LAT for reg1_tag_ram_control or
pl310_DATA_SETUP_LAT for reg1_data_ram_control.
0b000 = 1 cycle of latency, there is no additional latency
0b001 = 2 cycles of latency
0b010 = 3 cycles of latency
0b011 = 4 cycles of latency
0b100 = 5 cycles of latency
0b101 = 6 cycles of latency
0b110 = 7 cycles of latency
0b111 = 8 cycles of latency.</description>
                </bitField>
            </register>
            <register name="reg2_ev_counter_ctrl" base_addr="mpul2" offset="0x00000200" size="0x4">
                    <gui_name language="en">reg2_ev_counter_ctrl</gui_name>
                    <description language="en">3.3.6 Event Counter Control Register
The reg2_ev_counter_ctrl Register characteristics are:
Purpose
    Permits the event counters to be enabled and reset.
Usage constraints
    There are no usage constraints.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="2" low_bit="1" name="Counter_reset">
                    <gui_name language="en">Counter_reset</gui_name>
                    <description language="en">Always Read as zero. The following counters are reset when a 1 is written to the following bits:
• bit[2] = Event Counter1 reset
• bit[1] = Event Counter0 reset.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="Event_counter_enable">
                    <gui_name language="en">Event_counter_enable</gui_name>
                    <description language="en">0 = Event Counting Disable. This is the default.
1 = Event Counting Enable.</description>
                </bitField>
            </register>
            <register name="reg2_ev_counter1_cfg" base_addr="mpul2" offset="0x00000204" size="0x4">
                    <gui_name language="en">reg2_ev_counter1_cfg</gui_name>
                    <description language="en">3.3.7 Event Counter Configuration Registers - 1
The reg2_ev_counter0_cfg and reg2_ev_counter1_cfg Register characteristics are:
Purpose
    Enables event counter 1 and 0 to be driven by a specific event. Counter 1
    or counter 0 increments when the event occurs. Cache event monitoring
    on page 2-42 describes the counter event source signals.
Usage constraints
    There are no usage constraints.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="5" low_bit="2" name="Counter_event_source">
                    <gui_name language="en">Counter_event_source</gui_name>
                    <description language="en">Event : Encoding
Counter Disabled : 0b0000
CO               : 0b0001
DRHIT            : 0b0010
DRREQ            : 0b0011
DWHIT            : 0b0100
DWREQ            : 0b0101
DWTREQ           : 0b0110
IRHIT            : 0b0111
IRREQ            : 0b1000
WA               : 0b1001
IPFALLOC         : 0b1010
EPFHIT           : 0b1011
EPFALLOC         : 0b1100
SRRCVD           : 0b1101
SRCONF           : 0b1110
EPFRCVD          : 0b1111</description>
                </bitField>
                <bitField access="Read Write" high_bit="1" low_bit="0" name="Event_counter_interrupt_generation">
                    <gui_name language="en">Event_counter_interrupt_gen</gui_name>
                    <description language="en">0b00 = Disabled. This is the default.
0b01 = Enabled: Increment condition.
0b10 = Enabled: Overflow condition.
0b11 = Interrupt generation is disabled.</description>
                </bitField>
            </register>
            <register name="reg2_ev_counter0_cfg" base_addr="mpul2" offset="0x00000208" size="0x4">
                    <gui_name language="en">reg2_ev_counter0_cfg</gui_name>
                    <description language="en">3.3.7 Event Counter Configuration Registers - 0
The reg2_ev_counter0_cfg and reg2_ev_counter1_cfg Register characteristics are:
Purpose
    Enables event counter 1 and 0 to be driven by a specific event. Counter 1
    or counter 0 increments when the event occurs. Cache event monitoring
    on page 2-42 describes the counter event source signals.
Usage constraints
    There are no usage constraints.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="5" low_bit="2" name="Counter_event_source">
                    <gui_name language="en">Counter_event_source</gui_name>
                    <description language="en">Event : Encoding
Counter Disabled : 0b0000
CO               : 0b0001
DRHIT            : 0b0010
DRREQ            : 0b0011
DWHIT            : 0b0100
DWREQ            : 0b0101
DWTREQ           : 0b0110
IRHIT            : 0b0111
IRREQ            : 0b1000
WA               : 0b1001
IPFALLOC         : 0b1010
EPFHIT           : 0b1011
EPFALLOC         : 0b1100
SRRCVD           : 0b1101
SRCONF           : 0b1110
EPFRCVD          : 0b1111</description>
                </bitField>
                <bitField access="Read Write" high_bit="1" low_bit="0" name="Event_counter_interrupt_generation">
                    <gui_name language="en">Event_counter_interrupt_gen</gui_name>
                    <description language="en">0b00 = Disabled. This is the default.
0b01 = Enabled: Increment condition.
0b10 = Enabled: Overflow condition.
0b11 = Interrupt generation is disabled.</description>
                </bitField>
            </register>
            <register name="reg2_ev_counter1" base_addr="mpul2" offset="0x0000020C" size="0x4">
                    <gui_name language="en">reg2_ev_counter1</gui_name>
                    <description language="en">3.3.8 Event counter value registers - 1
The reg2_ev_counter0 and reg2_ev_counter1 Register characteristics are:
Purpose
    Enable the programmer to read off the counter value. The counter counts
    an event as specified by the Counter Configuration Registers. The counter
    can be preloaded if counting is disabled and reset by the Event Counter
    Control Register.
Usage constraints
    Can only be written to when bits [5:2] of the Event Counter Configuration
    Registers are set to Counter Disabled.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="31" low_bit="0" name="Counter_value">
                    <gui_name language="en">Counter_value</gui_name>
                    <description language="en">Total of the event selected.
If a counter reaches its maximum value, it saturates at that value until it is reset.</description>
                </bitField>
            </register>
            <register name="reg2_ev_counter0" base_addr="mpul2" offset="0x00000210" size="0x4">
                    <gui_name language="en">reg2_ev_counter0</gui_name>
                    <description language="en">3.3.8 Event counter value registers - 0
The reg2_ev_counter0 and reg2_ev_counter1 Register characteristics are:
Purpose
    Enable the programmer to read off the counter value. The counter counts
    an event as specified by the Counter Configuration Registers. The counter
    can be preloaded if counting is disabled and reset by the Event Counter
    Control Register.
Usage constraints
    Can only be written to when bits [5:2] of the Event Counter Configuration
    Registers are set to Counter Disabled.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="31" low_bit="0" name="Counter_value">
                    <gui_name language="en">Counter_value</gui_name>
                    <description language="en">Total of the event selected.
If a counter reaches its maximum value, it saturates at that value until it is reset.</description>
                </bitField>
            </register>
            <register name="reg2_int_mask" base_addr="mpul2" offset="0x00000214" size="0x4">
                    <gui_name language="en">reg2_int_mask</gui_name>
                    <description language="en">3.3.9 Interrupt registers - Interrupt Mask Register
The reg2_int_mask Register characteristics are:
Purpose
    This register enables or masks interrupts from being triggered on the
    external pins of the cache controller. Figure 3-8 on page 3-17 shows the
    register bit assignments. The bit assignments enables the masking of the
    interrupts on both their individual outputs and the combined L2CCINTR
    line. Clearing a bit by writing a 0, disables the interrupt triggering on that
    pin. All bits are cleared by a reset. You must write to the register bits with
    a 1 to enable the generation of interrupts.
Usage constraints
    Non-secure writes to this register are dependent on Auxiliary Control
    Register bit [27]. If bit [27] of the Auxiliary Control Register is 0, a Non
    secure write to the Interrupt Mask Register results in a DECERR response.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="8" low_bit="8" name="DECERR">
                    <gui_name language="en">DECERR</gui_name>
                    <description language="en">DECERR: DECERR from L3
0 = Masked. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="7" low_bit="7" name="SLVERR">
                    <gui_name language="en">SLVERR</gui_name>
                    <description language="en">SLVERR: SLVERR from L3
0 = Masked. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="6" low_bit="6" name="ERRRD">
                    <gui_name language="en">ERRRD</gui_name>
                    <description language="en">ERRRD: Error on L2 data RAM, Read
0 = Masked. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="5" low_bit="5" name="ERRRT">
                    <gui_name language="en">ERRRT</gui_name>
                    <description language="en">ERRRT: Error on L2 tag RAM, Read
0 = Masked. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="4" low_bit="4" name="ERRWD">
                    <gui_name language="en">ERRWD</gui_name>
                    <description language="en">ERRWD: Error on L2 data RAM, Write
0 = Masked. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="3" low_bit="3" name="ERRWT">
                    <gui_name language="en">ERRWT</gui_name>
                    <description language="en">ERRWT: Error on L2 tag RAM, Write
0 = Masked. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="2" low_bit="2" name="PARRD">
                    <gui_name language="en">PARRD</gui_name>
                    <description language="en">PARRD: Parity Error on L2 data RAM, Read
0 = Masked. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="1" low_bit="1" name="PARRT">
                    <gui_name language="en">PARRT</gui_name>
                    <description language="en">PARRT: Parity Error on L2 tag RAM, Read
0 = Masked. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="ECNTR">
                    <gui_name language="en">ECNTR</gui_name>
                    <description language="en">ECNTR: Event Counter1 and Event Counter 0 Overflow Increment
0 = Masked. This is the default.
1 = Enabled.</description>
                </bitField>
            </register>
            <register name="reg2_int_mask_status" base_addr="mpul2" offset="0x00000218" size="0x4">
                    <gui_name language="en">reg2_int_mask_status</gui_name>
                    <description language="en">3.3.9 Interrupt registers - Masked Interrupt Status Register
The reg2_int_mask_status Register characteristics are:
Purpose
    This register is a read-only.It returns the masked interrupt status. This
    register can be accessed by secure and non-secure operations. The register
    gives an AND function of the raw interrupt status with the values of the
    interrupt mask register. All the bits are cleared by a reset. A write to this
    register is ignored.
Usage constraints
    There are no usage constraints.
Configurations
    Available in all configurations.
Attributes
    RO
</description>
                <bitField access="Read Only" high_bit="8" low_bit="8" name="DECERR">
                    <gui_name language="en">DECERR</gui_name>
                    <description language="en">DECERR: DECERR from L3
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, either no interrupt has been generated, or the
       interrupt is masked.</description>
                </bitField>
                <bitField access="Read Only" high_bit="7" low_bit="7" name="SLVERR">
                    <gui_name language="en">SLVERR</gui_name>
                    <description language="en">SLVERR: SLVERR from L3
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, either no interrupt has been generated, or the
       interrupt is masked.</description>
                </bitField>
                <bitField access="Read Only" high_bit="6" low_bit="6" name="ERRRD">
                    <gui_name language="en">ERRRD</gui_name>
                    <description language="en">ERRRD: Error on L2 data RAM, Read
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, either no interrupt has been generated, or the
       interrupt is masked.</description>
                </bitField>
                <bitField access="Read Only" high_bit="5" low_bit="5" name="ERRRT">
                    <gui_name language="en">ERRRT</gui_name>
                    <description language="en">ERRRT: Error on L2 tag RAM, Read
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, either no interrupt has been generated, or the
       interrupt is masked.</description>
                </bitField>
                <bitField access="Read Only" high_bit="4" low_bit="4" name="ERRWD">
                    <gui_name language="en">ERRWD</gui_name>
                    <description language="en">ERRWD: Error on L2 data RAM, Write
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, either no interrupt has been generated, or the
       interrupt is masked.</description>
                </bitField>
                <bitField access="Read Only" high_bit="3" low_bit="3" name="ERRWT">
                    <gui_name language="en">ERRWT</gui_name>
                    <description language="en">ERRWT: Error on L2 tag RAM, Write
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, either no interrupt has been generated, or the
       interrupt is masked.</description>
                </bitField>
                <bitField access="Read Only" high_bit="2" low_bit="2" name="PARRD">
                    <gui_name language="en">PARRD</gui_name>
                    <description language="en">PARRD: Parity Error on L2 data RAM, Read
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, either no interrupt has been generated, or the
       interrupt is masked.</description>
                </bitField>
                <bitField access="Read Only" high_bit="1" low_bit="1" name="PARRT">
                    <gui_name language="en">PARRT</gui_name>
                    <description language="en">PARRT: Parity Error on L2 tag RAM, Read
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, either no interrupt has been generated, or the
       interrupt is masked.</description>
                </bitField>
                <bitField access="Read Only" high_bit="0" low_bit="0" name="ECNTR">
                    <gui_name language="en">ECNTR</gui_name>
                    <description language="en">ECNTR: Event Counter1 and Event Counter 0 Overflow Increment
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, either no interrupt has been generated, or the
       interrupt is masked.</description>
                </bitField>
            </register>
            <register name="reg2_int_raw_status" base_addr="mpul2" offset="0x0000021C" size="0x4">
                    <gui_name language="en">reg2_int_raw_status</gui_name>
                    <description language="en">3.3.9 Interrupt registers - Raw Interrupt Status Register
The reg2_int_raw_status Register characteristics are:
Purpose
    The Raw Interrupt Status Register enables the interrupt status that
    excludes the masking logic.
Usage constraints
    There are no usage constraints.
Configurations
    Available in all configurations.
Attributes
    RO
</description>
                <bitField access="Read Only" high_bit="8" low_bit="8" name="DECERR">
                    <gui_name language="en">DECERR</gui_name>
                    <description language="en">DECERR: DECERR from L3
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, no interrupt has been generated.</description>
                </bitField>
                <bitField access="Read Only" high_bit="7" low_bit="7" name="SLVERR">
                    <gui_name language="en">SLVERR</gui_name>
                    <description language="en">SLVERR: SLVERR from L3
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, no interrupt has been generated.</description>
                </bitField>
                <bitField access="Read Only" high_bit="6" low_bit="6" name="ERRRD">
                    <gui_name language="en">ERRRD</gui_name>
                    <description language="en">ERRRD: Error on L2 data RAM, Read
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, no interrupt has been generated.</description>
                </bitField>
                <bitField access="Read Only" high_bit="5" low_bit="5" name="ERRRT">
                    <gui_name language="en">ERRRT</gui_name>
                    <description language="en">ERRRT: Error on L2 tag RAM, Read
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, no interrupt has been generated.</description>
                </bitField>
                <bitField access="Read Only" high_bit="4" low_bit="4" name="ERRWD">
                    <gui_name language="en">ERRWD</gui_name>
                    <description language="en">ERRWD: Error on L2 data RAM, Write
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, no interrupt has been generated.</description>
                </bitField>
                <bitField access="Read Only" high_bit="3" low_bit="3" name="ERRWT">
                    <gui_name language="en">ERRWT</gui_name>
                    <description language="en">ERRWT: Error on L2 tag RAM, Write
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, no interrupt has been generated.</description>
                </bitField>
                <bitField access="Read Only" high_bit="2" low_bit="2" name="PARRD">
                    <gui_name language="en">PARRD</gui_name>
                    <description language="en">PARRD: Parity Error on L2 data RAM, Read
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, no interrupt has been generated.</description>
                </bitField>
                <bitField access="Read Only" high_bit="1" low_bit="1" name="PARRT">
                    <gui_name language="en">PARRT</gui_name>
                    <description language="en">PARRT: Parity Error on L2 tag RAM, Read
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, no interrupt has been generated.</description>
                </bitField>
                <bitField access="Read Only" high_bit="0" low_bit="0" name="ECNTR">
                    <gui_name language="en">ECNTR</gui_name>
                    <description language="en">ECNTR: Event Counter1 and Event Counter 0 Overflow Increment
Bits read can be HIGH or LOW:
HIGH = If the bits read HIGH, they reflect the status of the input lines 
       triggering an interrupt.
LOW  = If the bits read LOW, no interrupt has been generated.</description>
                </bitField>
            </register>
            <register name="reg2_int_clear" base_addr="mpul2" offset="0x00000220" size="0x4">
                    <gui_name language="en">reg2_int_clear</gui_name>
                    <description language="en">3.3.9 Interrupt registers - Interrupt Clear Register
The reg2_int_clear Register characteristics are:
Purpose
    Clears the Raw Interrupt Status Register bits.
Usage constraints
    Non-secure access to this register is dependent on Auxiliary Control
    Register bit [27]. If bit [27] of the Auxiliary Control Register is set to 0, a
    Non secure write to this register results in a DECERR response. A read to
    this register returns zero.
Configurations
    Available in all configurations.
Attributes
    WO
</description>
                <bitField access="Write Only" high_bit="8" low_bit="8" name="DECERR">
                    <gui_name language="en">DECERR</gui_name>
                    <description language="en">DECERR: DECERR from L3
When a bit is written as 1, it clears the corresponding
bit in the Raw Interrupt Status Register.
When a bit is written as 0, it has no effect.</description>
                </bitField>
                <bitField access="Write Only" high_bit="7" low_bit="7" name="SLVERR">
                    <gui_name language="en">SLVERR</gui_name>
                    <description language="en">SLVERR: SLVERR from L3
When a bit is written as 1, it clears the corresponding
bit in the Raw Interrupt Status Register.
When a bit is written as 0, it has no effect.</description>
                </bitField>
                <bitField access="Write Only" high_bit="6" low_bit="6" name="ERRRD">
                    <gui_name language="en">ERRRD</gui_name>
                    <description language="en">ERRRD: Error on L2 data RAM, Read
When a bit is written as 1, it clears the corresponding
bit in the Raw Interrupt Status Register.
When a bit is written as 0, it has no effect.</description>
                </bitField>
                <bitField access="Write Only" high_bit="5" low_bit="5" name="ERRRT">
                    <gui_name language="en">ERRRT</gui_name>
                    <description language="en">ERRRT: Error on L2 tag RAM, Read
When a bit is written as 1, it clears the corresponding
bit in the Raw Interrupt Status Register.
When a bit is written as 0, it has no effect.</description>
                </bitField>
                <bitField access="Write Only" high_bit="4" low_bit="4" name="ERRWD">
                    <gui_name language="en">ERRWD</gui_name>
                    <description language="en">ERRWD: Error on L2 data RAM, Write
When a bit is written as 1, it clears the corresponding
bit in the Raw Interrupt Status Register.
When a bit is written as 0, it has no effect.</description>
                </bitField>
                <bitField access="Write Only" high_bit="3" low_bit="3" name="ERRWT">
                    <gui_name language="en">ERRWT</gui_name>
                    <description language="en">ERRWT: Error on L2 tag RAM, Write
When a bit is written as 1, it clears the corresponding
bit in the Raw Interrupt Status Register.
When a bit is written as 0, it has no effect.</description>
                </bitField>
                <bitField access="Write Only" high_bit="2" low_bit="2" name="PARRD">
                    <gui_name language="en">PARRD</gui_name>
                    <description language="en">PARRD: Parity Error on L2 data RAM, Read
When a bit is written as 1, it clears the corresponding
bit in the Raw Interrupt Status Register.
When a bit is written as 0, it has no effect.</description>
                </bitField>
                <bitField access="Write Only" high_bit="1" low_bit="1" name="PARRT">
                    <gui_name language="en">PARRT</gui_name>
                    <description language="en">PARRT: Parity Error on L2 tag RAM, Read
When a bit is written as 1, it clears the corresponding
bit in the Raw Interrupt Status Register.
When a bit is written as 0, it has no effect.</description>
                </bitField>
                <bitField access="Write Only" high_bit="0" low_bit="0" name="ECNTR">
                    <gui_name language="en">ECNTR</gui_name>
                    <description language="en">ECNTR: Event Counter1 and Event Counter 0 Overflow Increment
When a bit is written as 1, it clears the corresponding
bit in the Raw Interrupt Status Register.
When a bit is written as 0, it has no effect.</description>
                </bitField>
            </register>
            <register name="reg7_cache_sync" base_addr="mpul2" offset="0x00000730" size="0x4">
                    <gui_name language="en">reg7_cache_sync</gui_name>
                    <description language="en">3.3.10 Cache Maintenance Operations - Cache Sync
The Cache Maintenance Operations registers have different behavior, depending 
on the AXI security flag of the access requesting a cache operation. To 
perform the maintenance operation, perform a write to the corresponding 
register. If the operation is specific to the Way or Set/Way, their behavior 
is presented in the following manner:
  Secure access
    The secure bit of the tag is ignored and the maintenance operation can affect both
    secure and non-secure lines.
  Non-secure access
    The secure bit of the tag is checked, a lookup must be done for each non-secure
    maintenance operation, and the maintenance operation can only affect non-secure
    lines. Secure lines in cache are ignored and unmodified.
Also, depending on the AXI security flag of the access requesting a cache 
operation, if the operation is specific to the Physical Address (PA), the 
behavior is presented in the following manner:
  Secure access
    The data in the cache is only affected by the operation if it is secure.
  Non-secure access
    The data in the cache is only affected by the operation if it is non-secure.

Operation
    Drain the STB. Operation complete when all buffers, LRB, LFB, STB, and EB, are empty.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="C">
                    <gui_name language="en">C</gui_name>
                    <description language="en">This operation stall the slave ports until they are complete.
When this register is read, bit [0], the C flag, indicates that a background
operation is in progress. When written, bit 0 must be zero.</description>
                </bitField>
            </register>
            <register name="reg7_inv_pa" base_addr="mpul2" offset="0x00000770" size="0x4">
                    <gui_name language="en">reg7_inv_pa</gui_name>
                    <description language="en">3.3.10 Cache Maintenance Operations - Invalidate Line by PA
The Cache Maintenance Operations registers have different behavior, depending 
on the AXI security flag of the access requesting a cache operation. To 
perform the maintenance operation, perform a write to the corresponding 
register. If the operation is specific to the Way or Set/Way, their behavior 
is presented in the following manner:
  Secure access
    The secure bit of the tag is ignored and the maintenance operation can affect both
    secure and non-secure lines.
  Non-secure access
    The secure bit of the tag is checked, a lookup must be done for each non-secure
    maintenance operation, and the maintenance operation can only affect non-secure
    lines. Secure lines in cache are ignored and unmodified.
Also, depending on the AXI security flag of the access requesting a cache 
operation, if the operation is specific to the Physical Address (PA), the 
behavior is presented in the following manner:
  Secure access
    The data in the cache is only affected by the operation if it is secure.
  Non-secure access
    The data in the cache is only affected by the operation if it is non-secure.

Operation
    Specific L2 cache line is marked as not valid.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="31" low_bit="5" name="Tag_and_Index">
                    <gui_name language="en">Tag_and_Index</gui_name>
                    <description language="en">The bit position of the boundary between the Tag field and 
the Index field varies according to the Index bit width.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="C">
                    <gui_name language="en">C</gui_name>
                    <description language="en">This operation stall the slave ports until they are complete.
When this register is read, bit [0], the C flag, indicates that a background
operation is in progress. When written, bit 0 must be zero.</description>
                </bitField>
            </register>
            <register name="reg7_inv_way" base_addr="mpul2" offset="0x0000077C" size="0x4">
                    <gui_name language="en">reg7_inv_way</gui_name>
                    <description language="en">3.3.10 Cache Maintenance Operations - Invalidate by Way
The Cache Maintenance Operations registers have different behavior, depending 
on the AXI security flag of the access requesting a cache operation. To 
perform the maintenance operation, perform a write to the corresponding 
register. If the operation is specific to the Way or Set/Way, their behavior 
is presented in the following manner:
  Secure access
    The secure bit of the tag is ignored and the maintenance operation can affect both
    secure and non-secure lines.
  Non-secure access
    The secure bit of the tag is checked, a lookup must be done for each non-secure
    maintenance operation, and the maintenance operation can only affect non-secure
    lines. Secure lines in cache are ignored and unmodified.
Also, depending on the AXI security flag of the access requesting a cache 
operation, if the operation is specific to the Physical Address (PA), the 
behavior is presented in the following manner:
  Secure access
    The data in the cache is only affected by the operation if it is secure.
  Non-secure access
    The data in the cache is only affected by the operation if it is non-secure.

Operation
    Invalidate all data in specified ways, including dirty data. An Invalidate
    by way while selecting all cache ways is equivalent to invalidating all 
    cache entries. Completes as a background task with the way, or ways, 
    locked, preventing allocation.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="Way_bits">
                    <gui_name language="en">Way_bits</gui_name>
                    <description language="en">For a 16-way implementation, all bits [15:0] are used. 
If the 16-way option is not enabled, bits [15:8] are reserved.</description>
                </bitField>
            </register>
            <register name="reg7_clean_pa" base_addr="mpul2" offset="0x000007B0" size="0x4">
                    <gui_name language="en">reg7_clean_pa</gui_name>
                    <description language="en">3.3.10 Cache Maintenance Operations - Clean Line by PA
The Cache Maintenance Operations registers have different behavior, depending 
on the AXI security flag of the access requesting a cache operation. To 
perform the maintenance operation, perform a write to the corresponding 
register. If the operation is specific to the Way or Set/Way, their behavior 
is presented in the following manner:
  Secure access
    The secure bit of the tag is ignored and the maintenance operation can affect both
    secure and non-secure lines.
  Non-secure access
    The secure bit of the tag is checked, a lookup must be done for each non-secure
    maintenance operation, and the maintenance operation can only affect non-secure
    lines. Secure lines in cache are ignored and unmodified.
Also, depending on the AXI security flag of the access requesting a cache 
operation, if the operation is specific to the Physical Address (PA), the 
behavior is presented in the following manner:
  Secure access
    The data in the cache is only affected by the operation if it is secure.
  Non-secure access
    The data in the cache is only affected by the operation if it is non-secure.

Operation
    Write the specific L2 cache line to L3 main memory if the line is marked
    as valid and dirty. 
    The line is marked as not dirty. The valid bit is unchanged.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="31" low_bit="5" name="Tag_and_Index">
                    <gui_name language="en">Tag_and_Index</gui_name>
                    <description language="en">The bit position of the boundary between the Tag field and 
the Index field varies according to the Index bit width.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="C">
                    <gui_name language="en">C</gui_name>
                    <description language="en">This operation stall the slave ports until they are complete.
When this register is read, bit [0], the C flag, indicates that a background
operation is in progress. When written, bit 0 must be zero.</description>
                </bitField>
            </register>
            <register name="reg7_clean_index" base_addr="mpul2" offset="0x000007B8" size="0x4">
                    <gui_name language="en">reg7_clean_index</gui_name>
                    <description language="en">3.3.10 Cache Maintenance Operations - Clean Line by Set/Way
The Cache Maintenance Operations registers have different behavior, depending 
on the AXI security flag of the access requesting a cache operation. To 
perform the maintenance operation, perform a write to the corresponding 
register. If the operation is specific to the Way or Set/Way, their behavior 
is presented in the following manner:
  Secure access
    The secure bit of the tag is ignored and the maintenance operation can affect both
    secure and non-secure lines.
  Non-secure access
    The secure bit of the tag is checked, a lookup must be done for each non-secure
    maintenance operation, and the maintenance operation can only affect non-secure
    lines. Secure lines in cache are ignored and unmodified.
Also, depending on the AXI security flag of the access requesting a cache 
operation, if the operation is specific to the Physical Address (PA), the 
behavior is presented in the following manner:
  Secure access
    The data in the cache is only affected by the operation if it is secure.
  Non-secure access
    The data in the cache is only affected by the operation if it is non-secure.

Operation
    Write the specific L2 cache line within the specified way to L3 main 
    memory if the line is marked as valid and dirty. The line is marked as 
    not dirty. The valid bit is unchanged.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="31" low_bit="5" name="Way_and_Index">
                    <gui_name language="en">Way_and_Index</gui_name>
                    <description language="en">The bit position of the boundary between the SBZ field 
and the Index field varies according to the Index bit width. For a 16-way 
implementation, all four bits [31:28] are used. If the 16-way option is not 
enabled, bit [31] is reserved.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="C">
                    <gui_name language="en">C</gui_name>
                    <description language="en">This operation stall the slave ports until they are complete.
When this register is read, bit [0], the C flag, indicates that a background
operation is in progress. When written, bit 0 must be zero.</description>
                </bitField>
            </register>
            <register name="reg7_clean_way" base_addr="mpul2" offset="0x000007BC" size="0x4">
                    <gui_name language="en">reg7_clean_way</gui_name>
                    <description language="en">3.3.10 Cache Maintenance Operations - Clean by Way
The Cache Maintenance Operations registers have different behavior, depending 
on the AXI security flag of the access requesting a cache operation. To 
perform the maintenance operation, perform a write to the corresponding 
register. If the operation is specific to the Way or Set/Way, their behavior 
is presented in the following manner:
  Secure access
    The secure bit of the tag is ignored and the maintenance operation can affect both
    secure and non-secure lines.
  Non-secure access
    The secure bit of the tag is checked, a lookup must be done for each non-secure
    maintenance operation, and the maintenance operation can only affect non-secure
    lines. Secure lines in cache are ignored and unmodified.
Also, depending on the AXI security flag of the access requesting a cache 
operation, if the operation is specific to the Physical Address (PA), the 
behavior is presented in the following manner:
  Secure access
    The data in the cache is only affected by the operation if it is secure.
  Non-secure access
    The data in the cache is only affected by the operation if it is non-secure.

Operation
    Writes each line of the specified L2 cache ways to L3 main memory if the
    line is marked as valid and dirty. The lines are marked as not dirty. 
    The valid bits are unchanged. Completes as a background task with the way,
    or ways, locked, preventing allocation.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="Way_bits">
                    <gui_name language="en">Way_bits</gui_name>
                    <description language="en">For a 16-way implementation, all bits [15:0] are used. 
If the 16-way option is not enabled, bits [15:8] are reserved.</description>
                </bitField>
            </register>
            <register name="reg7_clean_inv_pa" base_addr="mpul2" offset="0x000007F0" size="0x4">
                    <gui_name language="en">reg7_clean_inv_pa</gui_name>
                    <description language="en">3.3.10 Cache Maintenance Operations - Clean and Invalidate Line by PA
The Cache Maintenance Operations registers have different behavior, depending 
on the AXI security flag of the access requesting a cache operation. To 
perform the maintenance operation, perform a write to the corresponding 
register. If the operation is specific to the Way or Set/Way, their behavior 
is presented in the following manner:
  Secure access
    The secure bit of the tag is ignored and the maintenance operation can affect both
    secure and non-secure lines.
  Non-secure access
    The secure bit of the tag is checked, a lookup must be done for each non-secure
    maintenance operation, and the maintenance operation can only affect non-secure
    lines. Secure lines in cache are ignored and unmodified.
Also, depending on the AXI security flag of the access requesting a cache 
operation, if the operation is specific to the Physical Address (PA), the 
behavior is presented in the following manner:
  Secure access
    The data in the cache is only affected by the operation if it is secure.
  Non-secure access
    The data in the cache is only affected by the operation if it is non-secure.

Operation
    Write the specific L2 cache line to L3 main memory if the line is marked
    as valid and dirty. The line is marked as not valid.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="31" low_bit="5" name="Tag_and_Index">
                    <gui_name language="en">Tag_and_Index</gui_name>
                    <description language="en">The bit position of the boundary between the Tag field and 
the Index field varies according to the Index bit width.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="C">
                    <gui_name language="en">C</gui_name>
                    <description language="en">This operation stall the slave ports until they are complete.
When this register is read, bit [0], the C flag, indicates that a background
operation is in progress. When written, bit 0 must be zero.</description>
                </bitField>
            </register>
            <register name="reg7_clean_inv_index" base_addr="mpul2" offset="0x000007F8" size="0x4">
                    <gui_name language="en">reg7_clean_inv_index</gui_name>
                    <description language="en">3.3.10 Cache Maintenance Operations - Clean and Invalidate Line by Set/Way
The Cache Maintenance Operations registers have different behavior, depending 
on the AXI security flag of the access requesting a cache operation. To 
perform the maintenance operation, perform a write to the corresponding 
register. If the operation is specific to the Way or Set/Way, their behavior 
is presented in the following manner:
  Secure access
    The secure bit of the tag is ignored and the maintenance operation can affect both
    secure and non-secure lines.
  Non-secure access
    The secure bit of the tag is checked, a lookup must be done for each non-secure
    maintenance operation, and the maintenance operation can only affect non-secure
    lines. Secure lines in cache are ignored and unmodified.
Also, depending on the AXI security flag of the access requesting a cache 
operation, if the operation is specific to the Physical Address (PA), the 
behavior is presented in the following manner:
  Secure access
    The data in the cache is only affected by the operation if it is secure.
  Non-secure access
    The data in the cache is only affected by the operation if it is non-secure.

Operation
    Write the specific L2 cache line within the specified way to L3 main memory
    if the line is marked as valid and dirty. The line is marked as not valid.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="31" low_bit="5" name="Way_and_Index">
                    <gui_name language="en">Way_and_Index</gui_name>
                    <description language="en">The bit position of the boundary between the SBZ field 
and the Index field varies according to the Index bit width. For a 16-way 
implementation, all four bits [31:28] are used. If the 16-way option is not 
enabled, bit [31] is reserved.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="C">
                    <gui_name language="en">C</gui_name>
                    <description language="en">This operation stall the slave ports until they are complete.
When this register is read, bit [0], the C flag, indicates that a background
operation is in progress. When written, bit 0 must be zero.</description>
                </bitField>
            </register>
            <register name="reg7_clean_inv_way" base_addr="mpul2" offset="0x000007FC" size="0x4">
                    <gui_name language="en">reg7_clean_inv_way</gui_name>
                    <description language="en">3.3.10 Cache Maintenance Operations - Clean and Invalidate by Way
The Cache Maintenance Operations registers have different behavior, depending 
on the AXI security flag of the access requesting a cache operation. To 
perform the maintenance operation, perform a write to the corresponding 
register. If the operation is specific to the Way or Set/Way, their behavior 
is presented in the following manner:
  Secure access
    The secure bit of the tag is ignored and the maintenance operation can affect both
    secure and non-secure lines.
  Non-secure access
    The secure bit of the tag is checked, a lookup must be done for each non-secure
    maintenance operation, and the maintenance operation can only affect non-secure
    lines. Secure lines in cache are ignored and unmodified.
Also, depending on the AXI security flag of the access requesting a cache 
operation, if the operation is specific to the Physical Address (PA), the 
behavior is presented in the following manner:
  Secure access
    The data in the cache is only affected by the operation if it is secure.
  Non-secure access
    The data in the cache is only affected by the operation if it is non-secure.

Operation
    Writes each line of the specified L2 cache ways to L3 main memory if the
    line is marked as valid and dirty. The lines are marked as not valid. 
    Completes as a background task with the way, or ways, locked, preventing 
    allocation.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="Way_bits">
                    <gui_name language="en">Way_bits</gui_name>
                    <description language="en">For a 16-way implementation, all bits [15:0] are used. 
If the 16-way option is not enabled, bits [15:8] are reserved.</description>
                </bitField>
            </register>
            <register name="reg9_d_lockdown0" base_addr="mpul2" offset="0x00000900" size="0x4">
                    <gui_name language="en">reg9_d_lockdown0</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Data Lockdown 0 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="DATALOCK000">
                    <gui_name language="en">DATALOCK000</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b000</description>
                </bitField>
            </register>
            <register name="reg9_i_lockdown0" base_addr="mpul2" offset="0x00000904" size="0x4">
                    <gui_name language="en">reg9_i_lockdown0</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Instruction Lockdown 0 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="INSTRLOCK000">
                    <gui_name language="en">INSTRLOCK000</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b000</description>
                </bitField>
            </register>
            <register name="reg9_d_lockdown1" base_addr="mpul2" offset="0x00000908" size="0x4">
                    <gui_name language="en">reg9_d_lockdown1</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Data Lockdown 1 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="DATALOCK001">
                    <gui_name language="en">DATALOCK001</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b001</description>
                </bitField>
            </register>
            <register name="reg9_i_lockdown1" base_addr="mpul2" offset="0x0000090C" size="0x4">
                    <gui_name language="en">reg9_i_lockdown1</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Instruction Lockdown 1 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="INSTRLOCK001">
                    <gui_name language="en">INSTRLOCK001</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b001</description>
                </bitField>
            </register>
            <register name="reg9_d_lockdown2" base_addr="mpul2" offset="0x00000910" size="0x4">
                    <gui_name language="en">reg9_d_lockdown2</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Data Lockdown 2 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="DATALOCK010">
                    <gui_name language="en">DATALOCK010</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b010</description>
                </bitField>
            </register>
            <register name="reg9_i_lockdown2" base_addr="mpul2" offset="0x00000914" size="0x4">
                    <gui_name language="en">reg9_i_lockdown2</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Instruction Lockdown 2 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="INSTRLOCK010">
                    <gui_name language="en">INSTRLOCK010</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b010</description>
                </bitField>
            </register>
            <register name="reg9_d_lockdown3" base_addr="mpul2" offset="0x00000918" size="0x4">
                    <gui_name language="en">reg9_d_lockdown3</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Data Lockdown 3 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="DATALOCK011">
                    <gui_name language="en">DATALOCK011</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b011</description>
                </bitField>
            </register>
            <register name="reg9_i_lockdown3" base_addr="mpul2" offset="0x0000091C" size="0x4">
                    <gui_name language="en">reg9_i_lockdown3</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Instruction Lockdown 3 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="INSTRLOCK011">
                    <gui_name language="en">INSTRLOCK011</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b011</description>
                </bitField>
            </register>
            <register name="reg9_d_lockdown4" base_addr="mpul2" offset="0x00000920" size="0x4">
                    <gui_name language="en">reg9_d_lockdown4</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Data Lockdown 4 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="DATALOCK100">
                    <gui_name language="en">DATALOCK100</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b100</description>
                </bitField>
            </register>
            <register name="reg9_i_lockdown4" base_addr="mpul2" offset="0x00000924" size="0x4">
                    <gui_name language="en">reg9_i_lockdown4</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Instruction Lockdown 4 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="INSTRLOCK100">
                    <gui_name language="en">INSTRLOCK100</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b100</description>
                </bitField>
            </register>
            <register name="reg9_d_lockdown5" base_addr="mpul2" offset="0x00000928" size="0x4">
                    <gui_name language="en">reg9_d_lockdown5</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Data Lockdown 5 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="DATALOCK101">
                    <gui_name language="en">DATALOCK101</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b101</description>
                </bitField>
            </register>
            <register name="reg9_i_lockdown5" base_addr="mpul2" offset="0x0000092C" size="0x4">
                    <gui_name language="en">reg9_i_lockdown5</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Instruction Lockdown 5 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="INSTRLOCK101">
                    <gui_name language="en">INSTRLOCK101</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b101</description>
                </bitField>
            </register>
            <register name="reg9_d_lockdown6" base_addr="mpul2" offset="0x00000930" size="0x4">
                    <gui_name language="en">reg9_d_lockdown6</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Data Lockdown 6 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="DATALOCK110">
                    <gui_name language="en">DATALOCK110</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b110</description>
                </bitField>
            </register>
            <register name="reg9_i_lockdown6" base_addr="mpul2" offset="0x00000934" size="0x4">
                    <gui_name language="en">reg9_i_lockdown6</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Instruction Lockdown 6 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="INSTRLOCK110">
                    <gui_name language="en">INSTRLOCK110</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b110</description>
                </bitField>
            </register>
            <register name="reg9_d_lockdown7" base_addr="mpul2" offset="0x00000938" size="0x4">
                    <gui_name language="en">reg9_d_lockdown7</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Data Lockdown 7 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="DATALOCK111">
                    <gui_name language="en">DATALOCK111</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b111</description>
                </bitField>
            </register>
            <register name="reg9_i_lockdown7" base_addr="mpul2" offset="0x0000093C" size="0x4">
                    <gui_name language="en">reg9_i_lockdown7</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Instruction Lockdown 7 Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="INSTRLOCK111">
                    <gui_name language="en">INSTRLOCK111</gui_name>
                    <description language="en">Use when AyUSERSx[7:5] = 0b111</description>
                </bitField>
            </register>
            <register name="reg9_lock_line_en" base_addr="mpul2" offset="0x00000950" size="0x4">
                    <gui_name language="en">reg9_lock_line_en</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Lockdown by Line Enable Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="lockdown_by_line_enable">
                    <gui_name language="en">lockdown_by_line_enable</gui_name>
                    <description language="en">0 = Lockdown by line disabled. This is the default.
1 = Lockdown by line enabled.</description>
                </bitField>
            </register>
            <register name="reg9_unlock_way" base_addr="mpul2" offset="0x00000954" size="0x4">
                    <gui_name language="en">reg9_unlock_way</gui_name>
                    <description language="en">3.3.11 Cache lockdown - Unlock All Lines Register
These registers can prevent new addresses from being allocated and can also 
prevent data from being evicted out of the L2 cache. Such behavior can 
distinguish instructions from data transactions.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="15" low_bit="0" name="unlock_all_lines_by_way_operation">
                    <gui_name language="en">unlock_all_lines_by_way_ope</gui_name>
                    <description language="en">For all bits:
0 = Unlock all lines disabled. This is the default.
1 = Unlock all lines operation in progress for the corresponding way.</description>
                </bitField>
            </register>
            <register name="reg12_addr_filtering_start" base_addr="mpul2" offset="0x00000C00" size="0x4">
                    <gui_name language="en">reg12_addr_filtering_start</gui_name>
                    <description language="en">3.3.12 Address filtering - Address Filtering Start Register
When two masters are implemented, you can redirect a whole address range to 
master 1 (M1). When address_filtering_enable is set, all accesses with address
 &gt;= address_filtering_start and &lt; address_filtering_end are automatically 
directed to M1. All other accesses are directed to M0.
This feature is programmed using two registers.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="31" low_bit="20" name="address_filtering_start">
                    <gui_name language="en">address_filtering_start</gui_name>
                    <description language="en">Address filtering start address for bits [31:20] of the filtering address.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="address_filtering_enable">
                    <gui_name language="en">address_filtering_enable</gui_name>
                    <description language="en">0 = address filtering disabled
1 = address filtering enabled.</description>
                </bitField>
            </register>
            <register name="reg12_addr_filtering_end" base_addr="mpul2" offset="0x00000C04" size="0x4">
                    <gui_name language="en">reg12_addr_filtering_end</gui_name>
                    <description language="en">3.3.12 Address filtering - Address Filtering End Register
When two masters are implemented, you can redirect a whole address range to 
master 1 (M1). When address_filtering_enable is set, all accesses with address
 &gt;= address_filtering_start and &lt; address_filtering_end are automatically 
directed to M1. All other accesses are directed to M0.
This feature is programmed using two registers.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="31" low_bit="20" name="address_filtering_end">
                    <gui_name language="en">address_filtering_end</gui_name>
                    <description language="en">Address filtering end address for bits [31:20] of the filtering address.</description>
                </bitField>
            </register>
            <register name="reg15_debug_ctrl" base_addr="mpul2" offset="0x00000F40" size="0x4">
                    <gui_name language="en">reg15_debug_ctrl</gui_name>
                    <description language="en">3.3.13 Debug Register
The Debug Control Register forces specific cache behavior required for debug. 
This register has read-only, non-secure, or read and write, secure, permission.
Any secure access and non-secure access can read this register. Only a secure 
access can write to this register. If a non-secure access tries to write to 
this register the register issues a DECERR response and does not update.

Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="2" low_bit="2" name="SPNIDEN">
                    <gui_name language="en">SPNIDEN</gui_name>
                    <description language="en">Reads value of SPNIDEN input.</description>
                </bitField>
                <bitField access="Read Write" high_bit="1" low_bit="1" name="DWB">
                    <gui_name language="en">DWB</gui_name>
                    <description language="en">DWB: Disable write-back, force WT
0 = Enable write-back behavior. This is the default.
1 = Force write-through behavior.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="DCL">
                    <gui_name language="en">DCL</gui_name>
                    <description language="en">DCL: Disable cache linefill
0 = Enable cache linefills. This is the default.
1 = Disable cache linefills.</description>
                </bitField>
            </register>
            <register name="reg15_prefetch_ctrl" base_addr="mpul2" offset="0x00000F60" size="0x4">
                    <gui_name language="en">reg15_prefetch_ctrl</gui_name>
                    <description language="en">3.3.14 Prefetch Control Register
The Prefetch Control Register characteristics are:
Purpose
    Enables prefetch-related features that can improve system performance.
Usage constraints
    This register has both read-only, non-secure, and read and write, secure,
    permissions. Any secure or non-secure access can read this register. Only
    a secure access can write to this register. If a non-secure access attempts
    to write to this register, the register issues a DECERR response and does
    not update.
    ---- Note ----
    You must preserve the reserved bits when you write to this register.
    --------------
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="30" low_bit="30" name="Double_linefill_enable">
                    <gui_name language="en">Double_linefill_enable</gui_name>
                    <description language="en">You can set the following options for this register bit:
0 = The L2CC always issues 4x64-bit read bursts to L3 on reads
    that miss in the L2 cache. This is the default.
1 = The L2CC issues 8x64-bit read bursts to L3 on reads that
    miss in the L2 cache.</description>
                </bitField>
                <bitField access="Read Write" high_bit="29" low_bit="29" name="Instruction_prefetch_enable">
                    <gui_name language="en">Instruction_prefetch_enable</gui_name>
                    <description language="en">You can set the following options for this register bit:
0 = Instruction prefetching disabled. This is the default.
1 = Instruction prefetching enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="28" low_bit="28" name="Data_prefetch_enable">
                    <gui_name language="en">Data_prefetch_enable</gui_name>
                    <description language="en">You can set the following options for this register bit:
0 = Data prefetching disabled. This is the default.
1 = Data prefetching enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="27" low_bit="27" name="Double_linefill_on_WRAP_read_disable">
                    <gui_name language="en">DoubleLF_on_WRAPread_dis</gui_name>
                    <description language="en">You can set the following options for this register bit:
0 = Double linefill on WRAP read enabled. This is the default.
1 = Double linefill on WRAP read disabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="24" low_bit="24" name="Prefetch_drop_enable">
                    <gui_name language="en">Prefetch_drop_enable</gui_name>
                    <description language="en">You can set the following options for this register bit:
0 = The L2CC does not discard prefetch reads issued to L3. This
    is the default.
1 = The L2CC discards prefetch reads issued to L3 when there is
    a resource conflict with explicit reads.</description>
                </bitField>
                <bitField access="Read Write" high_bit="23" low_bit="23" name="Incr_double_Linefill_enable">
                    <gui_name language="en">Incr_DoubleLF_enable</gui_name>
                    <description language="en">You can set the following options for this register bit:
0 = The L2CC does not issue INCR 8x64-bit read bursts to L3 on
    reads that miss in the L2 cache. This is the default.
1 = The L2CC can issue INCR 8x64-bit read bursts to L3 on
    reads that miss in the L2 cache.</description>
                </bitField>
                <bitField access="Read Write" high_bit="21" low_bit="21" name="Not_same_ID_on_exclusive_sequence_enable">
                    <gui_name language="en">NOTsameID_on_exclusive_seq_en</gui_name>
                    <description language="en">You can set the following options for this register bit:
0 = Read and write portions of a non-cacheable exclusive
    sequence have the same AXI ID when issued to L3. This is the default.
1 = Read and write portions of a non-cacheable exclusive
    sequence do not have the same AXI ID when issued to L3.</description>
                </bitField>
                <bitField access="Read Write" high_bit="4" low_bit="0" name="Prefetch_offset">
                    <gui_name language="en">Prefetch_offset</gui_name>
                    <description language="en">Default value = 0b00000.
---- Note ---- 
You must only use the Prefetch offset values of 0-7, 15, 23, and 31 for these
bits. The L2C-310 does not support the other values.</description>
                </bitField>
            </register>
            <register name="reg15_power_ctrl" base_addr="mpul2" offset="0x00000F80" size="0x4">
                    <gui_name language="en">reg15_power_ctrl</gui_name>
                    <description language="en">3.3.15 Power Control Register
The pwr_ctrl Register characteristics are:
Purpose
    Controls the operating mode clock and power modes.
Usage constraints
    There are no usage constraints.
Configurations
    Available in all configurations.
Attributes
    RW
</description>
                <bitField access="Read Write" high_bit="1" low_bit="1" name="dynamic_clk_gating_en">
                    <gui_name language="en">dynamic_clk_gating_en</gui_name>
                    <description language="en">Dynamic clock gating enable.
0 = Disabled. This is the default.
1 = Enabled.</description>
                </bitField>
                <bitField access="Read Write" high_bit="0" low_bit="0" name="standby_mode_en">
                    <gui_name language="en">standby_mode_en</gui_name>
                    <description language="en">Standby mode enable.
0 = Disabled. This is the default.
1 = Enabled.</description>
                </bitField>
            </register>
        </peripheral>
    </board>
</boards>
