• 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
    在这里插入图片描述

  • 相关阅读:
    “五之链”第十六期沙龙活动在呆马科技成功举办
    新发现,新挑战,技术出海的机遇与挑战丨PingCAP DevCon 2022 出海专场
    霸占热搜!官方下场发放免单攻略,饿了么营销如何抓住“薅羊毛”心理?
    第二章:并行硬件和并行软件
    Python 10之异常模块包
    驱动开发:内核注册表增删改查
    mysql集群的主从复制搭建
    基于php食堂外卖系统
    阿里笔试——总结1
    【无标题】Test
  • 原文地址:https://blog.csdn.net/weixin_38498942/article/details/126759983