存储器件、包括其的存储系统及存储器件的操作方法与流程

文档序号:12747949阅读:188来源:国知局
存储器件、包括其的存储系统及存储器件的操作方法与流程

本申请要求2015年7月15日提交的申请号为10-2015-0100274的韩国专利申请的优先权,其通过引用整体合并于此。

技术领域

本发明的各种实施例涉及一种存储器件、包括其的存储系统及其操作方法。



背景技术:

一般地,存储系统包括存储器件和存储器控制器。存储系统可以用在计算系统中。

图1是图示传统计算系统的示图。

参见如1,传统计算系统包括中央处理单元(CPU)130、存储器控制器110和存储器件120。存储器件120储存数据(即,值)。CPU 130执行计算,以及存储器控制器110根据来自CPU 130的请求而控制存储器件120。

图2是图示图1中所示的计算系统的操作的示图。图2示出通过将存储器件120中储存的值“X”和“Y”相加来产生值“Z”(即,X+Y=Z)的过程作为示例。

在步骤S201处,CPU 130将表示要访问储存在存储器件120的地址“A”处的数据的请求信号传送给存储器控制器110。在步骤S203处,存储器控制器110将读取命令和地址“A”传送给存储器件120。然后,在步骤S205处存储器件120从A地址读取值“X”并将读取的值传送给存储器控制器110,以及在步骤S207处存储器控制器110将X值传送给CPU 130。

在步骤S209处,CPU 130将表示要访问储存在存储器件120的地址“B”处的数据的请求信号传送给存储器控制器110。在步骤S211处存储器控制器110将读取命令和“B”地址传送给存储器件120。然后,在步骤S213处存储器件120从地址“B”读取值“Y”并将读取的值传送给存储器控制器110,以及在步骤S215处存储器控制器110将值“Y”传送给CPU 130。

在步骤S217处,CPU 130执行用来通过将值“X”与“Y”相加来产生值“Z”的计算。然后,在步骤S219处,CPU 130将请求信号传送给存储器控制器110来请求存储 器控制器110将值“Z”储存在地址“C”处。在步骤S221处,存储器控制器110将写入命令、地址“C”和值“Z”传送给存储器件120。然后,在步骤S223处,存储器件120将值“Z”写入至地址“C”。

所以即使执行非常简单的计算,也必须在CPU 130、存储器控制器110和存储器件120之间交换多个命令和数据。因此,降低了计算系统的性能,且增大了功耗。



技术实现要素:

本发明的各种实施例针对一种具有改进性能和降低的功耗的存储器件、系统及其操作。该存储器件和系统可以用于任何合适的计算系统,使得计算系统更高效,并降低其功耗要求。该存储器件可以用于任何合适的设备,诸如包括便携式电子设备(诸如智能电话)的电子设备。该存储器件可以为在集成芯片上实施的半导体存储器件。

一种存储器件的操作方法,该方法包括:接收计算命令;接收与计算命令相对应的第一地址;从由第一地址所指定的第一存储位置读取第一数据;接收与计算命令相对应的第二地址;从由第二地址所指定的第二存储位置读取第二数据;以及对第一数据与第二数据执行与计算命令相对应的计算操作。

第一存储位置和第二存储位置可以为存储单元阵列中的一个或更多个存储单元。

第一地址和第二地址中的至少一种可以包括在不同时间处从存储器件接收的列地址和行地址。

该操作方法可以包括:接收与计算命令相对应的第三地址,以及将计算操作的结果写入至由第三地址所指定的存储单元。

该操作方法可以包括:将计算操作的结果输出给存储器件外部的设备。

可以在接收第一地址时、在接收第二地址时和/或在接收第三地址时接收计算命令。

计算命令可以包括任何合适的命令,诸如:例如加法命令、减法命令、乘法命令、或运算命令、异或运算命令、以及与运算命令等。

根据本发明的一个实施例,一种存储系统可以包括:存储器控制器和存储器,存储器控制器适用于产生计算命令以及与计算命令相对应的第一地址和第二地址;以及存储器件适用于从分别由第一地址和第二地址所指定的第一存储位置和第二存储位置读取第一数据和第二数据,以及适用于对第一数据和第二数据执行与计算命令相对应的计算操作。

存储器控制器还可以将与计算命令相对应的第三地址传送给存储器,以及存储器可以将计算操作的结果写入至与第三地址相对应的存储单元。

存储器可以在执行计算操作之后将计算操作的结果传送给存储器控制器。

计算命令可以包括任何合适的命令,诸如:例如加法命令、减法命令、乘法命令、或运算命令、异或运算命令、以及与运算命令等。

合适的存储器的示例可以包括:单元阵列;访问电路,适用于读取储存在单元阵列中的数据或者将数据写入至单元阵列;第一寄存器,适用于储存通过访问电路而读取的第一数据;第二寄存器,适用于储存通过访问电路而读取的第二数据;计算电路,适用于对储存在第一寄存器中的第一数据与储存在第二寄存器中的第二数据执行与计算命令相对应的计算操作;以及第三寄存器,适用于储存计算电路的计算结果,以及将计算结果提供给访问电路使得计算结果被写入至单元阵列中的与第三地址相对应的存储单元中。

合适的存储器的另一个示例可以包括:单元阵列;访问电路,适用于读取储存在单元阵列中的数据或者将数据写入至单元阵列;第一寄存器,适用于储存通过访问电路而读取的第一数据;第二寄存器,适用于储存通过访问电路而读取的第二数据;计算电路,适用于对储存在第一寄存器中的第一数据与储存在第二寄存器中的第二数据执行与计算命令相对应的计算操作;第三寄存器,适用于储存计算电路的计算结果;以及输出电路,适用于输出储存在第三寄存器中的计算结果。

附图说明

图1是图示传统计算系统的示图。

图2是用于描述图1中示出的传统计算系统的操作的示图。

图3是图示根据本发明的一个实施例的存储系统的示图。

图4和图5是图示根据本发明的一个实施例的图3中示出的存储系统的操作的示图。

图6是根据本发明的一个实施例的图3中示出的存储器件的示图。

图7和图8是图示根据本发明一实施例的图3中示出的存储系统的操作的示图。

具体实施方式

下面将参照附图来更详细地描述各种实施例。然而,本发明可以以不同的形式来实 施,而不应当被解释为局限于本文中所阐述的实施例。相反地,这些实施例被提供使得本公开将是彻底和完整的。贯穿本公开,相同的附图标记在本发明的各种附图和实施例中始终指代相同的部分。

附图不一定按比例,在一些情况下,可能已经夸大了比例以清楚地示出实施例的特征。还要注意的是,在此说明书中,“连接/耦接”不仅指一个组件直接耦接另一个组件,还指经由中间组件而耦接另一个组件。

图3是图示根据本发明的一个实施例的存储系统的示图。

参见图3,存储系统可以包括存储器控制器310和存储器件320(在本文中也简称为存储器)。

存储器控制器310可以经由命令通道301、地址通道302和数据通道303来控制存储器件320。存储器控制器310可以经由通道301至303来控制存储器件320的读取操作和写入操作。存储器控制器310可以经由通道301至303来控制存储器件320的计算操作。通道301至303中的每个可以包括多个传送线。

存储器件320可以经由命令通道301、地址通道302和数据通道303来被控制。存储器件320可以执行读取操作和写入操作。例如,当经由命令通道301而接收到读取命令时,存储器件320可以从与经由地址通道302而接收到的地址相对应的存储单元读取数据,并经由数据通道303将读取的数据传送给存储器控制器310。此外,当经由命令通道301而接收到写入命令时,存储器件320可以将经由数据通道303接收到的数据写入至与经由地址通道302而接收到的地址相对应的存储单元。存储器件320可以在存储器控制器310的控制下执行计算操作。存储器件320可以是或包括任何合适的存储器件,诸如:例如DRAM(动态随机存取存储器)、NAND快闪存储器、NOR快闪存储器、RRAM(电阻式随机存取存储器)、PRAM(相变随机存取存储器)、FRAM(铁电随机存取存储器)、MRAM(磁性随机存取存储器)、电熔丝、以及SRAM(静态随机存取存储器)等。

图4示出图3中所示的存储系统的计算操作的示例。

参见图4,在时间点401处,可以将加法命令OP_ADD和第一地址ADDR1从存储器控制器310传送给存储器件320。然后,存储器件320可以从与第一地址ADDR1相对应的存储单元读取数据,并暂时储存读取的数据而不将读取的数据传送给存储器控制器310。在下文中,该数据将被称作第一数据。

在时间点403处,可以将加法命令OP_ADD和第二地址ADDR2从存储器控制器 310传送给存储器件320。然后,存储器件320可以从与第二地址ADDR2相对应的存储单元读取数据,并暂时储存读取的数据而不将读取的数据传送给存储器控制器310。在下文中,该数据将被称作第二数据。时间点403处的加法命令OP_ADD可以输入至存储器件320来表示第二地址ADDR2与加法命令OP_ADD相关。由于在时间点401处加法命令OP_ADD输入至存储器件320,因此这可以表示在时间点403处输入的第二地址ADDR2也与加法命令OP_ADD相关。因此,可以省略时间点403处加法命令OP_ADD向存储器件320的输入。

在时间点405处,存储器件320可以将第一数据与第二数据相加,并暂时储存相加结果(在下文中称作第三数据)。

在时间点407处,可以将第三地址ADDR3和加法命令OP_ADD从存储器控制器310传送给存储器件320。然后,存储器件320可以将第三数据写入至与第三地址ADDR3相对应的存储单元。时间点407处的加法命令OP_ADD可以输入至存储器件320以表示第三地址ADDR3与加法命令OP_ADD相关。由于加法命令OP_ADD在时间点401处输入至存储器件320,因此其可以表示在时间点407处输入的第三地址ADDR3也与加法命令OP_ADD相关。因此,可以省略在时间点407处加法命令OP_ADD向存储器件320的输入。

由于作为与第三地址ADDR3相对应的存储单元的相加结果的第三数据储存在存储器件320中,因此每当需要第三数据时,存储器控制器310可以通过指示存储器件320执行针对第三地址ADDR3的读取操作来获取第三数据。

参见图4,当加法命令OP_ADD以及三个地址ADDR1、ADDR2和ADDR3从存储器控制器310输入至存储器件320时,可以将储存在第一地址ADDR1处的第一数据与储存在第二地址ADDR2处的第二数据相加,且可以将作为相加结果的第三数据写入至第三地址ADDR3。由于存储器件320对自身执行简单的计算操作,因此可以极大地简化图2中所示的复杂过程。结果,可以改善存储系统的性能并降低其功耗。

图5示出图3中所示的存储系统的计算操作的另一个示例。

参见图5,在时间点501处可以将加法命令OP_ADD和第一地址ADDR1从存储器控制器310传送给存储器件320。然后,存储器件320可以从与第一地址ADDR1相对应的存储单元读取数据,并暂时储存读取的数据而不将读取的数据传送给存储器控制器310。在下文中,来自与第一地址ADDR1相对应的存储单元的数据也可以被称作第一数据。

在时间点503处,可以将加法命令OP_ADD和第二地址ADDR2从存储器控制器310传送给存储器件320。然后,存储器件320可以从与第二地址ADDR2相对应的存储单元读取数据,并暂时储存读取的数据而不将读取的数据传送给存储器控制器310。在下文中,来自与第二地址ADDR2相对应的存储单元的数据也可以被称作第二数据。时间点503处的加法命令OP_ADD可以输入至存储器件320以表示第二地址ADDR2与加法命令OP_ADD相关。然而,由于在时间点501处加法命令OP_ADD输入至存储器件320,因此这可以表示在时间点503处输入的第二地址ADDR2也与加法命令OP_ADD相关。因此,可以省略在时间点503加法命令OP_ADD向存储器件320的输入。

在时间点505处,存储器件320可以将第一数据与第二数据相加,并暂时储存相加结果(在下文中称作第三数据)。

在时间点507处,存储器件320可以经由数据通道303将第三数据DATA3传送给存储器控制器310。

在图4的示例中,已经描述了:加法命令OP_ADD以及三个地址ADDR1至ADDR3被传送给存储器件320,以及存储器件320将对应于第一地址ADDR1的第一数据与对应于第二地址ADDR2的第二数据相加,并将作为相加结果的第三数据储存在对应于第三地址ADDR3的存储单元中。然而,在图5的示例中,加法命令OP_ADD以及两个地址ADDR1和ADDR2可以被传送给存储器件320,以及存储器件320可以将对应于第一地址ADDR1的第一数据与对应于第二地址ADDR2的第二数据相加并将作为相加结果的第三数据直接传送给存储器控制器310。

在图5的实施例中,由于存储器件320自身执行简单的计算操作,因此也可以极大地简化图2中所示的复杂过程。结果,可以改善存储系统的性能,且可以降低存储系统的功耗。

图4和图5图示了存储器件320中的加法的操作过程。然而,可以以类似的方式来执行其他计算操作,诸如减法、乘法、“或(OR)”运算、以及“异或(XOR)”运算等。

图6是根据本发明的一个实施例的图3中示出的存储器件320更详细的示图。

参见图6,存储器件320可以包括命令接收器601、地址接收器602、数据发送器/接收器603、命令解码器610、单元阵列620、访问电路630、第一寄存器641、第二寄存器642、第三寄存器643和计算电路650。

命令接收器601可以接收经由命令通道301而从存储器控制器310传送来的命令。地址接收器602可以接收经由地址通道302而从存储器控制器310传送来的地址。数据 发送器/接收器603可以接收经由数据通道303而从存储器控制器310传送来的数据,或者经由数据通道303将数据传送给存储器控制器310。

命令解码器610可以对经由命令接收器601而接收到的命令解码,并产生内部读取命令IRD、内部写入命令IWT以及内部命令IOP_ADD、IOP_SUB、IOP_MUL、IOP_OR、IOP_AND和IOP_XOR。内部读取命令IRD可以表示存储器件320的读取操作,以及内部写入命令IWT可以表示存储器件320的写入操作。内部命令IOP_ADD、IOP_SUB、IOP_MUL、IOP_OR、IOP_AND和IOP_XOR可以命令存储器件320来执行计算操作。内部加法命令IOP_ADD可以命令存储器件320来执行加法,内部减法命令IOP_SUB可以命令存储器件320来执行减法,以及内部乘法命令IOP_MUL可以命令存储器件320来执行乘法。内部或运算命令IOP_OR可以命令存储器件320来执行或运算,内部“与(AND)”运算命令IOP_AND可以命令存储器件320来执行与运算,以及内部异或运算命令IOP_XOR可以命令存储器件320来执行异或运算。

单元阵列620可以包括按照多个行和多个列布置的多个存储单元。

访问电路630可以在读取/写入操作期间访问单元阵列620中的一个或更多个存储单元,所述存储单元对应于经由地址接收器602而接收到的地址。在读取操作期间,通过访问电路630而读取的数据可以经由数据发送器/接收器603而输出至存储器件320的外部。在写入操作期间,经由数据发送器/接收器603而接收到的数据可以通过访问电路来写入至单元阵列620中。

在内部计算命令IOP_ADD、IOP_SUB、IOP_MUL、IOP_OR、IOP_AND和IOP_XOR中的一个被激活的计算操作期间,访问电路630可以从与第一次接收到的地址(例如,图4和图5的第一地址ADDR1)相对应的存储单元读取数据(第一数据),并将第一数据传送给第一寄存器641。然后,访问电路630可以从与第二次接收到的地址(例如,图4和图5中的第二地址ADDR2)相对应的存储单元读取数据(第二数据),并将第二数据传送给第二寄存器642。当存储器件320根据图4中示出的方法执行计算操作时,访问电路630可以将储存在第三寄存器643中的运算结果写入至与第三次接收到的地址(例如,图4中的第三地址ADDR3)相对应的存储单元。

第一寄存器641可以在计算操作期间储存从与第一地址ADDR1相对应的存储单元读取的第一数据。第一寄存器641可以被设计成储存从存储器件320读取的数据。例如,当在一次读取操作期间读取8位数据时,第一寄存器641可以被设计成储存至少8位数据。

第二寄存器642可以在计算操作期间储存从与第二地址ADDR2相对应的存储单元 读取的第二数据。第二寄存器642可以具有与第一寄存器641相同的数据储存容量。

第三寄存器643可以储存计算电路650的计算结果。第三寄存器643可以具有与第一寄存器641相同的储存容量。当存储器件320如图4中所示那样操作时,在计算操作期间储存在第三寄存器643中的数据可以被提供给访问电路630,以及被写入至与第三地址ADDR3相对应的存储单元。当存储器件320如图5中所示那样操作时,储存在第三寄存器643中的数据可以被提供给数据发送器/接收器603,以及经由数据发送器/接收器603而被传送给存储器控制器310。

计算电路650可以对储存在第一寄存器641中的第一数据与储存在第二寄存器642中的第二数据执行计算,并将计算结果储存在第三寄存器643中。计算电路650可以包括加法器651、减法器652、乘法器653、或运算单元654、与运算单元655和异或运算单元656。计算电路650可以对第一数据与第二数据执行选中的计算,并产生第三数据。例如,当内部减法命令IOP_SUB被激活时,可以通过计算电路650的减法器652来执行计算(第一数据-第二数据)。此外,当内部或运算命令IOP_OR被激活时,可以通过计算电路650的或运算单元654来执行对第一数据的各个位与第二数据的各个位的或运算。例如,当第一数据为1010而第二数据为0010时,可以产生为1010的数据。虽然已经描述了计算电路650执行加法、减法、乘法、或运算、与运算或者异或运算,但是通过计算电路650来执行的若干计算类型可以变化。

存储器件320可以支持图4的计算方法和图5的计算方法中的仅一种或二者。存储器件320可以支持选择一种支持图4的计算方法和图5的计算方法中的一种或二者的操作模式。

图7图示了一种操作方法,相比于图4中示出的操作方法,该操作方法改为解释可能在不同时间接收到行地址和列地址(例如,在DRAM中)的情况。

在图4中,已经描述了与加法命令OP_ADD相关的第一地址ADDR1(即,实际上为行地址和列地址)被立即输入。然而,参见图7,与加法命令OP_ADD相关的第一地址ADDR1可以经由三个分离的操作来接收,其中,在时间点701处接收激活命令ACT和第一地址中的行地址R_ADDR1,在时间点703处接收加法命令OP_ADD和第一地址中的列地址C_ADDR1,以及在时间点705处接收用于去激活第一地址中的行地址R_ADDR1的行选择(row selection)的预充电命令PCG。

类似地,第二地址ADDR2可以经由三个分离的操作来接收,其中,在时间点707处接收激活命令ACT和第二地址中的行地址R_ADDR2,在时间点709处接收加法命令OP_ADD和第二地址中的列地址C_ADDR2,以及在时间点713处接收预充电命令PCG。 此外,可以在接收加法命令OP_ADD的时间点709与接收预充电命令PCG的时间点713之间的时间点711处执行加法。

此外,第三地址ADDR3也可以经由三个分离的操作来接收,其中,在时间点715处接收激活命令ACT和第三地址中的行地址R_ADDR3,在时间点717处接收加法命令OP_ADD和第三地址中的列地址C_ADDR3,以及在时间点719处接收预充电命令PCG。

除不在同一时间处接收第一地址ADDR1至第三地址ADDR3而是在不同时间处接收行地址和列地址以外,图7中的操作可以按照与图4中的操作相同的方式来执行。

图8图示了一种相比于图5中所示的方法而修改过的操作方法,该操作方法解释在不同时间处接收行地址和列地址(例如,在DRAM中)的情况。

在图5中,已经描述了与运算命令OP_ADD相关的第一地址ADDR1被立即输入。然而,参见图8,与加法命令OP_ADD相关的第一地址ADDR1可以经由三个分离的操作来接收,其中,在时间点801处接收激活命令ACT和第一地址中的行地址R_ADDR1,在时间点803处接收加法命令OP_ADD和第一地址中的列地址C_ADDR1,以及在时间点805处接收用于去激活第一地址的行地址R_ADDR1的行选择的预充电命令PCG。

类似地,第二地址ADDR2可以经由三个分离的操作来接收,其中,在时间点807处接收激活命令ACT和第二地址中的行地址R_ADDR2,在时间点809处接收加法命令OP_ADD和第二地址中的列地址C_ADDR2,以及在时间点813处接收预充电命令PCG。此外,可以在接收加法命令OP_ADD的时间点809与接收预充电命令的时间点813之间的时间点811处执行加法,且可以暂时储存相加结果(即,第三数据)。

在时间点815处,存储器件320可以经由数据通道303而将第三数据传送给存储器控制器310。

除不是在同一时间处接收第一地址ADDR1和第二地址ADDR2、而是在不同时间处接收行地址和列地址以外,图8中示出的操作可以按照与图5中所示的操作相同的方式来执行。

根据本文中描述的本发明的实施例,存储器件可以执行计算操作,可以改善存储系统的性能,以及可以降低存储系统的功耗。

虽然已经出于说明的目的而描述了各种实施例,但对于本领域技术人员将明显的是,在不脱离所附权利要求所限定的本发明的精神和范围的情况下,可以作出各种改变和修改。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1