3.2.76. c15, L1 HVAB array operations

The purpose of the L1 HVAB array operations is to:

The L1 HVAB array operation is accessible in secure privileged modes only. You can calculate the value of N in Figure 3.71 and Figure 3.72 using the NumSets and LineSize fields as defined in Table 3.42.

Figure 3.71 shows the bit arrangement of the L1 HVAB array read operation.

Figure 3.71. L1 HVAB array read operation format


Figure 3.72 shows the bit arrangement of the L1 HVAB array write operation.

Figure 3.72. L1 HVAB array write operation format


To write one entry in data side HVAB array, for example:

LDR R0, =0x47;                  
MCR p15, 0, R0, c15, c0, 0;     Move R0 to D-L1 Data 0 Register
LDR R1, =0x800000C0;            
MCR p15, 0, R1, c15, c0, 5;     Write D-L1 Data 0 Register to D-HVAB

To read one entry from data side HVAB array, for example:

LDR R1, =0x800000C0;            
MCR p15, 0, R1, c15, c2, 5;     Read D-HVAB into data L1 Data 0 Register
MRC p15, 0, R2, c15, c0, 0;     Move D-L1 Data 0 Register to R2

To write one entry in instruction side HVAB array, for example:

LDR R0, =0x47;                  
MCR p15, 0, R0, c15, c1, 0;     Move R0 to I-L1 Data 0 Register
LDR R1, =0x800000C0;            
MCR p15, 0, R1, c15, c1, 5;     Write I-L1 Data 0 Register to I-HVAB

To read one entry from instruction side HVAB array, for example:

LDR R1, =0x800000C0;            
MCR p15, 0, R1, c15, c3, 5;     Read I-HVAB into I-L1 Data 0 Register
MRC p15, 0, R2, c15, c1, 0;     Move I-L1 Data 0 Register to R2
Copyright © 2006-2009 ARM Limited. All rights reserved.ARM DDI 0344I
Non-Confidential