将64位源向量Rss中的四个半字中的每个半字与对应的Rtt中的半字。对每个半字执行的平均运算将两个字相加并将结果右移1位。无符号平均使用逻辑右移而符号平均使用算术右移(符号位中的移位)。如果如果使用舍入选项,则在移位之前还将0x0001添加到每个结果。这操作不会溢出。如果求和(右移1之前)导致32位溢出,移入的值是最高有效进位。
符号平均和负平均半字可用,可选收敛四舍五入。在收敛舍入中,如果加/减后的两个LSB为11,则舍入常数为1,否则为0。然后将该结果右移一点。收敛舍入累积的误差小于算术舍入。
类别:XTYPE(插槽2、3)
笔记
■ 如果在执行此指令期间出现饱和(结果被箝位为设置状态寄存器中的OVF位。
OVF保持设置,直到通过传输到SR明确清除。
使用Rtt中的对应字节。对每个字节执行的平均操作是两个字节右移1位。如果使用了round选项,则还将为每个添加一个0x01换档前的结果。此操作不会溢出。在求和的情况下(右移1之前)导致8位溢出,移入的值是最高有效进位。
类别:XTYPE(插槽2、3)
将64位源向量Rss中的两个字中的每个字与对应的Rtt中的单词。对每个半字执行的平均运算将两个字相加,并将结果向右移位1位。无符号平均使用逻辑右移(0中的移位),而符号平均使用算术右移(符号位中的移位)。如果回合选项时,在移位之前,每个结果也会添加一个0x1。此操作不会:溢流如果求和(右移1之前)导致溢出32位,移入的值是最高有效进位。
符号平均和负平均字可用,可选收敛四舍五入。在收敛舍入中,如果加/减后的两个LSB为11,则舍入常数为1,否则为0。然后将该结果右移一点。收敛舍入累积的误差小于算术舍入。
笔记
■ 如果在执行此指令期间出现饱和(结果被箝位为设置状态寄存器中的OVF位。
OVF保持设置,直到通过传输到SR明确清除
基于Rt中的位,有条件地对Rss中的一半求反。
类别:XTYPE(插槽2、3)
笔记
■ 如果在执行此指令期间出现饱和(结果被箝位为设置状态寄存器中的OVF位。
OVF保持设置,直到通过传输到SR明确清除。
将64位源向量Rss中的八个无符号字节与Rtt中的对应字节。对于每个比较,选择两个字节中的最大值,并将该字节放在Rdd中的相应位置。
类别:XTYPE(插槽2、3)
内部函数
编码
将64位源向量Rss中的四个半字中的每一个与对应的半字进行比较Rtt中的半字。对于每个比较,选择两个半字中的最大值并放置该半字位于Rdd中的相应位置。两者都有比较
签名和未签名表单。
类别:XTYPE(插槽2、3)
内部函数
查找Rxx[0]中的上一个最大值和中的两个值之间的最大值Rss。新最大值的地址存储在Rxx[1]中。
寄存器Rxx包含低位字中的最大值和该最大值的地址高字中的值。寄存器Rss包含两个字值的向量,寄存器Ru包含此数据的地址。
类别:XTYPE(插槽2、3)
内部函数
编码
将64位源向量Rss中的两个字中的每个字与相应的字进行比较在Rtt中。对于每个比较,选择两个单词中的最大值,并将该单词放入Rdd中的对应位置。
比较有符号和无符号两种形式
类别:XTYPE(插槽2、3)
内部函数
将64位源向量Rss中的八个无符号字节与Rtt中的对应字节。对于每个比较,选择两个字节和将该字节放在Rdd中的相应位置。
类别:XTYPE(插槽2、3)
笔记
■ 此指令生成的谓词不能用作.new谓词,也不能它是否可以自动与另一个谓词进行AND运算。
将64位源向量Rss中的四个半字中的每一个与对应的半字进行比较Rtt中的半字。对于每个比较,选择两个半字中的最小值并放置该半字位于Rdd中的相应位置。
比较有符号和无符号两种形式。
类别:XTYPE(插槽2、3)
内部函数
编码
找到Rxx[0]中前一个最小值和四个值之间的最小半字在Rss中。新最小值的地址存储在Rxx[1]中。
寄存器Rxx在低位字中包含一个最小值和该最小值的地址高字中的值。寄存器Rss包含四个半字值的向量,寄存器Ru包含此数据的地址。
查找Rxx[0]中的前一个最小值和中的两个值之间的最小值Rss。新最小值的地址存储在Rxx[1]中。
寄存器Rxx在低位字中包含一个最小值和该最小值的地址高字中的值。寄存器Rss包含两个字值的向量,寄存器Ru包含此数据的地址。
类别:XTYPE(插槽2、3)
内部函数
编码
将64位源向量Rss中的两个字中的每个字与相应的字进行比较在Rtt中。对于每个比较,选择两个单词中的最小值,并将该单词放入Rdd中的对应位置。
比较有符号和无符号两种形式。
类别:XTYPE(插槽2、3)
内部函数
编码
对于源向量Rss中的每个字节,减去源向量中的相应字节Rtt。取中间结果的绝对值,以及上面四个结果的总和把下面四个加在一起。可选地,将目标上下单词添加到这些后果在应用中,此指令用于确定两个向量之间的距离例如运动估计。
从相应的半字中减去64位矢量Rss中的四个半字在矢量Rtt中。
可选地,将每个16位加法饱和为有符号或无符号16位值。
对vsubh指令应用饱和将结果钳位到符号范围0x8000为0x7fff,而将饱和应用于vsubuh指令可确保无符号结果在0到0xffff的范围内。
当不需要饱和时,应使用vsubh。
类别:XTYPE(插槽2、3)
笔记
■ 如果在执行此指令期间出现饱和(结果被箝位为设置状态寄存器中的OVF位。OVF保持设置,直到通过传输到SR明确清除。
从矢量中的相应字节中减去64位矢量Rss中的八个字节Rtt。
可选地,将每个8位减法饱和为0到255之间的无符号值八个结果存储在目标寄存器Rdd中。
类别:XTYPE(插槽2、3)
笔记
■ 如果在执行此指令期间出现饱和(结果被箝位为设置状态寄存器中的OVF位。OVF保持设置,直到通过传输到SR明确清除。
从矢量中的相应单词中减去64位矢量Rss中的两个单词Rtt。
可选地,将每个32位减法饱和为0x8000_0000和0x7fff_ffff。两个字的结果存储在目标寄存器Rdd中。
类别:XTYPE(插槽2、3)
笔记
■ 如果在执行此指令期间出现饱和(结果被箝位为设置状态寄存器中的OVF位。OVF保持设置,直到通过传输到SR明确清除。