-
公开(公告)号:CN109196468A
公开(公告)日:2019-01-11
申请号:CN201780026337.1
申请日:2017-04-25
申请人: 微软技术许可有限责任公司
摘要: 公开了用于实现包括现场可编程门阵列(FPGA)实现的、具有定制功能块的基于块的处理器的装置和方法。在所公开的技术的一些示例中,一种动态可配置调度器被配置为发出至少一个基于块的处理器指令。定制功能块被配置为接收针对指令的输入操作数,并且生成指示由相应定制功能块针对指令执行的计算的完成的就绪状态数据。
-
公开(公告)号:CN109074260A
公开(公告)日:2018-12-21
申请号:CN201780026331.4
申请日:2017-04-25
申请人: 微软技术许可有限责任公司
IPC分类号: G06F9/38
摘要: 公开了用于实现包括现场可编程门阵列实现的基于块的处理器的装置和方法。在所公开的技术的一个示例中,基于块的处理器包括被配置为针对指令的事务块生成译码的就绪依赖性的指令译码器,其中指令中的每个指令与编码在事务块中的不同指令标识符相关联。处理器还包括被配置为从指令的事务块的集合乱序地发出指令的指令调度器。指令基于确定针对指令的译码的就绪状态依赖性被满足而被发出。确定包括访问具有译码的就绪依赖性的存储装置,该译码的就绪依赖性利用被编码在指令的事务块中的相应指令标识符而被索引。
-
公开(公告)号:CN109478140A
公开(公告)日:2019-03-15
申请号:CN201780044374.5
申请日:2017-07-20
申请人: 微软技术许可有限责任公司
IPC分类号: G06F9/38
CPC分类号: G06F9/3855 , G06F9/30043 , G06F9/3016 , G06F9/3802 , G06F9/3834 , G06F9/3859
摘要: 公开了与乱序处理器架构相关的技术。在所公开的技术的一个示例中,处理器包括解码逻辑和发布逻辑。解码逻辑被配置为解码指令块的存储掩码。指令块可以包括加载指令和存储指令。每个加载指令和存储指令包括指定指令块内的加载指令或存储指令的相对程序次序的标识符。存储掩码标识指令块的程序次序内的存储指令的位置。发布逻辑被配置为脱离程序次序地发布指令块中的至少一个指令。发布逻辑可以被配置为使用经解码的存储掩码,以仅在已经发布在加载指令之前的所有存储指令之后才发布加载指令。
-
公开(公告)号:CN109074261B
公开(公告)日:2023-06-23
申请号:CN201780026354.5
申请日:2017-04-25
申请人: 微软技术许可有限责任公司
IPC分类号: G06F9/38
摘要: 公开了用于实现用于包括现场可编程门阵列实现的乱序的基于块的处理器的增量调度器的装置和方法。在所公开的技术的一个示例中,处理器包括指令调度器,该指令调度器通过将一个或多个查找表RAM配置为存储针对指令块中的多个指令的就绪状态数据而形成。指令调度器还包括存储针对处理器的就绪状态数据的多个队列,并且在先进先出的基础上将依赖性信息发送到就绪确定逻辑。指令调度器选择就绪指令中的一个或多个以被发出并且由基于块的处理器执行。
-
公开(公告)号:CN109074260B
公开(公告)日:2023-05-05
申请号:CN201780026331.4
申请日:2017-04-25
申请人: 微软技术许可有限责任公司
IPC分类号: G06F9/38
摘要: 公开了用于实现包括现场可编程门阵列实现的基于块的处理器的装置和方法。在所公开的技术的一个示例中,基于块的处理器包括被配置为针对指令的事务块生成译码的就绪依赖性的指令译码器,其中指令中的每个指令与编码在事务块中的不同指令标识符相关联。处理器还包括被配置为从指令的事务块的集合乱序地发出指令的指令调度器。指令基于确定针对指令的译码的就绪状态依赖性被满足而被发出。确定包括访问具有译码的就绪依赖性的存储装置,该译码的就绪依赖性利用被编码在指令的事务块中的相应指令标识符而被索引。
-
公开(公告)号:CN109074259A
公开(公告)日:2018-12-21
申请号:CN201780026326.3
申请日:2017-04-25
申请人: 微软技术许可有限责任公司
IPC分类号: G06F9/38
CPC分类号: G06F9/3836 , G06F9/3005 , G06F9/3016 , G06F9/3017 , G06F9/30181 , G06F9/30185 , G06F9/3802 , G06F9/3818 , G06F9/3834 , G06F9/3838 , G06F9/3855 , G06F9/3873 , G06F9/3885 , G06F9/3889 , G06F9/3897 , G06F12/0875 , G06F15/7867
摘要: 公开了用于实现包括现场可编程门阵列(FPGA)实现的基于块的处理器的装置和方法。在所公开的技术的一个示例中,指令译码器被配置为针对指令块中的指令集生成就绪状态数据,指令集中的每个指令与编码在事务块中的不同指令标识符相关联,并且并行指令调度器被配置为基于译码的就绪状态数据而从指令集发出指令。在一些示例中,并行指令调度器允许根据可用的FPGA部件的大小和类型的改进的面积和能量节省。
-
公开(公告)号:CN107810480B
公开(公告)日:2022-01-25
申请号:CN201680036587.9
申请日:2016-06-23
申请人: 微软技术许可有限责任公司
IPC分类号: G06F9/38
摘要: 公开了用于节制基于块的处理器架构中的处理器操作的装置和方法。在所公开的技术的一个示例中,基于块的指令集架构处理器包括被配置为提取和执行指令块的序列的多个处理内核。每个处理内核包括用于执行由指令块指定的操作的功能资源。处理器还包括被配置为分配功能资源用于执行操作的内核调度器。功能资源至少部分地基于性能度量被分配用于执行指令块。性能度量可以动态地或静态地基于分支预测准确度、能量使用容限和其他合适的度量而被生成。
-
公开(公告)号:CN107810483B
公开(公告)日:2021-06-18
申请号:CN201680037473.6
申请日:2016-06-23
申请人: 微软技术许可有限责任公司
IPC分类号: G06F9/38
摘要: 公开了用于在基于块的处理器架构中实现不良跳跃检测的装置和方法。在所公开的技术的一个示例中,基于块的处理器包括:被配置为取回和执行原子指令块的一个或多个基于块的处理内核;以及被配置为至少部分基于接收到指示从指令块之一接收到目标位置的跳转信号来验证目标位置是有效跳转目标的控制单元。
-
公开(公告)号:CN109564508A
公开(公告)日:2019-04-02
申请号:CN201780047328.0
申请日:2017-07-21
申请人: 微软技术许可有限责任公司
CPC分类号: G06F9/30043 , G06F9/30101 , G06F9/30116 , G06F9/30141 , G06F9/3016 , G06F9/3828 , G06F9/3842 , G06F9/3859
摘要: 公开了与基于块的处理器架构的寄存器文件有关的技术。在所公开的技术的一个示例中,包括事务寄存器文件和执行单元的处理器核可用于执行指令块。事务寄存器文件可以包括多个寄存器,其中每个寄存器包括前一值字段和下一值字段。在接收到寄存器写消息并且处理器核处于第一状态时,可以更新前一值字段。在接收到寄存器写消息并且处理器核处于第二状态时,可以更新下一值字段。执行单元可以执行指令块的指令。执行单元可以被配置为从前一值字段读寄存器值并且在执行写入寄存器的指令时使寄存器写消息从处理器核被发送。
-
公开(公告)号:CN107810480A
公开(公告)日:2018-03-16
申请号:CN201680036587.9
申请日:2016-06-23
申请人: 微软技术许可有限责任公司
IPC分类号: G06F9/38
CPC分类号: G06F12/0833 , G06F9/30043 , G06F9/30047 , G06F9/3804 , G06F9/3806 , G06F9/381 , G06F9/382 , G06F9/3826 , G06F9/3828 , G06F9/3836 , G06F9/3838 , G06F9/3842 , G06F9/3846 , G06F9/3851 , G06F9/3853 , G06F9/3869 , G06F9/3891 , G06F11/30 , G06F12/128 , G06F2212/621
摘要: 公开了用于节制基于块的处理器架构中的处理器操作的装置和方法。在所公开的技术的一个示例中,基于块的指令集架构处理器包括被配置为提取和执行指令块的序列的多个处理内核。每个处理内核包括用于执行由指令块指定的操作的功能资源。处理器还包括被配置为分配功能资源用于执行操作的内核调度器。功能资源至少部分地基于性能度量被分配用于执行指令块。性能度量可以动态地或静态地基于分支预测准确度、能量使用容限和其他合适的度量而被生成。
-
-
-
-
-
-
-
-
-