CN107257964B - Dram电路、计算机系统和访问dram电路的方法 - Google Patents

Dram电路、计算机系统和访问dram电路的方法 Download PDF

Info

Publication number
CN107257964B
CN107257964B CN201680010586.7A CN201680010586A CN107257964B CN 107257964 B CN107257964 B CN 107257964B CN 201680010586 A CN201680010586 A CN 201680010586A CN 107257964 B CN107257964 B CN 107257964B
Authority
CN
China
Prior art keywords
processor
memory
dram
circuit
dynamic random
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.)
Active
Application number
CN201680010586.7A
Other languages
English (en)
Other versions
CN107257964A (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.)
Upmem SAS
Original Assignee
Upmem SAS
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 Upmem SAS filed Critical Upmem SAS
Publication of CN107257964A publication Critical patent/CN107257964A/zh
Application granted granted Critical
Publication of CN107257964B publication Critical patent/CN107257964B/zh
Active 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/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • 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/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1636Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement using refresh

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)

Abstract

本发明涉及一种存储器电路,其包括:包括至少一个存储体(418)的存储器阵列;第一处理器(420);以及处理器控制接口,其用于从中央处理器(P1、P2)接收去往第一处理器的数据处理指令,处理器控制接口被设计成当第一处理器已经完成访问存储器阵列中的至少一个存储体时向中央处理器指示所述存储体变得可以被该中央处理器访问。

Description

DRAM电路、计算机系统和访问DRAM电路的方法
技术领域
本公开内容涉及具有整合式处理器的DRAM(动态随机存取存储器)电路的领域以及与这样的存储器进行通信的方法。
背景技术
现代计算机通常包括处理电路,该处理电路耦接至一个或更多个动态随机存取存储器(DRAM)电路并且通常被实现为片上系统(SoC)。通常需要周期性刷新操作的这样的存储器是密集的并且相对快速地访问,因此在大多数计算机中被用作主RAM数据存储装置。然而,由于在SoC与DRAM电路之间要传送的数据量不断增加,这样的数据传送往往减慢计算机的操作并且导致相对高的能量消耗。
已经提出的解决方案是除了Soc中的处理器以外还提供其内部整合有一个或更多个处理器的DRAM电路。这样的解决方案通过允许将某些处理任务委派给DRAM处理器来降低在DRAM电路与SoC之间的数据传送的水平,使得可以在避免DRAM电路与SoC之间的数据传送的同时执行这些处理任务。
然而,提供具有整合式处理器的DRAM电路的挑战在于与SoC的对接耗时且实现成本高。
公布为WO2010/141221的国际专利申请描述了用于仲裁对与内部处理器相关联的存储器阵列的访问的系统和方法。仲裁涉及通过由用于传送请求信号和授权信号的电气连接构成的控制接口而将包括存储器控制器的外部处理器与内部处理器对接。
在例如公开WO2010/141221中描述的系统中的问题在于,必须修改结合有存储器控制器的外部处理器,以允许仲裁控制信号被传送至内部控制器以及从内部控制器传出,这导致解决方案昂贵且复杂。
发明内容
本公开内容的实施方式的目的在于至少部分地解决现有技术中的一个或更多个问题。
根据一个方面,提供一种存储器电路,其包括:存储器阵列,其包括一个或更多个存储体;第一处理器;以及处理器控制接口,其用于从中央处理器接收去往第一处理器的数据处理命令,处理器控制接口适于当第一处理器已经完成访问存储器阵列的一个或更多个存储体时向中央处理器指示这些存储体变得可以由中央处理器访问。
根据一个实施方式,存储器电路是动态随机存取存储器(DRAM)电路,该动态随机存取存储器(DRAM)电路还包括刷新控制电路,所述刷新控制电路适于:从中央处理器接收用于在存储器阵列的至少一个存储体中执行数据刷新操作的刷新事务;确定第一处理器是否正在访问所述至少一个存储体,以及如果是,则延迟数据刷新操作的开始时间。
根据一个实施方式,刷新控制电路包括刷新挂起寄存器,并且延迟数据刷新操作的开始时间包括在刷新挂起寄存器中指示刷新操作挂起。
根据一个实施方式,处理器控制接口包括在存储器电路的地址空间内可访问的一组控制寄存器。
根据一个实施方式,存储器电路的地址空间包括与该组控制寄存器永久关联的一个或更多个地址。
根据一个实施方式,存储器电路的地址空间包括与该组控制寄存器相关联的一个或更多个地址,并且该一个或更多个地址适于在寄存器去激活控制信号被激活的情况下被转变为存储器阵列的地址。
根据一个实施方式,存储器电路适于从中央处理器接收用于使该组控制寄存器在存储器电路的地址空间内可访问的激活信号。
根据一个实施方式,激活信号经由地址总线提供,并且可以由处理器控制接口检测。
根据一个实施方式,用于使该组控制寄存器可访问的存储器访问序列是其中不是所有字都被写入的脉冲访问序列。
根据一个实施方式,使该组控制寄存器可访问的存储器访问序列是在第一时间段内对所述存储体之一中的存储区内的存储单元进行的多个存储器访问。
根据一个实施方式,存储器电路适于基于以下中的一个或更多个来检测存储访问序列:接收存储器访问序列的时间段;以及存储器访问序列的持续时间。
根据另一方面,提供了一种系统,其包括:多个存储器电路;以及中央处理器,所述中央处理器经由公共的N位数据总线耦接至存储器电路中的每一个,每个存储器电路包括耦接至N位数据总线的N位总线接口。
根据另一方面,提供了一种访问存储器电路的方法,该存储器电路包括:具有一个或更多个存储体的存储器阵列、第一处理器以及处理器控制接口,该方法包括:由处理器控制接口从中央处理器接收去往第一处理器的数据处理命令;当第一处理器已经完成访问存储器阵列中的存储体中的一个或更多个时由处理器控制接口向中央处理器指示这些存储体变得可以被中央处理器访问。
根据一个实施方式,存储器电路是动态随机存取存储器(DRAM)电路,该方法还包括:由刷新控制电路接收用于在存储器阵列的存储体中执行数据刷新操作的刷新事务;由刷新控制电路确定第一处理器是否正在访问存储体,以及如果是,则延迟数据刷新操作的开始时间。
根据一个实施方式,处理器控制接口包括一组控制寄存器,该方法还包括:由处理器控制接口从中央处理器接收用于使该组控制寄存器在存储器电路的地址空间内可访问的激活信号。
附图说明
通过阅读以下参照附图作为说明而非限制给出的实施方式的详细描述,上述和其他特征和优点将变得明显,在附图中:
图1示意性地示出了根据示例实施方式的、包括具有整合式处理器的DRAM电路的计算机系统;
图2示意性地示出了根据一个示例的DRAM数据总线;
图3示意性地示出了根据本公开内容的实施方式的DRAM数据总线;
图4更详细地示意性示出根据示例实施方式的图1的计算机系统的一部分;
图5更详细地示意性示出了根据示例实施方式的图4的存储体;
图6是示出根据示例实施方式的、将处理任务委派给DRAM处理器的方法中的操作的流程图;
图7示意性地示出了根据示例实施方式的刷新控制电路;
图8是示出根据示例实施方式的刷新控制方法中的各步骤的流程图;
图9详细地示意性示出根据另一示例实施方式的图4的DRAM电路的一部分;以及
图10是示出根据示例实施方式的使DRAM处理器控制接口在DRAM地址空间中可见的方法中的操作的流程图。
具体实施方式
本公开内容描述了根据一个示例的包括整合式处理器的存储器电路的实施方式,在该示例中存储器电路是DRAM电路。尽管在图中未示出,但是本领域的技术人员将会理解,DRAM电路是其中数据由存储单元的阵列存储的存储器件,每个存储单元包括用于存储表示数据位的电压电平的电容器和用于控制对存储单元的访问的开关。然而,本文描述的原理可以容易地应用于可能需要或可能不需要刷新操作的其他类型的存储器电路。本文描述的实施方式的优点在于,一个或更多个处理器在存储器电路中的整合不会妨碍未提供与这样的整合式处理器的通信的传统存储器接口被用于与存储器电路进行通信。
图1示意性地示出了根据示例实施方式的计算机系统100。计算机系统100包括在该示例中实现为片上系统(SoC)的中央处理设备102,中央处理设备102包括一个或更多个处理器(未示出)和用于与若干DRAM电路进行通信的DDR主接口(DDR MASTER INTERFACE)103。
在图1的示例中,存在标记为DRAM0至DRAM3的四个DRAM电路,但是在替选实施方式中,可以存在任何数量的DRAM电路。
DRAM电路DRAM0包括DRAM存储器阵列(MA)104和一个或更多个内部处理器(P)106,内部处理器(P)将在下文中被称作DRAM处理器。DRAM电路DRAM0例如还包括与每个DRAM处理器相关联的DRAM处理器控制接口(I)107,以允许在SoC 102中的一个或更多个处理器与对应的处理器106进行通信并且控制对应的处理器106。DDR从接口108例如被设置在DRAM电路DRAM0中以用于与DDR主接口103进行通信。
类似地,DRAM电路DRAM1、DRAM2以及DRAM3分别包括DRAM存储器阵列114、124、134以及一个或更多个内部处理器(P)116、126、136。DRAM电路DRAM1、DRAM2、DRAM3还例如分别包括DRAM处理器控制接口117、127、137,以允许SoC 102中的一个或更多个处理器分别控制处理器116、126、136。DDR从接口118、128、138例如被设置在电路DRAM1、DRAM2、DRAM3中以用于与DDR主接口103进行通信。
DDR主接口103与从接口108、118、128、138中的每一个之间的通信例如经由总线链路140,总线链路140包括地址总线、数据总线,并且在一些情况下包括一个或更多个另外的控制线(在图1中未示出)。通过总线链路140与DRAM电路DRAM0至DRAM3的通信例如遵从DDR协议之一。
术语“DDR协议”在本文中被用于指定以下协议中的任何协议:DDR1、DDR2、DDR3、DDR4、RLDRAM(减少延迟的随机存取存储器)、RLDRAM2以及与这些协议相似的任何协议。
图2示意性地示出用于将SoC(未示出)连接至四个DRAM电路DRAM0至DRAM3的64位宽数据总线(DATABUS)。可以看出,数据总线被拆分,使得每个电路DRAM0至DRAM3接收64位宽数据总线的16位。例如,DRAM0电路接收位0至15并且包含字节0、1、8、9、16、17等,DRAM1电路接收位16至31并且包含字节2、3、10、11、18、19等,DRAM2电路接收位32至47并且包含字节4、5、12、13、20、21等,以及DRAM3电路接收位48至63并且包含字节6、7、14、15、22、23等。这样的布置的优点在于不需要单独寻址各个DRAM电路。然而,当处理器被整合在每个DRAM电路中时,提供图2的数据总线布置的缺点在于每个DRAM电路存储非连续的数据,这导致在SoC处理器的控制下执行该数据的任何处理的高复杂度。
图3示意性地示出了用于将SoC(仍未示出)连接至四个DRAM电路DRAM0至DRAM3的64位宽数据总线(DATA BUS)。在该示例中,每个DRAM电路包括耦接至64位数据总线的64位总线接口,因此每个DRAM电路接收在数据总线上传输的所有位。因此,每个DRAM电路包含总存储器的连续部分。更一般地,假设SoC的数据总线是N位,其中N是等于或大于2的整数,则DRAM电路中的每一个也具有N位数据总线。
还提供了一种机制,其例如使得SoC能够针对每个DRAM存储器访问选择DRAM电路。
在一个实施方式中,SoC或附加的地址解码电路能够在输出线上提供片选信号CS。如图3中的虚线CS所示,例如为每个DRAM电路提供信号CS,以便针对给定的存储器访问选择这些DRAM电路之一。在存在四个DRAM电路的情况下,信号CS例如是2位信号,值“00”、“01”、“10”、“11”分别与DRAM电路DRAM0、DRAM1、DRAM2和DRAM3相关联。如果存在不同数量的DRAM电路,则信号CS可以包括不同数量的位。
在另一实施方式中,SoC或附加的地址解码电路能够向每个DRAM电路提供专用片选信号CS。在这种情况下,虚线CS是包括提供给DRAM0电路的专用信号CS[0]、提供给DRAM1电路的专用信号CS[1]、提供给DRAM2电路的专用信号CS[2]、以及提供给DRAM3电路的专用信号CS[3]的4位宽总线。
在替选实施方式中,DRAM电路中的每一个适于解码总地址范围中的不同地址范围。为此,DRAM电路DRAM0至DRAM3的地址解码器300至303分别具有例如各自适于解码对应的地址范围的电路。然而,这样的解决方案的缺点在于,由于DRAM电路彼此不再相同,因此增加了制造过程的复杂性。
另一替选解决方案是提供一组分别与每个地址解码器300至303相关联的熔丝,所述熔丝分别由虚线矩形310至313表示。熔丝例如是由激光器通过施加在熔丝两端的电压或通过熔丝的电流进行编程的类型,并且它们在DRAM电路的制造之后被编程,使得每个DRAM电路被配置成解码特定的地址范围。
作为又一替选解决方案,每个DRAM电路接受的地址范围可以通过在电路的重置操作之后或通电之后直接被提供给DRAM电路的输入引脚的输入信号来被电气地配置。输入引脚可以是为此特定目的提供的专用引脚,或者可以在配置阶段期间使用DRAM电路的标准输入/输出引脚来实现限定的地址范围。
应该注意,图3的数据总线可能导致数据线的电容增加,其中每个数据线被耦接至不止一个DRAM电路。为了应对这种情况,可以在每个数据线上添加缓冲电路。这可能会将存储器访问的等待时间增加一个或更多个周期,但是可能会导致总等待时间的百分比增长相对不明显。此外或可替选地,如果DRAM电路被安装在符合DIMM(双列直插式存储器模块)标准之一的存储器模块中,则对于本领域的技术人员明显的是,附加的线电容和/或缓冲电路的添加可以被这样的DIMM存储器模块所掩蔽。
图4更详细地示意示出了SoC 102和DRAM电路DRAM0。其它DRAM电路DRAM1至DRAM3例如包括相似的结构。
SoC 102例如包括处理器P1和P2,每个处理器能够访问DRAM电路DRAM0。处理器P1、P2例如每个由被存储在对应的指令存储器(在图4中未示出)中的指令控制。尽管在图4的示例中,SoC中存在两个处理器,但是在替选实施方式中,可以存在任何数量的处理器。
DRAM电路DRAM0例如包括:多个子存储器406、408、410和412;包括DRAM电路的全局DRAM处理器控制接口(GI)的公共DDR从接口(DDR SLAVE INTERFACE)414;以及耦接至子存储器中的每一个的公共刷新控制器(REFRESH CONTROLLER)416。尽管在图4的示例中存在四个子存储器,但是可以存在任何数量M个子存储器。
详细示出了子存储器406,并且其他子存储器例如包括相同的元件。子存储器406例如包括形成DRAM电路DRAM0的存储器阵列的子部分的存储体(MEMORY BANK)418。子存储器406还包括例如耦接至存储体418的处理器(DRAM PROCESSOR)420,处理器420包括:具有本地DRAM处理器控制接口(LI)423的存储体控制电路(MEMORY ARRAY CONTROL(存储器阵列控制))422、刷新控制电路(REFRESH CONTROL)424、指令存储器425、处理管线(PIPELINE)426、以及处理器的本地存储器(LOCALMEMORY)428。
在图4的实施方式中,DRAM0电路的DRAM处理器控制接口由全局接口415和每个子存储器中的本地接口423来实现。然而,在替选实施方式中,DRAM处理器控制接口可以仅由全局接口415或仅由每个子存储器中的本地接口423来实现。
如下面将更详细地描述的,刷新控制电路424允许在由DRAM处理器之一进行数据处理操作的同时对由子存储器接收的刷新事务进行控制。
存储体控制电路422例如提供去往该存储体的DDR存储器请求与DRAM处理器请求之间的多路复用。
处理管线426例如包括在存储在指令存储器425中的指令的控制下操作的数据处理元件。假设DRAM处理器相对于SoC处理器具有补充作用,则它们例如使用不同的指令集。例如,与SoC处理器使用的指令集相比,DRAM处理器使用缩减的指令集。例如,在一些实施方式中,由DRAM处理器执行的一个或更多个指令由SoC处理器通过全局接口415和/或本地接口423直接写入DRAM处理器指令存储器425中。可替选地或另外,由DRAM处理器执行的一个或更多个指令由SoC处理器直接写入存储体418中,然后SoC处理器可以指示DRAM处理器将来自存储体418的指令加载到其指令存储器425中。
本地存储器428例如在对存储体418中保存的数据执行操作时临时地或以其他方式存储由处理管线426使用的数据。
尽管在图4中未示出,但是在SoC与DRAM电路之间可能还存在一个或更多个其他中间电路。例如,在按照所谓的完全寄存器型或完全缓冲的DIMM标准安装DRAM电路的情况下,可以提供高级存储缓冲器(AMB)以允许附加的复杂处理功能。
图5更详细地示意示出了根据示例实施方式的图4的存储体418。如图所示,存储体418例如包括DRAM存储器行(MEMORY ROW)502的块和访问寄存器(ACCESS REGISTER)504。
在DRAM电路DRAM0的存储体418的地址的读操作期间,由地址的一部分选择存储体418。然后,基于该地址识别存储体18的要读取的行,并且该行的数据被加载到访问寄存器504中。然后,可以从访问寄存器504读出形成该行的一个或更多个字,并且将形成该行的一个或更多个字提供给SoC 102的处理器、或者在要执行内部处理操作的情况下提供给处理器420的本地存储器428。
在DRAM电路DRAM0的存储体418的地址的写操作期间,由地址的一部分选择存储体418。然后,基于该地址识别存储体418的要写的行,并且将该行加载到访问寄存器504中。然后,形成该行的一个或更多个字可以被写入由SoC 102的处理器访问的访问寄存器、或者在要执行内部处理操作的情况下被写入处理器420的本地存储器428。当访问寄存器504被重新用于访问存储体502的另一行时,或者如果要执行刷新操作,则访问寄存器504的内容被重新写到存储体418的相应行中。
应该注意,从存储器行502到访问寄存器504或者从访问寄存器504到存储体的存储器行502的数据行的传递操作是在几个时钟周期内执行的相对慢的操作,并且一旦它们开始就不应当被中断。
此外,SoC处理器P1、P2和/或内部DRAM处理器不可能以精细的交错的方式访问DRAM电路中的同一个存储体。例如,以下场景说明如下:
-DRAM处理器开始利用存储体的行之一加载存储体的访问寄存器,该操作需要几个周期;以及
-在加载操作结束之前,SoC处理器之一请求将存储体的另一行加载到相同的访问寄存器中,SoC处理器期望在设定的周期数之内完成该加载操作。
这增加了潜在问题,因为DDR协议不允许来自SoC处理器的请求被忽略或者被延迟,并且存储体电路也不允许在存储体中的加载操作被中途取消。此外,DDR协议没有限定允许DRAM电路通知SoC处理器访问它的任何机制:
-不能立即处理存储器访问请求;
-请求的数据不能立即可用;或者
-请求的数据变得可用的时间。
因此,在以上强调的情况下,SoC处理器可能被考虑为,在与加载操作相关联的设定数目的周期之后访问寄存器包含所请求的数据,而实际上并不是这样。
至少部分通过限定由也与DDR协议兼容的SoC处理器和DRAM处理器使用的访问协议来解决该问题,如现在参照图6详细描述的。
图6是示出根据本公开内容的实施方式的访问DRAM电路的方法中的操作的流程图。
在操作601中,SoC的一个或更多个处理器加载将要被一个或更多个DRAM处理器处理的数据加载到DRAM电路的相应的存储体中。例如,如果图4的子存储器406的处理器420要执行处理操作,则数据例如被加载到存储体418中。
在操作602中,SoC处理器中的一个或更多个使用DRAM电路的DRAM处理器控制接口向一个或更多个DRAM处理器指示它们可以开始处理数据。
在操作603中,执行由DRAM处理器进行的数据处理,并且在该处理期间,由SoC的处理器执行的软件不访问相应的存储体。在SoC处理器之一确实尝试访问存储体同时DRAM处理器之一正在处理该存储体中的数据的情况下,则例如提供无限响应,并且在一些实施方式中,可以在DRAM处理器控制接口的寄存器中设置错误标志,以指示发生该错误并且便利调试。
在一些实施方式中,每个DRAM处理器专用于其子存储器中的给定存储体。或者,在一些情况下,不止一个DRAM处理器可能能够访问相同的存储体。在这种情况下,可以在DRAM处理器之间实现仲裁过程,以允许DRAM处理器正确地访问存储体。本领域的技术人员将认识到,这样的仲裁过程不受用于与SoC通信的DDR接口的限制,并且因此可以实现任何适当的仲裁过程。
在后续的操作604中,确定由DRAM处理器进行的数据处理何时完成。完成后,接下来的操作是605,其中存储体变得可以由SoC处理器访问。例如,DRAM处理器控制接口被用于向由SoC处理器执行的软件通知DRAM处理器已经完成对存储体中的数据的处理。例如,DRAM处理器控制接口包括可由SoC处理器访问的寄存器,所述寄存器包括指示DRAM处理器是否已经完成其任务或者至少已经完成任务中的其需要访问存储体的部分的状态位。当DRAM处理器已经完成对存储体中的数据的处理并且已经将其释放使得其变得可以被SoC处理器再次访问时,DRAM处理器例如被配置成不再访问存储体,直到由SoC处理器指示执行另一处理操作。
在一些情况下,可能允许SoC处理器中途停止由DRAM处理器进行的处理,以快速访问存储在相关存储体中的数据。例如,这在由SoC处理器执行的高优先级任务的情况下会是适当的。这通过例如经由DRAM处理器控制接口激活停止命令来实现。例如,在接收到停止命令以后,DRAM处理器需要几个周期来完成一个或更多个当前访问操作,并且当存储体准备好被访问时,经由DRAM处理器控制接口通知SoC处理器。
如关于图6描述的DRAM存储器访问方法的优点在于其确保DRAM处理器决不会与SoC处理器竞争。此外,SoC处理器能够按照DDR类型协议以绝对标准的方式访问DRAM电路的存储体。
当然,在DRAM处理器正在处理数据时,SoC处理器将被拒绝访问某些存储体。然而,由于每个DRAM电路中可能存在几个存储体,一个DIMM模块中可能存在几个DRAM电路,以及潜在地可能存在几个DIMM模块,因此不可能阻断SoC处理器的操作。实际上,其他DRAM处理器的先前请求的处理操作的结果可能可用于收集。
图7更详细地示意示出了根据示例实施方式的DRAM子存储器的刷新控制电路(REFRESH CONTROL)424。
如上所述,DRAM电路需要周期性的刷新操作,以防止数据丢失。例如,某些DRAM技术可能通常需要在64ms的周期内刷新存储体的所有线。例如,被整合在SoC 102的存储控制器中的刷新控制系统生成周期性刷新事务,其在一些情况下可以作为对于给定DRAM电路将多个刷新事务分组的刷新数据包而被传输。
应该注意,在刷新周期中通常存在一定容限,以允许刷新操作被延迟例如至少几十微秒。在一些情况下,在下一次刷新操作到来之前执行刷新操作就足够了。此外,刷新操作不会修改由存储体保存的数据。
刷新控制电路424有利地允许刷新操作被延迟直到DRAM处理器结束访问存储体。
刷新控制电路424接收刷新事务(REFRESH),并且例如包括刷新挂起寄存器(REFRESH PENDING)702以及延迟刷新计数器(DELAYED REFRESH COUNTER)704。
现在将参照图8更详细地描述图7的刷新控制电路424的操作。
图8是示出处理刷新事务的方法中的操作的流程图。该方法例如由DRAM电路的子存储器406至412中的每一个的刷新控制电路424本地执行。最初,假设DRAM电路——例如图4的电路DRAM0——已经接收到刷新事务,刷新控制器416已经将刷新事务传播到子存储器406、408、410、412中的每一个的刷新控制电路424,并且能够立即执行刷新操作的那些刷新控制电路424立即执行刷新操作。
在操作801中,子存储器之一的刷新控制电路424接收刷新事务,而其存储体被由DRAM处理器420访问的存储体占据。
在操作802中,延迟刷新计数器704存储刷新事务,并且例如在刷新挂起寄存器702中指示刷新事务挂起。例如一旦完成当前存储体访问就发起刷新事务。例如仅在完成刷新操作之后才重置刷新挂起寄存器702。刷新挂起寄存器702例如可以由DRAM处理器和SoC处理器访问,并且这些处理器例如被配置成在刷新挂起寄存器被重置之前不尝试访问存储体。在一些实施方式中,DRAM处理器控制接口的状态位例如被用于指示处理操作已经完成,并且还向SoC指示不再有挂起刷新事务。
图9更详细地示意示出了根据示例实施方式的图4的子存储器406的一部分。
存储体418例如耦接至地址总线(ADDR BUS)并且经由双向多路复用器902耦接至数据总线(DATABUS)。特别地,双向多路复用器例如具有一对输入/输出端口,一个被耦接至存储体418,另一个被耦接至DRAM处理器控制接口(DRAM PROCESSOR CONTROL INTERFACE)904,其例如对应于全局接口415和/或本地接口423。多路复用器902的另外的输入/输出端口被耦接至数据总线,并且可以基于由地址解码器906提供的选择信号而被耦接至存储体418或接口904。
接口904例如包括一个或更多个控制寄存器908并且可选地包括一些共享存储器910。共享存储器910的目的在于例如允许将信息传递至DRAM处理器或者从DRAM处理器传递信息而不会将其停止。接口904例如允许以下功能中的至少一个或更多个:
-初始化给定DRAM电路中的DRAM处理器;
-向DRAM处理器传送参数并且发起DRAM处理器的程序执行;
-读取关于DRAM处理器的结果和状态信息;以及
-停止DRAM处理器。
也可以使用DRAM处理器控制接口来实现这里未列出的其他功能。
DRAM处理器控制接口例如还允许由给定DRAM电路的DRAM处理器中的一个或更多个的子集来执行操作,或者由给定DRAM电路的所有DRAM处理器全局地执行操作。
接口904例如构成DRAM电路的可寻址存储空间的一部分。
在一些实施方式中,DRAM电路的可寻址存储空间大于DRAM电路的存储体中的可寻址存储空间,以允许接口904的地址位置可以由SoC的处理器永久地访问。在这样的情况下,如果地址处于与接口904相关联的地址范围内,则地址解码器906例如控制多路复用器902将数据总线耦接至接口904。
或者,在一些实施方式中,接口904的地址位置最初对于SoC是可见的,并且如果不需要接口904则由特定的去激活命令致使其不可访问,这意味着例如不使用DRAM处理器。例如,在这样的实施方式中,紧接着DRAM电路的重置或通电之后,某个地址范围对应于DRAM处理器控制接口904的存储空间。然而,如果去激活命令被激活,则该地址范围可以转变为标准DRAM存储空间。
在其他实施方式中,接口904的地址位置最初对于SoC是不可见的,并且如果使用接口则可以通过特定的激活命令致使其可访问,如现在将参照图10描述的。
图10是示出使DRAM处理器控制接口在DRAM电路的地址空间内可访问的方法的操作的流程图。
在操作1001中,执行DRAM重置操作,或者给DRAM电路通电。最初,某个地址范围对应于紧接DRAM电路的重置或通电之后DRAM电路的标准DRAM地址空间。
在操作1002中,例如由DRAM处理器控制接口904和/或地址解码器906确定是否已经接收到接口激活命令。如果接收到这样的命令,则接下来的操作是1003。
在操作1003中,通过将地址范围变换到DRAM处理器控制接口904的存储空间,使得DRAM处理器控制接口在DRAM电路的地址空间内可见。
激活或去激活命令例如对应于从SoC经由DRAM电路的专用输入引脚被传送至地址解码器906的信号,如图9中由虚线914表示。
或者,去激活或激活命令例如对应于一个或更多个控制寄存器916中保存的值,一个或更多个控制寄存器916存在于用于诸如MRS(模式寄存器组)命令这样的专门事务的某些DRAM电路中。例如,当地址总线上的地址处于由控制寄存器916限定的地址范围内时,地址解码器906控制多路复用器902将数据总线耦接至接口904。替代利用在某些DRAM电路中存在的现有寄存器,可以添加一个或更多个新寄存器,其中一个或更多个新寄存器例如被配置成可以使用MRS事务来访问。
作为又一替选方案,可以由SoC经由DRAM电路的标准存储器总线、例如使用地址总线来传送激活或去激活信号。为此,地址解码器906和/或接口904适于检测来自SoC的特定命令序列,特定命令序列在本文将被称为魔术序列。魔术序列例如是与虚拟存储访问相对应的命令序列,换句话说,魔术序列是遵从用于与DRAM电路进行通信的标准协议但是可以与真实存储器访问相区别的命令序列。其例如被选择为在DRAM电路的正常工作下极不可能或不太可能发生的命令序列。替代单个魔术序列,在一些实施方式中,可以存在几个魔术序列,并且接口906的地址范围例如取决于应用哪个魔术序列。
在一些实施方式中,为了避免魔术序列的误报检测,DRAM电路例如包括时钟周期计数器或者刷新计数器,时钟周期计数器或者刷新计数器对已经接收的时钟周期数量或刷新事务数量进行计数。然后,如果是以下情况,则例如排除将序列看作是魔术序列:
-其在第一时刻之前即在第一数目的时钟周期或刷新操作之前到达,例如在完全完成启动序列之前到达,这意味着其可能在启动期间被意外地生成;
-其在第二时刻之后即在第二数目的时钟周期或刷新操作之后到达,例如在完成启动序列之后很长时间后到达,而管理DRAM处理器并且可能生成魔术序列的软件驱动器一般在紧接着操作系统被加载之后并且应用被加载之前被激活;
-其花费多于一段时间发生,即超过一定数量的时钟周期或刷新操作,而实际的魔术序列很可能在相对紧凑的时间段内发生。
魔术序列的一个示例是,一旦高速缓冲存储器已经被激活,SoC处理器进行的对存储器的相同区域的多个连续访问,而没有对存储器的其他区域的任何其他中间访问。特别地,通常在启动序列期间非常早地激活高速缓冲存储器,这是因为SoC处理器往往非常缓慢地操作,直到高速缓冲存储器被激活。一旦激活高速缓冲存储器,在相同的存储区域内出现多个连续访问是非常不可能的。
魔术序列的另一示例是限定某些非高速缓存存储区域,然后对这些区域进行多次连续的访问。特别地,现代处理器通常包括MMU(存储器管理单元),其允许指示存储区域不可高速缓存。通常,应用程序没有理由要求存储器的一部分不可高速缓存,因为这将导致性能的大幅降低,而没有任何相反的优势。如果高速缓存接通,这意味着高速缓存被使用,则几乎不会对相同的DRAM存储区域进行多个连续的访问。因此,魔术序列例如通过存在对给定DRAM存储区域的多个存储访问来被检测。
作为魔术序列的又一示例,可以使用在直写(write through)时可高速缓存存储器的事实,如现在将更详细地描述的那样。
当存储区域可缓存时,根据操作的“读分配”模式的读操作包括:
a.验证读操作的目标区域是否已经在高速缓存中;
b.(i)如果目标区域已经在高速缓存中,则读取高速缓存线,并且完成读操作;
b.(ii)如果目标区域尚未在高速缓存中,则将目标区域加载到高速缓存中,然后读取高速缓存线,并且完成读操作。
可以使用两个模式中的一个即“写分配”模式或“直写”模式来执行写操作。
根据写分配模式的写操作包括:
a.验证写操作的目标区域是否已经在高速缓存中;
b.(i)如果目标区域已经在高速缓存中,则写缓存线,并且完成写操作;
b.(ii)如果目标区域尚未在高速缓存中,则将目标区域加载到高速缓存线,然后写入高速缓存线,并且完成写操作;
c.当高速缓存线从高速缓存中被移除并且被用于更新主存储器时,数据将从高速缓存被写入主存储器。
根据直写模式的写操作包括:
a.验证写操作的目标区域是否已经在高速缓存中;
b.如果目标区域已经在高速缓存中,则写入相应的高速缓存线;
c.不管目标区域是否已经在高速缓存中,都将数据写入主存储器中。
直写模式可以使用脉冲写事务,其中事务的一些字未被写入,因为脉冲长度比要写入的数据长。另一方面,写分配模式仅使用其中写入事务的所有字的脉冲写事务。
SoC的处理器例如能够经由MMU来指定对存储器的每一页的访问是否:
1)可高速缓存;或者
2)使用读分配和通常称作“写分配”模式的写分配可高速缓存;或者
3)使用读分配和通常称作“直写”模式的直写可高速缓存。
在这些模式中,通常写分配模式提供最佳性能。然而,直写模式在某些硬件配置中使用,例如,如果存在帧缓冲器,则该帧缓冲器由不具有执行总线监听的能力的显示处理器读取,因此无法从处理器的高速缓存中取回要读取的数据。
在现代SoC中,处理器能够使用总线监听,以取回要在另一处理器的缓存中读取的数据。因此,通常不需要使用直写模式。
因此,魔术序列可以对应于使用直写模式进行的访问,该访问可以通过执行其中不写入某些字的脉冲访问这一事实来检测。例如,写激活信号对于至少一个数据值被去激活。
魔术序列的另一示例是使用在时间和空间中异常的位置的一组存储器访问。特别地,当使用高速缓存时,使用高速缓存而不是DRAM电路的存储体来执行对相同存储地址的重复访问。因此,例如在几个字内,并且在相对短的时间段内,例如在几百微秒内,存储体的相对小的区域内的重复访问可以被认为是解释为魔术序列的不可能事件。
本文描述的实施方式的优点在于具有内部处理器的DRAM电路可以根据DDR协议进行操作,同时通过在一定程度上减少在DRAM电路与SoC之间的数据传送操作来允许性能改进。此外,通过将处理器控制接口实现为在存储器电路的地址空间内可访问的一组控制寄存器,可以在中央处理器中没有专用硬件的情况下实现接口。因此,这样的解决方案可以被应用于中央处理器设备的现有设计,而不需要对硬件进行改变。特别地,接口例如由中央处理器执行的软件实现,该软件实现访问排除协议,以防止中央处理器在内部处理器执行操作时访问存储器阵列中的一个或更多个存储体。中央处理器例如能够知道内部处理器何时执行操作,这是因为中央处理器负责将处理命令指向内部处理器,并且可以经由处理器控制接口访问指示内部处理器何时完成操作的数据。因此,访问排除协议阻止来自中央处理器和内部处理器的同时访问尝试,从而避免这些处理器之间的冲突仲裁的需要。
提供用于延迟存储器电路内的刷新操作的机制的优点在于,中央处理器可以以标准的方式产生刷新操作,例如通过中央处理器的存储控制器。因此,存储控制器不需要知道在由存储器电路的内部处理器正在执行的进程中有哪些操作。
已经描述了至少一个示意性实施方式,本领域的技术人员将容易地做出各种改变、修改和改进。
例如,对于本领域的技术人员明显的是,尽管已经描述了针对每个DRAM处理器存在一个DRAM处理器控制接口的实施方式,但是在一些实施方式中,一个这样的接口可以在几个处理器之间共享。
此外,对于本领域的技术人员明显的是,可以在替选实施方式中以任意组合方式组合关于各种实施方式所描述的各种特征。

Claims (12)

1.一种动态随机存取存储器电路,包括:
存储器阵列(104),包括一个或更多个存储体(418);
第一处理器(420);以及
处理器控制接口(904),用于从中央处理器(P1、P2)接收去往所述第一处理器的数据处理命令,其中,当所述第一处理器(420)正在处理数据时所述中央处理器(P1、P2)被拒绝访问所述存储器阵列(104)中的所述存储体(418)中一个或更多个存储体,以及其中,所述处理器控制接口(904)能够当所述第一处理器已经完成访问所述存储器阵列中的所述存储体中的一个或更多个存储体时向所述中央处理器指示这些存储体变得能够被所述中央处理器访问,所述处理器控制接口(904)包括在所述动态随机存取存储器电路的地址空间内能够访问的一组控制寄存器(908)并且不包括在所述第一处理器(420)与所述中央处理器(P1、P2)之间的任何专用控制线,
其中,所述动态随机存取存储器电路还包括刷新控制电路(424),所述刷新控制电路(424)能够:
从所述中央处理器接收用于在所述存储器阵列的至少一个存储体(418)中执行数据刷新操作的刷新事务;和
确定所述第一处理器是否正在访问所述至少一个存储体(418),并且如果是,则延迟所述数据刷新操作的开始时间。
2.根据权利要求1所述的动态随机存取存储器电路,其中,所述刷新控制电路(424)包括刷新挂起寄存器(702),并且其中,延迟所述数据刷新操作的开始时间包括在所述刷新挂起寄存器(702)中指示所述刷新操作挂起。
3.根据权利要求2所述的动态随机存取存储器电路,其中,所述动态随机存取存储器电路的地址空间包括与所述一组控制寄存器(908)永久关联的一个或更多个地址。
4.根据权利要求2所述的动态随机存取存储器电路,其中,所述动态随机存取存储器电路的地址空间包括与所述一组控制寄存器(908)相关联的一个或更多个地址,并且其中,所述一个或更多个地址能够在寄存器去激活控制信号被激活的情况下被转变为所述存储器阵列的地址。
5.根据权利要求2所述的动态随机存取存储器电路,其能够从所述中央处理器(P1、P2)接收用于使所述一组控制寄存器在所述动态随机存取存储器电路的地址空间内能够被访问的激活信号。
6.根据权利要求5所述的动态随机存取存储器电路,其中,所述激活信号借助于地址总线来被提供,并且能够由所述处理器控制接口检测。
7.根据权利要求6所述的动态随机存取存储器电路,其中,所述激活信号对应于用于使所述一组控制寄存器能够被访问的存储器访问序列,以及其中,所述存储器访问序列是其中不是所有字都被写入的脉冲访问序列。
8.根据权利要求6所述的动态随机存取存储器电路,其中,所述激活信号对应于用于使所述一组控制寄存器能够被访问的存储器访问序列,以及其中,所述存储器访问序列是在第一时间段内对所述存储体之一中的存储区内的存储单元进行的多个存储器访问。
9.根据权利要求7或8所述的动态随机存取存储器电路,其中,所述动态随机存取存储器电路能够基于以下中的一个或更多个来检测所述存储器访问序列:
接收所述存储器访问序列的时间段;以及
所述存储器访问序列的持续时间。
10.一种计算机系统,包括:
多个根据权利要求1至9中任一项所述的动态随机存取存储器电路;以及
中央处理器(P1、P2),所述中央处理器经由N位公共数据总线耦接至所述动态随机存取存储器电路中的每一个,每个动态随机存取存储器电路包括耦接至所述N位数据总线的N位总线接口。
11.一种访问动态随机存取存储器电路的方法,所述动态随机存取存储器电路包括:具有一个或更多个存储体(418)的存储器阵列(104);第一处理器(420);以及处理器控制接口(904),所述处理器控制接口(904)包括在所述动态随机存取存储器电路的地址空间内能够访问的一组控制寄存器(908),所述方法包括:
由所述处理器控制接口(904)从中央处理器(P1、P2)接收去往所述第一处理器(420)的数据处理命令;
当所述第一处理器(420)正在处理数据时,拒绝所述中央处理器(P1、P2)访问所述存储器阵列(104)中的所述存储体(418)中一个或更多个存储体;
当所述第一处理器已经完成访问所述存储器阵列(104)中的所述存储体(418)中的一个或更多个时,由所述处理器控制接口(904)的所述控制寄存器(908)中之一向所述中央处理器(P1、P2)指示这些存储体变得能够被所述中央处理器(P1、P2)访问,而无须使用在所述第一处理器(420)与所述中央处理器(P1、P2)之间的任何专用控制线,
其中,所述方法还包括:
由刷新控制电路(424)接收用于在所述存储器阵列(104)的存储体(418)中执行数据刷新操作的刷新事务;和
由所述刷新控制电路(424)确定所述第一处理器(420)是否正在访问所述存储体(418),并且如果是,则延迟所述数据刷新操作的开始时间。
12.根据权利要求11所述的方法,还包括:
由所述处理器控制接口(904)从所述中央处理器(P1、P2)接收用于使所述一组控制寄存器在所述动态随机存取存储器电路的地址空间内能够被访问的激活信号。
CN201680010586.7A 2015-02-18 2016-02-12 Dram电路、计算机系统和访问dram电路的方法 Active CN107257964B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1551343A FR3032814B1 (fr) 2015-02-18 2015-02-18 Circuit dram muni d'un processeur integre
FR1551343 2015-02-18
PCT/FR2016/050327 WO2016132052A1 (fr) 2015-02-18 2016-02-12 Circuit dram muni d'un processeur integre

Publications (2)

Publication Number Publication Date
CN107257964A CN107257964A (zh) 2017-10-17
CN107257964B true CN107257964B (zh) 2020-11-13

Family

ID=53269680

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680010586.7A Active CN107257964B (zh) 2015-02-18 2016-02-12 Dram电路、计算机系统和访问dram电路的方法

Country Status (6)

Country Link
US (1) US10324870B2 (zh)
EP (1) EP3259674B1 (zh)
JP (1) JP6710219B2 (zh)
CN (1) CN107257964B (zh)
FR (1) FR3032814B1 (zh)
WO (1) WO2016132052A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3055715B1 (fr) * 2016-09-08 2018-10-05 Upmem Methodes et dispositifs pour contourner le cache interne d'un controleur memoire dram evolue
CN113918481A (zh) * 2017-07-30 2022-01-11 纽罗布拉德有限公司 一种存储器芯片
US11526302B2 (en) * 2019-06-20 2022-12-13 AI Plus, Inc. Memory module and computing device containing the memory module
FR3115395A1 (fr) 2020-10-16 2022-04-22 Upmem Dispositif semi-conducteur comprenant un empilement de puces et puces d’un tel empilement
CN112286863B (zh) * 2020-11-18 2023-08-18 合肥沛睿微电子股份有限公司 处理暨存储电路
US11775312B2 (en) 2021-04-09 2023-10-03 Rochester Institute Of Technology Look-up table containing processor-in-memory cluster for data-intensive applications
FR3131020A1 (fr) 2021-12-22 2023-06-23 Orange Module et procédé de sécurisation d’un équipement informatique

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5666485A (en) * 1995-06-07 1997-09-09 Samsung Electronics Inc. Software driver for a system bus
CN102640226A (zh) * 2009-10-21 2012-08-15 美光科技公司 具有内部处理器的存储器及控制存储器存取的方法
CN103946816A (zh) * 2011-09-30 2014-07-23 英特尔公司 作为传统大容量存储设备的替代的非易失性随机存取存储器(nvram)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03109661A (ja) * 1989-09-22 1991-05-09 Hitachi Ltd データ処理装置
JPH06215160A (ja) * 1992-08-25 1994-08-05 Texas Instr Inc <Ti> データ処理方法および装置
US5768618A (en) * 1995-12-21 1998-06-16 Ncr Corporation Method for performing sequence of actions in device connected to computer in response to specified values being written into snooped sub portions of address space
JP3189727B2 (ja) * 1997-04-15 2001-07-16 日本電気株式会社 コプロセッサ内蔵パケット型メモリlsi、それを用いたメモリシステム及びそれらの制御方法
JPH117763A (ja) * 1997-06-13 1999-01-12 Nec Ic Microcomput Syst Ltd Dramリフレッシュ制御方法及びその回路
US5999474A (en) * 1998-10-01 1999-12-07 Monolithic System Tech Inc Method and apparatus for complete hiding of the refresh of a semiconductor memory
US6463001B1 (en) * 2000-09-15 2002-10-08 Intel Corporation Circuit and method for merging refresh and access operations for a memory device
KR100510505B1 (ko) * 2002-12-23 2005-08-26 삼성전자주식회사 외부 리프레쉬 명령없이 리프레쉬 동작을 수행하는 반도체메모리장치 및 이의 리프레쉬 제어방법
US7353329B2 (en) * 2003-09-29 2008-04-01 Intel Corporation Memory buffer device integrating refresh logic
US7200062B2 (en) * 2004-08-31 2007-04-03 Micron Technology, Inc. Method and system for reducing the peak current in refreshing dynamic random access memory devices
US8234460B2 (en) * 2009-06-04 2012-07-31 Micron Technology, Inc. Communication between internal and external processors
US8380916B2 (en) * 2009-06-04 2013-02-19 Micron Technology, Inc. Control of page access in memory
US8438358B1 (en) * 2009-12-16 2013-05-07 Applied Micro Circuits Corporation System-on-chip with memory speed control core
US20130262791A1 (en) * 2012-03-27 2013-10-03 International Business Machines Corporation Host-side support of dynamically changing frequency in memory systems
US9911485B2 (en) * 2013-11-11 2018-03-06 Qualcomm Incorporated Method and apparatus for refreshing a memory cell
US9293188B2 (en) * 2014-02-03 2016-03-22 Advanced Micro Devices, Inc. Memory and memory controller for high reliability operation and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5666485A (en) * 1995-06-07 1997-09-09 Samsung Electronics Inc. Software driver for a system bus
CN102640226A (zh) * 2009-10-21 2012-08-15 美光科技公司 具有内部处理器的存储器及控制存储器存取的方法
CN103946816A (zh) * 2011-09-30 2014-07-23 英特尔公司 作为传统大容量存储设备的替代的非易失性随机存取存储器(nvram)

Also Published As

Publication number Publication date
JP2018511860A (ja) 2018-04-26
JP6710219B2 (ja) 2020-06-17
US10324870B2 (en) 2019-06-18
CN107257964A (zh) 2017-10-17
FR3032814A1 (zh) 2016-08-19
EP3259674A1 (fr) 2017-12-27
WO2016132052A1 (fr) 2016-08-25
EP3259674B1 (fr) 2020-12-16
FR3032814B1 (fr) 2018-02-02
US20180039586A1 (en) 2018-02-08

Similar Documents

Publication Publication Date Title
CN107257964B (zh) Dram电路、计算机系统和访问dram电路的方法
KR102442078B1 (ko) 고속 메모리 인터페이스들을 위한 명령 중재
US9471517B1 (en) Memory system, memory module and method to backup and restore system using command address latency
US8122186B2 (en) Memory device, memory system and dual port memory device with self-copy function
KR20170139438A (ko) 디디알 호환 비동기 메모리 모듈 시스템 및 그것의 동작 방법
US8369168B2 (en) Devices and system providing reduced quantity of interconnections
US20080010420A1 (en) Method for Accessing Control Registers via a Memory Device
WO2015054093A1 (en) Data processor with memory controller for high reliability operation and method
US20080147940A1 (en) Method and apparatus for controlling a shared bus
KR102615693B1 (ko) Dram을 위한 리프레시 관리
US7373453B2 (en) Method and apparatus of interleaving memory bank in multi-layer bus system
US20080007569A1 (en) Control protocol and signaling in a new memory architecture
US6868486B1 (en) Providing multiple memory controllers on a memory bus
US20020161979A1 (en) Speculative dram reads with cancel data mechanism
US20160103615A1 (en) Apparatuses and methods including selectively providing a single or separate chip select signals
KR20230069234A (ko) Dram을 위한 리프레시 관리 목록
US7536519B2 (en) Memory access control apparatus and method for accomodating effects of signal delays caused by load
US11995008B2 (en) Memory controller with hybrid DRAM/persistent memory channel arbitration
EP3270294B1 (en) Command arbitration for high-speed memory interfaces
KR100298955B1 (ko) 데이타처리시스템
US6675270B2 (en) Dram with memory independent burst lengths for reads versus writes
US6065097A (en) Apparatus and method for sharing a unified memory bus between external cache memory and primary memory
US20230197184A1 (en) Memory system
JP3600830B2 (ja) プロセッサ

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant