存储器装置及其操作方法与流程

文档序号:13423613阅读:226来源:国知局
存储器装置及其操作方法与流程

本发明是有关于一种存储器装置及其操作方法,且特别是有关于一种可自定义存储器命令的存储器装置及其操作方法。



背景技术:

同步动态随机存取存储器(synchronousdynamicrandom-accessmemory,sdram)是具有一个同步接口的动态随机存取存储器,通过时脉信号来与电脑的总线达成同步。随着存储器技术的进步,双倍数据速率同步动态随机存取存储器(doubledataratesynchronousdynamicrandomaccessmemory,ddrsdram)也被发展出来。ddrsdram是具有双倍传输速率的sdram,其在系统时钟的上升沿和下降沿都可以进行数据的传输,因而其传输速率为系统时脉的两倍,具有较高的工作效率。

为了进一步提升工作效率,第二代、第三代以及第四代的ddrsdram都已经发展出来。然而,由于jedec固态技术协会(jedecsolidstatetechnologyassociation)对dram所订定的标准,dram在执行动作时需要从存储器控制器陆续接收多个存储器命令,并且分别对逐个存储器命令执行对应的存储器操作才能完成动作。举例而言,当欲写入一笔数据时,存储器控制器会对dram陆续下达对应于存储器操作:激活(activate)列地址、读取(read)行地址以及预充电(precharge)的三个存储器命令,并且由dram陆续完成上述的三个存储器操作。在另一个例子中,当欲连续写入多笔数据时,存储器控制器不仅需要多次对dram下达rd命令,还必须传输多个存储器地址给dram。因此,倘若能够减少存储器控制器与dram之间过多的传输,包括存储器命令或地址等,将能够提升系统的效率,并降低系统的功耗。



技术实现要素:

本发明提供一种存储器装置及其操作方法,可减少存储器命令的传输次数,以提升存储器装置的效率并减少功耗。

本发明的存储器装置包括存储单元阵列、暂存单元以及指令产生器。存储单元阵列包括多个存储单元。暂存单元用以记录多个自定义信息。指令产生器耦接于暂存单元以及存储单元阵列。指令产生器接收自定义命令,并且依据所接收的自定义命令以及自定义信息对存储单元阵列执行至少两个存储器操作。自定义信息是依据所述的至少两个存储器操作来产生。

本发明的存储器装置操作方法适用于包括存储单元阵列以及暂存单元的存储器装置。此存储器装置操作方法包括以下步骤。写入多个自定义信息至暂存单元。接收自定义命令。依据所接收的自定义命令以及自定义信息对存储单元阵列执行至少两个存储器操作。自定义信息是依据所述的至少两个存储器操作来产生。

基于上述,在本发明的实施例中,在存储器装置的暂存单元中记录多个自定义信息,此种存储器装置操作方法可在存储器装置接收到一个自定义命令时,依据自定义命令以及自定义信息来执行至少两个存储器操作。据此,可提升存储器装置的存取效率并降低功耗。

为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。

附图说明

图1示出本发明一实施例的存储器装置的概要方块图;

图2示出本发明一实施例的自定义信息的示意图;

图3示出现有的存储器装置操作方法的示意图;

图4示出本发明一实施例的存储器装置操作方法的示意图;

图5示出本发明一实施例的存储器装置的架构示意图;

图6示出本发明一实施例的存储器装置操作方法的流程图。

附图标记说明:

100:存储器装置;

110:暂存单元;

120:指令产生器;

121:自定义命令产生器;

123:自定义地址产生器;

130:存储单元阵列;

140:检测单元;

150:信号解码器;

151:命令解码器;

153:地址解码器;

161、163:多工器;

210:命令流程信息;

220:地址递增信息;

230:起始地址信息;

240:回圈信息;

act、wr、rd、pre、prea、pd、pre:存储器命令;

ba_ini:区块地址;

bs:区块递增信息;

ca_ini:行地址;

ck:时脉周期;

cmd1、cmd2、cmd3:命令信息;

cs:行递增信息;

d1、d2、d3、d4、d5、d6、d7、d8:数据;

dl1、dl2、dl3:延迟信息;

lp:回圈数;

ra、ca、bnk:地址信息;

ra_ini:列地址;

rl:读取延迟;

rs:列递增信息;

s610、s611、s613、s615、s620、s630、s640、s650:存储器装置操作方法的步骤;

t1、t2、t3、t4、t5、t6、t7、t8、t9、t10、t11、t12、t13、t14、t15:时脉周期;

trcd:列控制器至行控制器传输延迟;

trtp:内部读取到预充电命令延迟;

ud_cmd:自定义命令;

ud_info:自定义信息。

具体实施方式

图1示出本发明一实施例的存储器装置的概要方块图。请参考图1,本实施例的存储器装置100包括暂存单元110、指令产生器120以及存储单元阵列130。在本实施例中,暂存单元110例如为模式暂存器(moderegister,mr),其中记录有多个自定义信息ud_info。指令产生器120例如为状态机(statemachine),通过系统的时脉来驱动,以依据所接收到的自定义命令ud_cmd以及暂存单元110中所记录的自定义信息ud_info来对存储单元阵列130进行至少两个存储器操作。

举例而言,在存储器装置100启动(poweron)后,例如可经历包括初始化(initialization)、闲置(idle)、激活(activate)或预充电(precharge)等状态,其中在闲置状态中可进入模式暂存器设置(moderegisterset,mrs)状态。在一实施例中,上述自定义信息ud_info可例如是于此mrs状态中写入暂存单元110。倘若指令产生器120接收到自定义命令ud_cmd,则可依据暂存单元110中的自定义信息ud_info来对存储单元阵列130执行至少两个存储器操作。以下利用图1的存储器装置100来举例说明本发明的存储器装置操作方法。

图2示出本发明一实施例的自定义信息的示意图。请参考图2,本实施例的自定义信息ud_info为使用者可自行定义以让存储器装置100对应执行存储器操作的信息,记录于暂存单元110中。在本实施例中,自定义信息ud_info包括命令流程信息210、地址递增信息220、起始地址信息230以及回圈信息240。然而,本发明并不限于此。在其他实施例中,所属领域具备通常知识者可依不同的需求来调整自定义信息ud_info中所包括的信息,使存储器装置100接收到自定义命令ud_cmd时,可依据自定义信息ud_info来执行所需的至少两个存储器操作。

在本实施例中,命令流程信息210包括命令信息cmd1至cmd3以及延迟信息dl1至dl3,用以提供对存储器阵列130执行操作的操作信息。例如,命令信息cmd1至cmd3分别为1、3与4,分别对应激活(act)、读取(rd)以及预充电(pre)三个存储器操作。延迟信息dl1至dl3皆对应于0个时脉周期(ck),分别代表执行完对应命令信息cmd1至cmd3的存储器操作后,除存储器本身规范所须延迟的时间外,使用者所自订额外延迟的时间。详细来说,命令信息cmd1与cmd2例如分别是对应激活与读取的存储器操作。通常在存储器装置100执行激活操作后,至少须经过列控制器至行控制器传输延迟(ras#tocas#delay,trcd)才能继续接收读取命令以执行读取操作。而本实施例的自定义信息ud_info还定义延迟信息dl1,使存储器装置100在执行对应激活操作的命令信息cmd1后,经过trcd以及自定义的dl1的延迟,才继续执行对应读取操作的命令信息cmd2,以增加存储器装置的稳定性。

在本实施例中,起始地址信息230包括起始列地址ra_ini、起始行地址ca_ini以及起始区块地址ba_ini。起始地址信息230用以指向存储单元阵列130的多个存储单元中的其中之一。当指令产生器120接收到自定义命令ud_cmd后,依据自定义命令ud_cmd以及记录于暂存单元110中的自定义信息ud_info,对存储单元阵列130或起始地址信息230所指向的存储单元开始执行命令流程信息210所对应的至少两个存储器操作。为方便说明,以下将起始地址信息230所对应的存储单元称作第一存储单元。

图3示出现有的存储器装置操作方法的示意图。请参考图3。一般来说,在存储器装置欲写入一笔数据至列地址、行地址以及区块地址分别为ra_ini、ca_ini以及ba_ini的第一存储单元时,例如于时脉周期t1,先从存储器控制器接收激活(act)的存储器命令,并提供区块地址ba_ini与列地址ra_ini。在接收到激活存储器命令后,至少经过列控制器至行控制器传输延迟t-rcd,再于时脉周期t6从存储器控制器接收另提供有行地址ca_ini的读取(read)存储器命令。接收到读取存储器命令后,至少经过读取延迟(readlatency,rl),便于时脉周期t11开始从第一存储单元读取数据d1至d8。另一方面,接收到读取存储器命令后,至少经过内部读取到预充电命令延迟(readtoprechargetime,t-rtp),再于时脉周期t10从存储器控制器接收预充电(pre)命令以执行预充电操作。如此一来,在上述图3的实例中存储器装置至少包括3次的存储器命令传输。

图4示出本发明一实施例的存储器装置操作方法的示意图。请参考图4,本发明实施例将包括命令流程信息210以及起始地址信息230的自定义信息ud_info定义于存储器装置100的暂存单元110中,其中自定义信息ud_info是依据激活、读取以及预充电三个存储器操作来产生。据此,在本实施例中,当指令产生器120于时脉周期t1自外部(例如,存储器控制器)接收到自定义命令ud_cmd后,依据命令流程信息210,首先会执行对应命令信息cmd1的激活存储器操作。随后,经过列控制器至行控制器传输延迟t-rcd、延迟信息dl1所对应的延迟时间以及读取延迟rl后,指令产生器120开始对第一存储单元执行读取操作。另一方面,在接收到自定义命令ud_cmd后,经过列控制器至行控制器传输延迟t-rcd、延迟信息dl1所对应的延迟时间(在本实施例中为0)、内部读取到预充电命令延迟trtp以及延迟信息dl2(在本实施例中为0)所对应的延迟时间后,指令产生器120开始对存储单元阵列130执行预充电操作。

相比于图3中的存储器装置操作方法,在图4实施例中的存储器装置100仅包括一次的自定义命令ud_cmd传输,便可从第一存储单元中读取d1至d8的数据,并执行完如图3实例中的所有存储器操作。此外,在本实施例中,指令产生器120对存储单元阵列130执行预充电操作后,再经过列地址预充电时间(rowprechargetime,trp)以及延迟信息dl3所对应的延迟时间便能够再次执行下一个存储器操作。

利用本发明实施例的存储器装置操作方法,通过将上述的命令流程信息210以及起始地址信息230定义在自定义信息ud_info并记录于暂存单元110中,指令产生器120在接收到自定义命令ud_cmd后,便能够依其对存储单元阵列130执行至少两个存储器操作。值得一提的是,在一些情况中,使用者还例如是希望重复执行命令流程信息210中所对应的存储器操作。因此,在本实施例中还将地址递增信息220以及回圈信息240定义于自定义信息ud_info当中。

请再参考图2。在本实施例中,地址递增信息220包括列递增信息rs、行递增信息cs以及区块递增信息bs,回圈信息240包括回圈数lp。回圈数lp用以表示依据命令流程信息210来对存储单元阵列130进行存储器操作的重复次数,并且地址递增信息220用以决定重复进行存储器操作时作为操作对象的存储单元。举例而言,回圈数lp所对应的重复次数例如为2次,列递增信息rs、行递增信息cs以及区块递增信息bs皆对应于n=n+1。据此,指令产生器120在依据起始地址信息230对列地址、行地址以及区块地址分别为ra_ini、ca_ini以及ba_ini的第一存储单元,依据命令流程信息210进行至少两个存储器操作后,会接着对列地址、行地址以及区块地址分别为ra_ini+1、ca_ini+1以及ba_ini+1的存储单元,再次依据命令流程信息210进行至少两个存储器操作。

在本实施例中,通过进一步将地址递增信息220以及回圈信息240定义于自定义信息ud_info当中,指令产生器120在接收自定义命令ud_cmd后,可依据起始地址信息230、地址递增信息220以及回圈信息240来依序对存储单元阵列130中的至少一个存储单元重复执行命令流程信息210中所对应的至少两个存储器操作。

值得一提的是,图2实施例的自定义信息ud_info中的命令对照表、延迟对照表、地址递增对照表以及回圈对照表是用以方便对应命令流程信息210、地址递增信息220以及回圈信息240中的各数字所代表的内容,但本发明并不加以限制自定义信息ud_info的表示方法。除了使用上述的各对照表外,在其他实施例中,所属领域具备通常知识者可依不同的需求以其他的方式记录自定义信息ud_info。

在本实施例中,存储器操作例如包括激活、读取以及预充电,但本发明并不限于此。在其他实施例中,存储器操作可例如为无操作(nooperation)、激活(activate)、读取(read)、写入(write)、预充电(precharge)以及省电(powerdown)等存储器操作的其中之一。

另一方面,在本实施例中,命令信息cmd1至cmd3例如是分别对应于不同的存储器操作。然而,本发明并不限于此,在另一实施例中,命令信息cmd1至cmd3可例如是对应于相同的存储器操作。以下将举本发明的另一实施例,详述本发明实施例的存储器装置操作方法。

图5示出本发明一实施例的存储器装置的架构示意图。图6示出本发明一实施例的存储器装置操作方法的流程图。请参考图5,本实施例的存储器装置100包括暂存单元110、指令产生器120以及存储单元阵列130外,还包括检测单元140、信号解码器150以及多个多工器161、163。值得一提的是,本实施例的指令产生器120包括自定义命令产生器121以及自定义地址产生器123,信号解码器150包括命令解码器151以及地址解码器153。

请同时参考图5与图6。在步骤s610中,存储器装置100会在暂存单元110中写入多个自定义信息ud_info。在本实施例中,写入自定义信息ud_info至暂存单元110的步骤又包括步骤s611至s615。在步骤s611中,存储器装置100可例如自外部接收信号。在步骤s613中,检测单元140会检测所接收的信号是否为对应于自定义信息ud_info的至少其中之一的写入信号。若所接收的信号是对应于自定义信息ud_info的至少其中之一的写入信号,则在步骤s615中,依据此写入信号将其所对应的至少一个自定义信息ud_info记录于暂存单元110中。在本实施例中,对应于自定义信息ud_info的至少其中之一的写入信号可例如是来自使用者自行定义的写入信号。因此,步骤s611至s615可例如是重复执行数次以记录所有使用者所需的自定义信息ud_info。

举例而言,存储器装置100可例如自外部接收对应于命令流程信息210的写入信号,且命令流程信息210包括至少两个命令信息以及至少一个延迟信息。在检测单元140检测所接收的写入信号是对应于命令流程信息210后,便可依据此写入信号将命令流程信息210写入暂存单元110中。除此之外,存储器装置100可例如自外部接收对应于回圈信息240的另一个写入信号。在检测单元140检测所接收的写入信号是对应于回圈信息240后,便可依据此写入信号将回圈信息240写入暂存单元110中。然而,本发明并不在此限制写入信号所对应的自定义信息ud_info的内容。也就是说,本实施例中的写入信号可例如是对应于命令流程信息、起始地址信息、地址递增信息以及回圈信息的其中之一或其组合。在其他实施例中,所属领域具备通常知识者可依其需求来定义对应于不同的自定义信息的写入信号。

在自定义信息ud_info被记录至暂存单元110后,在步骤s620中,指令产生器120会接收自定义命令ud_cmd。在本实施例中,自定义命令ud_cmd例如是由使用者通过至少一热键来产生,并通过存储器控制器传递至指令产生器120,但本发明并不限于此。在其他实施例中,自定义命令ud_cmd也可例如是定义为其他任意形式的触发信号。

一旦指令产生器120接收到自定义命令ud_cmd,则进入步骤s630。在步骤s630中,指令产生器120会依据所接收的自定义命令ud_cmd以及暂存单元110中的自定义信息ud_info来对存储单元阵列130执行至少两个存储器操作。在本实施例中,多工器161是耦接于自定义命令产生器121与命令解码器151,且多工器163是耦接于自定义地址产生器123与地址解码器153。当指令产生器120接收到自定义命令ud_info时,多工器161会切换以使自定义命令产生器121依据命令流程信息210来对存储单元阵列130下达命令,并且多工器163会切换以使自定义地址产生器123依据地址递增信息220、起始地址信息230以及回圈信息240来对存储单元阵列130提供地址信息。在本实施例中,指令产生器120依据所接收的自定义命令ud_cmd以及暂存单元110中的自定义信息ud_info来对存储单元阵列130执行至少两个存储器操作的方式已于前述实施例中详细说明,在此不再赘述。

回到步骤s613,若所接收的信号并非对应于自定义信息ud_info的至少其中之一的写入信号,则进入步骤s640。在步骤s640中,信号解码器150会解码所接收的信号以得到解码结果。随后,在步骤s650中,依据解码结果对存储单元阵列130执行所接收的信号所对应的单一存储器操作。在本实施例中,被信号解码器150所解码的信号可例如是包括对应单一存储器操作的外部信号,解码结果包括存储器命令以及地址信息。命令解码器151会解码此外部信号以得到其所对应的存储器命令。多工器161会切换以使命令解码器151依据此存储器命令来对存储单元阵列130执行对应的单一存储器操作。另一方面,地址解码器153会解码此外部信号以得到其所对应的地址信息。多工器163会切换以使地址解码器153依据此地址信息来提供给存储单元阵列130,以配合执行上述的单一存储器操作。

换言之,在本实施例中,多个自定义信息ud_info会被记录在暂存单元110中。倘若存储器装置100接收到对应于单一存储器操作的外部信号,而未接收到作为触发信号的自定义命令ud_cmd,则会依据对外部信号解码后的解码结果来对存储单元阵列130执行对应的单一存储器操作。特别是,倘若存储器装置100的指令产生器120接收到自定义命令ud_cmd作为触发信号,则会依据自定义命令ud_cmd以及记录于暂存单元110中的自定义信息ud_info来对存储单元阵列130执行至少两个存储器操作。

值得一提的是,以第三代双倍数据速率同步动态随机存取存储器(ddr3sdram)来说,当从存储器控制器接收到对应一个读取操作的外部信号时,可读取的数据长度为8个比特,即突发长度(burstlength,bl)为8。然而,在本实施例中的命令流程信息210所包含的三个命令信息cmd1至cmd3皆是对应于读取操作rd。因此,当使用者欲从存储器装置100中读取24个比特的数据时,仅需将一个自定义命令ud_cmd传递至存储器装置100的指令产生器120,便能够依序执行三个读取操作,以读取24个比特的数据。换言之,通过本发明实施例的自定义命令ud_cmd可依序对存储单元阵列130执行两个以上相同的存储器操作。

此外,本发明实施例的自定义命令是对应于自定义信息,而本发明并不限制自定义命令的数量。在其他实施例中,暂存单元也可例如是记录包括多组的自定义信息,其中各组自定义信息皆包括命令流程信息、地址递增信息、起始地址信息以及回圈信息等,并且依据所接收到的自定义命令种类来选择其中一组自定义信息作为依据,来对存储单元阵列执行至少两个存储器操作。举例来说,暂存单元例如记录有第一自定义信息以及第二自定义信息。当使用者通过输入热键组合来产生第一自定义命令,并且指令产生器接收到此第一自定义命令时,便依据暂存单元中所记录的第一自定义信息来对存储单元阵列执行第一自定义信息所对应的至少两个存储器操作。另一方面,当指令产生器接收到来自主机系统的第二自定义命令时,便依据暂存单元中所记录的第二自定义信息来对存储单元阵列执行第二自定义信息所对应的至少两个存储器操作。

综上所述,本发明实施例所提供的存储器装置以及存储器装置操作方法,将自定义信息记录于存储器装置的暂存单元中,并且在接收到自定义命令时,触发存储器装置依据所接收的自定义命令以及记录于暂存单元中的自定义信息,对存储器装置的存储单元阵列执行至少两个存储器操作。据此,可节省指令传输的次数,以减少系统的功耗。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

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