CN110007850B - 存储器控制器以及用于对存储模块进行访问的方法 - Google Patents

存储器控制器以及用于对存储模块进行访问的方法 Download PDF

Info

Publication number
CN110007850B
CN110007850B CN201810928985.2A CN201810928985A CN110007850B CN 110007850 B CN110007850 B CN 110007850B CN 201810928985 A CN201810928985 A CN 201810928985A CN 110007850 B CN110007850 B CN 110007850B
Authority
CN
China
Prior art keywords
data
memory
access
buffer
module
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
CN201810928985.2A
Other languages
English (en)
Other versions
CN110007850A (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.)
Montage Technology Shanghai Co Ltd
Original Assignee
Montage Technology Shanghai Co Ltd
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 Montage Technology Shanghai Co Ltd filed Critical Montage Technology Shanghai Co Ltd
Priority to US16/239,542 priority Critical patent/US10929029B2/en
Publication of CN110007850A publication Critical patent/CN110007850A/zh
Application granted granted Critical
Publication of CN110007850B publication Critical patent/CN110007850B/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
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Memory System (AREA)
  • Read Only Memory (AREA)

Abstract

本申请公开了一种存储器控制器和用于对存储模块进行访问的方法。存储器控制器耦接在存储模块与主控制器之间以控制主控制器对存储模块的访问,所述存储器控制器包括:中心缓冲器,其耦接到所述主控制器,用于从所述主控制器接收数据访问命令,并且耦接到所述存储模块,用于向所述存储模块提供修改的数据访问命令;其中,所述中心缓冲器包括访问命令处理模块,其用于对所述数据访问命令进行处理以生成所述修改的数据访问命令;数据缓冲器,其耦接到所述中心缓冲器,用于从所述中心缓冲器接收所述修改的数据访问命令,并且耦接在所述主控制器与所述存储模块之间,用于在所述修改的数据访问命令的控制下在所述主控制器与所述存储模块之间交互数据。

Description

存储器控制器以及用于对存储模块进行访问的方法
技术领域
本申请涉及存储器技术领域,更具体地,涉及一种存储器控制器以及用于对存储模块进行访问的方法。
背景技术
在现今的计算机系统中,内存模组提供中央处理器(CPU)运算时的数据访问以及存储。随着内存模组读取速度的不断提高,为了确保CPU和内存模组之间的信号传输质量,内存模组会使用具有缓冲功能的控制芯片来缓冲由CPU发出的操作命令以及对应的存储地址,并且内存模组上还具有可以双向缓冲数据的数据缓冲器。
然而,现有的内存模组的操作方式较为单一,仅支持读取、写入等简单操作,这限制了内存模组的功能。因此,有必要改进现有的内存模组的数据访问方法。
发明内容
本申请的一个目的在于提供一种存储器控制器以及用于对存储模块进行访问的方法,其能够实现复杂的数据访问操作。
根据本申请的一个方面,提供了一种存储器控制器,其耦接在存储模块与主控制器之间以控制所述主控制器对所述存储模块的访问,所述存储器控制器包括:中心缓冲器,其耦接到所述主控制器,用于从所述主控制器接收数据访问命令,并且耦接到所述存储模块,用于向所述存储模块提供修改的数据访问命令;其中,所述中心缓冲器包括访问命令处理模块,其用于对所述数据访问命令进行处理以生成所述修改的数据访问命令;数据缓冲器,其耦接到所述中心缓冲器,用于从所述中心缓冲器接收所述修改的数据访问命令,并且耦接在所述主控制器与所述存储模块之间,用于在所述修改的数据访问命令的控制下在所述主控制器与所述存储模块之间交互数据。
在一些实施例中,所述访问命令处理模块对所述数据访问命令进行处理包括:对所述数据访问命令中的访问地址进行编码,从而所述修改的数据访问命令包括经编码的访问地址。
在一些实施例中,所述访问命令处理模块对所述数据访问命令进行处理包括:以预定地址处理算法对所述数据访问命令中的访问地址进行处理以生成基于所述访问地址的一组访问地址,其中该组访问地址中的每个访问地址对应于一个修改的数据访问命令。
在一些实施例中,该组访问地址包括递增或递减的连续的多个访问地址。
在一些实施例中,该组访问地址包括等间隔或非等间隔的不连续的多个访问地址。
在一些实施例中,所述修改的数据访问命令具有与所述数据访问命令相同的访问类型。
在一些实施例中,所述数据缓冲器包括数据处理模块,所述数据处理模块用于从所述主控制器或所述存储模块接收数据,以预定数据处理算法对所述数据进行处理,并且将经处理的数据发送给所述主控制器或所述存储模块。
在一些实施例中,所述数据缓冲器包括数据处理模块,所述数据处理模块用于从所述存储模块接收数据,以预定数据处理算法对所述数据进行处理,并且将经处理的数据发送给所述存储模块。
在一些实施例中,所述访问命令处理模块对所述数据访问命令进行处理包括:以预定地址处理算法对所述数据访问命令中的访问地址进行处理以生成基于所述访问地址的一组访问地址,其中该组访问地址中的每个访问地址对应于一个修改的数据访问命令;所述数据缓冲器包括数据处理模块,所述数据处理模块用于根据所述修改的数据访问命令从所述存储模块接收数据,以预定数据处理算法对所述数据进行处理,并且根据所述修改的数据访问命令将经处理的数据发送给所述存储模块。
在一些实施例中,所述数据缓冲器包括多个数据缓冲单元组,每个所述数据缓冲单元组对应于一个数据处理子模块,其中所述多个数据处理子模块相互耦接以在所述多个数据缓冲单元组之间交互数据。
在一些实施例中,所述存储模块和所述存储器控制器符合JEDEC双倍速率同步动态随机存取存储器标准,所述中心缓冲器被集成在寄存时钟驱动器中,并且所述寄存器时钟驱动器通过数据缓冲器控制总线耦接到所述数据缓冲器。
在本申请的另一些方面,还提供了一种存储器,其包括上述方面的存储器控制器和存储模块;还提供了一种计算机系统,其包括上述方面的存储器。
在本申请的另一个方面,还提供了一种用于对存储模块进行访问的方法,所述存储模块通过存储器控制器耦接到主控制器,所述存储器控制器包括数据缓冲器以及具有访问命令处理模块的中心缓冲器,其中所述访问命令处理模块用于对数据访问命令进行处理以生成修改的数据访问命令;所述方法包括:由所述中心缓冲器接收数据访问命令;由所述中心缓冲器对所述数据访问命令进行处理以生成所述修改的数据访问命令;由所述中心缓冲器将所述修改的数据访问命令提供给所述存储模块和所述数据缓冲器;由所述数据缓冲器根据所述修改的数据访问命令在所述主控制器与所述存储模块之间交互数据。
以上为本申请的概述,可能有简化、概括和省略细节的情况,因此本领域的技术人员应该认识到,该部分仅是示例说明性的,而不旨在以任何方式限定本申请范围。本概述部分既非旨在确定所要求保护主题的关键特征或必要特征,也非旨在用作为确定所要求保护主题的范围的辅助手段。
附图说明
通过下面说明书和所附的权利要求书并与附图结合,将会更加充分地清楚理解本申请内容的上述和其他特征。可以理解,这些附图仅描绘了本申请内容的若干实施方式,因此不应认为是对本申请内容范围的限定。通过采用附图,本申请内容将会得到更加明确和详细地说明。
图1a示出了根据本申请一个实施例的存储器系统100;
图1b示出了根据本申请另一个实施例的存储器系统100’;
图1c示出了根据本申请另一实施例的存储器系统100”;
图2示出了BCOM总线指示进行数据处理操作的一个示例性时序图;
图3示出了根据本申请一个实施例的利用存储器控制器来进行块操作的示例;
图4示出了根据本申请一个实施例的中心缓冲器400的一种示例性结构;
图5示出了根据本申请一个实施例的数据缓冲器500的一种示例性结构;
图6示出了根据本申请一个实施例的用于对存储模块进行访问的方法600。
具体实施方式
在下面的详细描述中,参考了构成其一部分的附图。在附图中,类似的符号通常表示类似的组成部分,除非上下文另有说明。详细描述、附图和权利要求书中描述的说明性实施方式并非旨在限定。在不偏离本申请的主题的精神或范围的情况下,可以采用其他实施方式,并且可以做出其他变化。可以理解,可以对本申请中一般性描述的、在附图中图解说明的本申请内容的各个方面进行多种不同构成的配置、替换、组合,设计,而所有这些都明确地构成本申请内容的一部分。
图1a示出了根据本申请一个实施例的存储器系统100。
如图1a所示,该存储器系统100包括存储模块102,其在本实施例中被构造为存储模组,用于存储数据。在一些实施例中,存储模块102可以是符合JEDEC双倍速率同步动态随机存取存储器(SDRAM)标准的存储模块,例如包括JEDEC DDR1、DDR2、DDR3、DDR4、DDR5以及其他双倍速率存储器标准。此外,存储模块102也可以是符合其他标准或协议的内部存储器,例如SDRAM或RAMBUS内部存储器,也可以是符合未来存储器标准或协议的存储器。在一些实施例中,存储模块102可以包括易失性存储器(例如动态随机存储器)、非易失性存储器(快闪存储器,例如NAND或NOR快闪存储器)或者这两者的组合。在另一些实施例中,存储模块102还可以是采用不同的生产工艺制造的新型存储器,包括但不限于:磁阻式存储器、相变存储器、电阻式存储器、半浮栅存储器,或者任意类型的其他存储器。可以理解,存储模块102可以由一种类型的存储器组成,或者也可以包括前述或其他类型存储器的多种或全部,或者更多的其他类型存储器。
此外需要说明的是,在此所述的存储模块102可以是一颗存储器颗粒,也可以包括两颗或更多颗存储器颗粒。进一步地,存储模块102所包含的存储阵列或存储器颗粒的结构可以采用各种适合的互连结构。例如,多个存储器颗粒可以并联地构成一个存储模块;替代地,多个存储器颗粒也可以采用多级互连结构(例如两级)。例如,一个或多个存储器颗粒作为第一级存储,而另外的一个或多个存储器颗粒可以作为第二级存储,提供不同层级的存储。而较下层级的第二存储级可以通过第一级存储与存储模块整体的外部交互数据。具体的分级存储结构将在下文中进一步说明。
如图1a所示,存储器系统100还包括存储器控制器104,其具有中心缓冲器106和数据缓冲器(DB_P)108。具体地,中心缓冲器106耦接在主控制器110和存储模块102之间,其可以从主控制器110接收包括访问地址和访问类型的数据访问命令。例如,数据访问命令可以是对存储模块102中的一个数据存储地址(即访问地址)进行访问(例如读取或写入)的命令。数据缓冲器108耦接在存储模块102和主控制器110之间,用于在中心缓冲器106的控制下在存储模块102和主控制器110之间交互数据。对于DDR3或DDR4标准的存储器系统,中心缓冲器可以被集成在寄存时钟驱动器(RCD)中。相应地,中心缓冲器106通过命令/地址(Command/Address,C/A)总线(图中表示为DCA)耦接到主控制器110以接收数据访问命令。对于符合DDR4标准的存储器系统,该C/A总线可以包括管脚A0-A17、管脚BG0-BG1和/或管脚BA0-BA1。其中,管脚BG0-BG1用于确定存储模块102中的哪个存储体组(Memory BankGroup)被处理,例如被写入或被读取;管脚BA0-BA1用于确定存储模块102中的哪个存储体(Memory Bank)被处理;而管脚A0-A17则用于寻址并确定一个存储体中的哪一个存储单元被处理。此外,A16(RAS_n)、A15(CAS_n)以及A14(WE_n)这三个管脚的输入可以用于确定被输入的数据访问命令,例如读取命令、写入命令以及其他被预先定义的控制命令。
不同于现有的中心缓冲器,中心缓冲器106中设置有访问命令处理模块(CA_P)112,其可以被构造为具有数据处理和运算能力的模块。在一些实施例中,访问命令处理模块112可以由软件、硬件、固件或其组合来实现。例如,访问命令处理模块112可以是专用集成电路或现场可编程逻辑阵列芯片。访问命令处理模块112可以对接收自主控制器110的数据访问命令进行处理,从而生成修改的数据访问命令。
进一步地,访问命令处理模块112可以将修改的数据访问命令提供给存储模块102和数据缓冲器108,从而这两者可以根据修改的数据访问命令来继续执行数据访问操作。例如,访问命令处理模块112可以经由中心缓冲器106与存储模块102之间的命令/地址总线QCA提供修改的数据访问命令和其他控制命令,和/或经由中心缓冲器106与数据缓冲器108之间的数据缓冲器控制总线BCOM来提供修改的数据访问命令和其他控制命令。在一些实施例中,访问命令处理模块112可以根据数据访问命令中包括的访问地址生成一个或更多个访问地址,这些访问地址可以被提供给存储模块102以在访问时寻址使用。同时,访问命令处理模块112还根据数据访问命令的访问类型来生成对应的访问类型,这样,数据缓冲器108可以根据所生成的访问类型来控制存储模块102中被访问的存储单元与主控制器110之间的数据交互。
访问命令处理模块112可以以各种所需的方式来生成修改的数据访问命令。在一些实施例中,访问命令处理模块可以对数据访问命令中的访问地址进行编码,从而使得修改的数据访问命令包括经编码的访问地址。在另一些实施例中,访问命令处理模块可以以预定地址处理算法对数据访问命令中的访问地址进行处理,从而生成基于该访问地址的一组访问地址。该组新生成的访问地址中的每个访问地址都可以对应于一个修改的数据访问命令。可选地,这些修改的数据访问命令可以具有与原来的数据访问命令相同的访问类型。例如,接收自主控制器110的数据访问命令可能是对存储模块102中的一个访问地址进行读取的数据访问命令,则新生成的修改的数据访问命令可以是对与该访问地址相关的多个访问地址进行读取的数据访问命令。在一些实施例中,该组修改的数据访问命令中包括的一组访问地址可以包括递增或递减的连续的多个访问地址,其中该组访问地址可以以收到的访问地址作为初始地址。这样,主控制器110仅需要向存储器控制器104提供一个数据访问命令即可以访问存储模块102中的多个存储单元,这有效地提高了数据访问的效率。在另一些实施例中,该组访问地址也可以包括等间隔的不连续的多个访问地址,其中该间隔可以是1、2或其他自然数。特别地,对于存储模块102中以阵列方式排布的存储阵列,如果访问地址序列的间隔与该存储阵列的行宽相对应,则该组访问地址实质上对应于对存储阵列中的一列存储单元(或至少对该列存储单元的一部分)。对于很多矢量运算来说,这种按列访问的方式可以极大地提高运算效率。在一些实施例中,该组访问地址可以包括非等间隔的不连续的多个访问地址。这些访问地址之间的间隔可以根据实际运算所需的数据来进行设置。特别地,对于存储模块102中以阵列方式排布的存储阵列,如果访问地址序列与该存储阵列对角线上的存储单元相对应,则该组访问地址实质上对应于对存储阵列中的对角线上的存储单元进行访问,这种数据访问方式对于很多矢量运算是很有利的。
在一些实施例中,访问命令处理模块112可以采用加密算法对数据访问命令中的访问地址进行加密。这样,加密后的访问地址不同于明文方式的访问地址。例如,经加密的数据的存储地址将不同于主控制器提供的数据存储地址。当需要读取存储模块中的数据时,读取命令中包括访问地址可以被访问命令处理模块112经过相同的解密运算,从而可以在存储模块的对应位置读取出所需的数据。
在图1a所示的实施例中,除了在中心缓冲器106处设置了访问命令处理模块112之外,还在数据缓冲器108中设置了数据处理模块(D_P)114。该数据处理模块114可以从其所耦接的主控制器110和存储模块102接收数据,并且以预定数据处理算法对接收的数据进行处理,之后再将经处理的数据发送给主控制器110和存储模块102。在一些实施例中,当主控制器110指示从存储模块102读取数据时,数据缓冲器108可以缓冲从存储模块102接收的数据,并且由数据处理模块114对该数据进行处理。这样,主控制器110获得的数据是经处理的数据。在另一些实施例中,当主控制器110指示向存储模块102写入数据时,数据缓冲器108也可以缓冲从主控制器110接收的数据,并且由数据处理模块114对该数据进行处理,然后再写入存储模块102。这样,被存储在存储模块102中的数据是经处理的数据。
在一些实施例中,数据处理模块114可以从存储模块102接收数据并且对该数据进行处理,从而将经处理的数据发送给存储模块102。换言之,得益于在数据缓冲器108中的数据处理模块114,数据可以直接在存储器控制器104中被处理,而无需被转移到主控制器110中来进行处理,这极大地减少了主控制器110与存储模块102之间的数据交互,并且可以有效地提高数据处理效率。
在一些实施例中,数据处理模块114对数据进行的处理可以包括各种位运算。例如,这些位运算可以包括:位左移(bit-left-shift)、位右移(bit-right-shift)、位左循环(bit-left-rotate)、位右循环(bit-right-rotate)、位与(bit-and)、位或(bit-or)、位异或(bit-xor)、位同或(bit-nxor)、清零(bit-clear)、置高(bit-set)或类似运算。除了前述的位运算外,数据处理模块114还可以进行各种类型的数据运算操作,例如:值交换(XCHG)、赋值(MOV)、递增(INC)、递减(DEC)或其他类似运算。
在一些实施例中,数据处理模块114也可以采用加密/解密算法对数据进行加密/解密处理,以保证存储在存储模块中的数据安全以及数据在主控制器与存储模块之间的传输安全。例如,在向存储模块存储数据时进行加密处理,以及在从存储模块中读出数据时进行解密处理。
在一些实施例中,数据缓冲器108可以包括多个数据缓冲单元组108i,并且每个数据缓冲单元组108i对应于一个数据处理子模块114i。每个数据处理子模块114i除了耦接在其所在的数据缓冲单元组108i的链路中之外,不同的数据处理子模块114i还通过双向接口BOP(例如图1a中的BOP01、BOP12…BOP67以及BOP70)相互耦接,从而能够在多个数据缓冲单元组108i之间交互数据。不同的数据缓冲单元组108i之间交互数据可以满足位移、循环、递增、递减等运算操作的需求。在一些实施例中,BOP接口可以是两线的双向总线结构,包含一个时钟以及1位双向数据线,通过约定的协议进行双向数据交互。在另一些实施例中,该接口也可以是三线总线结构,包括一个时钟,一个传输方向指示信号,以及1位双向数据线。BOP接口的带宽可以通过增加双向数据线的数量来增加。
数据处理模块114可以响应中心缓冲器106提供的操作命令。例如,该操作命令可以通过中心缓冲器106与数据缓冲器108之间的数据缓冲器控制总线(BCOM)来传输。在一些符合DDR4标准的存储器系统中,例如澜起科技提供的M88DDR4DB02和
M88DDR4RCD02芯片(关于这些芯片的技术信息,可以参考其产品技术手册,这些产品技术手册的全部内容通过引用方式并入本申请),数据缓冲器控制总线可以是4位信号线,表1示出了BCOM总线可以提供的操作命令的一种示例。
表1操作命令列表
BCOM[3:0]编码OP 操作命令
0000 Normal read
0001 Bit-left-shift
0010 Bit-right-shift
0011 Bit-left-rotate
0100 Bit-right-rotate
0101 Bit-and
0110 Bit-or
0111 Bit-xor
1000 Bit-nxor
1001 Bit-clear
1010 Bit-set
1011 XCHG
1100 MOV
1101 INC
1110 DEC
1111 RFU
需要说明的是,在实际应用中,数据处理模块114中的每个子模块114i可以执行相同的操作,也可以执行不同的操作。图2示出了BCOM总线指示进行数据处理操作的一个示例性时序图,其中BCK_t是BCOM总线对应的时钟驱动信号。如图2所示,BCOM总线上增加了OP的编码以用于指示对应的数据处理操作。
本领域技术人员可以理解,虽然图1a所示的实施例中同时包括了访问命令处理模块112和数据处理模块114,但是在实际应用中,存储器控制器可以仅包括这两者中的一个。例如,存储器控制器可以仅包括访问命令处理模块112,用以生成修改的数据访问命令,这些修改的数据访问命令可以指示数据缓冲器108不对数据进行修改而仅进行常规的读取、写入等操作。再例如,存储器控制器也可以仅包括数据处理模块114,用以对缓冲的数据进行处理,具体的数据操作的类型可以由中心缓冲器通过BCOM总线来提供。
可以看出,图1a所示的存储器控制器104可以实现各种复杂的数据处理操作。根据具体实施例的不同,使得访问命令处理模块进行上述的复杂访问操作可以通过各种方式来进行触发。在一个实施例中,这种复杂访问操作可以利用存储模块的协议中没有用到的命令/地址总线上的位(bit)来指示。在另一些实施例中,也可以在访问命令处理模块中预先存储一个触发地址(例如存储模块中的一个存储地址),当中心缓冲器接收到包括该触发地址的数据访问命令后,即可触发该复杂访问操作。在另一些实施例中,也可以通过在存储模块的数据访问命令前的一个时钟周期插入相应的代码来指示是否触发复杂访问操作。
图3示出了根据本申请一个实施例的利用存储器控制器来进行块操作的示例。如图3所示,存储模块可以包括一个存储阵列302,其中的存储单元304以阵列方式进行排布。在一些实施例中,存储阵列304可包括多个存储块,其中每个存储块可以包括例如4096个存储单元。同时,同一个存储块中包括的存储单元的地址可以是连续的,例如地址起始于addr0而结束于addr4095。
对于图3所示的存储阵列302,利用本申请实施例的存储器控制器可以实现复杂的块操作。以块读取为例,主控制器可以向存储器控制器发送数据访问命令(读取操作),其包括了存储块的起始地址addr0。响应于该数据访问命令,存储器控制器可以获取该起始地址addr0,并且基于该起始地址addr0生成一组访问地址,该组访问地址可以包括从起始地址直至结束地址addr4095的共4096个访问地址。基于该组访问地址,存储器控制器可以生成4096个修改的数据访问命令,并且这些修改的数据访问命令被发送给存储模块以及数据缓冲器。随后,数据缓冲器相应地接收并缓冲这些访问地址中存储的数据,进而将数据提供给主控制器。可以看出,在整个数据读取过程中,主控制器仅需向存储器控制器提供一个数据访问命令,即可读取一个块中4096个存储单元的数据,这大大提高了数据读取效率。需要说明的是,上述块操作中所读取的存储单元的数量仅仅是示例性的。在实际应用中,可以对任意数量的存储单元进行处理。
上述块读取的操作没有使用数据缓冲器中的数据处理模块。在另一些例子中,也可以使用数据处理模块来实现较为复杂的数据访问操作。例如,可以对图3所示的存储阵列中的存储块进行“块改写”操作。具体地,主控制器可以向存储器控制器发送数据访问命令(块改写操作),其包括了存储块的起始地址addr0。响应于该数据访问命令,存储器控制器可以获取该起始地址addr0,并且基于该起始地址addr0生成一组访问地址,该组访问地址包括从起始地址直至结束地址addr4095的共4096个访问地址。基于该组访问地址,存储器控制器可以生成4096个数据读取命令,并且这些数据读取命令发送给存储模块以及数据缓冲器。随后,数据缓冲器相应地接收并缓冲这些访问地址中存储的数据。不同于前述的块读取操作,块改写操作对应的修改的数据访问命令还可以包括指示数据缓冲器中的数据处理模块进行相关数据处理的操作(除了前述的数据读取操作之外)。例如,该数据处理操作可以是指示对读出的数据进行位与或位左循环的操作,并且进一步指示之后将经处理的数据写回到对应的存储单元中(或者继续缓冲在数据缓冲器中)。可以看出,在块改写操作的过程中,主控制器仅仅需要提供一次块改写命令,即可实现整个块中所有存储单元的数据改写。可以理解,在前述块改写操作的过程中,经数据处理模块处理后的数据也可以被提供给主控制器,而不是写回到存储模块中。
与块改写类似,数据处理模块114也可以对某个存储单元进行读改写操作。简言之,读改写操作是指主控制器发起读操作后在存储模块上对读取的数据按需求进行数据处理,之后直接由存储器控制器将处理后的数据写回给存储模块。具体地,在进入“读改写”工作模式之后,数据被从存储模块中读取,并且暂存在对应的数据处理模块中。之后,中心缓冲器的访问命令处理模块可以按照设定的处理流程通知对应的数据处理模块进行例如位逻辑操作或数据运算操作(参见表1所示)。在完成这些位逻辑操作或数据运算操作之后,“读改写”操作完成,访问命令处理模块可以控制将数据写回到存储模块中,从而完成一次完整的“读改写”操作。
图4示出了根据本申请一个实施例的中心缓冲器400的一种示例性结构。
如图4所示,该中心缓冲器400包括耦接在接收侧(D侧)和输出侧(Q侧)之间的两个信号路经,分别为缓冲器402以及访问命令处理模块404。对于缓冲器402这一路径,在接收到包括访问地址和访问类型的数据访问命令(CMD&ADDR)后,该缓冲器402不会对数据访问命令进行额外的处理,而仅仅是缓冲该命令,并且之后将其从输出侧输出。而对于访问命令处理模块404,其包括计算单元406和控制单元408。当其接收到由主控模块(未示出)发出的数据访问命令后,会按预先设置的触发条件判断是否需要进行地址处理及对应的操作命令生成,也即是否需要对数据访问命令进行修改。当满足触发条件后,访问命令处理模块404利用计算单元406来进行命令修改,并且生成修改的数据访问命令。之后,控制单元408会通过多路选择器(MUX)将中心缓冲器400的输出由缓冲器402切换到访问命令处理模块404的输出,同时通过BCOM总线来发送相应的控制信号到数据缓冲器的每个数据处理模块(图中未示出),从而指示这些数据处理模块执行相应的数据处理操作。
在一些实施例中,缓冲器402和访问命令处理模块404可以由寄存器表中存储的配置信息进行配置,而寄存器表的配置信息可以由SMBus接口来进行修改。
图5示出了根据本申请一个实施例的数据缓冲器500的一种示例性结构。
如图5所示,该数据缓冲器500包括耦接在主控制器侧与存储模块侧之间的两个数据路径,分别为经由双向缓冲器502和经由数据处理模块504。对于双向缓冲器502这一路径,其不会对接收到的数据进行处理,而仅仅是缓冲数据。而对于数据处理模块504,其包括计算单元506和控制单元508。其中,计算单元506还通过BOP接口与相邻的数据缓冲器的数据处理模块交互数据。因此,计算单元506能够根据控制单元508从BCOM总线上接收到的控制命令来对数据进行相应的运算处理。当运算需要其他数据缓冲器的数据时,数据处理模块504可以通过BOP接口与相邻数据缓冲器进行数据交互,其中,BOP_L接口用于和左侧的数据缓冲器进行数据交互,而BOP_R接口用于和右侧的数据缓冲器进行数据交互。
在一些实施例中,双向缓冲器502和数据处理模块504可以由寄存器表中存储的配置信息进行配置。
需要说明的是,图4和图5所示的中心缓冲器和数据缓冲器的电路结构仅仅是示例性的,在实际应用中,可以根据需要对这些电路结构进行修改。
可以理解,本申请的实施例的存储器控制器可以被应用于存储器中,并且这种存储器系统也可以被用于不同的计算机系统中。
正如前述,本申请实施例的存储器控制器也可以被应用于各种类型和结构的存储器中。图1b即示出了根据本申请另一实施例的存储器系统100’,存储器系统100’与图1a所示的存储器系统100的结构大致相同,区别主要在于存储模块102’不同于图1a中的存储模块102。在图1b中,存储器控制器被应用于包括了两级存储子模块的存储模块102’。可以理解,在一些实施例中,存储器控制器可以类似地应用于具有更多存储级的存储器系统。存储器系统100’中与图1a所示的存储器系统100相同的结构、原理或机制,在此便不再赘述。
如图1b所示,该存储模块102’包括多个第一级存储子模块102a’,这些第一级存储子模块102a’通过分别的数据缓冲器108i’耦接到主控制器110’,以与其交互数据。该存储模块102’还包括第二级存储子模块102b’,其通过数据总线102c’与多个第一级存储子模块102a’相互耦接以交互数据。此外,所有第一级存储子模块102a’通过命令/地址总线QCA耦接到中心缓冲器106’,以在中心缓冲器106’的控制下进行操作。在如图1b所示的实施例中,第二级存储子模块102b’通过单独设置的信号线CON耦接到中心缓冲器106’,以在中心缓冲器106’的控制下进行操作。在另一些实施例中,第二级存储子模块102b’也可以通过其他信号线耦接到中心缓冲器106’,例如通过BCOM总线或者命令/地址总线QCA耦接到中心缓冲器106’;或者也可以通过前述信号线的组合耦接到中心缓冲器106’。也就是说,不同级别的存储子模块可以通过相同或不同的信号线耦接到中心缓冲器。
图1c即示出了根据本申请另一实施例的存储器系统100”。如图1c所示,该存储器系统100”的存储模块102”中的第一级存储子模块102a”与第二级存储子模块102b”均通过命令/地址总线QCA耦接到中心缓冲器106”。图1c所示的存储器系统100”的其他部分与图1b所示的存储器系统100’基本相同,在此不再赘述。
仍参考图1b所示,可以理解,第一级存储子模块102a’可以与第二级存储子模块102b’具有不同的存储器类型。例如,第一级存储子模块102a’可以是易失性存储器,而第二级存储子模块102b’可以是非易失性存储器(例如固态存储器或磁性存储器)。可以理解,在图1b所示的实施例中,第二级存储子模块102b’是单个存储器颗粒。在一些其他的实施例中,第二级存储子模块102b’可以包括多个存储器颗粒,并且每个第一级存储子模块102a’对应地耦接到一个或多个第二级存储子模块102b’的存储器颗粒。
在写入数据时,中心缓冲器106b’可以发送命令,指示首先向第一级存储子模块102a’写入数据,然后进一步指示第二级存储子模块102b’从第一级存储子模块102a’获取数据,这时的数据是安全的。替代地,中心缓冲器106b’也可以发送命令,指示首先向第一级存储子模块102a’写入数据,然后进一步指示第二级存储子模块102b’从第一级存储子模块102a’获取数据并指示数据存储地址,该时刻该地址段的数据是安全的。
从存储模块读出数据的过程与写入类似,在此不再赘述。
图6示出了根据本申请一个实施例的用于对存储模块进行访问的方法600。该方法600可以由例如图1a或1b、1c所示的存储器控制器来执行。
如图6所示,该方法600可以包括步骤602,由所述中心缓冲器接收数据访问命令;步骤604,由所述中心缓冲器对所述数据访问命令进行处理以生成所述修改的数据访问命令;步骤606,由所述中心缓冲器将所述修改的数据访问命令提供给所述存储模块和所述数据缓冲器;以及步骤608,由所述数据缓冲器根据所述修改的数据访问命令在所述主控制器与所述存储模块之间交互数据。
在一些实施例中,步骤604可以包括:对所述数据访问命令中的访问地址进行编码,从而所述修改的数据访问命令包括经编码的访问地址。
在一些实施例中,步骤604可以包括:以预定地址处理算法对所述数据访问命令中的访问地址进行处理以生成基于所述访问地址的一组访问地址,其中该组访问地址中的每个访问地址对应于一个修改的数据访问命令。
在一些实施例中,该组访问地址包括递增或递减的连续的多个访问地址。
在一些实施例中,该组访问地址包括等间隔或非等间隔的不连续的多个访问地址。
在一些实施例中,所述修改的数据访问命令具有与所述数据访问命令相同的访问类型。
在一些实施例中,步骤608可以包括:根据所述修改的数据访问命令,由所述数据缓冲器从所述存储模块接收数据,以预定数据处理算法对所述数据进行处理,并且将经处理的数据发送给所述存储模块。
关于本申请实施例的用于对存储模块进行访问的方法的更多细节,可以参考前述的存储器控制器的相关描述,在此不再赘述。
应当注意,尽管在上文详细描述中提及了用于对存储模块进行访问的方法的若干步骤,和存储器控制器的若干模块或子模块,但是这种划分仅仅是示例性的而非强制性的。实际上,根据本申请的实施例,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
本技术领域的一般技术人员可以通过研究说明书、公开的内容及附图和所附的权利要求书,理解和实施对披露的实施方式的其他改变。在权利要求中,措词“包括”不排除其他的元素和步骤,并且措辞“一”、“一个”不排除复数。在本申请的实际应用中,一个零件可能执行权利要求中所引用的多个技术特征的功能。权利要求中的任何附图标记不应理解为对范围的限制。

Claims (24)

1.一种存储器控制器,其耦接在存储模块与主控制器之间以控制所述主控制器对所述存储模块的访问,所述存储模块包括易失性存储器和非易失性存储器中的一个或多个,所述存储器控制器包括:
中心缓冲器,其耦接到所述主控制器,用于从所述主控制器接收数据访问命令,并且耦接到所述存储模块,用于向所述存储模块提供修改的数据访问命令;其中,所述中心缓冲器包括访问命令处理模块,其用于对所述数据访问命令进行处理以生成所述修改的数据访问命令,包括以预定地址处理算法对所述数据访问命令中的访问地址进行处理以生成基于所述访问地址的一组访问地址,其中该组访问地址中的每个访问地址对应于一个修改的数据访问命令;
数据缓冲器,其耦接到所述中心缓冲器,用于从所述中心缓冲器接收所述修改的数据访问命令,并且耦接在所述主控制器与所述存储模块之间,用于在所述修改的数据访问命令的控制下在所述主控制器与所述存储模块之间交互数据,所述数据缓冲器包括多个数据缓冲单元组,所述多个数据缓冲单元组对应于一个中心缓冲器,且每个所述数据缓冲单元组对应于一个数据处理子模块;以及
数据缓冲器控制总线,其用于耦接所述中心缓冲器与所述数据缓冲器的多个数据缓冲单元组,并且用于向每个数据缓冲单元组提供分别的操作命令,以使得每个数据缓冲单元组的数据处理子模块执行对应的数据处理操作。
2.根据权利要求1所述的存储器控制器,其特征在于,所述访问命令处理模块对所述数据访问命令进行处理包括:对所述数据访问命令中的访问地址进行编码,从而所述修改的数据访问命令包括经编码的访问地址。
3.根据权利要求1所述的存储器控制器,其特征在于,该组访问地址包括递增或递减的连续的多个访问地址。
4.根据权利要求1所述的存储器控制器,其特征在于,该组访问地址包括等间隔或非等间隔的不连续的多个访问地址。
5.根据权利要求1所述的存储器控制器,其特征在于,所述修改的数据访问命令具有与所述数据访问命令相同的访问类型。
6.根据权利要求1所述的存储器控制器,其特征在于,多个数据处理子模块共同作用为数据处理模块,所述数据处理模块用于从所述主控制器或所述存储模块中的一个接收数据,以预定数据处理算法对所述数据进行处理,并且将经处理的数据发送给所述主控制器或所述存储模块中的另一个。
7.根据权利要求1所述的存储器控制器,其特征在于,多个数据处理子模块共同作用为数据处理模块,所述数据处理模块用于从所述存储模块接收数据,以预定数据处理算法对所述数据进行处理,并且将经处理的数据发送给所述存储模块。
8.根据权利要求1所述的存储器控制器,其特征在于,多个数据处理子模块共同作用为数据处理模块,所述数据处理模块用于根据所述修改的数据访问命令从所述存储模块接收数据,以预定数据处理算法对所述数据进行处理,并且根据所述修改的数据访问命令将经处理的数据发送给所述存储模块。
9.根据权利要求6所述的存储器控制器,其特征在于,所述多个数据处理子模块相互耦接以在所述多个数据缓冲单元组之间交互数据。
10.根据权利要求1所述的存储器控制器,其特征在于,所述存储模块和所述存储器控制器符合JEDEC双倍速率同步动态随机存取存储器标准,所述中心缓冲器被集成在寄存时钟驱动器中,并且所述寄存时钟驱动器通过数据缓冲器控制总线耦接到所述数据缓冲器。
11.一种存储器,包括根据权利要求1至10中任一项所述的存储器控制器和存储模块。
12.根据权利要求11所述的存储器,其特征在于,所述存储模块包括下述存储器中的一种或多种:快闪存储器、磁阻式存储器、相变存储器、电阻式存储器和半浮栅存储器。
13.根据权利要求11所述的存储器,其特征在于,所述存储模块是多级互连结构。
14.根据权利要求13所述的存储器,其特征在于,所述存储模块中不同级别的存储子模块通过不同的信号线耦接到中心缓冲器。
15.一种计算机系统,包括根据权利要求11至14中任一项所述的存储器。
16.一种用于对存储模块进行访问的方法,所述存储模块包括易失性存储器和非易失性存储器中的一个或多个,所述存储模块通过存储器控制器耦接到主控制器,所述存储器控制器包括数据缓冲器以及通过数据缓冲器控制总线与所述数据缓冲器耦接并且具有访问命令处理模块的中心缓冲器,其中所述访问命令处理模块用于对数据访问命令进行处理以生成修改的数据访问命令,所述数据缓冲器包括多个数据缓冲单元组,所述多个数据缓冲单元组对应于一个中心缓冲器,且每个所述数据缓冲单元组对应于一个数据处理子模块;所述方法包括:
由所述中心缓冲器接收数据访问命令;
由所述中心缓冲器对所述数据访问命令进行处理以生成所述修改的数据访问命令,包括以预定地址处理算法对所述数据访问命令中的访问地址进行处理以生成基于所述访问地址的一组访问地址,其中该组访问地址中的每个访问地址对应于一个修改的数据访问命令;
由所述中心缓冲器将所述修改的数据访问命令提供给所述存储模块和所述数据缓冲器;
由所述数据缓冲器中的每个数据缓冲单元组从所述中心缓冲器接收分别的操作命令,并且由每个数据缓冲单元组的数据处理子模块执行对应的数据处理操作;以及
由所述数据缓冲器根据所述修改的数据访问命令在所述主控制器与所述存储模块之间交互经由所述数据缓冲器处理后的数据。
17.根据权利要求16所述的方法,其特征在于,由所述中心缓冲器对所述数据访问命令进行处理以生成所述修改的数据访问命令的步骤包括:
对所述数据访问命令中的访问地址进行编码,从而所述修改的数据访问命令包括经编码的访问地址。
18.根据权利要求16所述的方法,其特征在于,该组访问地址包括递增或递减的连续的多个访问地址。
19.根据权利要求16所述的方法,其特征在于,该组访问地址包括等间隔或非等间隔的不连续的多个访问地址。
20.根据权利要求16所述的方法,其特征在于,所述修改的数据访问命令具有与所述数据访问命令相同的访问类型。
21.根据权利要求16所述的方法,其特征在于,多个数据处理子模块共同作用为数据处理模块,所述数据处理模块用于以预定数据处理算法对数据进行处理以生成经处理的数据,由所述数据缓冲器根据所述修改的数据访问命令在所述主控制器与所述存储模块之间交互数据的步骤进一步包括:
根据所述修改的数据访问命令,由所述数据缓冲器从所述存储模块接收数据,以预定数据处理算法对所述数据进行处理,并且将经处理的数据发送给所述存储模块。
22.根据权利要求16所述的方法,其特征在于,所述存储模块包括下述存储器中的一种或多种:快闪存储器、磁阻式存储器、相变存储器、电阻式存储器和半浮栅存储器。
23.根据权利要求16所述的方法,其特征在于,所述存储模块是多级互连结构。
24.根据权利要求23所述的方法,其特征在于,所述存储模块中不同级别的存储子模块通过不同的信号线耦接到中心缓冲器。
CN201810928985.2A 2018-01-04 2018-08-15 存储器控制器以及用于对存储模块进行访问的方法 Active CN110007850B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/239,542 US10929029B2 (en) 2018-01-04 2019-01-04 Memory controller and method for accessing memory modules and processing sub-modules

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810008762 2018-01-04
CN2018100087624 2018-01-04

Publications (2)

Publication Number Publication Date
CN110007850A CN110007850A (zh) 2019-07-12
CN110007850B true CN110007850B (zh) 2021-12-03

Family

ID=67164716

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201810015105.2A Active CN110008147B (zh) 2018-01-04 2018-01-08 存储器控制器以及用于对存储模块进行访问的方法
CN201810928985.2A Active CN110007850B (zh) 2018-01-04 2018-08-15 存储器控制器以及用于对存储模块进行访问的方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201810015105.2A Active CN110008147B (zh) 2018-01-04 2018-01-08 存储器控制器以及用于对存储模块进行访问的方法

Country Status (1)

Country Link
CN (2) CN110008147B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10929029B2 (en) 2018-01-04 2021-02-23 Montage Technology Co., Ltd. Memory controller and method for accessing memory modules and processing sub-modules
US11226768B2 (en) 2018-01-04 2022-01-18 Montage Technology Co., Ltd. Memory controller and method for accessing memory module
CN110008147B (zh) * 2018-01-04 2021-11-19 澜起科技股份有限公司 存储器控制器以及用于对存储模块进行访问的方法
CN113448891B (zh) * 2020-03-25 2023-07-21 澜起科技股份有限公司 存储器控制器以及用于监测对存储模块的访问的方法
CN113704144A (zh) * 2020-05-22 2021-11-26 澜起科技股份有限公司 存储器控制器以及用于控制对存储模块的访问的方法
CN114385067B (zh) * 2020-10-19 2023-07-18 澜起科技股份有限公司 用于存储器系统的数据更新方法和存储器控制器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1536311A1 (fr) * 2003-11-28 2005-06-01 Bull S.A. Système cryptographique haut débit à architecture modulaire
CN1902612A (zh) * 2003-11-13 2007-01-24 英特尔公司 具有隐式到显示存储器命令扩展的带缓冲的存储器模块
CN106126447A (zh) * 2015-05-07 2016-11-16 三星电子株式会社 控制存储装置的方法、存储器模块和存储系统
CN106155926A (zh) * 2015-04-09 2016-11-23 澜起科技(上海)有限公司 存储器及存储器的数据交互方法
CN110008147A (zh) * 2018-01-04 2019-07-12 澜起科技股份有限公司 存储器控制器以及用于对存储模块进行访问的方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3715533B2 (ja) * 1999-02-05 2005-11-09 株式会社東芝 ストリーム情報の情報記憶媒体、その記録方法、再生方法、記録装置および再生装置
US20130073815A1 (en) * 2011-09-19 2013-03-21 Ronald R. Shea Flexible command packet-header for fragmenting data storage across multiple memory devices and locations
JP6139010B2 (ja) * 2013-03-15 2017-05-31 インテル・コーポレーション デバイス
CN105868125B (zh) * 2015-01-23 2018-10-19 澜起科技(上海)有限公司 缓冲存储器及用于控制内部存储器数据访问的装置和方法
CN106295381B (zh) * 2015-05-19 2019-05-07 澜起科技股份有限公司 用于监控对内部存储器的数据访问的装置以及内部存储器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1902612A (zh) * 2003-11-13 2007-01-24 英特尔公司 具有隐式到显示存储器命令扩展的带缓冲的存储器模块
EP1536311A1 (fr) * 2003-11-28 2005-06-01 Bull S.A. Système cryptographique haut débit à architecture modulaire
CN106155926A (zh) * 2015-04-09 2016-11-23 澜起科技(上海)有限公司 存储器及存储器的数据交互方法
CN106126447A (zh) * 2015-05-07 2016-11-16 三星电子株式会社 控制存储装置的方法、存储器模块和存储系统
CN110008147A (zh) * 2018-01-04 2019-07-12 澜起科技股份有限公司 存储器控制器以及用于对存储模块进行访问的方法

Also Published As

Publication number Publication date
CN110007850A (zh) 2019-07-12
CN110008147A (zh) 2019-07-12
CN110008147B (zh) 2021-11-19

Similar Documents

Publication Publication Date Title
CN110007850B (zh) 存储器控制器以及用于对存储模块进行访问的方法
US9818707B2 (en) Stacked memory chip having reduced input-output load, memory module and memory system including the same
US10936212B2 (en) Memory controller, method for performing access control to memory module
TW201519237A (zh) 用於組態用於混合記憶體模組之記憶體之輸入/輸出之裝置及方法
CN107919160B (zh) 测试单元阵列的方法及执行其的半导体器件
CN113963739B (zh) 占据面积减少的熔丝电路
US11662939B2 (en) Checking status of multiple memory dies in a memory sub-system
CN114974384A (zh) 高效的io区段中断系统和方法
KR20170032053A (ko) 메모리 장치 및 메모리 장치를 포함하는 전자 장치
CN110008148B (zh) 存储器控制器以及用于对存储模块进行访问控制的方法
WO2023003725A1 (en) Strategic memory cell reliability management
US10983711B2 (en) Memory controller, method for performing access control to memory module
US11157183B2 (en) Memory controller
US10929029B2 (en) Memory controller and method for accessing memory modules and processing sub-modules
US11860734B2 (en) Semiconductor memory devices and memory systems
US11487469B2 (en) Apparatus and method for controlling access to memory module
US11226768B2 (en) Memory controller and method for accessing memory module
US11681467B2 (en) Checking status of multiple memory dies in a memory sub-system
US20140181456A1 (en) Memory, memory controller, memory system including the memory and the memory controller, and operating method of the memory system
KR102559537B1 (ko) 메모리 컨트롤러, 이를 포함하는 데이터 저장 장치 및 스토리지 시스템
KR20080026726A (ko) 멀티포트 메모리 장치
CN114153402B (zh) 存储器及其数据读写方法
US20240071448A1 (en) Configurable data protection circuitry for memory devices
US11803501B2 (en) Routing assignments based on error correction capabilities
US20240070025A1 (en) Apparatuses, systems, and methods for module level error correction

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