Hexagon_V65_Programmers_Reference_Manual(31)

Hexagon_V65_Programmers_Reference_Manual(31)

  • 11.10.1.17减去双字
  • 11.10.1.18 减法和累加单词
  • 11.10.1.19 减半字
  • 11.10.1.20 符号扩展字到双字
  • 11.10.1.21 半字的矢量绝对值
  • 11.10.1.22 矢量绝对值词
  • 11.10.1.23 矢量绝对差字节
  • 11.10.1.24 矢量绝对差半字
  • 11.10.1.25 矢量绝对差分词
  • 11.10.1.26 矢量添加、比较和选择最大字节数
  • 11.10.1.27 矢量添加、比较和选择最大半字
  • 11.10.1.28 矢量加半字
  • 11.10.1.29 向量:将半字与饱和并打包到无符号字节
  • 11.10.1.30 矢量减少和添加无符号字节
  • 11.10.1.31 向量减少和添加半字
  • 11.10.1.32 矢量添加字节
  • 11.10.1.33 矢量加词

11.10.1.17减去双字

从寄存器Rtt中减去64位寄存器Rss。
在这里插入图片描述
类别:XTYPE(插槽2、3)

笔记

■ 如果在执行此指令期间出现饱和(结果被箝位为设置状态寄存器中的OVF位。

OVF保持设置,直到通过传输到SR明确清除。

内部函数
在这里插入图片描述
编码
Hexagon_V65_Programmers_Reference_Manual(31)_第1张图片

11.10.1.18 减法和累加单词

从Rt中减去Rs,然后将所得值与Rx相加。结果保存在Rx中。
在这里插入图片描述
类别: XTYPE (slots 2,3)
内部函数
在这里插入图片描述

编码

Hexagon_V65_Programmers_Reference_Manual(31)_第2张图片

11.10.1.19 减半字

使用可选饱和度执行16位减法运算,并将结果放入上限或寄存器的下半部分。如果结果在上半部分,则源可以是任何高或Rs和Rt的低半字。结果的低16位置零。
如果将结果放在Rd的低16位,Rs源可以是高或低,但另一个源必须是Rt的低半字。在这种情况下,上半字Rd的符号扩展是低半字的符号扩展。

Hexagon_V65_Programmers_Reference_Manual(31)_第3张图片
类别:XTYPE(插槽2、3)

笔记

■ 如果在执行此指令期间出现饱和(结果被箝位为 设置状态寄存器中的OVF位。

OVF保持设置,直到通过传输到SR明确清除

内部函数
Hexagon_V65_Programmers_Reference_Manual(31)_第4张图片
编码
Hexagon_V65_Programmers_Reference_Manual(31)_第5张图片

11.10.1.20 符号扩展字到双字

将32位字符号扩展为64位双字。

在这里插入图片描述
类型: XTYPE (slots 2,3)
内部函数
在这里插入图片描述
编码
Hexagon_V65_Programmers_Reference_Manual(31)_第6张图片

11.10.1.21 半字的矢量绝对值

取64位源向量Rss中四个半字的绝对值。位置Rdd中的结果。

饱和是可选的。

Hexagon_V65_Programmers_Reference_Manual(31)_第7张图片
类别:XTYPE(插槽2、3)

笔记

■ 如果在执行此指令期间出现饱和(结果被箝位为设置状态寄存器中的OVF位。

OVF保持设置,直到通过传输到SR明确清除。

内部函数
在这里插入图片描述
Hexagon_V65_Programmers_Reference_Manual(31)_第8张图片

11.10.1.22 矢量绝对值词

取64位源向量Rss中两个字的绝对值。放置导致Rdd。

饱和是可选的。

Hexagon_V65_Programmers_Reference_Manual(31)_第9张图片
类别:XTYPE(插槽2、3)

笔记

■ 如果在执行此指令期间出现饱和(结果被箝位为

设置状态寄存器中的OVF位。

OVF保持设置,直到通过传输到SR明确清除。

内部函数
在这里插入图片描述

编码
Hexagon_V65_Programmers_Reference_Manual(31)_第10张图片

11.10.1.23 矢量绝对差字节

对于源向量Rss中的每个元素,减去源中的相应元素向量Rtt。取结果的绝对值,并存储到Rdd中。
Hexagon_V65_Programmers_Reference_Manual(31)_第11张图片
类别: XTYPE (slots 2,3)
内部函数
在这里插入图片描述
编码

Hexagon_V65_Programmers_Reference_Manual(31)_第12张图片

11.10.1.24 矢量绝对差半字

对于源向量Rss中的每个元素,减去源中的相应元素向量Rtt。取结果的绝对值,并存储到Rdd中。
在这里插入图片描述类别: XTYPE (slots 2,3)
内部函数

在这里插入图片描述

编码

Hexagon_V65_Programmers_Reference_Manual(31)_第13张图片

11.10.1.25 矢量绝对差分词

对于源向量Rss中的每个元素,减去源中的相应元素向量Rtt。取结果的绝对值,并存储到Rdd中。
在这里插入图片描述
类别: XTYPE (slots 2,3)
内部函数
在这里插入图片描述
编码
Hexagon_V65_Programmers_Reference_Manual(31)_第14张图片

11.10.1.26 矢量添加、比较和选择最大字节数

将Rxx和Rtt中的每个字节元素相加,并将所得和与Rss和Rtt之间的对应差异。存储每个的最大值在Rxx中进行比较,如果如果不是,则比较结果大于“0”。每个和和和差在之前饱和到8位比较和比较操作是有符号字节比较。
Hexagon_V65_Programmers_Reference_Manual(31)_第15张图片

11.10.1.27 矢量添加、比较和选择最大半字

将Rxx和Rtt中的每个半字元素相加,并将所得和与Rss和Rtt之间的对应差异。存储每个的最大值在Rxx中进行比较,如果如果不是,则比较结果大于“00”。每个和和和差在之前饱和到16位比较和比较操作是有符号半字比较。

Hexagon_V65_Programmers_Reference_Manual(31)_第16张图片
类别:XTYPE(插槽2、3)

笔记

■ 此指令生成的谓词不能用作.new谓词,也不能它是否可以自动与另一个谓词进行AND运算。

■ 如果在执行此指令期间出现饱和(结果被箝位为设置态寄存器中的OVF位。

OVF保持设置,直到通过传输到SR明确清除。

编码
Hexagon_V65_Programmers_Reference_Manual(31)_第17张图片

11.10.1.28 矢量加半字

将64位矢量Rss中的四个半字中的每一个添加到中的相应半字向量Rtt。

可选地,将每个16位加法饱和为有符号或无符号16位值
对vaddh指令应用饱和将结果钳位到符号范围0x8000为0x7fff,而对vadduh指令应用饱和可确保无符号结果在0到0xffff的范围内。当不需要饱和时,vaddh形式应该使用。

有关此矢量运算的32位版本,请参阅ALU32指令。
Hexagon_V65_Programmers_Reference_Manual(31)_第18张图片
类别:XTYPE(插槽2、3)

笔记

■ 如果在执行此指令期间出现饱和(结果被箝位为

设置状态寄存器中的OVF位。

OVF保持设置,直到通过传输到SR明确清除。

内部函数
在这里插入图片描述
编码

Hexagon_V65_Programmers_Reference_Manual(31)_第19张图片

11.10.1.29 向量:将半字与饱和并打包到无符号字节

将Rss的四个16位半字添加到Rtt的四个十六位半字。结果如下:

饱和为无符号8位,并打包在目标寄存器Rd中。
在这里插入图片描述
类别:XTYPE(插槽2、3)

笔记

■ 如果在执行此指令期间出现饱和(结果被箝位为设置状态寄存器中的OVF位。

OVF保持设置,直到通过传输到SR明确清除。

内部函数
在这里插入图片描述

编码
Hexagon_V65_Programmers_Reference_Manual(31)_第20张图片

11.10.1.30 矢量减少和添加无符号字节

对于源向量Rss中的每个字节,在源向量Rtt中添加相应的字节。

添加四个上中间结果,并可选地添加目标的上单词。

添加四个较低的结果,并可选地添加目标的较低单词。
Hexagon_V65_Programmers_Reference_Manual(31)_第21张图片
类别: XTYPE (slots 2,3)
内部函数
在这里插入图片描述
编码
Hexagon_V65_Programmers_Reference_Manual(31)_第22张图片

11.10.1.31 向量减少和添加半字

对于源向量Rss中的每个半字,在源中添加相应的半字向量Rtt。将这些中间结果相加,并将结果放在Rd中。
Hexagon_V65_Programmers_Reference_Manual(31)_第23张图片类别: XTYPE (slots 2,3)

内部函数
在这里插入图片描述

编码
Hexagon_V65_Programmers_Reference_Manual(31)_第24张图片

11.10.1.32 矢量添加字节

将64位矢量Rss中的八个字节中的每个字节添加到矢量Rtt中的相应字节。

可选地,将每个8位加法饱和为0到255之间的无符号值

结果存储在目标寄存器Rdd中。
Hexagon_V65_Programmers_Reference_Manual(31)_第25张图片
类别: XTYPE (slots 2,3)

内部函数
在这里插入图片描述
编码
Hexagon_V65_Programmers_Reference_Manual(31)_第26张图片

11.10.1.33 矢量加词

将64位矢量Rss中的两个单词中的每一个添加到矢量Rtt中的相应单词。

可选地,将每个32位加法饱和为0x8000000和

0x7FFFFF。两个字的结果存储在目标寄存器Rdd中。
在这里插入图片描述
类别:XTYPE(插槽2、3)

笔记

■ 如果在执行此指令期间出现饱和(结果被箝位为设置状态寄存器中的OVF位。

OVF保持设置,直到通过传输到SR明确清除。

内部函数
在这里插入图片描述
Hexagon_V65_Programmers_Reference_Manual(31)_第27张图片

你可能感兴趣的:(笔记,dsp开发,嵌入式硬件)