05.02.2013 Views

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Virtual Memory System <strong>Architecture</strong> (VMSA)<br />

The format of the FCSEIDR is:<br />

31 25 24 0<br />

PID UNK/SBZP<br />

PID, bits [31:25]<br />

The current Process ID, for the FCSE. If the FCSE is not implemented this field is RAZ/WI.<br />

Bits [24:0] Reserved. If the FCSE is not implemented this field is RAZ/WI.<br />

If the FCSE is implemented, the value of this field is UNKNOWN on reads <strong>and</strong><br />

Should-Be-Zero-or-Preserved on writes.<br />

Note<br />

When the PID is written, the overall virtual-to-physical address mapping changes. Because of this,<br />

you must ensure that instructions that might have been prefetched already are not affected by the<br />

address mapping change.<br />

From <strong>ARM</strong>v6, use of the FCSE is deprecated, <strong>and</strong> in <strong>ARM</strong>v7 the FCSE is optional.<br />

Accessing the FCSEIDR<br />

To access the FCSEIDR you read or write the CP15 registers with set to 0, set to c13, set<br />

to c0, <strong>and</strong> set to 0. For example:<br />

MRC p15,0,,c13,c0,0 ; Read CP15 FCSE PID Register<br />

MCR p15,0,,c13,c0,0 ; Write CP15 FCSE PID Register<br />

B3.12.45 c13, Context ID Register (CONTEXTIDR)<br />

The Context ID Register, CONTEXTIDR, identifies the current:<br />

Process Identifier (PROCID)<br />

Address Space Identifier (ASID).<br />

The value of the whole of this register is called the Context ID <strong>and</strong> is used by:<br />

the debug logic, for Linked <strong>and</strong> Unlinked Context ID matching, see Breakpoint debug events on<br />

page C3-5 <strong>and</strong> Watchpoint debug events on page C3-15.<br />

the trace logic, to identify the current process.<br />

The ASID field value is used by many memory management functions.<br />

The CONTEXTIDR is:<br />

a 32-bit read/write register<br />

accessible only in privileged modes<br />

when the Security Extensions are implemented, a Banked register.<br />

<strong>ARM</strong> DDI 0406B Copyright © 1996-1998, 2000, 2004-2008 <strong>ARM</strong> Limited. All rights reserved. B3-153

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!