• Hexagon_V65_Programmers_Reference_Manual(27)


    11.2.9.21 从异常返回并解锁TLB

    RTEULOCK用于从中断或异常处理程序返回。此指令
    清除SSR中的EX位,并跳到ELR寄存器中指定的位置。
    在这里插入图片描述

    11.2.9.22 设置线程的中断掩码

    每个线程都包含一个IMASK寄存器,用于保存中断启用/禁用个中断为0-31。

    SETIMASK为谓词Pt的低位指示的线程写入IMASK。

    寄存器Rs包含要写入的32位掩码值。对于[0]之外的Pt值-NUM_THREADS-1],结果未定义。

    在这里插入图片描述

    类别:系统(插槽3)

    笔记

    ■ 此指令只能与ALU32或非浮点XTYPE分组

    说明书

    ■ 这是监视器级功能。如果在用户或来宾模式下执行

    发生错误或异常。

    编码

    在这里插入图片描述

    11.2.9.23 设置中断自动禁用

    寄存器Rs指定32位掩码,其中位0对应于最高优先级寄存器位31指的是最低优先级中断31。

    对于Rs中设置的位,设置IAD中的相应位。这将禁用中断。对于比特在Rs中清除,IAD中的相应位不受影响。
    在这里插入图片描述
    类别:系统(插槽3)

    笔记

    ■ 此指令只能与ALU32或非浮点XTYPE分组说明书

    ■ 这是监视器级功能。如果在用户或来宾模式下执行发生错误或异常。

    编码

    在这里插入图片描述

    11.2.9.24 开始线程

    Rs的低位指定线程掩码,其中位0对应于线程0定义位的数量取决于支持多少硬件线程。

    START为中指定的所有线程引发不可屏蔽的软件重置中断面具此中断会导致线程清除监控器状态中的所有可写位注册,然后跳转到EVB中指定地址的起始向量。典型的START用于在线程被STOP指令禁用后启动线程。

    在这里插入图片描述
    类别:系统(插槽3)

    笔记

    ■ 这是一个单独的指令。不得将其与其他指令分组小包裹

    ■ 这是监视器级功能。如果在用户或来宾模式下执行发生错误或异常。

    编码

    在这里插入图片描述

    11.2.9.25 停止线程

    停止使调用线程进入停止模式。

    停止模式是一种断电模式,在这种模式下,该线程的所有寄存器内容都应被关闭假设它丢失了。退出停止模式的唯一方法是通过重置中断。重置中断可以来自执行启动指令的另一个线程,也可以来自外部线程硬件复位信号。

    请注意,指令中未使用源寄存器Rs。它的存在是为了向后兼容性。

    在这里插入图片描述
    类别:系统(插槽3)

    笔记

    ■ 这是一个单独的指令。不得将其与其他指令分组小包裹

    ■ 这是监视器级功能。如果在用户或来宾模式下执行发生错误或异常。

    编码
    在这里插入图片描述

    11.2.9.26 软件中断

    寄存器Rs指定32位掩码,其中位0对应于最高优先级寄存器位31指的是最低优先级中断31。

    SWI使掩码中指示的中断升高。提供该指令因此线程可以非常快速地相互中断

    在这里插入图片描述
    类别:系统(插槽3)

    笔记

    ■ 此指令只能与ALU32或非浮点XTYPE分组说明书

    ■ 这是监视器级功能。如果在用户或来宾模式下执行发生错误或异常。

    编码
    在这里插入图片描述

    11.2.9.27 TLB读/写/探测操作

    管理软件可编程翻译后备缓冲区(TLB)。

    TLB Read(TLBR)指令在中指定的位置返回64位TLB条目寄存器Rs。结果写入64位目标寄存器对。

    TLB写入(TLBW)操作写入寄存器Rt指定的64位TLB条目具有寄存器对Rss的内容。

    TLB探测(TLBP)操作根据虚拟页码查找TLB与Rs[26:20]中提供的7位ASID一起包含在寄存器Rs[19:0]中。如果条目被找到并标记为有效,其索引放置在Rd中,否则Rd设置为0x8000_ 0000。

    TLB INVALIDE ASID(TLBINVASID)指令使具有全局位未设置,且ASID与Rs[26:20]操作数匹配。

    条件TLB Write(CTLBW)指令首先检查新条目是否正确与TLB中任何其他条目的虚拟地址范围重叠。重叠检查考虑页面大小和ASID。在重叠检查中条目强制为零,有效位强制为1。如果没有重叠,则条目为零并且目标寄存器被设置为0x8000_0000。否则,如果发生重叠,不写入TLB条目,重叠条目上的索引放置在Rd中。如果多个如果条目重叠,则返回值0xffff_ffff。

    TLB重叠检查(TLBOC)操作基于VPN页面查找TLB寄存器Rss中包含的ASID(与TLBW格式相同)。重叠检查考虑页面大小和ASID。在重叠检查中Rss条目强制为零,有效位强制为1。如果Rss条目与虚拟条目重叠在TLB中任何其他条目的地址范围内,放置重叠条目的索引在Rd中,否则Rd设置为0x8000_0000。如果多个条目重叠,则该值返回0xffff_ ffff。

    对于TLBOC和CTLBW,如果PPN[5:0]都为零,则行为未定义

    在这里插入图片描述

    类别:系统(插槽3)

    笔记

    ■ 这是一个单独的指令。不得将其与其他指令分组小包裹

    ■ 这是监视器级功能。如果在用户或来宾模式下执行发生错误或异常。

    编码

    在这里插入图片描述

    11.2.9.28 系统控制寄存器传输

    在监控寄存器和通用寄存器之间移动数据。

    寄存器可以作为32位单寄存器或64位对齐对移动。该图显示了系统控制寄存器及其寄存器字段编码。
    在这里插入图片描述
    类别:系统(插槽3)

    笔记

    ■ 这是监视器级功能。如果在用户或来宾模式下执行发生错误或异常。
    编码
    在这里插入图片描述

  • 相关阅读:
    TypeScript基础
    React中路由操作、页面跳转
    怎么制作gif动态图,静态图片转成动态图的方法分享!
    【网络安全产品】---网闸
    无人驾驶(移动机器人)路径规划之RRT与RRTStar算法及其matlab实现
    Tomcat+Maven+Servlet安装与部署
    感知机模型
    使用C语言实现静态链表
    我发现了计算机专业,能拉开很大差距的方式,计算机大一新生必看!
    【云原生】Docker-compose单机容器集群编排
  • 原文地址:https://blog.csdn.net/weixin_38498942/article/details/126401232