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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Instruction Details<br />

A8.6.117 PLD, PLDW (immediate)<br />

Preload Data signals the memory system that data memory accesses from a specified address are likely in<br />

the near future. The memory system can respond by taking actions that are expected to speed up the memory<br />

accesses when they do occur, such as pre-loading the cache line containing the specified address into the<br />

data cache. For more information, see Behavior of Preload Data (PLD, PLDW) <strong>and</strong> Preload Instruction<br />

(PLI) with caches on page B2-7.<br />

On an architecture variant that includes both the PLD <strong>and</strong> PLDW instructions, the PLD instruction signals that<br />

the likely memory access is a read, <strong>and</strong> the PLDW instruction signals that it is a write.<br />

Encoding T1 <strong>ARM</strong>v6T2, <strong>ARM</strong>v7 for PLD<br />

<strong>ARM</strong>v7 with MP Extensions for PLDW<br />

PLD{W} [,#]<br />

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0<br />

1 1 1 1 1 0 0 0 1 0 W 1 Rn 1 1 1 1 imm12<br />

if Rn == ‘1111’ then SEE PLD (literal);<br />

n = UInt(Rn); imm32 = ZeroExtend(imm12, 32); add = TRUE; is_pldw = (W == ‘1’);<br />

Encoding T2 <strong>ARM</strong>v6T2, <strong>ARM</strong>v7 for PLD<br />

<strong>ARM</strong>v7 with MP Extensions for PLDW<br />

PLD{W} [,#-]<br />

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0<br />

1 1 1 1 1 0 0 0 0 0 W 1 Rn 1 1 1 1 1 1 0 0 imm8<br />

if Rn == ‘1111’ then SEE PLD (literal);<br />

n = UInt(Rn); imm32 = ZeroExtend(imm8, 32); add = FALSE; is_pldw = (W == ‘1’);<br />

Encoding A1 <strong>ARM</strong>v5TE*, <strong>ARM</strong>v6*, <strong>ARM</strong>v7 for PLD<br />

<strong>ARM</strong>v7 with MP Extensions for PLDW<br />

PLD{W} [,#+/-]<br />

31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0<br />

1 1 1 1 0 1 0 1 U R 0 1 Rn (1)(1)(1)(1) imm12<br />

if Rn == ‘1111’ then SEE PLD (literal);<br />

n = UInt(Rn); imm32 = ZeroExtend(imm12, 32); add = (U == ‘1’); is_pldw = (R == ‘0’);<br />

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

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

Saved successfully!

Ooh no, something went wrong!