版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2021.09.17PCT/US2020/021617202WO2020/190539EN2020.09.24US5974538A,1999.10.26基于范围的显式数据流处理器和有关的计示例性的基于范围(reach)的显式数据流处围的显式数据流处理器被配置为支持执行生产令所生产的值的消费者指令的显式命名来编码基于使用生产者指令作为从生产者指令的相对支持用于消费者指令的显式命名的固定块参考2从指令存储器接收要被执行的指令流中的多个指令,所述多个指令包执行所述多个生产者指令中的生产者指令以生成生产值,所写入的所述消费者指令的所述多个操作数中的执行的所述生产者指令的所述生产值在所述操作数位置中写入所述消费者指令的所述多其中所述生产者指令与所述消费者指令之间有条件分支指所述生产者指令与所述条件分支指令之间有谓词指令,所述谓词指令包所述谓词指令与所述条件分支指令之间有谓词生产者指令,所述谓所述谓词生产者指令被配置为,响应于所述谓词指令的所述谓词解析中所述第二消费者指令的多个第二操作数中的每个第二操作数与所述第二消费者指令的确定所执行的所述生产者指令是否包括第二显式消费者名称,3指令流中的所述生产者指令相距所执行的所述生产者指令的所述第二消费者目标距离值由所述相关联的第二消费者操作数值的所述至少一个第二操作件消费者指令被标识为位于与所述指令流中的所述生产者指令相距所执行的所述生产者置由所述相关联的消费者操作数值的所述至少一个操作指令处理电路,所述指令处理电路被配置为从所述指令令流中的所述多个指令,所述多个指令包括所述多个生产者指令和所述多个消费者指令;生产值存储电路,被配置为存储与所述多个消费者指令中的所分派电路,被配置为:响应于针对所述消费者指令的所述多个操所述执行电路,被配置为执行所述多个生产者指令中的所述响应于确定所执行的所述生产者指令包括显式令被标识为位于与所述指令流中的所述生产者指令相距所执行的所述生产者指令的所述所述生产者指令的所述生产值在所述操作数位置中写入所述消费者指令的所述多个操作4所述生产值存储电路被配置为存储与所述经解码的消费者指令的所述多个操作数中所述分派电路被配置为响应于与所述消费者指令的所述多个操作数相关联的所述生所述执行电路被配置为执行所述经解码的生产者指令以生成所述生产所述写入电路被配置为响应于确定所执行的所述经解码的生产者指令包括所述显式中的所述生产者指令相距由所执行的所述生产者指令的所述显式消费者目标距离值指示述操作数位置由所述相关联的消费者操作数值的所述至少一个操所述指令处理电路还被配置为将所述消费者指令的所述多个操作数映射到物理寄存所述指令处理电路被配置为响应于确定所执行的所述生产者指令不包括所述显式消访问被映射到所述消费者指令的所述至少一个操作数的所述提供所取回的所述生产值,以作为所述消费者指令的所述多个操作数中的寄存器映射表,包括多个映射条目,每个所述映所述指令处理电路被配置为将所述至少一个操作数映射到所述寄存器映射表中的映5行的所述生产者指令的所述生产值写入被映射到所述寄存器映射表中的所述映射条目的11.一种基于消费者指令的显式命名从由处理器执行的生产者指令提供生产值作为所从指令存储器接收要被执行的指令流中的多个指令,所述多个指令包执行所述多个生产者指令中的生产者指令以生成生产值,所执行的所述生产者指令的所述生产值在所述操作数位置中写入所述消费者指令的所述多其中所述生产者指令与所述消费者指令之间有条件分支指所述生产者指令与所述条件分支指令之间有谓词指令,所述谓词指令包所述谓词指令与所述条件分支指令之间有谓词生产者指令,所述谓所述谓词生产者指令被配置为,响应于所述谓词指令的所述谓词解析6中所述第二消费者指令的多个第二操作数中的每个第二操作数与所述第二消费者指令的确定所执行的所述生产者指令是否包括第二显式消费者名称,指令流中的所述生产者指令相距所执行的所述生产者指令的所述第二消费者目标距离值由所述相关联的第二消费者操作数值的所述至少一个第二操作件消费者指令被标识为位于与所述指令流中的所述生产者指令相距所执行的所述生产者置由所述相关联的消费者操作数值的所述至少一个操作生产者指令的所述生产值写入被映射到所述消费者指令的所述多个操作数中的所述至少访问被映射到所述消费者指令的所述至少一个操作数的所述提供所取回的所述生产值,以作为所述消费者指令的所述多个操作数中的16.一种在其上存储有指令程序的非暂态计算机可读介质,所述指令程序包括用于由消费者指令,包括多个操作数和多个操作数7作数中的每个操作数与所述消费者指令的所述多个操作数位置中的操生产者指令,包括指令类型和显式消费者名称,所述显式条件分支指令,包括谓词和条件分支位置,所述条件分生产者指令的距离小于所述生产者指令的所述消费者目谓词指令,包括所述条件分支指令的所述谓词,所谓词生产者指令,位于所述指令程序中的所述谓词指所述谓词生产者指令被配置为,响应于所述谓词指令的所述谓词解析所述多个计算机可执行指令还包括第二消费者指令,所述第二个第二操作数与所述第二消费者指令的所述多个第二操作数位置中的第二操作数位置对所述生产者指令包括第二显式消费者名称,所述第二显式消费者名18.根据权利要求16所述的非暂态计算机可读介质,所述多个计算机可执行指令还包分支采用指令,包括评估操作数,所述分支采用指令在所8所述WAW指令被配置为生产所述分支采用指令的所述19.一种在其上存储有指令程序的非暂态计算机可读介质,所述指令程序包括用于由生产者指令,包括指令类型和显式消费者名称,所述显式令的相对指令距离,所述相关联的消费者操作数值标识要由所述生产者指令写入的操作指令的所述相关联的消费者操作数值被映射到所述消费条件分支指令,包括谓词和条件分支位置,所述条件分生产者指令的距离小于所述生产者指令的所述消费者目谓词指令,包括所述条件分支指令的所述谓词,所谓词生产者指令,位于所述指令程序中的所述谓词指生产者指令位于距所述指令程序中的所述消费者指令、所述第二消费者目标距离值的距所述谓词生产者指令被配置为,响应于所述谓词指令的所述谓词解析9[0001]本公开的技术涉及由中央处理单元(CPU)处理器执行指令,并且更具体地涉及支处理单元(CPU),该中央处理单元(CPU)包括执行软件指令的一个或多个处理器核心(也称于执行的消费者指令的输入值的生产值。这些生产者和消费者指令也被统称为“依赖指[0003]传统上,依赖指令之间的通信已经使用通用寄存器(GPR)命名空间作为会合点隐生产者指令中的消费者名称进行编码的位数必须足以命名基于设计所需的可能消费者指器已经通过将完整计算的数据流图形分割为多个片段(有时被称为指令块)来解决指令名最大指令数目由可以在指令中编码的名称的大小来确定和[0005]因此,虽然EDGE处理器相对于隐式通信模型具有所降低的复杂度的优点,但是EDGE处理器的缺点是在将生产值显式地传达给同一指令块中的消费者指令方面受到限制。令块内部的存在问题。先前的EDGECPU使用隐式通信(经由存储器命名空间或GPR命名空[0006]本文公开的示例性方面包括基于范围(reach)的显式数据流处理器以及相关的计方式的范围命名空间的位大小是由存储给定指令数量所需的指令存储器大小与期望范围于范围的显式数据流处理器还可以支持使用由生产者指令命名的(多个)中间消费者指令间消费者指令,则基于范围的显式生产者/消费者通信不排除基于范围的显式数据流处理令的相对指令距离。处理器还被配置为确定所执行的生产者指令是否包括显式消费者名令流中的生产者指令相距所执行的生产者指令的消费者目标距消费者目标距离值的距离处。该方法还包括响应于消费者指令的至少一个操作数被存储,产者指令的相关联的消费者操作数值被映射到消费[0013]图1是示例性计算机指令列表,以图示基于范围的显式数据流处理器支持范围为[0016]图3A是利用基于范围的显式消费者命名编码并且被配置为由基于范围的显式数据流处理器处理的计算机指令的示例性指令流,其中指令列表包括创建先写后写(WAW)危[0017]图3B图示了与允许处理器基于隐式消费者命名和指令块架构中的显式消费者命[0018]图4是示例性的基于处理器的系统的示意图,该系统包括基于范围的数据流处理自所执行的生产者指令的生产值用于通过由基于范围的显式消费者命名标识的消费者指生产者指令中的基于范围的显式消费者指令命名所标识的消[0020]图6A是利用基于范围的显式消费者命名经编码的并且被配置为由基于范围的显[0022]图7是利用基于范围的显式消费者/命名经编码的并且被配置为由基于范围的显[0023]图8是示例性的基于处理器的系统的框图,该系统包括基于范围的显式数据流处理器(包括但不限于图4中的基于范围的数据流处[0024]本文所公开的示例性方面包括基于范围的显式数据流处理器以及有关的计算机[0025]在这方面,图1是从存储在计算机存储器中的指令程序所提取的示例性指令流可以作为输出值被提供给I/O设备,或者作为所指定的操作数中的输入值由处理器中所执值基于使用生产者指令在指令流中的地点作为相对参考点来指示所预期的消费者指令在如图1所示,作为生产者指令的指令I1和I2可以分别将指令I2至I5和指令I3至I6中的任何根据要在生产者指令中显式地所命名的ISA,目标消费者指令还必须位于等于或小于最大的架构限制可以允许数据流处理器被设计以支持在不受指令块大小限制的较大计算图形位大小是由存储给定指令数目所需的指令存储器大小与所期望的范围命名空间之间的所[0028]图2A图示了针对生产者指令202的示例性的基于范围的显式消费者命名指令格式产者指令202的指令格式200编码以基于范围显式地命名消费者的ADD生产者指令204的示例。与图2A中的基于范围的显式消费者通信模型和指令格式200兼容的处理器将由生产者I0至I6的示例性指令流300,该计算机指令I0至I6被配置为由基于范围的显式数据流处理指令I3将来自指令I0和指令I2的所生产的结果相加并且将该结果存储在寄存器R6中。然指令I0的执行所生产的结果。这种WAW危险是基于范围的显式消费者通信模型使用基于生费者名称在指令流300中的相对固定地点处(诸如例如,指令块的开始)则指令I0可以具体者通信模型可以具有在不受指令块大小限制的较大计算图形上支持基于范围的显式数据用时将生产值错误地递送到消费者指令I6,指令I5被提供以在来自指令流300中的指令I1的执行的分支所采用的数据流路径302中执行WAW操作,该指令流300也指定指令I6作为其费者通信模型产生指令的编程器或编译器可以被配置为识别这种WAW危险,并且在通过在危险流路中雇用另一生产者指令(例如图3A中的指令产者指令I5命名了非预期的消费者指令(例如,图3A中的指令I6)和创建WAW危险的生产者I20至I26与指令流300中的指令I0至I6具有相同的指令类型,并且被编码以使处理器生成相同的结果,但是指令流304使用基于相对于指令块的开始的绝对指令地点的显式命名以序处理器(OoP)。指令406由指令处理电路404中所提供的指令提取电路408从指令存储器中或作为其部分。指令缓存412也可以被提供在处理器402中以缓存从指令存储器410所提提供到一个或多个指令流水线I0至IN中作为指令处理电路404中的要被预处理的指令流被并发执行以在执行电路414中执行所提取的指令406F之前[0035]控制流预测电路416(例如,分支预测电路)也被提供在图4中的处理器402中的指支指令)。由控制流预测电路416对目标地址的预测由指令提取电路408使用于基于所预测的目标地址来确定要提取的下一所提取的指令406F。指令处理电路404还包括指令解码电路418,其被配置为将由指令提取电路408提取的所提取的指令406F解码为所解码的指令哪个指令流水线I0至IN中。所解码的指令406D然后被放置在指令流水线I0至IN中的一个或路420被配置为确定在所解码的指令406D中是否有任何寄存器名称需要被重命名,以打破会防止并行或无序处理的任何寄存器依赖性。重命名电路420被配置为调用寄存器映射表(RMT)422以重命名逻辑源寄存器操作数和/或将所解码的指令406D的目的地寄存器操作数寄存器相关联)。映射条目被配置为以地址指针的形式存储信息以指向物理寄存器文件(PRF)426424(X)包含被配置为存储针对所解码的指令406D的源和/或目的地寄存器操作数的数据的[0036]图4中的处理器402中的指令处理电路404在分派电路430之前还包括寄存器访问寄存器映射表(RMT)422中的逻辑寄存器R0至Rp的映射条目来访问物理寄存器文件(PRF)426存器访问电路428还被配置为提供从所执行的、所解码的指令406E所取回的生产值作为要责确保在将所解码的消费者指令406D分派到执行电路414用于执行之前,针对所解码的消费者指令406D的操作数的必要值是可用的。所解码的指令406D的操作数可以包括立即值、令处理电路404中的消费者指令消耗的生产值的所解码的指令406D被认为是生产者指令。解码的生产者指令406D可以命名消费者指令,并且在这种情况下将包括由表示指令流411中与所解码的生产者指令406D的相对指令距离的消费者目标距离值TD+经编码的显式消费由所执行的生产者指令406D生成的生产值写入指令处理电路404中的消费者指令406D的操作数,该消费者指令406D被标识为位于与指令流411中的生产者指令406D相距所执行的生产值是由执行电路414通过执行命名消费者指令406D的生产者指令406D生成的。生产值存针对要被执行的所命名的消费者指令406D可用。[0038]要注意的是,生产者指令406D还可以包括多于一个显式地命在这种情况下,写入电路432可以将与多于一个消费者指令相关联的所生产的结果存储在的处理器402所支持的基于范围的显式消费者通信模型支持提供来自所执行的生产者指令为与生产值存储电路434中的所命名的条件消费者指令406D相关联的谓词,以在准备分派要被执行的条件消费者指令406D时被提供到分派电路[0039]如果被执行的所解码的指令没有显式命名指令流411中的消费者指令406D,则写入电路432可以将所生产的结果写入物理寄存器文件426中的物理寄存器P0至PX和/或所解指令流411中比生产者指令406D中可以被编码的最大消费者目标距离值更远离生产者指令向等待被分派到执行电路414用于执行的消费者指令406D提供所生产的结果[0040]图5是图示了基于范围的显式数据流处理器的示例性过程500的流程图,诸如图4中的基于范围的显式数据流处理器402,传达来自所执行的生产者指令的生产值以通过由[0041]在这方面,指令处理电路404从指令存储器410接收要被执行的指令流411中的多可以包括多个生产者指令和多个消费者指令。执行电路414针对消费者指令406D执行生产目标距离值表示指令流中与生产者指令的相对指令距离。执行电路414确定所执行的生产者指令406D是否包括显式消费者名称(图5中的框506)。响应于确定所执行的生产者指令406D包括显式消费者名称,写入电路432将生产值存储电路434中的所执行的生产者指令为位于与指令流411中的生产者指令406D相距所执行的生产者指令的消费者目标距离值储电路434中可用,分派电路430将要被执行的消费者指令406D分派到执行电路414(图5中[0042]如上面在图3A中的示例指令流300中讨论的,当条件分支指令位于生产者指令与显式消费者指令命名经编码的并且被配置为由基于范围的数据流处理器处理,诸如图4中指令I5的执行(基于消耗来自指令I3的生产值)的生产值被传达到消费者指令I9而不是所[0044]为了解决图6A中的指令流600中的这种WAW危险,图6B是具有指令I0至I12的备选执行图6A中的指令流600的相同所预期的操作。图6B中的指令流602和图6A中的指令流600分支指令I7之间。作为谓词生产指令的条件分支指令I5(与条件分支指令I7具有相同的谓针对来自生产者指令I2的生产值被布置为仅针对条件分支指令I7的没有被采用流路有效,令I4被解决为所采用的分支,则指示处理器使从生产者指令I2的执行所生成的生产值无支指令可以通过类似条件分支指令的操作码的唯一性或以是图4中的处理器402。基于处理器的系统800可以是电子板卡中所包括的一个或多个电被存储在指令缓存804中。指令处理电路810被配置为处理提取到指令缓存804中的指令并使得指令处理电路810支持执行用消费者指令的基于范围的显式命名编码的生产者指令,使得这些生产值作为输
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年昌都市林业系统事业单位人员招聘考试备考试题及答案详解
- 2026黑龙江哈尔滨“丁香人才周”(春季)事业单位引才招聘1人考试参考题库及答案解析
- 2026年安徽工业职业技术学院人才引进(第二批)考试参考题库及答案解析
- 2026年金属波纹管行业分析报告及未来发展趋势报告
- 2026年硅碳负极材料行业分析报告及未来发展趋势报告
- 2026年硫基三元复合肥行业分析报告及未来发展趋势报告
- 2026年成都市温江区红十字医院医护人员招聘笔试模拟试题及答案解析
- 2026吉林长春市生态环境局经开分局招聘临聘人员3人考试模拟试题及答案解析
- 2026年骨科手术机器人行业分析报告及未来发展趋势报告
- 2026年无机碱制造行业分析报告及未来发展趋势报告
- 2026年设备出售转让合同(1篇)
- 2026年事业单位面试结构化100例
- 2026年深圳市盐田区初三二模语文试卷(含答案)
- 2026中南出版传媒集团股份有限公司春季招聘考试参考题库及答案解析
- 20kV及以下配电网工程预算定额(2022版)全5册excel版
- 骨科护理饮食与营养康复
- 物业电工安全操作培训课件
- 国企员工行为规范管理制度
- 中学语文课本剧《杜甫诗话》剧本
- 教师论文写作培训课件
- (2025年)吉林事业单位考试真题附答案
评论
0/150
提交评论