当前位置: 首页 > 专利查询>赛灵思公司专利>正文

存储器请求的自适应调度制造技术

技术编号:22978624 阅读:22 留言:0更新日期:2020-01-01 00:52
描述了用于集成电路设备的装置和方法。在其中的装置中,存在耦合到多个存储器体(104)的多个存储器控制器(103,200)。交换机网络(102)耦合到多个存储器控制器(103,200)。多个数据处理设备(105,300)耦合到交换机网络(102),并且被配置为生成存储器请求(305)。网络控制器(101,400)耦合到交换机网络(102),并且被配置为对存储器请求(305)排队,并且响应于与多个存储器体(104)相关联的对应响应时间(417),从排队的存储器请求中选择性发出去往存储器的请求(422)。

Adaptive scheduling of memory requests

【技术实现步骤摘要】
【国外来华专利技术】存储器请求的自适应调度
以下描述涉及集成电路设备(“IC”)。更具体地,以下描述涉及针对IC的存储器请求的自适应调度。
技术介绍
存储器的读取和写入请求可能会以一个或多个时钟周期的延迟发生。例如,动态随机存取存储器或DRAM可能具有大量的延迟。大量的延迟可能会对性能(包括存储器吞吐量)产生负面影响。因此,期望提供一种具有增加的存储器吞吐量的IC。
技术实现思路
一种装置总体上涉及集成电路设备。在这样的装置中,多个存储器控制器耦合到多个存储器体。交换机网络耦合到多个存储器控制器。多个数据处理设备耦合到交换机网络,并且被配置为生成存储器请求。网络控制器耦合到交换机网络,并且被配置为对存储器请求排队,并且响应于与多个存储器体相关联的对应响应时间,从排队的存储器请求中选择性地发出去往存储器的请求。在一些实施例中,网络控制器可以被配置为针对每个存储器请求,确定挑选时间与对应响应时间之间的差值以获取对应响应时间。网络控制器还可以被配置为将排队的存储器请求与对应响应时间相关联。在一些实施例中,网络控制器可以被配置为具有挑选时间计数器电路,挑选时间计数器电路被配置为存储与发出的存储器请求相对应的挑选时间。网络控制器还可以包括挑选请求总数计数器电路,挑选请求总数计数器电路被配置为存储针对所存储的每个挑选时间的请求计数。网络控制器还可以包括总响应时间计数器电路,总响应时间计数器电路被配置为针对发出和完成的存储器请求,通过分别从接收的完成时间中减去挑选时间来生成对应响应时间。网络控制器还可以包括请求调度器电路,该请求调度器电路被耦合以接收对应响应时间,并且被配置为:针对与所发出的存储器请求相关联的多个存储器体,生成对应响应时间的运行平均值;确定运行平均值中的最低运行平均值;,发出排队的存储器请求中针对多个存储器体中具有最低运行平均值的存储器体的存储器请求。在一些实施例中,交换机网络可以包括可编程逻辑结构的可编程互连电路。在一些实施例中,对应响应时间可以指示存储器页面被打开。在一些实施例中,存储器请求可以包括用于响应于最短响应时间到最长响应时间而失序执行的存储器写入命令或存储器读取命令中的至少一个。在一些实施例中,可以利用页面读取或页面写入中的至少之一来访问多个存储器体。在一些实施例中,网络控制器可以被配置为针对分别在网络控制器中排队的每个存储器请求,对未被选择用于发出的每个实例进行计数以提供对应饥饿计数。网络控制器还可以被配置为发出排队的存储器请求中具有饥饿计数超过计数阈值的每个存储器请求。在一些实施例中,交换机网络中的至少一个交换机可以被配置为仲裁器。仲裁器可以被配置为接收从网络控制器发出的存储器请求的子集,在仲裁器中对所接收的存储器请求的子集排队,并且响应于针对由在仲裁器中排队的存储器请求的子集寻址的多个存储器体的对应响应时间,发出存储器请求的子集中的存储器请求。另一装置总体上涉及一种集成电路设备。在这样的装置中,多个存储器控制器耦合到多个存储器体。交换机网络耦合到多个存储器控制器。多个数据处理设备耦合到交换机网络,并且被配置为生成存储器请求。网络控制器耦合到交换机网络。交换机网络中的交换机被配置为仲裁器。仲裁器被配置为响应于针对多个存储器体的对应响应时间,对仲裁器中的存储器请求进行排队,并且发出在仲裁器中排队的存储器请求。在一些实施例中,每个仲裁器可以被配置为针对从仲裁器发出的每个存储器请求,确定挑选时间与对应响应时间之间的差值,以获取对应响应时间。每个仲裁器可以被配置为将在仲裁器中排队的存储器请求与对应响应时间相关联。在一些实施例中,每个仲裁器可以被配置为具有挑选时间计数器电路,挑选时间计数器电路被配置为存储与发出的存储器请求相对应的挑选时间。每个仲裁器还可以被配置为具有挑选请求总数计数器电路以及总响应时间计数器电路,挑选请求总数计数器电路被配置为存储针对所存储的每个挑选时间的请求计数,总响应时间计数器电路被配置为针对发出和完成的存储器请求,通过从接收的完成时间中分别减去挑选时间来生成对应响应时间。每个仲裁器还可以被配置为具有请求调度器电路,该请求调度器电路被耦合为接收对应响应时间,并且被配置为:针对发出的存储器请求,针对分别与仲裁器相关联的多个存储器体中的每个存储器体,生成对应响应时间的运行平均值;确定运行平均值中的最低运行平均值,并且发出排队的存储器请求中针对多个存储器体中具有最低运行平均值的存储器体的存储器请求。在一些实施例中,交换机网络可以包括可编程逻辑结构的可编程互连电路。在一些实施例中,对应响应时间可以指示存储器页面被打开。在一些实施例中,存储器请求可以包括用于响应于最短响应时间到最长响应时间而失序执行的存储器写入命令或存储器读取命令中的至少一个。在一些实施例中,可以利用页面读取或页面写入中的至少之一来访问多个存储器体。在一些实施例中,每个仲裁器可以被配置为针对分别在仲裁器中排队的每个存储器请求,对未被选择用于发出的每个实例进行计数以提供对应饥饿计数。每个仲裁器还可以被配置为发出排队的存储器请求中具有饥饿计数超过计数阈值的每个存储器请求。一种方法总体上涉及一种集成电路设备。在这样的方法中,从多个数据处理设备生成存储器请求。在网络控制器中对存储器请求排队。响应于针对由排队的存储器请求寻址的多个存储器体的对应响应时间,发出存储器请求。使存储器请求传递通过交换机网络,以用于被耦合到交换机网络和多个存储器体的多个存储器控制器接收。在一些实施例中,存储器请求的发出可以包括:确定发出和完成排队的每个存储器请求之间的时间差,以获取对应响应时间,以及将排队的存储器请求与对应响应时间相关联。在一些实施例中,存储器请求的发出可以包括:针对与发出的存储器请求相关联的多个存储器体中的每个存储器体,生成对应响应时间的运行平均值;确定运行平均值中的最低运行平均值;以及发出排队的存储器请求中针对多个存储器体中具有最低运行平均值的存储器体的存储器请求。通过考虑以下的“具体实施方式”和“权利要求书”,将认识到其他特征。附图说明附图示出了示例性装置和/或方法。但是,附图不应当被用来限制权利要求的范围,而仅是为了解释和理解。图1是描绘示例性片上网络(“NoC”)的框图。图2是描绘示例性存储器控制器的框图。图3是描绘一组示例性数据处理设备的框图。图4是描绘示例性网络控制器的框图。图5是描绘示例性有状态计数器的示意图。图6是描绘示例性请求调度器的框图。图7是描绘另一示例性请求调度器的框图。图8是描绘另一示例性NoC的框图。图9是描绘示例性柱状现场可编程门阵列(“FPGA”)架构的简化框图。图10是描绘示例性存储器请求调度流程的流程图。具体实施方式在以下描述中,阐述了很多具体细节以提供对本文中描述的具体示例的更彻底的描述。然而,对于本领域的技术人员很清楚的是,可以在不给出下面的所有具体细节的本文档来自技高网...

【技术保护点】
1.一种用于集成电路设备的装置,包括:/n多个存储器控制器,被耦合到多个存储器体;/n交换机网络,被耦合到所述多个存储器控制器;/n多个数据处理设备,被耦合到所述交换机网络,并且被配置为生成存储器请求;以及/n网络控制器,被耦合到所述交换机网络,并且被配置为对所述存储器请求排队,并且响应于与所述多个存储器体相关联的对应响应时间,从排队的所述存储器请求中选择性地发出去往存储器的请求。/n

【技术特征摘要】
【国外来华专利技术】20170515 US 15/595,5671.一种用于集成电路设备的装置,包括:
多个存储器控制器,被耦合到多个存储器体;
交换机网络,被耦合到所述多个存储器控制器;
多个数据处理设备,被耦合到所述交换机网络,并且被配置为生成存储器请求;以及
网络控制器,被耦合到所述交换机网络,并且被配置为对所述存储器请求排队,并且响应于与所述多个存储器体相关联的对应响应时间,从排队的所述存储器请求中选择性地发出去往存储器的请求。


2.根据权利要求1所述的装置,其中:
所述网络控制器被配置为针对所述去往存储器的请求中的每个请求,确定挑选时间与对应响应时间之间的差值,以获取所述对应响应时间;以及
所述网络控制器被配置为将排队的所述存储器请求与所述对应响应时间相关联。


3.根据权利要求2所述的装置,其中所述网络控制器被配置为具有:
挑选时间计数器电路,被配置为存储与发出的所述存储器请求相对应的挑选时间;
挑选请求总数计数器电路,被配置为存储针对存储的所述挑选时间中的每个挑选时间的请求计数;
总响应时间计数器电路,被配置为针对发出和完成的所述存储器请求,通过分别从接收的完成时间中减去所述挑选时间来生成所述对应响应时间;以及
请求调度器电路,被耦合以接收所述对应响应时间并且被配置为:
针对与发出的所述存储器请求相关联的所述多个存储器体,生成所述对应响应时间的运行平均值;
确定所述运行平均值中的最低运行平均值;以及
发出排队的所述存储器请求中针对所述多个存储器体中具有所述最低运行平均值的存储器体的存储器请求。


4.根据权利要求2所述的装置,其中所述交换机网络包括可编程逻辑结构的可编程互连电路。


5.根据权利要求2所述的装置,其中所述存储器请求包括存储器写入命令或存储器读取命令中的至少一个,所述存储器写入命令或所述存储器读取命令用于响应于所述对应响应时间中的最短响应时间到最长响应时间而失序执行。


6.根据权利要求3所述的装置,其中:
所述网络控制器被配置为针对分别在所述网络控制器中排队的所述存储器请求中的每个存储器请求,对未被选择用于发出的每个实例进行计数,以提供对应饥饿计数;以及
所述网络控制器被配置为发出排队的所述存储器请求中具有所述饥饿计数超过计数阈值的每个存储器请求。


7.根据权利要求3所述的装置,其中所述交换机网络中的至少一个交换机被配置为仲裁器,所述仲裁器被配置为:
接收从所述网络控制器发出的存储器请求的子集;
在所述仲裁器中对接收的所述存储器请求的所述子集排队;以及
响应于针对由在所述仲裁器中排队的所述存储器请求的所述子集寻址的所述多个存储器体的所述对应响应时间,从所述存储器请求的所述子集发出存储器请求。


8.一种用于集成电路设备的装置,包括:
多个存储器控制器,被耦合到多个存储器体;
交换机网络,被耦合到所述多个存储器控制器;
多个数据处理设备,被耦合到所述交换机网络,并且被配置为生成存储器请求;
网络控制器,被耦合到所述交换机网络;以及...

【专利技术属性】
技术研发人员:S·M·杜巴库拉
申请(专利权)人:赛灵思公司
类型:发明
国别省市:美国;US

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

1