14.06.2015 Views

Power ISA™ Version 2.03 - Power.org

Power ISA™ Version 2.03 - Power.org

Power ISA™ Version 2.03 - Power.org

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

<strong>Version</strong> <strong>2.03</strong><br />

Vector Multiply Halfwords, Odd,<br />

Unsigned, Modulo, Integer and<br />

Accumulate into Words EVX-form<br />

Vector Multiply Halfwords, Odd,<br />

Unsigned, Modulo, Integer and<br />

Accumulate Negative into Words<br />

EVX-form<br />

evmhoumiaaw RT,RA,RB<br />

evmhoumianw RT,RA,RB<br />

4 RT RA RB 1292<br />

0 6 11 16 21 31 4 RT RA RB 1420<br />

0 6 11 16 21 31<br />

temp 0:31 (RA) 16:31 × ui (RB) 16:31<br />

RT 0:31 (ACC) 0:31 + temp 0:31<br />

temp 0:31 (RA) 48:63 × ui (RB) 48:63<br />

RT 32:63 (ACC) 32:63 + temp 0:31<br />

ACC 0:63 (RT) 0:63<br />

For each word element in the accumulator, the corresponding<br />

odd-numbered halfword unsigned-integer<br />

elements in RA and RB are multiplied. Each intermediate<br />

product is added to the contents of the corresponding<br />

accumulator word. The sums are placed into the<br />

corresponding RT and accumulator words.<br />

Special Registers Altered:<br />

ACC<br />

temp 0:31 (RA) 16:31 × ui (RB) 16:31<br />

RT 0:31 (ACC) 0:31 - temp 0:31<br />

temp 0:31 (RA) 48:63 × ui (RB) 48:63<br />

RT 32:63 (ACC) 32:63 - temp 0:31<br />

ACC 0:63 (RT) 0:63<br />

For each word element in the accumulator, the corresponding<br />

odd-numbered halfword unsigned-integer<br />

elements in RA and RB are multiplied. Each intermediate<br />

product is subtracted from the contents of the corresponding<br />

accumulator word. The results are placed into<br />

the corresponding RT and accumulator words.<br />

Special Registers Altered:<br />

ACC<br />

Vector Multiply Halfwords, Odd,<br />

Unsigned, Saturate, Integer and<br />

Accumulate into Words EVX-form<br />

Vector Multiply Halfwords, Odd,<br />

Unsigned, Saturate, Integer and<br />

Accumulate Negative into Words<br />

EVX-form<br />

evmhousiaaw RT,RA,RB<br />

evmhousianw RT,RA,RB<br />

4 RT RA RB 1284<br />

0 6 11 16 21 31 4 RT RA RB 1412<br />

0 6 11 16 21 31<br />

temp 0:31 (RA) 16:31 × ui (RB) 16:31<br />

temp 0:63 EXTZ((ACC) 0:31 ) + EXTZ(temp 0:31 )<br />

ovh temp 31<br />

RT 0:31 SATURATE(ovh, 0, 0xFFFF_FFFF, 0xFFFF_FFFF,<br />

temp 32:63 )<br />

temp 0:31 (RA) 48:63 × ui (RB) 48:63<br />

temp 0:63 EXTZ((ACC) 32:63 ) + EXTZ(temp 0:31 )<br />

ovl temp 31<br />

RT 32:63 SATURATE(ovl, 0, 0xFFFF_FFFF,<br />

0xFFFF_FFFF, temp 32:63 )<br />

ACC 0:63 (RT) 0:63<br />

SPEFSCR OVH ovh<br />

SPEFSCR OV ovl<br />

SPEFSCR SOVH SPEFSCR SOVH | ovh<br />

SPEFSCR SOV SPEFSCR SOV | ovl<br />

For each word element in the accumulator, corresponding<br />

odd-numbered halfword unsigned-integer elements<br />

in RA and RB are multiplied producing a 32-bit product.<br />

Each 32-bit product is then added to the corresponding<br />

word in the accumulator saturating if overflow occurs,<br />

and the result is placed in RT and the accumulator.<br />

Special Registers Altered:<br />

ACC, OV, OVH, SOV, SOVH<br />

temp 0:31 (RA) 16:31 × ui (RB) 16:31<br />

temp 0:63 EXTZ((ACC) 0:31 ) - EXTZ(temp 0:31 )<br />

ovh temp 31<br />

RT 0:31 SATURATE(ovh, 0, 0x0000_0000, 0x0000_0000,<br />

temp 32:63 )<br />

temp 0:31 (RA) 48:63 × ui (RB) 48:63<br />

temp 0:63 EXTZ((ACC) 32:63 ) - EXTZ(temp 0:31 )<br />

ovl temp 31<br />

RT 32:63 SATURATE(ovl, 0, 0x0000_0000,0x0000_0000,<br />

temp 32:63 )<br />

ACC 0:63 (RT) 0:63<br />

SPEFSCR OVH ovh<br />

SPEFSCR OV ovl<br />

SPEFSCR SOVH SPEFSCR SOVH | ovh<br />

SPEFSCR SOV SPEFSCR SOV | ovl<br />

For each word element in the accumulator, corresponding<br />

odd-numbered halfword unsigned-integer elements<br />

in RA and RB are multiplied producing a 32-bit product.<br />

Each 32-bit product is then subtracted from the corresponding<br />

word in the accumulator saturating if overflow<br />

occurs, and the result is placed in RT and the accumulator.<br />

Special Registers Altered:<br />

ACC, OV, OVH, SOV, SOVH<br />

230<br />

<strong>Power</strong> ISA -- Book I

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

Saved successfully!

Ooh no, something went wrong!