• Hexagon_V65_Programmers_Reference_Manual(43)


    11.10.6 XTYPE/PERM

    XTYPE/PERM 指令子类包括执行置换的指令。

    11.10.6.1 CABAC 解码箱(CABAC decode bin)

    这是支持 H.264 上下文自适应二进制算术编码 (CABAC) 的专用指令。

    在这里插入图片描述

    Class: XTYPE (slots 2,3)
    Notes
    此指令生成的谓词不能用作.new 谓词,也不能自动与另一个谓词进行AND’d。

    Encoding
    在这里插入图片描述

    11.10.6.2 饱和(Saturate)

    饱和单个标量值。

    sath 将带符号的 32 位数字饱和为带符号的 16 位数字,然后将其符号扩展回 32 位并放置在目标寄存器中。 结果的最小负值为 0xffff8000,最大正值为 0x00007fff。

    stuh 将带符号的 32 位数字饱和为无符号的 16 位数字,然后将其零扩展回 32 位并放置在目标寄存器中。 结果的最小值为0,最大值为0x0000ffff。

    satb 将带符号的 32 位数字饱和为带符号的 8 位数字,然后将其符号扩展回 32 位并放置在目标寄存器中。 结果的最小值为 0xffffff80,最大值为 0x0000007f。

    satub 将一个有符号的 32 位数字饱和为一个无符号的 8 位数字,该数字被零扩展回 32 位并放置在目标寄存器中。 结果的最小值为0,最大值为0x000000ff。

    在这里插入图片描述

    Class: XTYPE (slots 2,3)
    Notes
    如果在执行该指令期间发生饱和(结果被钳制为最大值或最小值),则设置状态寄存器中的 OVF 位。 OVF 保持设置,直到通过传输到 SR 明确清除。
    Intrinsics
    在这里插入图片描述

    Encoding
    在这里插入图片描述

    11.10.6.3 调配字节(Swizzle bytes)

    Swizzle 一个单词的字节。 该指令对于在小端格式和大端格式之间进行转换很有用。
    在这里插入图片描述

    Class: XTYPE (slots 2,3)
    Intrinsics
    在这里插入图片描述
    Encoding
    在这里插入图片描述

    11.10.6.4 矢量对齐(Vector align)

    对齐一个向量。 使用立即数或谓词寄存器的最低有效 3 位作为要对齐的字节数。 将 Rss 寄存器对右移此字节数。 用 Rtt 中最不重要的元素填充空出的位置。
    在这里插入图片描述

    Class: XTYPE (slots 2,3)
    Intrinsics

    在这里插入图片描述

    Encoding
    在这里插入图片描述
    在这里插入图片描述

    11.10.6.5 矢量舍入和打包(Vector round and pack)

    将常数 0x00008000 添加到 64 位源向量 Rss 中的每个字。 可以选择将此加法饱和到 32 位。 将结果的高半字打包到 32 位目标寄存器的相应半字中。

    在这里插入图片描述

    Class: XTYPE (slots 2,3)
    Notes
    如果在执行该指令期间发生饱和(结果被钳制为最大值或最小值),则设置状态寄存器中的 OVF 位。 OVF 保持设置,直到通过传输到 SR 明确清除。
    Intrinsics
    在这里插入图片描述

    Encoding
    在这里插入图片描述

    11.10.6.6 矢量饱和和打包(Vector saturate and pack)

    对于向量中的每个元素,将值饱和到下一个较小的大小。 VSATHUB 将有符号半字饱和到无符号字节,而 VSATHB 将有符号半字饱和到有符号字节。
    在这里插入图片描述
    在这里插入图片描述

    Class: XTYPE (slots 2,3)
    Notes
    如果在执行该指令期间发生饱和(结果被钳制为最大值或最小值),则设置状态寄存器中的 OVF 位。 OVF 保持设置,直到通过传输到 SR 明确清除。
    Intrinsics
    在这里插入图片描述

    Encoding
    在这里插入图片描述
    在这里插入图片描述

    11.10.6.7 无包矢量饱和(Vector saturate without pack)

    将源向量 Rss 的每个元素饱和到下一个较小的大小。 VSATHUB 将有符号半字饱和到无符号字节。 VSATWH 将有符号字饱和到有符号半字,而 VSATWUH 将有符号字饱和到无符号半字。 结果值以解包形式放置在目标寄存器 Rdd 中。
    在这里插入图片描述

    Class: XTYPE (slots 2,3)
    Notes
    如果在执行该指令期间发生饱和(结果被钳制为最大值或最小值),则设置状态寄存器中的 OVF 位。 OVF 保持设置,直到通过传输到 SR 明确清除。
    Intrinsics
    在这里插入图片描述

    Encoding
    在这里插入图片描述

  • 相关阅读:
    在线docker命令大全中文版
    ISL1208时钟芯片 Linux下 i2c 读写示例。
    CSS进阶(7)- 样式补充
    c#编程里面最复杂的技术问题有哪些
    如何通过SQL批量删除重复数据
    [随笔]Integer.parseInt转换二进制数为int整数异常
    mac的node版本安装及升降级
    Linux- 僵尸进程(Zombie Process)
    力扣(LeetCode)315. 计算右侧小于当前元素的个数(2022.11.12)
    新型双功能螯合剂NOTA及其衍生物CAS号:147597-66-8p-SCN-Bn-NOTA
  • 原文地址:https://blog.csdn.net/weixin_38498942/article/details/126759983