CN103069402A - 多通道dram系统中的负载平衡方案 - Google Patents

多通道dram系统中的负载平衡方案 Download PDF

Info

Publication number
CN103069402A
CN103069402A CN2011800390399A CN201180039039A CN103069402A CN 103069402 A CN103069402 A CN 103069402A CN 2011800390399 A CN2011800390399 A CN 2011800390399A CN 201180039039 A CN201180039039 A CN 201180039039A CN 103069402 A CN103069402 A CN 103069402A
Authority
CN
China
Prior art keywords
memory
memory controller
dram
congestion signal
congested
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2011800390399A
Other languages
English (en)
Other versions
CN103069402B (zh
Inventor
王风
顾时群
金郑海
马修·迈克尔·诺瓦克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN103069402A publication Critical patent/CN103069402A/zh
Application granted granted Critical
Publication of CN103069402B publication Critical patent/CN103069402B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1647Handling requests for interconnection or transfer for access to memory bus based on arbitration with interleaved bank access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0607Interleaved addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1642Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1657Access to multiple memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0064Latency reduction in handling transfers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)

Abstract

多DRAM系统中的负载平衡包括使存储器数据跨两个或两个以上存储器通道交错。通过存储器控制器控制对所述存储器通道的存取。总线主控装置经由互连系统耦合到所述存储器控制器,且存储器请求从所述总线主控装置传输到所述存储器控制器。如果在存储器通道中检测到拥塞,那么产生拥塞信号,且将其传输到所述总线主控装置。基于所述拥塞信号,存储器请求被相应地撤消或被重新路由到较不拥塞的存储器通道。

Description

多通道DRAM系统中的负载平衡方案
对同在申请中的专利申请案的参考
本专利申请案涉及以下同在申请中的美国专利申请案:
Feng Wang等人的“多通道DRAM系统中的非均一交错方案(NON-UNIFORMINTERLEAVING SCHEME IN MULTIPLE CHANNEL DRAM SYSTEM)”,所述申请案具有代理人案号090713、与本申请案同时申请、让渡给其受让人,且以引用方式明确地并入本文。
技术领域
所揭示的实施例涉及多通道动态随机存取存储器(DRAM)系统。更明确地说,所述实施例涉及多通道DRAM系统中的负载平衡方案。
背景技术
DRAM系统是用于计算机中的最常见且最低廉的存储器系统之一。与静态随机存取存储器(SRAM)系统相比,它们在大小上较小,且其小的大小使得能够制造高密度DRAM系统。然而,常规DRAM系统也比SRAM慢,且必须周期性地刷新以便维持存储在存储器中的数据。因此,控制DRAM时的重要考虑因素之一是可从存储器读取数据或可将数据写入到存储器中的速度。
增加对DRAM的存取速度的一种常见技术称为交错。将存储器系统划分为两个或两个以上可并行存取的存储器通道。连续定址的存储器位置中的数据分布于所述存储器通道之间,使得可并行存取连续定址的数据字。与连续定址的数据字依序存储在特定存储器通道中的情况相比,在此种交错系统中,可由存储器控制器更快地并行执行来自计算机的处理单元的存取这些字的请求。
在交错存储器存取方案中,数据可跨越每一存储器通道独立地以及并行地流动到其它存储器通道。存储器系统还可经设计而使得每一存储器通道映射到特定存储器地址,且可基于存储器地址映射将数据传输到存储器通道/从存储器通道传输数据。
取决于需要在任何给定时间存取存储器系统的应用的性质,特定存储器通道上的业务可能会急剧增加。结果,那一存储器通道可能被阻塞,从而阻止进一步存取。举例来说,如果存储器系统包括四个存储器通道,那么依序定址的数据字中的数据可经分布而使得每隔三个数据字被分配给特定存储器通道。如果特定应用中的连续指令需要依序存取存储器中的每隔三个数据字,那么所有存储器请求被路由到单一存储器通道,从而造成所述存储器通道被阻塞。在此情况下,其它存储器通道可能相对空闲,但其可用带宽并未被有效利用。有时,异常或中断也可能引起对特定存储器通道的存取被阻止。
通常使用负载平衡方案来将所指派的存储器地址重新映射到特定存储器通道,以便在不同存储器通道之间重新分布业务负载且使其平衡。在常见负载平衡方案中,通过对一序列存储器事务进行重新排序而静态地产生存取模式,使得依序事务可通过两个或两个以上通道并行地进行。
然而,因为常规方法在性质上是静态的,且在很大程度上依赖于存取模式,所以常规负载平衡方案不能有效地处置存储器通道上的实时拥塞。举例来说,异常或中断可能会出人意料地更改通道中的业务。常规方法无法适合于平衡给定时间范围内的负载。因为各通道之间的业务未有效地分布,所以在给定时间范围内未充分利用的通道中的可用带宽未被利用。需要不被常规技术中的诸种限制所阻碍的负载平衡技术。
发明内容
示范性实施例是针对多通道DRAM系统中的负载平衡的系统和方法。
示范性实施例是针对多DRAM系统中的负载平衡的方法,所述方法包括使存储器数据跨两个或两个以上存储器通道交错,用存储器控制器控制对所述存储器通道的存取,以及经由互连系统将总线主控装置耦合到所述存储器控制器。来自总线主控装置的存储器请求传输到所述存储器控制器。所述方法包括检测第一存储器通道中的拥塞,在检测到拥塞的情况下产生拥塞信号,以及将所述拥塞信号传输到所述总线主控装置。
另一示范性实施例是针对一种DRAM系统,所述DRAM系统包括跨两个或两个以上存储器通道交错的存储器数据、用于控制对所述存储器通道的存取的存储器控制器、经由互连系统耦合到所述存储器控制器的总线主控装置。存储器请求从所述总线主控装置传输到所述存储器控制器。所述系统包括用于响应于存储器请求而检测第一存储器通道中的拥塞且产生所述第一存储器通道的拥塞信号的逻辑。
又一示范性实施例是针对一种DRAM系统,所述DRAM系统包括用于使存储器数据跨两个或两个以上通道装置交错的装置、用于控制对所述通道装置的存取的控制器装置、用于将总线主控装置经由互连装置耦合到所述控制器装置的装置。存储器请求从所述总线主控装置传输到所述控制器装置。所述系统包括用于检测第一通道装置中的拥塞且在检测到拥塞的情况下产生拥塞指示的装置。
另一示范性实施例是针对多DRAM系统中的负载平衡的方法,所述方法包括用于使存储器数据跨两个或两个以上存储器通道交错的步骤,用于用存储器控制器控制对所述存储器通道的存取的步骤,以及用于经由互连系统将总线主控装置耦合到所述存储器控制器的步骤。来自总线主控装置的存储器请求传输到所述存储器控制器。所述方法包括用于检测第一存储器通道中的拥塞的步骤,用于在检测到拥塞的情况下产生拥塞信号的步骤,以及用于将所述拥塞信号传输到所述总线主控装置的步骤。
附图说明
呈现附图以帮助描述本发明的实施例,且提供附图仅用于说明实施例而非限制实施例。
图1说明常规多通道DRAM系统,其中多个总线主控装置通过互连系统耦合到多个从属存储器控制器。
图2说明在示范性实施例中由存储器控制器响应于来自总线主控装置的存储器请求而产生的拥塞信号。
图3说明在示范性实施例中响应于拥塞信号而重新映射的来自总线主控装置的存储器请求。
图4是说明根据示范性实施例的负载平衡方案的流程图。
具体实施方式
本发明的各方面揭示于针对本发明的特定实施例的以下描述及相关图式中。可在不脱离本发明的范围的情况下设计替代实施例。此外,将不会详细描述本发明的众所周知的元件,或将省略所述元件,以免混淆本发明的相关细节。
词语“示范性的”在本文中意味着“充当实例、个例或说明”。本文中被描述为“示范性的”任何实施例不必须被理解为比其它实施例优选或有利。同样,术语“本发明的实施例”并非要求本发明的所有实施例包括所论述的特征、优点或操作模式。
本文所使用的术语仅用于描述特定实施例的目的,而并不希望限制本发明的实施例。如在本文中所使用,除非上下文另外清楚地指示,否则希望单数形式“一”和“所述”也包括复数形式。将进一步了解,术语“包含”和/或“包括”在用于本文中时指定所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但不排除一个或一个以上其它特征、整数、步骤、操作、元件、组件和/或其群组的存在或添加。
此外,根据待由(例如)计算装置的元件执行的动作的序列来描述许多实施例。将认识到,可由特定电路(例如,专用集成电路(ASIC))、由正由一个或一个以上处理器执行的程序指令或由两者的组合来执行本文中所述的各种动作。此外,可认为本文中所述的这些动作序列完全实施于任何形式的计算机可读存储媒体内,所述计算机可读存储媒体中已存储一组对应计算机指令,所述指令在被执行时将致使相关联的处理器执行本文中所述的功能性。因此,本发明的各种方面可以许多不同形式来实施,所有所述形式均被涵盖在所主张的标的物的范围内。此外,对于本文中所述的实施例的每一者来说,任何所述实施例的对应形式可在本文中被描述为(例如)“经配置以(执行所描述的动作)的逻辑”。
图1说明示范性经交错DRAM系统。DRAM系统102可以是通过穿硅堆叠(TSS)堆叠的DDR。互连件104是将多个总线主控装置经由专用的点对点接口选择性地互连到多个从属装置的切换网络。图1说明“n”个总线主控装置P1-Pn,其可包括计算机系统或需要存取DRAM存储器102的外围装置。图1也说明“m”个存储器通道CH1-CHm。对所述m个通道CH1-CHm的存取是由“m”个存储器控制器MC1-MCm控制的。
存储器控制器MC1-MCm是从属装置,其从总线主控装置P1-Pn接收存储器存取请求,且相应地进行响应。m的值可以不等于n。在任何给定时间点,若干总线主控装置可能请求对单一通道的存储器存取。另外,在任何给定时间点,少于所有的存储器通道可能被完全利用。为获得存储器系统的最优性能,需要所请求的带宽跨所有存储器通道有效地分布。
例如存储器请求队列等排队机制(图中未示)可用在存储器控制器中。如果从单一总线主控装置或若干总线主控装置对特定存储器控制器(从属装置)作出了多个存储器存取请求,那么在达到未完成的存储器请求的阈值数目时,存储器请求队列可变得饱和。对相关联的存储器通道的存取会被阻止,直到所有未完成的请求获得服务为止。此种存储器阻止严重地影响存储器系统的性能。常规经交错存储器系统缺乏将饱和通道中的未完成的请求重定向到替代通道的能力,所述替代通道可能具有可用于服务于所述请求的带宽。示范性实施例包括查询存储器请求队列以获得关于存取历史的信息,以便产生拥塞信号的技术。
图2说明“r”个存储器请求MR1-MRr。使用双侧箭头来说明存储器请求MR1-MRr以并入与服务于这些存储器请求相关联的数据业务。在说明性实例中,对存储器控制器MC1作出来自总线主控装置P1的存储器请求MR1-MR2和来自总线主控装置P2的存储器请求MR3-MR4。与四个存储器请求MR1-MR4相关联的数据业务超过存储器通道CH1的最大带宽。替代尝试服务于所有请求MR1-MR4且因此可能阻止对存储器通道CH1的未来存取,存储器控制器MC1认识到此拥塞,且分别针对总线主控装置P1和P2产生拥塞信号CS1和CS2。
在以上实例中,在预定持续时间中对未完成的存储器请求进行取样,且在达到未完成的存储器请求的预定阈值数目时,产生拥塞信号。在替代实施例中,存储器控制器可跟踪被拒绝存取的存储器请求的数目。当达到拒绝的阈值数目时,产生拥塞信号。
所述拥塞信号可为单数字二进制值,其指示相关联的存储器通道是否拥塞。示范性实施例可使用为两位或两位以上宽的拥塞信号,以便表征“拥塞度”。举例来说,在2位拥塞信号中,二进制编码00可指示存储器通道最低限度地拥塞或可供自由存取。二进制编码01和10可表示中间拥塞程度,且11可指示最大拥塞,其中所有未来请求将被阻止,直到拥塞减弱为止。一旦拥塞减弱,便可基于来自存储器请求队列的信息而将拥塞信号适当地撤销断言或设定到最小拥塞值。
假定拥塞信号CS1的单位实施,其中0指示没有拥塞,且1指示存储器通道拥塞,那么当总线主控装置P1接收到被断言为1的拥塞信号CS1时,其可放弃存储器请求MR1和MR2中的一者或两者,直到拥塞信号CS1被撤销断言为止。或者,可将一个或两个存储器请求MR1和MR2重新路由到未断言拥塞信号的替代存储器通道。
重新路由存储器请求是通过将所指派的存储器地址重新映射到特定存储器通道来实现。常规上,存储器管理单元(MMU)用于DRAM系统中。示范性MMU包括其中维持存储器存取请求地址与存储器通道中的物理地址之间的关联的表。为将存储器请求从一个通道重新路由到另一个通道,通过MMU来更改表中的地址映射,以将存储器存取请求地址映射到不拥塞的替代存储器通道中的物理地址。
总线主控装置P2响应于拥塞信号CS2而作出类似行为。图3说明总线主控装置P1通过存储器控制器MC2将存储器请求MR2重新映射到存储器通道CH2的示范性实施例。存储器控制器MC2的拥塞信号CS2被撤销断言。类似地,总线主控装置P2将存储器请求MR4重新映射到存储器控制器MC2。
在图4的流程图中说明用于动态负载平衡的以上技术。在块402,示范性存储器控制器维持拥塞信号为0,以向总线主控装置表示对应存储器通道可用于处理存储器请求。在块404,从总线主控装置接收新存储器请求。在块406,查询存储器请求队列中的存取历史信息,以确定存储器通道是否拥塞。如果存储器通道不拥塞,那么将拥塞信号维持为0,且处理所述请求。过程返回到块402。
另一方面,如果在块406确定存储器通道拥塞,那么存储器控制器在步骤408将拥塞信号设定为1。在块410,总线主控装置认识到断言了拥塞信号,且作为响应,MMU将存储器请求重新映射到替代存储器通道。
因此,所揭示的负载平衡方案通过有效地利用可用带宽以及使与拥塞相关联的存储器阻止最小化而改善了多通道存储器系统的性能。
所属领域的技术人员将了解,可使用多种不同技术及技艺中的任一者来表示信息及信号。举例来说,可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在以上描述中始终参考的数据、指令、命令、信息、信号、位、符号及码片。
此外,所属领域的技术人员将了解,结合本文中所揭示的实施例而描述的各种说明性逻辑块、模块、电路及算法步骤可实施为电子硬件、计算机软件或两者的组合。为清楚说明硬件与软件的此互换性,上文已大致关于其功能性而描述了各种说明性组件、块、模块、电路及步骤。所述功能性是实施为硬件还是软件取决于特定应用及施加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但所述实施方案决定不应被解释为会导致脱离本发明的范围。
结合本文中所揭示的实施例而描述的方法、序列及/或算法可直接实施于硬件中、由处理器执行的软件模块中或两者的组合中。软件模块可驻存在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移除磁盘、CD-ROM,或此项技术中已知的任一其它形式的存储媒体中。示范性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息并将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体式。
因此,本发明的实施例可包含实施用于多通道DRAM系统中的负载平衡的方法的计算机可读媒体。因此,本发明并不限于所说明的实例,且用于执行本文中所描述的功能性的任何装置均包括在本发明的实施例中。
本发明的实施例可适当地用于包含有源集成电路的任何装置中,所述有源集成电路包含存储器以及用于测试和表征的芯片上电路。
上文所揭示的装置和方法通常被设计并配置成GDSII和GERBER计算机文件,存储在计算机可读媒体中。这些文件又被提供到基于这些文件来制造装置的制造处置器。所得产品为半导体晶片,其接着被切割成半导体裸片且封装成半导体芯片。所述芯片接着用于上文所描述的装置中。
虽然前文的揭示内容展示本发明的说明性实施例,但应注意:在不脱离如所附权利要求书所界定的本发明的范围的情况下,可在本文中进行各种变化及修改。无需以任何特定次序来执行根据本文中所述的本发明的实施例的方法权利要求项的功能、步骤及/或动作。此外,尽管可以单数形式描述或主张本发明的元件,但除非明确陈述对于单数的限制,否则也涵盖复数形式。

Claims (34)

1.一种用于多通道动态随机存取存储器DRAM系统中的负载平衡的方法,所述方法包括:
使存储器数据跨两个或两个以上存储器通道交错;
用存储器控制器控制对所述存储器通道的存取;
经由互连系统将总线主控装置耦合到所述存储器控制器;
将存储器请求从所述总线主控装置传输到所述存储器控制器;
响应于去往第一存储器控制器的存储器请求而检测第一存储器通道中的拥塞;
产生所述第一存储器通道的拥塞信号;以及
将所述拥塞信号传输到所述总线主控装置。
2.根据权利要求1所述的方法,其中响应于存储器请求而检测第一存储器通道中的拥塞包括跟踪去往所述第一存储器控制器的未完成的存储器请求,且在超过未完成的存储器请求的预定阈值数目的情况下检测到拥塞。
3.根据权利要求1所述的方法,其中所述拥塞信号包括单一二进制位来表示拥塞。
4.根据权利要求1所述的方法,其中所述拥塞信号包括两个或两个以上二进制位来表示一定范围的拥塞程度。
5.根据权利要求1所述的方法,其进一步包括响应于所述拥塞信号而撤消去往所述第一存储器控制器的所述存储器请求。
6.根据权利要求1所述的方法,其进一步包括响应于所述拥塞信号而将所述存储器请求重新路由到第二存储器控制器。
7.根据权利要求1所述的方法,其中所述DRAM系统集成在至少一个半导体裸片中。
8.根据权利要求1所述的方法,其中所述DRAM系统集成到选自由以下各项组成的群组的装置中:机顶盒、音乐播放器、视频播放器、娱乐单元、导航装置、通信装置、个人数字助理PDA、固定位置数据单元以及计算机。
9.一种多通道动态随机存取存储器DRAM系统,其包括:
跨两个或两个以上存储器通道交错的存储器数据;
用于控制对所述存储器通道的存取的存储器控制器;
经由互连系统耦合到所述存储器控制器的总线主控装置,其中所述总线主控装置经配置以将存储器请求传输到所述存储器控制器;以及
用于响应于存储器请求而产生耦合到第一存储器控制器的第一存储器通道的拥塞信号的逻辑。
10.根据权利要求9所述的DRAM系统,其中用于产生拥塞信号的逻辑包括用于跟踪去往所述第一存储器控制器的未完成的存储器请求且在超过未完成的存储器请求的预定阈值数目的情况下产生拥塞信号的逻辑。
11.根据权利要求9所述的DRAM系统,其中所述拥塞信号包括单一二进制位来指示拥塞。
12.根据权利要求9所述的DRAM系统,其中所述拥塞信号包括两个或两个以上二进制位来指示一定范围的拥塞程度。
13.根据权利要求9所述的DRAM系统,其进一步包括用于将所述拥塞信号传输到所述总线主控装置的逻辑。
14.根据权利要求13所述的DRAM系统,其进一步包括用以响应于所述拥塞信号而撤消去往所述第一存储器控制器的所述存储器请求的逻辑。
15.根据权利要求13所述的DRAM系统,其进一步包括用以响应于所述拥塞信号而将所述存储器请求重新路由到第二存储器控制器的逻辑。
16.根据权利要求9所述的DRAM系统,其集成在至少一个半导体裸片中。
17.根据权利要求9所述的DRAM系统,其集成到选自由以下各项组成的群组的装置中:机顶盒、音乐播放器、视频播放器、娱乐单元、导航装置、通信装置、个人数字助理PDA、固定位置数据单元以及计算机。
18.一种多通道动态随机存取存储器DRAM系统,其包括:
用于存取存储器数据的通道装置;
用于使所述存储器数据跨两个或两个以上通道装置交错的装置;
用于控制对所述通道装置的存取的控制器装置;
用于经由互连装置将总线主控装置耦合到所述控制器装置的装置;
用于将存储器请求从所述总线主控装置传输到所述控制器装置的装置;以及
用于响应于存储器请求而产生耦合到第一控制器装置的第一通道装置的拥塞指示的装置。
19.根据权利要求18所述的DRAM系统,其中用于产生拥塞信号的装置包括用于跟踪去往所述第一控制器装置的未完成的存储器请求的装置,以及用于在超过未完成的存储器请求的预定阈值数目的情况下产生所述拥塞信号的装置。
20.根据权利要求18所述的DRAM系统,其中所述拥塞指示包括用于指示拥塞的二进制信号装置。
21.根据权利要求18所述的DRAM系统,其中所述拥塞指示包括二进制信号装置来指示一定范围的拥塞程度。
22.根据权利要求18所述的DRAM系统,其进一步包括用于将所述拥塞指示传输到所述总线主控装置的装置。
23.根据权利要求22所述的DRAM系统,其进一步包括用于响应于所述拥塞指示而撤消去往所述第一控制器装置的所述存储器请求的装置。
24.根据权利要求22所述的DRAM系统,其进一步包括用于响应于所述拥塞指示而将所述存储器请求重新路由到第二控制器装置的装置。
25.根据权利要求18所述的DRAM系统,其集成在至少一个半导体裸片中。
26.根据权利要求18所述的DRAM系统,其集成到选自由以下各项组成的群组的装置中:机顶盒、音乐播放器、视频播放器、娱乐单元、导航装置、通信装置、个人数字助理PDA、固定位置数据单元以及计算机。
27.一种用于多通道动态随机存取存储器DRAM系统中的负载平衡的方法,所述方法包括:
用于使存储器数据跨两个或两个以上存储器通道交错的步骤;
用于用存储器控制器控制对所述存储器通道的存取的步骤;
用于经由互连系统将总线主控装置耦合到所述存储器控制器的步骤;
用于将存储器请求从所述总线主控装置传输到所述存储器控制器的步骤;
用于响应于去往第一存储器控制器的存储器请求而检测第一存储器通道中的拥塞的步骤;
用于产生所述第一存储器通道的拥塞信号的步骤;以及
用于将所述拥塞信号传输到所述总线主控装置的步骤。
28.根据权利要求27所述的方法,其中用于响应于存储器请求而检测第一存储器通道中的拥塞的步骤包括用于跟踪去往所述第一存储器控制器的未完成的存储器请求的步骤,以及用于在超过未完成的存储器请求的预定阈值数目的情况下检测到拥塞的步骤。
29.根据权利要求27所述的方法,其中所述拥塞信号包括单一二进制位来表示拥塞。
30.根据权利要求27所述的方法,其中所述拥塞信号包括两个或两个以上二进制位来表示一定范围的拥塞程度。
31.根据权利要求27所述的方法,其进一步包括用于响应于所述拥塞信号而撤消去往所述第一存储器控制器的所述存储器请求的步骤。
32.根据权利要求27所述的方法,其进一步包括用于响应于所述拥塞信号而将所述存储器请求重新路由到第二存储器控制器的步骤。
33.根据权利要求27所述的方法,其中所述DRAM系统集成在至少一个半导体裸片中。
34.根据权利要求27所述的方法,其中所述DRAM系统集成到选自由以下各项组成的群组的装置中:机顶盒、音乐播放器、视频播放器、娱乐单元、导航装置、通信装置、个人数字助理PDA、固定位置数据单元以及计算机。
CN201180039039.9A 2010-08-31 2011-08-31 多通道dram系统中的负载平衡方案 Expired - Fee Related CN103069402B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/872,282 2010-08-31
US12/872,282 US9268720B2 (en) 2010-08-31 2010-08-31 Load balancing scheme in multiple channel DRAM systems
PCT/US2011/050015 WO2012030992A1 (en) 2010-08-31 2011-08-31 Load balancing scheme in multiple channel dram systems

Publications (2)

Publication Number Publication Date
CN103069402A true CN103069402A (zh) 2013-04-24
CN103069402B CN103069402B (zh) 2016-03-30

Family

ID=44720128

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180039039.9A Expired - Fee Related CN103069402B (zh) 2010-08-31 2011-08-31 多通道dram系统中的负载平衡方案

Country Status (5)

Country Link
US (1) US9268720B2 (zh)
EP (2) EP2980705A1 (zh)
JP (1) JP5625114B2 (zh)
CN (1) CN103069402B (zh)
WO (1) WO2012030992A1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104461727A (zh) * 2013-09-16 2015-03-25 华为技术有限公司 内存模组访问方法及装置
CN105612501A (zh) * 2013-10-03 2016-05-25 高通股份有限公司 用于跨越具有非对称存储容量的多通道存储器架构对数据均匀交织的系统和方法
CN106063191A (zh) * 2013-11-12 2016-10-26 皮沃塔尔软件公司 流事件数据收集
CN106612240A (zh) * 2016-12-27 2017-05-03 郑州云海信息技术有限公司 一种存储高效网络连接系统及方法
CN106662984A (zh) * 2014-09-26 2017-05-10 英特尔公司 固态驱动器中不均匀通道加载的性能影响的降低
CN108027754A (zh) * 2015-08-13 2018-05-11 高通股份有限公司 在计算机处理系统中存储器子系统维护期间减少系统停机时间
CN111427836A (zh) * 2020-06-11 2020-07-17 杭州万高科技股份有限公司 一种总线资源配置调整的异构多核处理器

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150331615A1 (en) * 2012-11-20 2015-11-19 Empire Technology Development Llc Multi-element solid-state storage device management
KR20150106224A (ko) 2014-03-11 2015-09-21 삼성전자주식회사 시스템-온-칩 및 그의 부하 불균형 검출 방법
CN104954796B (zh) * 2014-03-28 2019-06-11 联咏科技股份有限公司 视频处理装置与其视频处理电路
KR102339779B1 (ko) 2015-04-06 2021-12-15 삼성전자주식회사 데이터 저장 장치, 이를 포함하는 데이터 처리 시스템, 및 상기 시스템의 작동 방법
KR102464801B1 (ko) 2015-04-14 2022-11-07 삼성전자주식회사 반도체 장치의 동작 방법 및 반도체 시스템
US10684968B2 (en) * 2017-06-15 2020-06-16 International Business Machines Corporation Conditional memory spreading for heterogeneous memory sizes
US11086534B2 (en) * 2018-06-28 2021-08-10 Apple Inc. Memory data distribution based on communication channel utilization
US11119665B2 (en) * 2018-12-06 2021-09-14 Advanced Micro Devices, Inc. Dynamic voltage and frequency scaling based on memory channel slack
US11520659B2 (en) 2020-01-13 2022-12-06 International Business Machines Corporation Refresh-hiding memory system staggered refresh
US11200119B2 (en) 2020-01-13 2021-12-14 International Business Machines Corporation Low latency availability in degraded redundant array of independent memory
TWI756810B (zh) * 2020-09-02 2022-03-01 瑞昱半導體股份有限公司 晶片與相關的晶片系統

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101140797A (zh) * 2007-08-20 2008-03-12 中兴通讯股份有限公司 同步动态存储器的读写方法和读写装置
US7415565B2 (en) * 2002-10-31 2008-08-19 Ring Technology Enterprises, Llc Methods and systems for a storage system with a program-controlled switch for routing data
CN101291275A (zh) * 2008-06-02 2008-10-22 杭州华三通信技术有限公司 Spi4.2总线桥接实现方法及spi4.2总线桥接器件
US20090031067A1 (en) * 2007-07-27 2009-01-29 Bartley Gerald K Spider Web Interconnect Topology Utilizing Multiple Port Connection
WO2009150475A1 (en) * 2008-06-12 2009-12-17 Metaforic Limited A method of protecting computer program code
US20100042759A1 (en) * 2007-06-25 2010-02-18 Sonics, Inc. Various methods and apparatus for address tiling and channel interleaving throughout the integrated system

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4451880A (en) 1980-10-31 1984-05-29 Honeywell Information Systems Inc. Memory controller with interleaved queuing apparatus
US5016167A (en) * 1987-12-21 1991-05-14 Amdahl Corporation Resource contention deadlock detection and prevention
JPH05314063A (ja) 1992-05-06 1993-11-26 Canon Inc 多重バス制御方式
JPH08278916A (ja) 1994-11-30 1996-10-22 Hitachi Ltd マルチチャネルメモリシステム、転送情報同期化方法及び信号転送回路
US6170023B1 (en) * 1998-10-07 2001-01-02 International Business Machines Corporation System for accessing an input/output device using multiple addresses
US6526462B1 (en) * 1999-11-19 2003-02-25 Hammam Elabd Programmable multi-tasking memory management system
US6789155B2 (en) * 2001-08-29 2004-09-07 Micron Technology, Inc. System and method for controlling multi-bank embedded DRAM
JP3900065B2 (ja) 2002-10-31 2007-04-04 日本電気株式会社 データ転送システム及び転送制御部並びにプログラム
US7305510B2 (en) 2004-06-25 2007-12-04 Via Technologies, Inc. Multiple master buses and slave buses transmitting simultaneously
WO2006132006A1 (ja) 2005-06-09 2006-12-14 Matsushita Electric Industrial Co., Ltd. メモリ制御装置及びメモリ制御方法
US7872657B1 (en) 2006-06-16 2011-01-18 Nvidia Corporation Memory addressing scheme using partition strides
US7849256B2 (en) * 2006-07-11 2010-12-07 Advanced Micro Devices, Inc. Memory controller with ring bus for interconnecting memory clients to memory devices
US20080022050A1 (en) 2006-07-18 2008-01-24 Via Technologies, Inc. Pre-Fetching Data for a Predictably Requesting Device
US9495290B2 (en) 2007-06-25 2016-11-15 Sonics, Inc. Various methods and apparatus to support outstanding requests to multiple targets while maintaining transaction ordering
US8914781B2 (en) 2008-10-24 2014-12-16 Microsoft Corporation Scalability analysis for server systems
US8266408B2 (en) * 2009-03-17 2012-09-11 Memoir Systems, Inc. System and method for storing data in a virtualized high speed memory system
US8819359B2 (en) 2009-06-29 2014-08-26 Oracle America, Inc. Hybrid interleaving in memory modules by interleaving physical addresses for a page across ranks in a memory module
US8341314B2 (en) * 2009-06-30 2012-12-25 Hewlett-Packard Development Company, L.P. Managing I/O request in storage system
TWI403897B (zh) * 2009-07-30 2013-08-01 Silicon Motion Inc 記憶裝置及其資料管理方法
US8443151B2 (en) * 2009-11-09 2013-05-14 Intel Corporation Prefetch optimization in shared resource multi-core systems
US20120054455A1 (en) 2010-08-31 2012-03-01 Qualcomm Incorporated Non-Uniform Interleaving Scheme In Multiple Channel DRAM System
US9218285B2 (en) * 2012-11-26 2015-12-22 Arm Limited Variable mapping of memory accesses to regions within a memory

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7415565B2 (en) * 2002-10-31 2008-08-19 Ring Technology Enterprises, Llc Methods and systems for a storage system with a program-controlled switch for routing data
US20100042759A1 (en) * 2007-06-25 2010-02-18 Sonics, Inc. Various methods and apparatus for address tiling and channel interleaving throughout the integrated system
US20090031067A1 (en) * 2007-07-27 2009-01-29 Bartley Gerald K Spider Web Interconnect Topology Utilizing Multiple Port Connection
CN101140797A (zh) * 2007-08-20 2008-03-12 中兴通讯股份有限公司 同步动态存储器的读写方法和读写装置
CN101291275A (zh) * 2008-06-02 2008-10-22 杭州华三通信技术有限公司 Spi4.2总线桥接实现方法及spi4.2总线桥接器件
WO2009150475A1 (en) * 2008-06-12 2009-12-17 Metaforic Limited A method of protecting computer program code

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104461727A (zh) * 2013-09-16 2015-03-25 华为技术有限公司 内存模组访问方法及装置
CN105612501A (zh) * 2013-10-03 2016-05-25 高通股份有限公司 用于跨越具有非对称存储容量的多通道存储器架构对数据均匀交织的系统和方法
CN105612501B (zh) * 2013-10-03 2018-11-13 高通股份有限公司 用于跨越具有非对称存储容量的多通道存储器架构对数据均匀交织的系统和方法
CN106063191A (zh) * 2013-11-12 2016-10-26 皮沃塔尔软件公司 流事件数据收集
CN106063191B (zh) * 2013-11-12 2019-09-17 皮沃塔尔软件公司 流事件数据收集
CN106662984A (zh) * 2014-09-26 2017-05-10 英特尔公司 固态驱动器中不均匀通道加载的性能影响的降低
CN108027754A (zh) * 2015-08-13 2018-05-11 高通股份有限公司 在计算机处理系统中存储器子系统维护期间减少系统停机时间
CN108027754B (zh) * 2015-08-13 2022-09-02 高通股份有限公司 计算机处理系统和促成计算机处理系统的维护的方法
CN106612240A (zh) * 2016-12-27 2017-05-03 郑州云海信息技术有限公司 一种存储高效网络连接系统及方法
CN106612240B (zh) * 2016-12-27 2019-07-30 郑州云海信息技术有限公司 一种存储高效网络连接系统及方法
CN111427836A (zh) * 2020-06-11 2020-07-17 杭州万高科技股份有限公司 一种总线资源配置调整的异构多核处理器
CN111427836B (zh) * 2020-06-11 2020-11-13 杭州万高科技股份有限公司 一种总线资源配置调整的异构多核处理器

Also Published As

Publication number Publication date
US9268720B2 (en) 2016-02-23
US20120054423A1 (en) 2012-03-01
JP2013534348A (ja) 2013-09-02
EP2612251B1 (en) 2015-09-16
EP2612251A1 (en) 2013-07-10
CN103069402B (zh) 2016-03-30
WO2012030992A1 (en) 2012-03-08
JP5625114B2 (ja) 2014-11-12
EP2980705A1 (en) 2016-02-03

Similar Documents

Publication Publication Date Title
CN103069402A (zh) 多通道dram系统中的负载平衡方案
US11915774B2 (en) Memory devices and methods for managing error regions
US20120054455A1 (en) Non-Uniform Interleaving Scheme In Multiple Channel DRAM System
US9652379B1 (en) System and method for reducing contentions in solid-state memory access
CN102177551B (zh) 与标准存储器模块管脚兼容的存储器模块中的独立可控制和可重新配置的虚拟存储器设备
TWI435326B (zh) 可變記憶體刷新裝置及方法
US8819359B2 (en) Hybrid interleaving in memory modules by interleaving physical addresses for a page across ranks in a memory module
US20060179206A1 (en) Programmable bank/timer address folding in memory devices
US8209497B2 (en) Multi-port memory and system using the same
CN105518784A (zh) 具有用于高可靠性操作的存储控制器的数据处理器和方法
US8364876B2 (en) Computer system
TW201342067A (zh) 用於排序記憶體回應之記憶體裝置,電腦系統及方法
KR20190127310A (ko) 데이터 처리 시스템 및 그 구동방법
CN103365801A (zh) 存储器系统、用于控制存储器系统的方法和信息处理设备
US20200348871A1 (en) Memory system, operating method thereof and computing system for classifying data according to read and write counts and storing the classified data in a plurality of types of memory devices
EP1313019B1 (en) Arbitration apparatus
WO2013119847A1 (en) Methods and devices for buffer allocation
CN113791822B (zh) 多内存通道的内存存取装置、方法和数据处理设备
KR20100127317A (ko) 멀티포트 메모리 슈퍼셀 및 데이터 경로 스위칭 회로를 갖는 집적 회로
US20220283951A1 (en) Apparatus and method for intelligent memory page management
US11797439B2 (en) Balancing memory-portion accesses
CN105304119B (zh) 刷新电路
EP3599554A1 (en) Improving read performance on a sata storage device behind a host bus adapter
KR20200055132A (ko) 메모리 시스템에서 채널 깊이 조절
CN108292262A (zh) 计算机存储器管理方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160330

Termination date: 20180831