09.12.2012 Views

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

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.

13.3 Short vectors<br />

13.3.1 About register banks<br />

NEON and VFP Programmers Model<br />

The VFPv3 architecture supports execution of short vector instructions of up to eight operations<br />

on single-precision data and up to four operations on double-precision data.<br />

The register file is especially suited for short vector operations. The four single-precision and<br />

eight double-precision register banks function as four hardware circular queues.<br />

As Figure 13-2 on page 13-6 shows, the register file is divided into four banks with eight<br />

registers in each bank for single-precision instructions and eight banks with four registers per<br />

bank for double-precision instructions. CDP instructions access the banks in a circular manner.<br />

Load and store multiple instructions do not access the registers in a circular manner but treat the<br />

register file as a linearly ordered structure.<br />

The VFPv3 architecture adds 16 double-precision registers, making use of the additional<br />

register addressing bits currently used to specify single-precision registers. The first 16<br />

registers, D0 through D15, in the NEON register file provides the same functionality as the<br />

register file defined in the VFPv2 architecture. VFPv3 adds 16 new double-precision registers,<br />

D16 through D31, which provides a second set of 16 double-precision registers. These registers<br />

behave in vector mode in an identical manner to the lower 16 registers, with bank 4 specified as<br />

registers D16-D19, bank 5 specified as registers D20-D23, bank 6 specified as registers<br />

D24-D27, and bank 7 specified as D28-D31. Bank 4 of the second set of registers has the same<br />

characteristics when used in short vector instructions as bank 0 of the first set of registers.<br />

Short vector operations on double-precision data support vector lengths of two through four<br />

iterations. The additional registers provides the capability to double-buffer double-precision<br />

operations in a similar way as is available for single-precision operations.<br />

See the <strong>ARM</strong> Architecture <strong>Reference</strong> <strong>Manual</strong> for more information on VFP addressing modes.<br />

<strong>ARM</strong> DDI 0344K Copyright © 2006-2010 <strong>ARM</strong> Limited. All rights reserved. 13-5<br />

ID060510 Non-Confidential

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

Saved successfully!

Ooh no, something went wrong!