Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CS 220 / ARM / ARM1176JZ-S Technical Reference Mmanual.pdf
Источник:
Скачиваний:
142
Добавлен:
16.04.2015
Размер:
4.47 Mб
Скачать

Cycle Timings and Interlock Behavior

16.4QADD, QDADD, QSUB, and QDSUB instructions

This section describes the cycle timing behavior for the QADD, QDADD, QSUB, and QDSUB instructions.

These instructions perform saturating arithmetic. Their result is produced during the Sat stage, consequently they have a result latency of two. The QDADD and QDSUB instructions must double and saturate the register <Rn> before the addition. This operation occurs in the Sh stage of the pipeline, consequently this register is an Early Reg.

Table 16-6 lists the cycle timing behavior for QADD, QDADD, QSUB, and QDSUB instructions.

Table 16-6 QADD, QDADD, QSUB, and QDSUB instruction cycle timing behavior

Instructions

Cycle

Early Reg

Result Latency

s

 

 

 

 

 

 

 

QADD, QSUB

1

-

2

 

 

 

 

QDADD, QDSUB

1

<Rn>

2

 

 

 

 

ARM DDI 0333H

Copyright © 2004-2009 ARM Limited. All rights reserved.

16-9

ID012410

Non-Confidential, Unrestricted Access

 

Cycle Timings and Interlock Behavior

16.5ARMv6 media data-processing

Table 16-7 lists ARMv6 media data-processing instructions and gives their cycle timing behavior.

All ARMv6 media data-processing instructions are single-cycle issue instructions. These instructions produce their results in either the ALU or Sat stage, and have result latencies of one or two accordingly. Some of the instructions require an input register to be shifted before use and therefore are marked as requiring an Early Reg.

Table 16-7 ARMv6 media data-processing instructions cycle timing behavior

Instructions

Cycle

Early Reg

Result Latency

s

 

 

 

 

 

 

 

SADD16, SSUB16, SADD8, SSUB8

1

-

1

 

 

 

 

USAD8, USADA8

1

<Rm>, <Rs>

3

 

 

 

 

UADD16, USUB16, UADD8, USUB8

1

-

1

 

 

 

 

SEL

1

-

1

 

 

 

 

QADD16, QSUB16, QADD8, QSUB8

1

-

2

 

 

 

 

SHADD16, SHSUB16, SHADD8, SHSUB8

1

-

2

 

 

 

 

UQADD16, UQSUB16, UQADD8, UQSUB8

1

-

2

 

 

 

 

UHADD16, UHSUB16, UHADD8, UHSUB8

1

-

2

 

 

 

 

SSAT16, USAT16

1

-

2

 

 

 

 

SADDSUBX, SSUBADDX

1

<Rm>

1

 

 

 

 

UADDSUBX, USUBADDX

1

<Rm>

1

 

 

 

 

SADD8TO16, SADD8TO32, SADD16TO32

1

<Rm>

1

 

 

 

 

SUNPK8TO16, SUNPK8TO32, SUNPK16TO32

1

<Rm>

1

 

 

 

 

UUNPK8TO16, UUNPK8TO32, UUNPK16TO32

1

<Rm>

1

 

 

 

 

UADD8TO16, UADD8TO32, UADD16TO32

1

<Rm>

1

 

 

 

 

REV, REV16, REVSH

1

<Rm>

1

 

 

 

 

PKHBT, PKHTB

1

<Rm>

1

 

 

 

 

SSAT, USAT

1

<Rm>

2

 

 

 

 

QADDSUBX, QSUBADDX

1

<Rm>

2

 

 

 

 

SHADDSUBX, SHSUBADDX

1

<Rm>

2

 

 

 

 

UQADDSUBX, UQSUBADDX

1

<Rm>

2

 

 

 

 

UHADDSUBX, UHSUBADDX

1

<Rm>

2

 

 

 

 

ARM DDI 0333H

Copyright © 2004-2009 ARM Limited. All rights reserved.

16-10

ID012410

Non-Confidential, Unrestricted Access

 

Соседние файлы в папке ARM