非显而易见性评估仅供参考,不构成法律建议。
| 编号 | 名称 |
|---|
一种使用锁定指示器管理多线程处理器的共享资源的方法,其包括:接收与所述多线程处理器的第一线程相关联的翻译旁视缓冲器TLB未中事件; 检查TLB锁定指示器,其中所述TLB锁定指示器包含存储在全局控制寄存器处的位; 响应于所述TLB锁定指示器指示未锁定状态而允许所述第一线程存取与TLB相关联的异常处置器;以及响应于所述TLB锁定指示器指示锁定状态而: 使所述第一线程休眠,其中由休眠模式电路响应于接收到来自控制电路的休眠指令而使所述第一线程休眠; 使所述TLB锁定指示器从所述锁定状态转变为所述未锁定状态,其中所述TLB锁定指示器不从所述锁定状态转变为所述未锁定状态直到指示异常已被处置;以及响应于所述TLB锁定指示器从所述锁定状态转变为所述未锁定状态而重放导致所述TLB未中事件的包的执行。
根据权利要求1所述的方法,其进一步包括当允许存取时将所述TLB锁定指示器设定为所述锁定状态。
根据权利要求1所述的方法,其中所述TLB包括软件管理的TLB。
根据权利要求1所述的方法,其进一步包括: 计算与所述TLB未中事件有关的结果; 将所述结果编程到所述TLB中;以及 将所述TLB锁定指示器设定为所述未锁定状态。
根据权利要求4所述的方法,其进一步包括在从所述异常处置器返回后即刻自动将所述TLB锁定指示器设定为所述未锁定状态。
根据权利要求1所述的方法,其中所述异常处置器将所述TLB锁定指示器设定为所述锁定状态。
一种使用锁定指示器管理多线程处理器的共享资源的方法,其包括:接收与所述多线程处理器的线程相关联的翻译旁视缓冲器TLB未中事件,所述线程具有对共享翻译旁视缓冲器TLB的存取权; 读取TLB锁定指示器,且响应于所述TLB锁定指示器指示锁定状态而使所述线程休眠,其中所述TLB锁定指示器包含存储在全局控制寄存器处的位,且其中由休眠模式电路响应于接收到来自控制电路的休眠指令而使所述线程休眠; 响应于接收到指令而唤醒所述线程;以及 响应于所述TLB锁定指示器从所述锁定状态转变为未锁定状态而重放导致所述TLB未中事件的指令包的执行,其中所述TLB锁定指示器不从所述锁定状态转变为所述未锁定状态直到指示异常已被处置。
根据权利要求7所述的方法,其中在第一时间周期期间为第一线程保留所述TLB,且其中在第二时间周期期间为第二线程保留所述TLB,且其中在所述第一时间周期和所述第二时间周期期间将第三线程置于休眠。
根据权利要求8所述的方法,其中在第三时间周期期间唤醒所述第三线程。
根据权利要求8所述的方法,其进一步包括,在唤醒所述第三线程之后,重放在所述第三线程被置于休眠之前所述第三线程所执行的指令包的执行。
一种使用锁定指示器管理多线程处理器的共享资源的系统,其包括:翻译旁视缓冲器TLB,其由所述多线程处理器的多个处理线程共享; 所述多线程处理器的全局控制寄存器中的TLB锁定位;以及控制逻辑电路,其经配置以: 响应于所述TLB锁定位具有锁定配置而: 响应于检测到与所述多个处理线程中的第一线程相关联的第一TLB未中事件而向休眠模式电路发送休眠指令以使所述第一线程休眠,使所述TLB锁定位从所述锁定配置转变为未锁定配置,其中所述TLB锁定位不从所述锁定配置转变为所述未锁定配置直到指示异常已被处置;以及响应于所述TLB锁定位从所述锁定配置转变为所述未锁定配置而重放导致所述第一TLB未中事件的执行包。
根据权利要求11所述的系统,其中所述第一TLB未中事件与所述第一线程的所述执行包相关联,且其中所述控制逻辑电路进一步经配置以存储所述执行包,且在所述第一线程被置于休眠时不递增与所述第一线程相关联的程序计数器。
根据权利要求11所述的系统,其中响应于所述第一TLB未中事件而在不启动异常处置器的情况下使所述第一线程休眠。
根据权利要求11所述的系统,其中所述控制逻辑电路进一步经配置以将所述TLB锁定位设定为所述锁定配置,且同时响应于所述TLB锁定位具有所述未锁定配置而起始与所述第一TLB未中事件相关联的异常处置器。
根据权利要求14所述的系统,其中所述TLB锁定位经配置以由所述控制逻辑电路设定为所述锁定配置。
根据权利要求11所述的系统,其中所述控制逻辑电路经配置以在所述多个处理线程中的第二线程响应于第二TLB未中事件也被置于休眠时,存储指示用以唤醒所述第一线程的次序的数据。
根据权利要求16所述的系统,其中所述指示用以唤醒所述第一线程的所述次序的数据存储在先入先出(FIFO)缓冲器中。
一种使用锁定指示器管理多线程处理器的共享资源的方法,其包括:处置与由所述多线程处理器的多个线程共享的资源相关联的异常; 在所述异常已被处置之前,将与所述资源相关联的硬件锁定设定为锁定状态;以及响应于所述硬件锁定指示所述锁定状态而:响应于由所述多个线程中的第一线程导致的与所述资源相关联的异常而使所述第一线程休眠,其中由休眠模式电路响应于接收到来自控制逻辑电路的休眠指令而使所述第一线程休眠; 使所述硬件锁定从所述锁定状态转变为未锁定状态,其中所述硬件锁定不从所述锁定状态转变为所述未锁定状态直到指示异常已被处置;以及响应于所述硬件锁定从所述锁定状态转变为所述未锁定状态而由所述第一线程重放导致与所述资源相关联的所述异常的指令包的执行。
根据权利要求18所述的方法,其中由所述多线程处理器的所述多个线程共享的所述资源是所述多线程处理器的核心存储器资源。
根据权利要求19所述的方法,其中所述核心存储器资源是翻译旁视缓冲器TLB,且其中所述异常由TLB未中导致。
根据权利要求18所述的方法,其中所述硬件锁定包含全局控制寄存器的至少一个位。
一种使用锁定指示器管理多线程处理器的共享资源的系统,其包括:用于存储指示所述多线程处理器中的共享资源的锁定状态的位的装置; 用于在处理异常处置指令之前自动将所述共享资源设定为已锁定状态以处置与所述共享资源相关联的处理异常的装置; 用于保存线程的状态的装置; 用于响应于在所述共享资源的所述锁定状态指示所述已锁定状态时接收到来自控制电路的休眠指令而在所述线程的所述状态已被保存之后使所述线程休眠的装置; 用于将所述共享资源的所述锁定状态设定为未锁定状态的装置,其中所述共享资源的所述锁定状态不设定为未锁定状态直到指示异常已被处置;以及用于响应于所述共享资源的所述锁定状态从所述已锁定状态转变为所述未锁定状态而重放导致与所述共享资源相关联的所述处理异常的指令包的执行的装置。