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

Create successful ePaper yourself

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

Table 16-4 shows the operation of multiply instructions.<br />

16.2.4 Parallel arithmetic and DSP instructions<br />

16.2.5 Extended instructions<br />

Instruction Cycle Timing<br />

The parallel arithmetic instructions include ADD15, ADDSUBX, SUBADDX, SUB16, ADD8, SUB8, QDADD,<br />

QDSUB, QADD, QSUB.<br />

Table 16-5 shows the operation of parallel arithmetic instructions.<br />

The extended instructions include XTAB, XTAH, XTB, XTH.<br />

Table 16-6 shows the operation of extended instructions.<br />

Table 16-4 Multiply instructions<br />

Multiply type Cycles Source1 Source2 Source3 Source4 Result1 Result2<br />

Normal: MUL 2 Rm:E1 Rs:E1 [Rd:E3] {Rn:E4} a Rd:E5 -<br />

Long: SMULL, UMULL 3 Rm:E1 Rs:E1 {[RdLo:E3]} {[RdHi:E3]} RdLo:E5 RdHi:E5<br />

Long: SMLAL, UMLAL, UMAAL 3 Rm:E1 Rs:E1 {[RdLo:E2]} {[RdHi:E1]} RdLo:E5 RdHi:E5<br />

Halfword: SMLAxy, SMULxy 2 Rm:E1 Rs:E1 [Rd:E2] {Rn:E4} a Rd:E5 -<br />

Halfword: SMLALxy 2 Rm:E1 Rs:E1 {[RdLo:E1]} {[RdHi:E2]} RdLo:E5 RdHi:E5<br />

Word-halfword: SMULWy 1 Rm:E1 Rs:E1 [Rd:E2] - Rd:E5 -<br />

Word-halfword: SMLAWy 2 Rm:E1 Rs:E1 [Rd:E2] Rn:E4 a Rd:E5 -<br />

Most significant word 2 Rm:E1 Rs:E1 [Rd:E3] {Rn:E4} a Rd:E5 -<br />

Dual halfword: SMUAD, SMUSD 1 Rm:E1 Rs:E1 [Rd:E2] - Rd:E5 -<br />

Dual halfword: SMLAD, SMLSD 2 Rm:E1 Rs:E1 [Rd:E2] {Rn:E4} a Rd:E5 -<br />

Dual halfword: SMLALD, SMLSLD 2 Rm:E1 Rs:E1 {[RdLo:E1]} {[RdHi:E2]} RdLo:E5 RdHi:E5<br />

a. A multiply that is followed by a MAC with a dependency on the accumulator, Rn register, triggers a special accumulator<br />

forwarding. This enables both instructions to issue back-to-back because Rn is required as a source in E4. If this accumulator<br />

forwarding is not used, Rn is required in E2.<br />

Table 16-5 Parallel arithmetic instructions<br />

Shift type Cycles Source1 Source2 Source3 Source4 Result1 Result2<br />

Shifter required: ADDSUB, SUBADD, QD 1 Rm:E2 Rn:E1 [Rd:E2] - Rd:E3 -<br />

No shifter required: all others 1 Rm:E2 Rn:E2 [Rd:E2] - Rd:E3 -<br />

Table 16-6 Extended instructions<br />

Shift type Cycles Source1 Source2 Source3 Source4 Result1 Result2<br />

Versions without accumulate a 1 Rm:E1 [Rd:E2] - - Rd:E1/E2 -<br />

Versions with accumulate 1 Rm:E1 Rn:E2 [Rd:E2] - Rd:E2 -<br />

a. If conditional, result is not available until E2.<br />

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

ID060510 Non-Confidential

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

Saved successfully!

Ooh no, something went wrong!