多线程自调度处理器制造技术

技术编号:26734707 阅读:39 留言:0更新日期:2020-12-15 14:43
本发明专利技术揭示用于自调度处理器的代表性设备、方法和系统实施例,所述自调度处理器还提供额外功能性。代表性实施例包含自调度处理器,其包括:处理器核心,其用于执行接收到的指令;以及核心控制电路,其用于响应于接收到的工作描述符数据包而自动调度指令以供所述处理器核心执行。在另一实施例中,所述核心控制电路还用于调度纤程创建指令以供所述处理器核心执行,在线程控制存储器中保留预定量的存储器空间以存储返回变量参数,并且生成到另一处理器或混合线程组构电路的一或多个工作描述符数据包以用于执行对应的多个执行线程。本发明专利技术还揭示事件处理、数据路径管理、系统调用、存储器请求和其它新指令。

【技术实现步骤摘要】
【国外来华专利技术】多线程自调度处理器相关申请案的交叉引用本申请案主张专利技术人TonyM.Brewer在2019年4月30日提交的标题“多线程自调度处理器(Multi-Threaded,Self-SchedulingProcessor)”的美国专利申请案第16/399,588号的权益和优先权,所述美国专利申请案是专利技术人TonyM.Brewer在2018年5月7日提交的标题“多线程自调度处理器(Multi-Threaded,Self-SchedulingProcessor)”的美国临时专利申请案第62/667,666号的非临时申请且主张其权益和优先权,所述专利申请案共同受让于此且全部特此以全文引用的方式并入本文中就如同其全部内容在本文中阐述一般具有相同的完整效力和效果(在下文被称为“相关申请案”)。
本专利技术大体涉及可配置计算电路系统,且更具体地说,涉及包含自调度处理器的异构计算系统,其为一种具有嵌入式互连网络、动态重新配置和对能耗或功耗的动态控制的可配置计算电路系统。
技术介绍
大多现有计算系统在计算处理能力上在计算速度、能量(或功率)消费以及相关联热消散方面受到显著限制。举例来说,由于对先进计算技术的需求不断增长,例如以便适应人工智能和其它重要计算应用程序,现有的计算解决方案已变得越来越不足。因此,当前需要一种能够使用稀疏数据集提供高性能的计算架构,其涉及有限的数据重复使用或没有数据重复使用,这通常会导致较差的缓存命中率。这类计算架构应容忍对存储器的时延,并允许每时钟执行指令数持续为高。当前还需要能够为计算密集型内核提供高性能节能解决方案的计算架构,例如,以便计算用于传感、通信和分析应用程序的快速傅立叶变换(FFT)和有限脉冲响应(FIR)滤波器,例如合成孔径雷达、5G基站和图形分析应用程序,如使用光谱技术的图形聚类、机器学习、5G联网算法和大型模具代码,但不限于此。当前还需要能够进行大量并行处理并且进一步与可配置计算架构交互并且控制可配置计算架构以进行这些各种应用程序中的任一者的处理器架构。
技术实现思路
如下文更详细地论述,代表性设备、系统和方法提供能够为计算密集型核提供高性能和节能解决方案的计算架构,例如,以便计算用于传感、通信和分析应用的快速傅立叶变换(FFT)和有限脉冲响应(FIR)滤波器,例如合成孔径雷达、5G基站和图形分析应用程序,例如使用光谱技术的图形聚类、机器学习、5G联网算法和大型模具代码,但不限于此。如上文所提及,稀疏数据集通常会导致较差的缓存命中率。代表性设备、系统和方法提供一种能够允许一些线程等待来自存储器的响应而其它线程继续执行指令的计算架构。此样式的计算容忍对存储器的时延,并允许每时钟执行指令持续为高。还如下文更详细地论述,代表性设备、系统和方法提供一种处理器架构,其能够进行自调度、大量并行处理并且进一步与可配置计算架构交互并且控制可配置计算架构以进行这些各种应用程序中的任一者的处理器架构。公开一种自调度处理器。在代表性实施例中,处理器包括:处理器核心,其用于执行接收到的指令;以及核心控制电路,其耦合到处理器核心,核心控制电路用于响应于接收到的工作描述符数据包而自动调度指令以供处理器核心执行。在另一代表性实施例中,处理器包括:处理器核心,其用于执行接收到的指令;以及核心控制电路,其耦合到处理器核心,核心控制电路用于响应于接收到的事件数据包而自动调度指令以供处理器核心执行。还公开一种多线程自调度处理器,其可在本地或远程计算元件上创建线程。在代表性实施例中,处理器包括:处理器核心,其用于执行纤程创建指令;以及核心控制电路,其耦合到处理器核心,核心控制电路用于自动调度纤程创建指令以供处理器核心执行并且生成到另一处理器或混合线程组构电路的一或多个工作描述符数据包以供对应的多个执行线程执行。在另一代表性实施例中,处理器包括:处理器核心,其用于执行纤程创建指令;以及核心控制电路,其耦合到处理器核心,核心控制电路用于调度纤程创建指令以供处理器核心执行,以在线程控制存储器中保留预定量的存储器空间以存储返回便良参数,并且生成到另一处理器或混合线程组构电路的一或多个工作描述符数据包以供对应的多个执行线程执行。在另一代表性实施例中,一种处理器包括:核心控制电路,其包括:互连网络接口;线程控制存储器,其耦合到互连网络接口;执行队列,其耦合到线程控制存储器;控制逻辑和线程选择电路,其耦合到执行队列和线程控制存储器;以及指令缓存,其耦合到控制逻辑和线程选择电路;并且处理器进一步包括处理器核心,其耦合到核心控制电路的指令缓存。在另一代表性实施例中,一种处理器包括:核心控制电路,其包括:互连网络接口;线程控制存储器,其耦合到互连网络接口;网络响应存储器;执行队列,其耦合到线程控制存储器;控制逻辑和线程选择电路,其耦合到执行队列和线程控制存储器;指令缓存,其耦合到控制逻辑和线程选择电路;以及命令队列;处理器进一步包括处理器核心,其耦合到指令缓存和核心控制电路的命令队列。在另一代表性实施例中,一种处理器包括:处理器核心和耦合到处理器核心的核心控制电路,其中核心控制电路包括:互连网络接口,其可耦合到互连网络以接收工作描述符数据包、将接收到的工作描述符数据包解码成具有初始程序计数和任何接收到的变量参数的执行线程;执行队列,其耦合到线程控制存储器;以及控制逻辑和线程选择电路,其耦合到执行队列,控制逻辑和线程选择电路用于将可用线程标识符指配到执行线程,自动将线程标识符放置在执行队列中,以及周期性地选择线程标识符以执行执行线程。在另一代表性实施例中,一种处理器包括:处理器核心和耦合到处理器核心的核心控制电路,其中核心控制电路包括:互连网络接口,其可耦合到互连网络以接收工作描述符数据包、将接收到的工作描述符数据包解码成具有初始程序计数和任何接收到的变量参数的执行线程;执行队列,其耦合到线程控制存储器;以及控制逻辑和线程选择电路,其耦合到执行队列,控制逻辑和线程选择电路用于将可用线程标识符指配到执行线程,自动将线程标识符放置在执行队列中,以及周期性地选择线程标识符以供处理器核心执行执行线程的指令。在另一代表性实施例中,一种处理器包括:处理器核心和耦合到处理器核心的核心控制电路,其中核心控制电路包括:执行队列,其耦合到线程控制存储器;以及控制逻辑和线程选择电路,其耦合到执行队列,控制逻辑和线程选择电路用于将可用线程标识符指配到执行线程,自动将线程标识符放置在执行队列中,以及周期性地选择线程标识符以供处理器核心执行执行线程的指令。在另一代表性实施例中,一种处理器包括:处理器核心和耦合到处理器核心的核心控制电路,其中核心控制电路包括:线程控制存储器,其包括多个寄存器,多个寄存器包括存储多个线程标识符的线程标识符池寄存器、存储接收到的程序计数的程序计数寄存器、数据缓存和存储接收到的变量参数的通用寄存器;执行队列,其耦合到线程控制存储器;以及控制逻辑和线程选择电路,其耦合到执行队列,控制逻辑和线程选择电路用于将可用线程标识符指配给执行线程,自动将线程标识符放置在本文档来自技高网
...

【技术保护点】
1.一种处理器,其包括:/n处理器核心,其用于执行多个指令;以及/n核心控制电路,其耦合到所述处理器核心,所述核心控制电路包括:/n线程控制存储器,其包括多个寄存器,所述多个寄存器包括存储多个线程标识符的线程标识符池寄存器、存储接收到的程序计数的程序计数寄存器、数据缓存和存储接收到的变量参数的通用寄存器;/n执行队列,其耦合到所述线程控制存储器;以及/n控制逻辑和线程选择电路,其耦合到所述执行队列,所述控制逻辑和线程选择电路用于将可用线程标识符指配到执行线程,自动将所述线程标识符放置在所述执行队列中,以及周期性地选择所述线程标识符以供所述处理器核心执行所述多个指令中的所述执行线程的指令,所述处理器核心使用存储在所述数据缓存或通用寄存器中的数据。/n

【技术特征摘要】
【国外来华专利技术】20180507 US 62/667,666;20190430 US 16/399,5881.一种处理器,其包括:
处理器核心,其用于执行多个指令;以及
核心控制电路,其耦合到所述处理器核心,所述核心控制电路包括:
线程控制存储器,其包括多个寄存器,所述多个寄存器包括存储多个线程标识符的线程标识符池寄存器、存储接收到的程序计数的程序计数寄存器、数据缓存和存储接收到的变量参数的通用寄存器;
执行队列,其耦合到所述线程控制存储器;以及
控制逻辑和线程选择电路,其耦合到所述执行队列,所述控制逻辑和线程选择电路用于将可用线程标识符指配到执行线程,自动将所述线程标识符放置在所述执行队列中,以及周期性地选择所述线程标识符以供所述处理器核心执行所述多个指令中的所述执行线程的指令,所述处理器核心使用存储在所述数据缓存或通用寄存器中的数据。


2.根据权利要求1所述的处理器,其中所述核心控制电路进一步包括:
互连网络接口,其能够耦合到互连网络以接收工作描述符数据包,所述互连网络接口用于将所述接收到的工作描述符数据包解码成具有初始程序计数和任何接收到的变量参数的执行线程。


3.根据权利要求2所述的处理器,其中所述互连网络接口进一步用于响应于所述处理器核心执行返回指令而生成返回工作描述符包。


4.根据权利要求2所述的处理器,其中所述控制逻辑和线程选择电路进一步用于响应于所述接收到的工作描述符数据包而自动调度所述多个指令中的对应于所述初始程序计数的指令以供所述处理器核心执行。


5.根据权利要求2所述的处理器,其中所述控制逻辑和线程选择电路进一步用于响应于接收到的事件数据包而自动调度所述多个指令中的指令以供所述处理器核心执行。


6.根据权利要求5所述的处理器,其中所述互连网络接口进一步用于接收事件数据包,并且用于将所述接收到的事件数据包解码成事件标识符和任何接收到的变量参数。


7.根据权利要求2所述的处理器,其中所述互连网络接口进一步用于使用所述线程标识符作为所述线程控制存储器的索引在所述线程控制存储器中存储具有所述初始程序计数和任何接收到的变量参数的所述执行线程。


8.根据权利要求2所述的处理器,其中所述互连网络接口进一步用于生成和接收点到点事件数据消息和广播事件数据消息。


9.根据权利要求1所述的处理器,其中所述处理器核心用于执行纤程创建指令,并且其中所述核心控制电路进一步用于生成到另一处理器或混合线程组构电路的一或多个工作描述符数据包以用于执行对应的多个执行线程。


10.根据权利要求9所述的处理器,其中所述控制逻辑和线程选择电路进一步用于在线程控制存储器中保留预定量的存储器空间以存储返回变量参数。


11.根据权利要求1所述的处理器,其中所述控制逻辑和线程选择电路进一步用于确定对应于接收到的事件数据包的事件编号,并且用于使用存储在事件掩码寄存器中的事件掩码以对接收到的事件数据包作出响应。


12.根据权利要求1所述的处理器,其中所述核心控制电路进一步包括:
互连网络接口;
网络响应存储器;
指令缓存,其耦合到所述控制逻辑和线程选择电路;以及
命令队列。


13.根据权利要求1所述的处理器,其中所述控制逻辑和线程选择电路进一步用于将有效状态指配到所述执行线程的所述线程标识符,并且在所述有效状态保持不变的持续时间内周期性地选择所述线程标识符以供所述处理器核心执行所述执行线程的指令,直到完成所述执行线程为止,并且当所述线程标识符具有暂停状态时通过不将所述线程标识符返回到所述执行队列来暂停线程执行。


14.根据权利要求1所述的处理器,其中所述线程控制存储器进一步包括寄存器,所述寄存器选自由以下各者组成的群组:线程状态寄存器;未决纤程返回计数寄存器;返回变量参数缓冲器或寄存器;返回变量参数链表寄存器;自定义原子交易标识符寄存器;事件已接收掩码寄存器;事件状态寄存器;以及...

【专利技术属性】
技术研发人员:T·M·布鲁尔
申请(专利权)人:美光科技公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1