菊花链存储器配置和用途的制作方法

文档序号:6748869阅读:406来源:国知局

专利名称::菊花链存储器配置和用途的制作方法菊花链存储器配置和用途
背景技术
:目前,许多电子装置包括存储器系统用来保存信息。例如,一些存储器系统保存数字化的音频信息,用于通过相应的媒体播放器重放。其它的存储器系统保存软件和相关的信息来执行不同类型的处理功能。在许多电子装置中,存储器系统通常包括控制器和一个或者多个对应的存储器装置。控制器典型地包括配置为产生到存储器装置的信号以便保存和获取数据的电路。在特定传统存储器系统中,诸如处理器的控制器使用地址总线和数据总线来存取保存在存储器中的数据。通常,使用许多线路来实现这样的总线,并且由于需要将处理器直接连接到许多不同存储器装置的每一个,所以依赖于存储器系统的布局,总线连接可以延伸很长的距离并且可以通过许多不同的电路板层。现在示例性地参考以下附图,其中图IA和IB是根据此处实施例的存储器系统的示例框图;图2是根据此处第一实施例的存储器系统的示例框图;图3A和3B是根据此处实施例用于执行块复制的时序图的例子;图4是描述根据此处实施例由存储器控制器执行的用于将数据从一个存储器装置复制到另一个存储器装置的步骤序列的示例流程图;图5是根据此处第二实施例的存储器系统的示例框图;图6A是示出示例存储器系统并且将数据从一个存储器装置复制到多个存储器装置的框图;图6B是描述根据此处实施例由存储器控制器执行的用于将数据从一个存储器装置复制到多个存储器装置的步骤序列的示例流程图;图7-10是示出根据此处实施例的包时序信息的示例时序图;图11是根据此处实施例的控制器的示例结构图,和图12是根据此处实施例的复制数据的方法的示例流程图。具体实施例方式用来存取保存在存储器中的数据的传统并行总线实现方案具有一定的缺陷。其中一个缺陷是实现这样的系统中所涉及的复杂性。例如,由于传统并行总线通常需要大量穿过许多个印刷电路板层的连接,所以电路和迹线布局具有挑战性。并行总线的另一个缺陷涉及存储器系统中的信号质量。例如并行总线易于受到串扰、信号倾斜(signalskew)、信号衰减和噪声的影响,其将影响连接所承载的信号的质量。和并行总线设计相关联的又一个缺陷涉及功耗。例如,并行总线通常需要大量功率来将信号驱动至总线上。对于以越来越高的存取速度操作的新技术而言,功耗一般会恶化。为了解决和并行总线相关联的缺点,一些存储器系统引入传统的串行总线设计,用于在控制器和相应的存储器装置之间传送数据和控制信号。传统的串行总线设计趋向于使用较少的连接(由于数据串行发送而非并行发送)并且因此相对于与并行总线设计相关的布局问题而言,其并不复杂也不易受影响。以上讨论的传统存储器系统可以用来支持从一个存储器装置到另一个存储器装置的数据传送。例如,假设传统存储器系统中的存储器控制器接收到命令来将保存在第一存储器装置中的数据块复制到第二存储器装置。为了执行这样的操作,控制器首先存取资源存储器装置来获取要复制的数据块。随后,控制器将所存取的数据保存在其本地缓存器中。控制器随后启动将缓存器中的数据写到目标存储器装置的操作。即使存储器系统碰巧被配置具有一个或者多个串行总线来消除上述的印刷电路板布局问题,由于数据需要被从存储器装置获取,本地保存在控制器缓存器中,并且通过总线从控制器发送到目标存储器装置以便将数据保存在目标存储器装置中,所以该传统复制数据的技术十分缓慢。除了缓慢,此例中的控制器必须配置有一个大缓存器,以便足以临时保存复制到存储器的所存取的数据。因此,传统数据传送需要过多的时间和存储资源来执行相应的事务。总体来说,此处的特定实施例包括能够克服上述缺陷和/或本领域内公知缺陷的存储器系统。例如,此处的一个实施例包括存储器系统,该存储器系统包括以菊花链方式耦合的控制器和包括多个连续的存储器装置的对应串。在这样的实施例中,存储器系统包括从控制器开始且通过存储器装置(例如,基于闪速的存储器装置)中的每一个的串行(菊花链)数据链路和/或串行(菊花链)控制链路。控制器在串行控制链路和/或串行数据链路上传递命令来配置该存储器系统,以使得能够从菊花链中的源存储器装置到目标存储器装置直接传送或者复制数据。根据此处实施例的数据块的复制可以包括多个步骤。例如,控制器可以在通过多个连续的存储器装置的菊花链路(例如,串行链路)上进行通信,以将该多个存储器装置中的第一存储器装置配置为源,用于输出保存在第一存储器装置中的数据。控制器还在该菊花链链路上通信以将第二存储器装置配置为用于接收数据的目的。在将第一存储器装置配置为源并且将第二存储器装置配置为目的之后,控制器在菊花链控制链路上传递一个或者多个附加命令来启动在该菊花链链路上的从源存储器装置到目标存储器装置的数据传送。根据此处实施例的从源存储器装置到目标存储器装置的复制数据块的传送使得控制器无需临时保存数据并且将其传送到目的存储器装置。如上讨论的传统方法需要控制器获取并本地保存数据以执行复制操作。因此,根据此处实施例的块复制命令可以以少于传统方法的时间来实现。另外,因为数据不需要像传统方法一样临时保存在控制器中,所以根据此处实施例的控制器不需要配置成包括用于临时保存正要复制的数据块的大缓存器。换句话说,来自一个存储器装置的复制数据可以无需通过控制器而在菊花链链路上传送到另一个存储器装置。除了支持点对点(例如,存储器芯片到存储器芯片)的数据传送之外,如在本说明书中下面更详细讨论的,根据此处实施例的控制器可以启动菊花链中从一个存储器装置到多个不同存储器装置的数据块复制。例如,控制器可以启动将同一数据块复制到多个不同的存储器装置的操作。在又一个实施例中,控制器还可以启动将在一个存储器装置中保存的部分数据复制到多个存储器装置中的每一个的操作。例如,控制器可以在菊花链控制链路上开始通信来将第一存储器装置配置为具有要复制的数据块的源,将第二存储器装置配置为用于接收该数据块的第一部分的目标,将第三存储器装置配置为用于接收该数据块的第二部分的目标,诸如此类进行配置。在配置和发布附加命令之后,控制器将数据块的各部分从一个存储器装置传送到多个存储器装置。因此,保存在单个存储器装置中的数据块可以被复制并且分配到多个存储器装置。在又一个实施例中,控制器可以被配置包括布置在菊花链路径中的错误检测电路,用于检查在将数据写到目标装置(数据所要被复制到的装置)的内核存储器之前该目标存储器装置是否从源存储器装置正确接收到数据。如果需要,控制器(例如,纠错电路)修改或者修复该数据,以使得写到目标装置的存储器的数据无误。在本说明书以下部分中将更详细地讨论这些和其他实施例。如上所述,此处的技术适合用于诸如支持闪速技术的存储器系统中。然而,应该注意到,此处的实施例不限于用在这样的应用中,并且此处讨论的技术也适合用于其它应用。另外,虽然在本说明书中的不同位置讨论了不同特征、技术、配置等的每一个,但是可以理解每一个概念可以互相独立实现或者互相组合来实现。从而,本发明可以以多种方式实现和看待。现在,更具体地,图IA和图IB示出根据此处实施例的示例存储器系统100。在图IA的本例的环境中,存储器系统100包括通过串行或者菊花链通信链路162(例如通信路径151)存取多个存储器装置110(例如,存储器装置110-1,存储器装置110-2,…,存储器装置110-M)的控制器102。如图IB所示,菊花链链路162可以包括数据链路160和控制链路150。在一个实施例中,数据链路160和控制链路150是根据此处实施例的支持块复制的资源的逻辑表示。如在本说明书以下讨论的,通过使用用于形成从控制器102开始、到达以及通过存储器装置110的菊花链路径的多个电信号可以实现与数据链路160和控制链路150相关联的功能性。数据链路和控制链路也可以描述通过该串存储器装置110的物理链路。使用串行通信链路可以启用诸如在存储器系统100中的每个节点(例如,控制器102,存储器装置110-1,存储器装置110-2等等)之间的数据复制的操作。在一个实施例中,连接存储器装置110的菊花链链路是闭环。例如,如图IB中所示,控制和/或数据链路通过该存储器装置Iio中的每一个并返回到控制器102。控制器102包括存取控制模块140(例如,支持存取控制功能和其他处理功能的电子电路)和错误检查模块109。和控制器102相关联的存取控制模块140产生、传递并开始执行不同存储器命令或者存储器操作。从名称可以看出来,错误检查模块109支持诸如以下讨论的查错和纠错的功能。如图所示,每个存储器装置110(例如,基于闪速的存储器装置)可以包括对应的(内核)存储器115来保存数据。另外,存储器装置110中的每一个可以包括接口电路和对应的缓存器以便执行如控制器102指定的存储器事务。例如,存储器装置110-1包括存储器115-1(例如,内核存储器)以及控制和数据处理(C.A.D.P)电路125-1和对应的缓存器118-1(例如,临时存储资源);存储器装置110-2包括存储器115-2以及控制和数据处理电路125-2和对应的缓存器118-2;存储器装置110-M包括存储器115-M以及控制和数据处理电路125-M和对应的缓存器118-M。缓存器118-1、118-2,…,118-M可以用于临时保存从存储器获取的数据或者临时保存要写到存储器115的数据。和存储器装置110相关的示例结构的其它细节可以在2007年7月18日提交的序号为11/779587、名称为“MEMORYWITHDATACONTROL(具有数据控制的存储器)”的美国专利申请中找到。注意到,存储器系统100或者更具体地存储器装置110可以使用不同类型的存储器来实现。例如,此处所述概念可以应用到许多不同类型的存储器系统和装置,其包括但不限于诸如NAND闪速存储器、NOR闪速存储器、AND闪速存储器、串行闪速存储器、分裂位线NOR(DiNOR)闪速存储器的闪速技术,动态随机存取存储器(DRAM),静态RAM(SRAM),铁电RAM(FRAM),磁性RAM(MRAM),相变RAM(PCRAM),只读存储器(ROM),电可擦除可编程ROM(EEPROM)以及其它。如上所提及的,菊花链162提供一个路径,在该路径上控制器102将诸如配置信息、指令、命令的信息传递给不同的存储器装置110。控制链路150可以包括命令选通信号和数据选通信号,如本说明书以下所述。注意到,菊花链链路162还可以配置为提供一个路径,在该路径上存储器装置110可以互相通信和/或与控制器102通信。数据链路160提供一个路径,在该路径上控制器102和/或存储器装置110可以互相之间传递数据。如前所述,此处的特定实施例是基于能克服前述缺陷和/或本领域内公知的其他缺陷的存储器系统100。例如,存储器系统100可以包括以菊花链方式耦合的控制器102和包括多个连续的存储器装置110的对应串,以执行复制或者存储器传送命令。在复制操作期间,控制器102在菊花链链路162上通信来配置存储器装置110,以便将数据从一个存储器装置110复制到另一个存储器装置。诸如控制链路150和数据链路160的通信链路的每一个可以包括用于连接存储器系统100中的各节点的多个点对点段。例如,控制链路150的第一段可以是存取控制模块140与控制和数据处理电路125-1之间的点对点连接,控制链路150的第二段可以是控制和数据处理电路125-1与控制和数据处理电路125-2之间的点对点连接,…,控制链路150的第M+1段可以是控制和数据处理电路125-M与控制器102之间的点对点连接,从而形成闭环。每个存储器装置110可以包括控制和数据处理电路125来译码所接收到的命令并且开始执行寻址到相应存储器装置的命令。另外,每个控制和数据处理电路125可以将所接收到的命令和/或数据传送到相继的下游装置。例如,控制和数据处理电路125-1可以在控制器102和存储器装置110-1之间的串行链路的点对点段上从控制器102接收通信,并且沿串行路径151向下在控制和数据处理电路125-1与控制和数据处理电路125-2之间的点对点段上重新发送所接收的通信。其它存储器装置可以以类似方式操作,使得存取控制模块140可以和任一存储器装置110通信(例如,发送和接收信息)。注意到控制器102可以根据直通模式或者非直通模式来配置每一个存储器装置110。在直通模式中,相应的存储器装置从上游装置(例如,控制器102或者存储器装置)接收输入并且将所接收的输入传递到下游节点(例如,诸如存储器装置110-2,…,存储器装置110-M的存储器装置)。假设控制器102在菊花链链路上将命令传递(下行)到诸如存储器装置110-1的第一存储器装置的输入。在直通模式中,存储器装置110-1进而输出该命令到菊花链中诸如存储器装置110-2的下游存储器装置的输入。当存储器系统100中的每一节点被配置处于直通模式时,控制器102可以发送一个能够贯穿路径151—直返回到控制器102的命令。当处于这样的模式时,存储器装置10可以发送贯穿路径151返回到控制器110的消息和/或数据。由于每个存储器装置必须消耗功率来驱动菊花链链路中的下一个存储器装置的输入,所以将存储器装置100中的存储器装置配置为直通模式增加了功耗。然而,直通模式可使得控制器102可以执行诸如接收数据以便进行以下详述的错误检查的功能。在非直通模式中,相应的存储器装置从上游装置(例如,控制器102或者其它存储器装置)接收输入并且禁止将所接收的输入传递或者发送到下游节点(即,另一个存储器装置)。在存储器系统100中将一个或者多个节点配置为非直通模式的一个目的是为了降低功耗。在一个实施例中,对数据进行从一个存储器装置到另一个存储器装置的数据传送(例如,块复制),而无需控制器102获取并本地保存数据之后再将数据写到目标存储器装置。相反,根据此处的一个实施例,控制器102在控制链路150和数据链路160上进行通信以配置存储器装置执行从源存储器115-1到缓存器118-1的数据获取(例如,读取),从源存储器装置的缓存器118-1到目标存储器装置110-M的缓存器118-M的数据传送,和将缓存器118-M中所传送的数据保存(例如,写)在目标装置110-M的内核存储器115-M。因此,此处的实施例包括的控制器被配置为在菊花链控制链路上通信以配置多个所选存储器装置110中的每一个并且启动在串行链路或者菊花链数据链路上的数据传送,该串行链路或者菊花链数据链路通过从存储器装置110-1开始、经过诸如存储器装置110-2的中间存储器装置、到达存储器装置110-M的多个连续的存储器装置。因此,此处的一个实施例包括一个或者多个存储器装置,每一个存储器装置配置为包括用于从上游存储器装置接收数据的输入,用于发送数据到下游存储器装置的输出,和该输入和输出之间的控制和数据处理电路125。控制和数据处理电路125配置为从诸如控制器102的远程源接收配置命令,并且基于远程源选择的对应模式,获取保存在对应存储器115中数据,以便在存储器装置的输出上发送到如控制器102指定的下游存储器装置。如所提及的,存储器装置110可以是基于闪速的存储器装置,并且缓存器118可以每次保存一页信息(例如,8千字节数据)以执行多页面数据的块复制操作。因此,块复制可以使得一个存储器装置中的一个或者多个页面的信息传送到菊花链中的一个或者多个其它存储器装置。当更具体的例子示出数据的复制或者移动时,假设控制器102接收到来自源(例如,用户,计算机系统等)的请求来执行诸如从存储器装置110-1(例如,源)到存储器装置110-M(例如,目标)的数据块复制(例如一个或者多个位或者页面的数据)的操作。在这样的例子中,控制器102首先在控制链路150和数据链路160(例如通过多个连续存储器装置110的菊花链链路)上通信来配置用于这样的操作的存储器装置。如上所提及的,这可以包括在控制链路150和数据链路160上建立并随后发送第一消息以将存储器装置110-1配置为源,在控制链路150和数据链路160上建立并且随后发送第二消息以将存储器装置110-M配置为目标,并且在控制链路150和数据链路160上建立并且随后发送附加的消息以启动从存储器装置110-1到存储器装置110-M的数据传送。在控制链路150和数据链路160上传递到存储器装置110的附加指令示出和事务相关的更复杂的细节。例如,控制器102可以和目标存储器装置相通信来指定从哪个位置获取数据并且执行多大的块复制。控制器102还可以与目标存储器装置来通信,以指定一个(或多个)目标存储器装置中的哪个(或哪些)位置用来保存相应的数据。尽管本实施例讨论了从源存储器装置开始、通过中间存储器装置、到达目标存储器装置的数据传送,但是此处的实施例可以使得任一存储器装置能够复制数据到存储器系统100中的其它存储器装置。例如,控制器102可以将存储器装置110-M配置为源且将存储器装置110-1配置为目标,以便接收和保存数据。在这样的实施例中,在传送期间,控制器102从存储器装置110-M接收数据并且传递到存储器装置110-1。因此,使用菊花链控制链路150和数据链路160可以使得每一存储器装置将数据传送到菊花链中的任一其它存储器装置。在一个实施例中,为了执行通信,每个存储器装置110被分配唯一的地址值。控制器102发送具有对应地址信息的消息(例如,命令或者指令),使得如果该消息在控制链路150和数据链路160上传输时被所有存储器装置110接收到,则仅该消息(例如,命令)寻址的存储器装置接收并且执行该命令。因此,基于发布寻址到存储器装置110的命令,存储器系统100能够进行从第一存储器装置到第二存储器装置的数据传送和直接复制。这使得控制器102无需从存储器装置的序列中的第一存储器装置临时获取和保存数据并且将其传送到该序列中的目的存储器装置。因此,可以以短于传统方法的时间来实现块复制命令,其中该传统方法需要控制器102存取并且本地保存该数据。还注意到,因为数据不需要像传统方法一样临时保存在控制器中,所以根据此处实施例的控制器102不需要配置成包括大的缓存器来临时保存复制的数据块。然而,控制器102可以包括至少一个缓存器来协助以下讨论的错误检查过程。在又一个实施例中,控制器102还可以启动将保存在一个存储器装置中的数据的不同部分复制和/或分配到多个不同的存储器装置的每一个的操作。例如,控制器102可以在菊花链控制链路150和数据链路160上开始通信,来将第一存储器装置配置为具有要复制的数据块的源,将第二存储器装置配置为用于接收数据块第一部分的目标,将第三存储器装置配置为用于接收数据块的第二部分的目标,另一个存储器装置110-2被配置为用于接收数据块的第三部分的目标,等等。因此,经由一个或者多个配置指令和命令,控制器102可以将数据块的各部分从一个存储器装置传送到多个存储器装置。换句话说,保存在单个存储器装置中的数据部分可以基于控制器102的如下操作被分配和复制到多个存储器装置在菊花链链路上通信来启动从源存储器装置到第二存储器装置中的存储器位置的第一部分数据的保存,并且在菊花链链路上通信来启动从源存储器装置到第三存储器装置中的存储器位置的第二部分数据的保存,等等。在又一个实施例中,如上概述,控制器102可以配置成包括错误检查模块109(例如,错误检测电路)。错误检查模块109可以布置在菊花链路径151中,用于在将数据写到目标存储装置(数据将复制到的)之前检查该目标存储器装置是否正确接收到来自源存储器装置的数据。如果需要,控制器(例如,纠错电路)修改或者修复该数据,使得写到目标装置的存储器的数据是无误的。作为示例,假设如上所述控制器102启动了从存储器装置110-1到存储器装置110-M的数据复制。当接收到来自缓存器118-1的数据传送时,存储器装置110-M将数据保存在缓存器118-M中并且在数据链路160上将数据传递到控制器102的错误检查模块109。当处于直通模式时,数据链路160可以是数据总线,用于将数据的多个位从存储器装置110-1同时传送到达并且通过存储器装置110-M,直到错误检查模块109。错误检查模块109接收到的数据应该和存储器装置1IO-M接收到的并且保存在缓存器118-M中的一样。通过应用错误检查算法,错误检查模块109可以检测和缓存器118-M中数据相关的错误,并且在这样的例子中,禁止将缓存器118-M中的数据写到存储器115-M中。因此,此处所述实施例可以包括沿着菊花链向下传递“写数据包”(例如,块复制数据),使得控制器102可以执行ECC操作,来检查从一个存储器装置传输到另一个存储器装置的数据包是否包含错误。在一个实施例中,错误检查模块109执行算法以检测缓存器中哪个位需要纠正。在启动将缓存器118-M中数据传送(例如,写)到存储器115-M之前,假设错误检查模块109检测到错误,则控制器102在控制链路和数据链路上进行通信,以通过修改缓存器118-M的内容来纠正该错误。存储器系统100和/或存储器装置110(例如,闪速存储器装置)可以用在不同类型的电子系统中,诸如移动通信装置,游戏设备,摄像机等等。存储器系统100可以实现为可以插入多个主机系统的可移除存储卡或者主机系统中的不可移除嵌入式存储器。对应存储器装置110中的存储器115可以包括一个或者多个晶体管单元阵列,每个单元能够对一个或者多个数据位进行非易失性或者易失性保存。根据该实施例,这样的存储器需要或者不需要功率来维持其中编程的数据。如果存储器115是基于闪速的存储器,单元(例如,数据保存位置)可以在其以新的数据值进行重新编程之前被擦除。如上所提及,控制器102可以和存储器装置110通信并且通过存储器装置110来执行这样的擦除功能。对应存储器装置110中的存储器115可以包括分成组的单元阵列,来提供读取、编程和擦除功能的有效执行。单元组或者所谓的块还可以被分为一个或者多个作为用于读取和编程功能的基本单元的可寻址的区。当在闪速装置中写数据时,由于数据管理中的简化,单批数据通常被写到一个块中。这使得一个块中的空闲区域相当地大,导致数据区域的低效使用。从而,当使用NAND闪速存储器时,从曾经写入的数据中可以读出特定块中一页的数据,并且所读出的数据由感应/锁存电路临时锁存。感应/锁存电路锁存的数据随后写到不同于数据读出的块的一个块中的空闲区域的页面中。这样的操作称为页面复制,这使得存储器空间得以有效利用。如上所提及,存储器115可以支持页面复制操作(回写操作)。页面复制操作包括将保存在第一页面的地址处的数据转录到第二页面的指定地址。在页面复制期间,保存在源存储器装置的页面(即,源页面)中的数据被传送到页面缓冲器。保存在页面缓冲器中的数据随后被传送到菊花链或者串行链路中的另一个存储器装置的缓存器中以便进行写入。如上所提及,这可以在无需将数据保存在控制器102中的情况下实现。事实上,无需控制器102将数据从闪速存储器读出就可以复制该数据。如上所讨论的,由于闪存装置不支持直接“重写”功能,则存储器系统100的目标页面位置需要在将新数据写到目标存储器位置之前被擦除。由于存储器装置仅可以经受有限次数的P/E(编程/擦除)周期,则存储器装置相关的单元或位置中的内容仅可以修改有限次。在MLC(多级单元)类型的NAND闪速存储器中的所谓P/E周期限制要比SLC(单级单元)更为严格。例如,就装置寿命而言,SLC存储器装置可以在经受多达100000P/E周期后依然可靠,而MLCNAND闪速存储器装置仅可以经受大约10000P/E周期。然而,由于MLCNAND闪存装置中成本效率密度方面的优势(例如,MLC装置在密度方面比SLC大两倍),更多的制造商目前一直生产MLCNAND闪速存储器装置。用以延长对应存储器装置110的寿命并且降低相应的存储器装置110的“烧断”位置或者单元的一种方法是随时间变化将写数据分配到不同的位置。将数据写到不同位置维持了闪速存储器装置的均勻磨损。当在存储器系统100中使用MLC闪存装置时,相比于使用SLC闪存装置,由于这样的装置不支持更多的P/E周期,在存储过程期间需要采取更多维护措施。图2是根据此处实施例示出数据复制的示例存储器系统200的框图。总的来说,存储器系统200比传统方法支持更快的块复制。例如,存储器系统200实现输入/输出引脚(例如,Dn是用于接收数据的串行数据输入端口,Qn是用于输出数据的串行数据输出端口)的串行化高速链路(例如,菊花链式数据链路路径323),以执行块复制操作。作为一个示例性数据流,控制器30和/或存储器装置可以输出数据到数据链路Qn,用于将数据发送到下一个相继的下游装置的输入(例如,Dn)。如此处所描述的,在输入Dn上接收数据的装置可以配置为处理所接收的数据(例如,将数据保存在其本地页面缓存器中)和/或在其对应的Qn输出上输出数据。信号Dn和Qn可以是一个或者多个数据位宽,使得控制器30和相应的存储器装置可以同时以下行方式将多个数据位传递到其它存储器装置。如图所示,存储器控制器30在其相应的互连305、306和307上输出CSO(例如,命令选通输出)、DS0(例如,数据选通输出)和Qn信号到存储器装置300。存储器装置300随之产生其对应的CSO、DSO和Qn信号并且在相应的互连308、309和310上将其输出到存储器装置301。存储器装置301随之产生对应的CSO、DSO和Qn信号并且在相应的互连311、312和313上将其输出到存储器装置302。存储器装置302随之产生对应的CSO、DSO和Qn信号并且在相应的互连314、315和316上将其输出到存储器装置303。存储器装置303随之产生对应的CSO、DSO和Qn信号并且在相应的互连317、318和319上将其输出到控制器30,从而完成返回到控制器30的菊花链回路。如此处所描述的,该互连序列产生菊花链流路径323,在该流路径323上数据包和控制信号从装置发送到装置,诸如从控制器30发送到相应的存储器装置,从第一存储器装置发送到菊花链中的第二存储器装置,或者从存储器装置发送到控制器30。注意到,CSI和/或DSI信号根据具体实施例可以是高电平有效或者低电平有效。在所示示例实施例中,控制器30输出用于驱动菊花链中每一个存储器装置的时钟信号(例如,基于控制器中SDR/DDR/QDR时钟)。使用时钟可以使得在装置之间可以进行同步数据传送。注意到,时钟信号可以实现为差分信号或者单端信号。存储器系统200还包括控制链路。本实施例中的控制链路包括两个专用控制信号i)命令选通输入CSI,用于将命令/地址包(例如,命令)从控制器30传递到存储器装置,和ii)数据选通信号DSI,用于启动在存储器装置之间的数据包(例如复制的数据)写入和读出。因此,控制器30所产生的(并且下行传递到菊花链上其他装置的)信号CSI和/或DSI分别启用和停用命令/地址包和数据包的传送。以和如上图IB讨论实施例相同的管路,图2中通过控制器30对命令选通(CS)信号和数据选通(DS)信号的控制使得在串联的存储器装置菊花链中的各节点(例如,存储器装置)之间可以传输包和执行块复制操作。因此,存储器系统200可以被认为是面向包的存储器系统,其支持包括以下三种类型包的产生和分配“命令和地址包(=CAP)”、“写数据包(=WDP)”和“读数据包(=RDP)”,以便执行如下讨论的复制和相关功能。控制器202所产生的“命令和地址包”包含在串行链路上发送到存储器装置300、301、302和303的命令和地址信息。如图所示,“命令和地址包”通过串行数据输入端口Dn到达存储器装置并且在端口Qn上输出。命令和地址包的端点可以与命令选通信号CSI(=命令选通输入)的边沿一致。“写数据包”(例如,正在写的数据,正在复制的数据,传送的数据,数据校正信息等等)通过串行数据输入端Dn到达相应的存储器装置并且通过选通信号DSI(=数据选通输入)来界定。“读数据包”包含由相应的存储器装置输出且在串行链路上发送到存储器控制器202的读出数据。“读数据包”通过相应的串行数据输出端口Qn从存储器装置输出并且由选通信号DSI(=数据选通输入)来界定。在一个实施例中,“命令和地址包”,“写数据包”和“读数据包”的每一个是整数字节长,而与和Qn相关的当前I/O宽度(1位,2位,4位等宽度)无关。在一个实施例中,页面缓存器是8千字节宽。互连307、310、313、316等等是4位宽。传送数据页面需要在菊花链上进行从存储器装置300到存储器装置301的多路并行数据传送。注意到,存储器数据传送可以由起始地址(例如,数据在存储器装置中保存的位置)和传送长度(例如,要复制的数据量)来指定。对应的选通信号(=DSI)从其上升沿到其下降沿的持续时间取决于该传送长度。如上所提及的,存储器系统200中的所提议的存储器装置在CSI信号设为“高”逻辑状态(例如,CSI被激活)时通过Dn端口接收“打包的”命令和地址信息。该装置在DSI设置为“高”逻辑状态(例如,DSI被激活)时通过Dn/Qn端口接收/发送输入/输出数据。当以时钟信号(CK/CK#)的转变沿为基准CSI信号被激活(即设为高逻辑状态)时,存储器装置开始(通过Dn端口)接收包括命令&地址包的连续字节。“命令&地址包”中的命令指定要执行的指令。“命令&地址包”中的地址信息还可以指定在其中保存信息和/或从其中获取来自该相应的存储器装置的信息的存储器地址位置信息。如果CSI信号失活(例如,设为‘低’状态),存储器装置停止通过Dn端口接收命令&地址包。类似地,当DSI信号被激活或者确立有效(例如,DSI设为‘高’状态)而存储器装置处于写入模式,存储器装置开始以时钟信号(CK/CK#)的转变沿为基准通过Dn端口接收“写数据包”。如果DSI信号失活或者确立无效(即DSI设为‘低’状态),存储器装置停止通过Dn端口接收‘写数据包’。当DSI信号激活或者确立有效(例如,设为‘高’状态)时而存储器装置处于读出模式,读出模式中的存储器装置开始通过Qn端口发送‘读数据包’。当DSI信号确立无效或者失活(例如,DSI设为‘低’状态)时,读出模式中的存储器装置停止通过Qn端口发送‘读数据包’。如图2中所示,存储器控制器30可以包括用于提供错误检测和/或纠正功能性的‘ECC&缓存器存储器’块31。通过存储器装置的串行连接(例如,一个或者多个数据和/或控制链路的菊花链)形成返回到控制器30的反馈回路。因此,控制器30可以监控和接收路径324上的数据和来自任一存储器装置的输入Dn。在所示示例实施例中,存储器控制器30通过相应的互连317、318和319从最后的存储器装置(例如,存储器装置303)接收DruDSI和CSI信号。如上所提及,控制器30可以在路径325上输出数据以启动对任一存储器装置中的数据的修改(例如用于纠错)。菊花链中的多个存储器装置实际上是可以不受限制的。然而,在一个实施例中,特定的应用可以被限制于一串共255个存储器装置。如果特定的系统需要超过255个存储器装置的存储器装置,则表2中装置地址(=DA)字节定义可以延展到例如两个字节。在这样的情况中,存储器装置的总数可以是65535=216-1个。在一个实施例中,存储器系统200驻留在诸如印刷电路板或者多芯片封装(例如,MCP)的相应的衬底205上。MCP(多芯片封装)装置可以用在菊花链配置中,并且如果单个的MCP自身包含已经在其内部串行互连的8个存储器芯片,则如果使用当前包协议,在单个信道中最多可以有63个MCP装置。在图2所示的示例性实施例中,控制器30启动从存储器装置300的存储器内核到存储器装置301的存储器内核的数据复制。正要复制的数据块包括128个页面。注意到,仅以示例方式包括对复制128个页面的描述,并且块复制可以是单个位的数据到许多位的数据。在一个实施例中,存储器装置的页面缓存器可以每次保存单个页面的数据。因此,从存储器装置300到存储器装置301的数据复制包括从存储器装置300的页面缓存器到存储器装置301的页面缓存器的多个数据传送。在本例的环境中,存储器控制器30将共同连接的主时钟信号304驱至菊花链中的每个存储器装置。每个存储器装置如图中所示具有相同的tIOL(时钟周期中的输入到输出等待时间)。在此例中,存储器系统200包括四个串联的存储器装置,即,存储器装置300、存储器装置301、存储器装置302和存储器装置303(例如,HLNAND存储器装置)。然而,如上所讨论的,存储器系统200可以包括在相应的菊花链中的许多存储器装置,诸如255个存储器装置或者更多。注意到,根据此处实施例的存储器系统200可以在相应的菊花链中包括不同种类的存储器装置的集合。例如,存储器系统200可以包括诸如DRAM、闪速存储器等等的不同类型存储器装置的菊花链。菊花链中的该不同类型的存储器装置可以用于不同的目的。在又一些实施例中,存储器系统200可以配置为包括多个菊花链。例如,一个菊花链(如图示)可以包括一串多个存储器装置,其包括所示的存储器装置300、存储器装置301、存储器装置302和存储器装置303。出自控制器30的另一个独立的菊花链可以包括另一个存储器装置的集合。为了支持第二菊花链上的通信,控制器30可以产生第二控制和数据信号集合(例如,CSO、DSO和Qn)来执行第二菊花链中的复制操作。图3A和3B是示出根据此处实施例的和将数据从源存储器装置复制到目标存储器装置相关的时序的详细时序图。如图所示,在TO时刻,存储器装置300(例如装置0)接收‘写配置寄存器’命令包(Olh&FFh)和‘写数据包’(Olh)。当命令包中的装置地址(DA=Olh)不匹配存储器装置300的装置地址时,存储器装置300忽略所接收到的命令包,并且通过互连308和310将该命令包旁路到下一个存储器装置301。图6中示出详细的时序图。写数据包也被旁路。下表1是用于写配置寄存器的示例定义。表1<table>tableseeoriginaldocumentpage16</column></row><table>响应于通过存储器装置300从控制器30接收到‘写配置寄存器’(Olh&FFh)命令包和‘写数据包’(Olh)606,由于所接收的装置地址(DA=Olh)匹配其自身装置地址,存储器装置301本地激活其旁路功能以启用直通模式。然而,由于存储器装置301仍处于旁路停用模式,则‘写数据包(Olh)’606未被旁路到位置607(例如,装置1的Qn输出上)。在处理‘写数据包’(01h)606之后,装置301可以处于“旁路模式”。在发布这样的命令之前,装置301将处于‘旁路停用模式’。在Tl时刻,源存储器装置300接收‘页面读出,命令包(00h&00h&RA)并且开始执行所示页面读出操作。页面读出操作包括获取保存在存储器装置300的存储器内核中的数据。在一个实施例中,用于获取页面的时间周期是20微秒。在T3时刻,存储器控制器30发布‘突发数据载入开始,命令包(01h&40h&CA)给存储器装置301,用来将存储器装置301设置为‘写入模式’以接收来自存储器装置300的数据。在T5时刻,存储器装置300接收由控制器30产生的‘突发数据读出’命令包(00h&20h&CA)。该命令启动在路径321上将存储器装置300的页面缓存器中的数据传送到存储器装置301的页面缓冲器中的操作。因此,在尝试将所获取的数据传送到目标存储器装置之前,可以满足20微秒的页面读出时间需求。在T7时刻,当从存储器控制器30到存储器装置300的DSI信号确立有效时,存储器装置300开始将其页面缓存器数据通过Qn引脚输出到存储器装置301。由于存储器装置301的DSI和Dn引脚直接连接到存储器装置300的DSO和Qn引脚,目标存储器装置301接收输入信息用于保存在其相应的页面缓存器中。在传送期间,在T8时刻和TlO时刻之间,将相同类型的数据包601和602(例如页面数据)从存储器装置300传输到存储器装置301。来自存储器装置300的数据保存在存储器装置301的页面缓存器中。在Tll时刻,存储器控制器30将‘页面编程,命令包(01h&60H&RA)传递给存储器装置301。这启动了将来自页面缓存器的待写入的所接收数据保存到存储器装置301的内核存储设备的保存操作。图3的时序图中上述描述示出单页面数据从存储器装置300到存储器装置301的传送。对于和块复制操作相关的多个其他页面中的每一个,可以重复该过程。完成从源存储器装置到目标存储器装置的整个块复制之后,控制器30可以发出另一个“写配置寄存器”命令,用来将旁路功能复位到停用状态。图4是示出根据此处实施例的块复制方法的示例流程图499。总的来说,如上所述,流程图499示出如图2所示的从源存储器装置300到目标存储器装置301的示例性的数据块复制。如下所述,为了执行复制操作,控制器30在菊花链链路(例如控制链路和数据链路)上通信以配置存储器装置并启动块复制。注意到和下述命令相关的所有值以十六进制数值列出。在步骤700,对于每个目标地址,控制器30发出具有对应值(DA&FFh)的‘写配置寄存器’命令和具有对应值Olh的‘写数据包’命令用来启用目标存储器装置301的旁路功能。旁路功能(例如直通模式)可以根据表1中的数值来加以编程。如上所述,旁路模式(例如信号直通模式)可以被停用以便节省功率。然而,在此块复制例子中,控制器30将目标存储器装置301设置为旁路启用模式(例如直通启用),用来将‘写数据包’发送到且通过菊花链中的下一个存储器装置,使得最后所述‘写数据包’(其最初是来自源存储器装置300的‘读数据包’)通过该菊花链到达存储器控制器30。注意到如果存在多个目标装置,控制器30将发布命令到多个目标装置以启动块复制。在步骤701中,存储器控制器30产生具有对应值(DA&OOh)的‘页面读出’命令包给源存储器装置300。基于接收到这样的命令,源存储器装置300启动从其存储器内核中的指定位置到其对应页面缓存器的页面数据传送。在一个实施例中,该操作可以用20微秒来完成传送。在步骤702,当源装置300执行页面读出操作时(或之后),存储器控制器30发布具有对应值(DA&40h)的‘突发数据载入开始’命令包到目标存储器装置301,使得目标存储器装置301进入‘写入模式’并且至少准备好接收‘写数据包’(例如来自源存储器装置300的数据)。在一个实施例中,存储器控制器30简单地等待20微秒(或者一些其他指定的时间量)以确保页面读出操作已经完成并且现在可以进行数据传送。在步骤703中,在源存储器装置300中完成页面读出操作之后,存储器控制器30发出具有对应值(DA&20h)的‘突发数据读出’命令包给第一存储器装置300。基于该命令的接收,第一存储器装置300进入‘读出模式’并且准备好接收DSI确立有效信号,其发信号以命令输出存储器装置300的页面缓存器中的数据。在步骤704中,存储器控制器30随后使得DSI在正从存储器装置300传送到存储器装置301的页面长度(例如,8千字节)内确立有效。再次注意到,数据传送的长度可以是任意数量位的信息,诸如单个位到多个字节。在步骤705中,基于DSI信号的确立有效或者激活,存储器装置300启动‘读数据包’传输以将存储器装置300的页面缓存器中的数据传送到目标存储器装置301的页面缓存器。在步骤706中,由于目标存储器装置301设为‘写入模式’并且正期待根据其DSI输入信号的‘写数据包’,所以目标存储器装置301接收‘读出数据包’作为‘写数据包’。因此,基于上述信令,存储器装置300中的数据页面在单个突发数据传送周期中被自动从源存储器装置300传送到第二存储器装置301。根据一个实施例,由于两个不同类型数据包实际在同一数据包流中传输,所以以该方式的数据传送可以限定为相同类型的数据包或者相同类型的数据传送。在如上所述的类似管路(vein)中,由于该实施例使得控制器30免于从源存储器装置获取数据并且将所获取的数据保存在目标存储器装置中,该实例中所讨论的数据流是有益的。图2中更具体地示出节省时间的例子。例如,根据此处实施例的总的块复制时间是39毫秒,而传统技术还需要附加10毫秒来传送数据到控制器并且随后从控制器传送到目标存储器装置。注意到,用于将数据从一个存储器装置复制到另一个存储器装置的实际传送时间(例如39毫秒的复制时间)随着相应的存储器系统中所使用的存储器装置的速度而变化。因此,上述提及的示例传送速度所做描述仅用于示例性目的,这是因为完成数据传送的时间可以根据存储器速度以及本领域内普通技术人员可以理解的其他特征而变化。在图4的步骤707中,存储器控制器30将可选的ECC(纠错码)操作应用到在从存储器装置300到目标存储器装置301的菊花链上传递的数据,以便检查出在读出页面时是否存在任一位错。重新调用使得控制器30使用配置命令来将存储器装置置于直通模式中,在该直通模式中从源存储器装置复制到目标存储器装置的数据沿着菊花链传递到控制器102进行检查。在步骤708中,控制器30检查在从源存储器装置传送到目标存储器装置的数据中是否存在错误。如果ECC操作检测到在所传送的数据中存在错误,则流程继续进行到步骤709。在步骤709中,控制器30配置目标存储器装置301以接收来自控制器30的数据。在步骤710中,控制器30在菊花链链路上发送纠正后的数据(例如,来自控制器30中的ECC功能的数据)到目标存储器装置301的页面缓存器中。由此,控制器30修改了页面缓存器中的数据。在步骤708中,完成ECC操作之后并且假设目标存储器装置301的页面缓存器中保存的数据中起初就存在错误或者不再存在错误,流程持续进行到步骤711。在步骤711中,存储器控制器30发出‘页面编程’命令包(DA&60h)给目标存储器装置301。响应于接收到该命令,存储器装置301开始将页面缓存器中的数据写到所选择的存储器页面位置。在步骤712中,控制器30检查是否存在将要从源存储器装置复制到目标存储器装置的附加页面数据。如果存在,存储器控制器30执行步骤713,其对于每一个要复制的附加页面重复步骤701-712。要复制的页面数量可以是任一数值。在此例中,存在从存储器装置300复制到存储器装置301的128个数据页面。如果控制器30检测到不存在要复制的附加页面,控制器30进行到步骤714。步骤714结束该示例的块复制操作。在一个实施例中,控制器102在完成将存储器装置置于空闲模式后启动到和该存储器装置相关的相应配置寄存器的一个或多个写入。图5是根据此处第二实施例的存储器系统的示例框图,其中控制器40输出的时钟以串行菊花链方式连接通过一串存储器装置。例如,控制器40使用相应的时钟信号来驱动存储器装置400,存储器装置400输出时钟信号到存储器装置401,等等。菊花链中的每个存储器装置可以包括时钟同步器电路以调整所接收的时钟信号。在所示示例实施例中,存储器装置400包括同步器电路510-1,存储器装置401包括同步器电路510-2,存储器装置402包括同步器电路510-3,并且存储器装置403包括同步器电路510-3。注意到,时钟同步器电路510提供的功能性可以通过PLL(锁相环)装置、DLL(延迟锁定环)装置等等,或者其他合适电路提供。时钟同步器的使用降低了存取时间。和时钟同步器(例如,外部调整的PLL、DLL等等)相关的更多细节在2007年12月19日提交的题名为"METHODSANDAPPARATUSFORCLOCKSYNCHRONIZATIONINACONFIGURATIONOFSERIES-CONNECTEDSEMICONDUCTORDEVICES,“(代理方卷号为1251-02US-000-00)的美国专利申请11/959,996中讨论。在此示例实施例中,包括存储器装置400、存储器装置401、存储器装置402、存储器装置403和存储器控制器40的一串存储器装置能够以真实的点对点串行方式连接在相应装置(CKI,CK0)之间。如果操作频率过高(例如,几GHz),从控制器102(如图2中所示)到每一存储器装置的点到多点的连接可以导致积累的相位误差问题。使用在每一存储器装置中内建的特定同步电路(例如,同步器电路510-1、510-2、510-3和510-4)(如图5中所示)弥补了这一缺陷。图5中所示的存储器系统500的一般操作类似于图2。然而,如上所提及,存储器系统500中的每一存储器装置使用外部调整的PLL块,使得突发数据传送时间比图2中存储器系统200所提供的传送时间快得多。例如,对于存储器系统500而言,所计算出的块复制时间仅有29毫秒,而相比之下图2中示出的存储器系统200则有39毫秒。在存储器系统500的本例的环境中,主控制器40在连接到存储器装置400的CKI输入的互连404上输出时钟信号CK0。存储器装置400包括外部调整的锁相环模块来调整所接收的时钟并且在连接到存储器装置401的互连404-1上产生输出的时钟信号CK0。存储器装置401包括外部调整的锁相环模块来调整所接收的时钟信号并且在连接到存储器装置402的互连404-2上产生输出的时钟信号CK0。存储器装置402包括外部调整的锁相环模块来调整所接收的时钟并且在连接到存储器装置403的互连404-3上产生输出的时钟信号CK0。存储器装置403包括外部调整的锁相环模块来调整所接收的时钟并且在连接到控制器40的互连404-4上产生输出的时钟信号CK0。图6A是根据此处实施例的、支持将数据从源存储器装置分配到多个目标存储器装置的每一个的存储器系统600的框图。在此块复制方法中,目标包括多个存储器装置。基于控制器50以上述相同方式发布到存储器装置的命令,来自源存储器装置的第一页面信息被复制到第一目标存储器装置,来自源存储器装置的第二页面信息被复制到第二目标存储器装置,来自源存储器装置的第三页面信息被复制到第三目标存储器装置,诸如此类。为了执行分布式的块复制,控制器50和每一存储器装置相通信以精确协调各数据部分到不同存储器装置的指定位置的分配。因此,块复制可以包括将数据从源存储器装置传送到菊花链中的多个目标存储器装置的每一个。在一个实施例中,块中的页面是连续的信息页面。控制器50启动将数据块的第一页面(例如,页面0)复制到存储器装置501的操作;将数据块的第二页面(例如,页面1)复制到存储器装置502的操作,诸如此类。根据这样的实施例,从一个存储器装置复制块到多个存储器装置所需的时间可以大体上低于从源存储器装置复制数据块到单个目标存储器装置所需的时间。例如,控制器50可以在3.8毫秒内完成分布式的块复制操作,这大体上低于图2和5所示的完成块复制所需的时间。图6B是示出根据此处实施例将数据从单个存储器装置复制到多个存储器装置的示例流程图699。在步骤900中,对于如目标存储器装置501的第一目标地址,控制器50发出‘写配置寄存器’命令和‘写数据包’命令,用于启用给定目标装置的旁路功能。这可通过发送广播命令来实现。在步骤901中,存储器控制器50发出‘页面读出’命令包给一给定源存储器装置(例如,存储器装置500)。在步骤902,存储器控制器50发出‘突发数据载入开始’命令包给目标存储器装置。在步骤903,存储器控制器50发出‘突发数据读出’命令包给源装置(例如,存储器装置500)。在步骤904,存储器控制器50随后使得DSI在正从存储器装置500传送到给定目标装置的页面长度(例如8K字节)内确立有效。还注意到数据传送的长度可以是诸如单个位到多个字节的任意数量位的信息。在步骤905,基于DSI信号的确立有效或者激活,存储器装置500启动‘读数据包’传输以将存储器装置500的页面缓存器中的数据传送到目标存储器装置(例如存储器装置501)的页面缓存器中。在步骤906,目标存储器装置接收‘读数据包’作为写数据包并且写到页面缓存器中,同时将其旁路作为持续‘读数据包’。在步骤907,存储器控制器50将ECC(纠错码)操作应用到在菊花链上从存储器装置500传递到目标存储器装置的数据上。在步骤908,控制器50检查在从源存储器装置传送到目标存储器装置的数据中是否存在错误。如果ECC操作检测到所传送数据中存在错误,则流程进行到步骤709。在步骤909,控制器50通过发布突发数据载入命令给目标装置来配置目标存储器装置以接收来自控制器50的数据。在步骤910,控制器50在菊花链链路上发送纠正后的数据(例如,来自控制器50的ECC功能)到目标存储器装置的页面缓存器。相应地,控制器50修改了页面缓存器中的数据。在步骤908,完成ECC操作之后并且假设在目标存储器装置的页面缓存器中保存的数据中起初就有错误或者不再有错误,则流程进行到步骤911。在步骤911,存储器控制器50发出‘页面编程’命令包给目标存储器装置。响应于接收该命令,目标存储器装置开始将页面缓存器中的数据写到所选择的存储器页面位置。在步骤912,控制器50检查是否存在将要被从源存储器装置复制到其它目标存储器装置的附加数据页面。如果存在,存储器控制器50执行步骤913,这使得对于每一个要复制的附加页面重复步骤901-912。以此方式,控制器50可以启动从源存储器装置到连续的目标存储器装置的页面连续复制。要复制的页面数量可以是任一数值。在此例中,存在从存储器装置500复制到128个目标存储器装置的128个数据页面。如果控制器50检测到不存在要复制的附加页面,控制器50进行到步骤714。图7是示出根据此处实施例在发布命令和地址包期间相应存储器装置中的信号(例如,时钟,DSI,DSO,CSI,CSO,Dn和Qn)的放大视图的示例时序图。注意到,‘命令和地址包’包括装置地址DA、命令(CMD)和/或地址(ADDR)信息。如前所述,存储器装置译码该信息以识别出该命令是否由接收存储器装置来执行。下表2是与命令和地址包关联的位定义。表2命令和地址包序列示例<table>tableseeoriginaldocumentpage21</column></row><table>(*DA=装置地址,RA=行地址,CA=列地址)图8是示出根据此处实施例在发布写数据包期间存储器装置中的信号(例如,时钟,DSI,DSO,CSI,CSO,Dn和Qn)的放大视图的示例时序图。注意到,此例中为了使功率保持,相应的存储器装置被设为非直通模式(例如,停用旁路模式)。因此,数据包在菊花链数据链路上不直通。图9是示出根据此处实施例在发布写数据包期间存储器装置中的信号(例如,时钟,DSI,DSO,CSI,CSO,Dn和Qn)的放大视图的示例时序图。注意到,相应的存储器装置设为直通模式(例如,启用旁路模式),使得相应存储器装置接收到的数据包沿数据链路向下传递到诸如相继的一个存储器装置或者控制器的目标。因此,数据包下行通过菊花链数据链路(至少对于相应的存储器装置是这样)。图10是示出根据此处实施例在发布读数据请求期间存储器装置中的信号(例如,时钟,051,050丄51丄50,011和如)的放大视图的示例时序图。如图示,当相应的存储器装置经由DSI置于读出模式时,存储器装置启动到下一个存储器装置的数据输出。注意到,与上述图7-10相关的附加信息在相关的2007年7月18日提交的题名为"MEMORYWITHDATACONTROL(具有数据控制的存储器)”的美国实用专利申请11/779,587中找到。图11是根据此处实施例用于实现存取控制模块140(例如,存取控制应用程序140-1和/或存取控制过程140-2)的相应控制器102的示例结构的框图。在一个实施例中,存取控制应用程序140-1可以是控制器102执行的指令序列,以执行此处描述的复制操作。在一个实施例中,存取控制过程140-2表示控制器102提供的、作为执行存取控制应用程序140-1结果的方法和/或功能性。控制器102可以是诸如数字信号处理器、计算机等等的计算机化的装置,用来执行指令以执行此处描述的控制操作。注意到,下述讨论提供了用于说明如何执行和存取控制模块140相关功能性的基本实施例。应该注意到用于执行存取控制模块140的实际配置可以根据相应的应用而改变。例如,控制器102和对应的功能性可以仅经由硬件实现、或者作为软件或者作为硬件和软件的组合来实现。在所示的示例实施例中,本例中的控制器102包括将存储器系统1112耦合到处理器1113的互连111。通信接口1131使得控制器102可以接收诸如用于执行关于存储器装置110的块复制操作的请求的输入。如图示,存储器系统1112使用支持如上讨论并且如下进一步讨论的存取控制的存取控制应用程序140-1来编码。存取控制应用程序140-1可以实现为支持根据此处所述不同实施例的处理功能性的、诸如数据和/或逻辑指令(例如,保存在存储器或者诸如磁盘的另一个计算机可读介质上的代码)的软件代码。在一个实施例的操作期间,处理器1113通过使用互连111存取存储器系统1112,以便启动、运行、执行、解释或者以其他方式执行存取控制应用程序140-1的逻辑指令。存取控制应用程序140-1的执行产生存取控制过程140-2中的处理功能性。换句话说,存取控制过程140-2表示在控制器102中的处理器1113中或者上执行的存取控制模块140的一个或者多个部分。应该注意到,除了执行此处讨论的方法操作的存取控制过程140-2,此处其他实施例包括存取控制应用程序140-1自身(即,未执行或者非执行的逻辑指令和/或数据)。存取控制应用程序140-1可以保存在诸如软盘、硬盘或者光介质的计算机可读媒介(例如,知识库)上。根据其它实施例,存取控制应用程序140-1还可以保存在诸如固件、只读存储器(ROM)的存储器类型系统中,或者在此例中,作为存储器系统1112中的可执行代码中(例如,在随机存取存储器或者RAM中)。除了这些实施例,还应该注意到此处其他实施例包括在处理器1113中执行存取控制应用程序140-1作为存取控制过程140-2。因此,本领域内的普通技术人员可以理解控制器102可以包括其它过程和/或软件和硬件部件,诸如用于控制硬件资源的分派和使用的操作系统。现在将经由图12中的流程图讨论存取控制模块140支持的功能性。图12是示出根据此处实施例的块复制操作的示例流程图1200。除了参考图12中的流程图1200的步骤之外,还参考关于图1的存储器系统100。在步骤1210,控制器102在菊花链控制链路150上通信来将多个菊花链链接的存储器装置中的第一存储器装置(如,图IB中的存储器装置110-1)配置为源,以便输出保存在第一存储器装置中的数据。作为本例的替代实施例,注意到控制器102可以选择存储器装置110-M作为源存储器装置并且存储器装置110-1作为目标存储器装置。在这样的实施例中,数据传送通过控制器102到达目标。再次参考本例,在步骤1215中,存储器装置110-1是源并且存储器装置110-M是目标,控制器102在菊花链控制链路150上通信来将多个存储器装置110中的第二存储器装置(例如,图IB中的存储器装置110-M)配置为用于接收数据的目标。在步骤1220中,控制器102在控制链路150上通信来使得数据链路160上的数据传递可以以菊花链方式通过多个连续的存储器装置110。例如,控制器102将源存储器装置和目标存储器装置之间的中间存储器装置110设置为直通模式,以使得来自存储器装置110-1的数据可以在数据链路160上发送到目标装置。存储器装置110-M还可以被设置为直通模式,以使得控制器102可以监控从源存储器装置传送到目标存储器装置的数据。在步骤1225中,控制器102在菊花链控制链路150上通信以启动从源存储器装置110-1到目标存储器装置110-M的数据传送。在步骤1230中,控制器102监控数据链路以接收从源存储器装置110_1传递通过多个连续的存储器装置Iio到达目标存储器装置IlO-M的数据。在步骤1235中,控制器102将纠错功能应用到所接收的数据,来识别从第一存储器装置传送到第二存储器装置的数据是否存在相关的错误。在步骤1240,响应于基于纠错功能的应用而检测到关于所接收数据的错误,控制器102在将数据写到内核存储器之前启动对第二存储器装置的缓存器中的数据的修改。在步骤1245,纠正缓存器中的数据之后,控制器102与目标存储器装置110-M通信,以将相应页面缓存器中的数据写到和目标存储器装置110-M相关的内核存储器的指定存储器位置。可以对所述实施例进行一定的改变和修改。因此,上述实施例被认为是示意性的而非限制性的。权利要求一种存储器系统,包括包括第一存储器装置和第二存储器装置的多个存储器装置;控制器,该控制器和所述多个存储器装置串行连接以使得数据通过所述存储器装置传播,并且所述控制器用于将第一存储器装置配置为源,以便输出保存在所述第一存储器装置中的数据;将第二存储器装置配置为用于接收所述数据的目标;并且使得从第一存储器装置到第二存储器装置的数据传送启动。2.权利要求1所述的存储器系统,其中,所述控制器配置为发送将在第一存储器装置的输入处接收的命令,所述第一存储器装置配置为将所述命令输出到所述第二存储器装置的输入端。3.权利要求1或者2所述的存储器系统,还包括用于启用从第一存储器装置开始、通过第一存储器装置和第二存储器装置之间的中间存储器装置、到达第二存储器装置的数据传输的链路。4.权利要求1所述的存储器系统,其中,所述控制器配置为在控制链路上输出第一建立指令,所述第一建立指令寻址到第一存储器装置,以配置第一存储器装置用来从控制器指定的第一存储器装置的存储器位置中读出数据;并且其中所述控制器配置为在所述控制链路上输出第二建立指令,使之通过第一存储器装置到达第二存储器装置,所述第二建立指令寻址到第二存储器装置,以配置第二存储器装置用来执行到控制器指定的第二存储器装置的存储器位置的写操作。5.权利要求1所述的存储器系统,其中,所述控制器配置为在将数据从第一存储器装置传送到第二存储器装置之后在链路上传递命令,以启动到和第二存储器装置相关的存储器位置的数据写入。6.权利要求1所述的存储器系统,还包括通过所述多个存储器装置的数据链路,并且其中所述控制器配置为在控制链路上通信以启用数据链路上从第一存储器装置开始、通过第二存储器装置、返回所述控制器的数据传递。7.权利要求6所述的存储器系统,其中所述控制器配置为当数据从第一存储器装置传送到第二存储器装置时监控并且接收所述数据链路上的数据。8.权利要求7所述的存储器系统,还包括配置为将纠错功能应用到控制器处所接收的数据的错误检测电路,该纠错功能配置为识别从第一存储器装置传送到第二存储器装置的数据是否存在错误。9.权利要求8所述的存储器系统,还包括第二存储器装置中的缓存器,以在该数据被保存在和第二存储器装置相关的存储器位置之前临时保存所述数据。10.权利要求9所述的存储器系统,其中,所述错误检测电路配置为在控制链路上通信来在将缓存器中的数据写到与第二存储器装置相关的存储器位置之前响应于检测到错误而修改缓存器中的数据。11.权利要求6或者7所述的存储器系统,还包括配置为将纠错功能应用到在控制器处所接收的数据的错误检测电路。12.权利要求1所述的存储器系统,还包括通过多个存储器装置的数据链路,并且其中所述多个存储器装置包括第三存储器装置。13.权利要求12所述的存储器系统,其中所述第三存储器装置配置为用于接收该数据的另一个目标。14.权利要求13的存储器系统,其中第二存储器装置配置为用于保存在数据链路上所接收的数据并且将在数据链路上所接收的数据传递到第三存储器装置。15.权利要求14的存储器系统,其中,所述控制器使得在从第一存储器装置到第二存储器装置的数据传送的同时启动数据链路上从第一存储器装置到第三存储器装置的数据传送。16.权利要求1的存储器系统,还包括通过多个存储器装置的环形连接的数据链路,并且其中所述多个存储器装置包括第三存储器装置。17.权利要求16所述的存储器系统,其中,所述控制器配置为在控制链路上通信来启动在数据链路上从第一存储器装置开始的所述数据的第一部分的传送,以便将该数据的第一部分保存在第二存储器装置中。18.权利要求17所述的存储器系统,其中,所述控制器配置为在控制链路上通信以启动在数据链路上从第二存储器装置开始的所述数据的第二部分的传递,以便将该数据的第二部分保存在第三存储器装置中。19.一种方法,包括在通过多个存储器装置的环形连接链路上通信,以将该多个存储器装置中的第一存储器装置配置为源,以便输出保存在所述第一存储器装置中的数据;在该环形连接链路上通信,以将多个存储器装置中的第二存储器装置配置为用于接收所述数据的目标;在该环形连接链路上通信,以启动从第一存储器装置到第二存储器装置的数据传送。20.权利要求19所述的方法,其中,所述在环形连接链路上通信以配置第一存储器装置包括将命令发送到第一存储器装置的输入,所述第一存储器装置进而输出该命令到所述环形连接的第二存储器装置的输入。21.权利要求19所述的方法,其中,所述在环形连接链路上通信以配置第一存储器装置包括输出至少一个寻址到该第一存储装置的建立指令到该环形连接链路上,以将该第一存储器装置配置成从第一存储器装置的存储器位置读出数据;并且其中所述在环形连接链路上通信以配置第二存储器装置包括输出至少一个寻址到第二存储器装置的建立指令到该环形连接链路上,以配置第二存储器装置用来执行到第二存储器装置中的存储器位置的写操作。22.权利要求19-21中任一所述的方法,其中,所述在环形连接链路上通信以启动从第一存储器装置到第二存储器装置的数据传送包括在将数据从第一存储器装置传送到第二存储器装置之后,在环形连接链路上通信以启动到和第二存储器装置相关的存储器位置的数据写入。23.权利要求19所述的方法,其中,所述在环形连接链路上通信以启动传送包括在环形连接链路上通信以启动在数据链路上的数据传输,该数据链路通过从第一存储器装置开始、通过第一存储器装置和第二存储器装置之间的中间存储器装置、到达第二存储器装置的多个存储器装置。24.权利要求19所述的方法,还包括启动在环形连接链路上的通信以启用在通过多个存储器装置的数据链路上的数据传递;并且监控数据链路以接收传递通过多个存储器装置的数据。25.权利要求24所述的方法,还包括将纠错功能应用到所接收的数据,以识别从第一存储器装置传送到第二存储器装置的数据是否存在错误。26.权利要求22、24和25的任一项所述的方法,其中,在环形连接链路上通信以启动数据传送使得所述数据从第一存储器装置传送到和第二存储器装置相关的缓存器。27.权利要求25所述的方法,其中,在环形连接链路上通信以启动数据传送使得数据从第一存储器装置传送到和第二存储器装置相关的缓存器,该方法还包括响应于基于应用纠错功能而检测到关于所接收数据的错误,在将缓存器中的数据写到与第二存储器装置相关的存储器位置之前修改该缓存器中的数据。28.权利要求19所述的方法,还包括在环形连接链路上通信来将多个存储器装置中的第三存储器装置配置为用于接收来自第一存储器装置的数据的另一个目标,并且其中在环形连接链路上通信以启动传送包括启动从第一存储器装置到第三存储器装置的数据传输。29.权利要求19所述的方法,还包括在环形连接链路上通信,以将多个存储器装置中的第三存储器装置配置为用于接收来自第一存储器装置的数据的另一个目标,并且其中在控制链路上通信以启动数据传送包括在环形连接链路上通信以启动将来自第一存储器装置的数据的第一部分保存到第二存储器装置的存储器位置的操作;并且在环形连接链路上通信以启动将来自第一存储器装置的数据的第二部分保存到第三存储器装置中的存储器位置的操作。30.一种存储器装置,包括用于保存数据的存储器;用于接收来自上游存储器装置的数据的输入;用于将数据发送到下游存储器装置的输出;和输入和输出之间的电路,该电路配置为接收来自远程源的配置命令,并且基于远程源选择的对应的模式,获取保存在存储器中的数据,以便在所述输出上发送到下游存储器装置。31.权利要求30所述的存储器装置,其中该电路配置为基于对应模式的选择监控该输入并且接收来自上游存储器装置的数据,以便在所述输出上发送到下游存储器装置。32.权利要求30的存储器装置,其中,所述输入是第一输入并且所述输出是第一输出,该存储器装置还包括配置为从上游存储器装置接收命令的第二输入;配置为将所接收的命令传递到下游存储器装置的第二输出;和第二输入和第二输出之间的译码电路,该译码电路配置为将所接收的命令从第二输入传递到第二输出并且识别哪个接收的命令寻址到该存储器装置执行。33.一种存储器装置,包括用于保存数据的存储器;缓存器;用于接收来自上游存储器装置的数据的输入;用于将数据发送到下游存储器装置的输出;和输入和输出之间的电路,该电路配置为接收来自远程源的配置命令,并且基于远程源选择的对应的模式,监控该输入并且接收来自上游存储器装置的数据,以便保存在缓存器中。34.一种其上存储有指令的计算机可读介质,该计算机可读介质包括用于在通过多个存储器装置的环形连接链路上通信以将该多个存储器装置中的第一存储器装置配置为源以便输出保存在所述第一存储器装置中的数据的指令;用于在该链路上通信以将该多个存储器装置中的第二存储器装置配置为用于接收所述数据的目标的指令;用于在环形连接链路上通信以启动从第一存储器装置到第二存储器装置的数据传送的指令。全文摘要本发明披露了菊花链式存储器配置和使用。根据一个配置,存储器系统包括以菊花链方式耦合的控制器和对应的包括多个连续的存储器装置串。控制器在串行控制链路上传递命令来配置第一存储器装置将数据块写到该链中的第二存储器装置。例如,控制器通过在菊花链控制链路上通信来将多个存储器装置中的第一存储器装置配置为用于输出数据的源,通过在菊花链控制链路上通信来将第二存储器装置配置为用于接收数据的目标,并且通过在菊花链控制链路上通信来启动从第一存储器装置到第二存储器装置的数据传送,从而启动数据块的复制。文档编号G11C29/52GK101836258SQ200880112684公开日2010年9月15日申请日期2008年8月27日优先权日2007年8月29日发明者吴学俊申请人:莫塞德技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1