CN109471593B - 存储装置及其数据训练方法 - Google Patents
存储装置及其数据训练方法 Download PDFInfo
- Publication number
- CN109471593B CN109471593B CN201811043333.7A CN201811043333A CN109471593B CN 109471593 B CN109471593 B CN 109471593B CN 201811043333 A CN201811043333 A CN 201811043333A CN 109471593 B CN109471593 B CN 109471593B
- Authority
- CN
- China
- Prior art keywords
- nonvolatile memory
- data
- memory devices
- training
- memory controller
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/32—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/02—Disposition of storage elements, e.g. in the form of a matrix array
- G11C5/04—Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
- G06F13/4239—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with asynchronous protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1066—Output synchronization
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1093—Input synchronization
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2254—Calibration
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L2225/00—Details relating to assemblies covered by the group H01L25/00 but not provided for in its subgroups
- H01L2225/03—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00
- H01L2225/04—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers
- H01L2225/065—All the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/648 and H10K99/00 the devices not having separate containers the devices being of a type provided for in group H01L27/00
- H01L2225/06503—Stacked arrangements of devices
- H01L2225/0651—Wire or wire-like electrical connections from device to substrate
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L25/00—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
- H01L25/03—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes
- H01L25/04—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers
- H01L25/065—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof all the devices being of a type provided for in the same subgroup of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N, e.g. assemblies of rectifier diodes the devices not having separate containers the devices being of a type provided for in group H01L27/00
- H01L25/0657—Stacked arrangements of devices
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L25/00—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof
- H01L25/18—Assemblies consisting of a plurality of individual semiconductor or other solid state devices ; Multistep manufacturing processes thereof the devices being of types provided for in two or more different subgroups of the same main group of groups H01L27/00 - H01L33/00, or in a single subclass of H10K, H10N
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)
- Dram (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种存储装置包括:多个非易失性存储器件,每个通过使用数据选通信号和数据信号来交换数据;和存储控制器,将所述多个非易失性存储器件分类为多个组并以所述多个组为单位执行训练。存储控制器对所述多个组的第一组中选择的第一非易失性存储器件执行数据训练,并通过使用第一非易失性存储器件的数据训练的结果值来设定包括在第一组中的第二非易失性存储器件的数据信号的延迟。
Description
技术领域
这里公开的发明构思的各种示例实施方式涉及一种半导体器件,更具体地,涉及用于以组为单位执行数据训练(data training)的存储装置、数据训练方法、系统和/或其非瞬时性计算机可读介质。
背景技术
存在对数据训练(或“DQ”训练)的需求和/或期望以确保用多个非易失性存储器件和存储控制器实现的存储装置中的数据的可靠性。数据训练包括读训练和写训练。读训练是指其中存储控制器使来自非易失性存储器件的数据输出Dout的眼图的中心对准的操作。写训练是指用于使要被写入在非易失性存储器件中的数据Din(例如输入数据)的眼图对准的操作。
为了数据训练,存储控制器可以将特定模式(specific pattern)的数据写入在相应的非易失性存储器件中,或者可以从非易失性存储器件读取特定模式的数据。为了在非易失性存储器件中写入或读取模式数据的目的,需要和/或期望输入命令和地址。因此,执行数据训练不可避免地期望和/或要求输入命令和地址以及输入或输出模式数据所花费的时间以及AC时序的时间。
由于期望和/或要求高速度且高容量的存储装置,所以期望和/或要求包括更多非易失性存储器件作为存储介质并提供更迅速(例如更快)的响应特性的存储装置。在包括大量非易失性存储器件的存储装置中,为了在诸如上电(例如装置引导序列等)的情况下提供快速访问性能的目的,需要减少开启时间。对减少开启时间(特别地,用于数据训练所花的时间)的技术存在需求。
发明内容
本发明构思的各种示例实施方式提供了其中可进行高速数据训练的存储装置、数据训练方法、系统和/或其非瞬时性计算机可读介质。
根据至少一个示例实施方式的一方面,一种存储装置包括:多个非易失性存储器件,每个配置为基于数据选通信号和数据信号交换数据;以及存储控制器,配置为将所述多个非易失性存储器件分类为多个组,并以所述多个组为单位对所述多个非易失性存储器件进行训练,并且存储控制器还配置为对所述多个组中的第一组中选择的第一非易失性存储器件执行数据训练并基于第一非易失性存储器件的数据训练的结果值来设定包括在第一组中的第二非易失性存储器件的数据信号的延迟。
根据至少一个示例实施方式的另一方面,一种存储装置包括:多个非易失性存储器件,每个配置为基于数据选通信号和数据信号来交换数据;存储控制器,配置为访问所述多个非易失性存储器件;多个缓冲芯片,每个配置为在存储控制器与所述多个非易失性存储器件之间提供数据缓冲功能,并且存储控制器还配置为对所述多个缓冲芯片执行数据训练并跳过所述多个非易失性存储器件的数据训练。
根据至少一个示例实施方式的另一方面,一种存储装置的数据训练方法,该存储装置包括存储控制器和多个非易失性存储器件,该方法包括:使用存储控制器基于分类标准将所述多个非易失性存储器件分类为多个组,所述多个组中的每个组包括至少两个非易失性存储器件;使用存储控制器在所述多个组中的至少一个组中选择代表性非易失性存储器件;使用存储控制器对代表性非易失性存储器件执行数据训练;以及基于代表性非易失性存储器件的数据训练结果使用存储控制器来设定所述至少一个组中包括的非代表性非易失性存储器件的数据信号的延迟值。
附图说明
从以下参照附图的描述,以上和其它的目的和特征将变得明显,其中除非另外地说明,相同的附图标记在各个附图中始终表示相同的部件,附图中:
图1是示出根据本发明构思的至少一个示例实施方式的读训练方法的方框图;
图2是示出根据本发明构思的至少一个示例实施方式的存储装置的方框图;
图3是示出根据本发明构思的至少一个示例实施方式的存储控制器的方框图;
图4是示出根据至少一个示例实施方式的图2的非易失性存储器件的方框图;
图5是示出根据本发明构思的至少一个示例实施方式的用于对非易失性存储器件分组的方法的一个示例的方框图;
图6是示出根据本发明构思的至少一个示例实施方式的用于对非易失性存储器件分组的方法的方框图;
图7是示出根据至少一个示例实施方式的按照数据信号线的长度进行分组的存储装置的示例的截面图;
图8是示出根据至少一个示例实施方式的基于数据信号线的电特性的分组应用到其的存储装置的示例的方框图;
图9是示出根据本发明构思的至少一个示例实施方式的存储装置的数据训练方法的流程图;
图10是示出根据本发明构思的至少一个示例实施方式的用于对非易失性存储器件分组的方法的方框图;以及
图11是示出根据至少一个示例实施方式的在图10的存储装置中执行的基于组的数据训练方法的流程图。
具体实施方式
将理解,前面的一般描述和下面的详细描述都作为示例来提供,为了说明而不是为了限制本发明的范围。附图标记将在本发明构思的示例实施方式中被详细地表现,其示例在附图中示出。只要是可能的,在附图和描述中使用相同的附图标记来指代相同或相似的部件。
下面,NAND型闪存器件将作为非易失性存储器件讨论,用于描述本发明构思的至少一个示例实施方式的特征和功能。然而,根据这里公开的内容,本领域技术人员可以容易地理解本发明构思的其它优点和性能。例如,本发明构思的示例实施方式的特征可以应用于作为非易失性存储器件的相变RAM(PRAM)、磁阻RAM(MRAM)、电阻RAM(ReRAM)、铁电RAM(FRAM)、NOR闪存等。这里,本说明书中使用的术语“数据训练”是指搜索数据信号(DQ)的眼图的中心并根据搜索结果调整数据信号(DQ)的采样时间点和/或发送位置的操作。
本发明构思可以通过另一些示例实施方式实现或应用。此外,详细描述可以根据观察点和应用来改变或修改,而没有脱离本发明构思的权利要求、范围和精神以及任何其它的目的。下面,将参照附图详细描述本发明构思的各种示例实施方式。
图1是示出根据本发明构思的至少一个示例实施方式的读训练方法的方框图。参照图1,在读训练(例如数据读训练)中,用于包括至少一个非易失性存储器件(例如非易失性存储器件20)的存储装置的存储控制器10可以通过数据信号线30将从非易失性存储器件20提供的数据信号DQ的采样时间点“S”调整为数据信号(DQ)窗口的中心“C”。尽管在图1中仅示出单个非易失性存储器件,但是示例实施方式不限于此,存储装置中可以包括两个或更多个非易失性存储器件。
在读训练中,存储控制器10可以向非易失性存储器件20提供请求训练模式和地址的命令。非易失性存储器件20响应于读使能信号/RE的触发而输出数据信号DQ和数据选通信号DQS。非易失性存储器件20通过使用数据信号DQ输出存储控制器10所请求的训练模式(例如所请求的训练模式)。
如果非易失性存储器件20将数据信号DQ传送到存储控制器10,则存储控制器10的接收锁存器11对传送的数据信号DQ采样。非易失性存储器件20可以输出例如中心对准的眼图(EP)22的数据信号DQ。然而,由于各种因素(诸如由于非易失性存储器件的性能、数据信道总线、非易失性存储器件和存储控制器之间的距离等引起的物理限制),传送到存储控制器10的数据信号DQ可能对于各个数据信道或各个数据线具有不同的延迟。读训练是用于将从非易失性存储器件20提供的数据信号DQ的眼图12的采样时间点“S”调整到眼图12的中心“C”的操作。也就是,接收锁存器11的采样时间点可以通过读训练被调整时间Δt。
例如,向接收锁存器11提供时钟信号的延迟锁定环(DLL)电路的读时序偏移RT_Offset可以通过读训练来调整。通过上述读训练,从非易失性存储器件20提供的数据信号DQ的采样时间点可以与眼图12的中心“C”对准。
写训练操作是用于调整将从存储控制器10传输到至少一个非易失性存储器件(例如非易失性存储器件20)的数据的写时序偏移的操作。除了输入到非易失性存储器件20的数据信号DQ被对准之外,写训练操作类似于读训练操作。因此,这里将不重复写训练操作的详细描述。
通常,通过使用连接到存储控制器10的非易失性存储器件20作为对象来执行数据训练。然而,在连接到存储控制器10的非易失性存储器件的数量增加的情况下,例如对于高容量的存储装置等,执行数据训练所花费时间的急剧增加是不可避免的。根据本发明构思的至少一个示例实施方式,可以在包括多个非易失性存储器件的存储装置中提供用于减少训练操作花费的时间并同时提供期望的、提高的和/或最佳的训练效果的技术。
图2是示出根据本发明构思的至少一个示例实施方式的存储装置的方框图。参照图2,存储装置100包括存储控制器110、多个非易失性存储器件120、130和140、和/或缓冲器150,但是不限于此。提供数据选通线163、173和183以及数据线165、175和185以在存储控制器110与所述多个非易失性存储器件120、130和140之间交换数据。
存储控制器110可以配置为控制所述多个非易失性存储器件120、130和140。例如,存储控制器110根据外部源和/或主机的请求将数据写入所述多个非易失性存储器件120、130和140中的一个或更多个中。此外,根据外部源和/或主机的请求,存储控制器110可以读取存储在所述多个非易失性存储器件120、130和140中的一个或更多个中的数据。存储控制器110可以向非易失性存储器件120、130和140提供用于访问非易失性存储器件120、130和140的命令、地址和控制信号。为了读取和/或写入主机请求的数据,存储控制器110可以访问所述多个非易失性存储器件120、130和140。
存储控制器110可以在存储装置100的特定情况下执行非易失性存储器件120、130和140的数据训练(也称为“DQ训练”),例如存储装置、存储装置和/或存储控制器所连接到的主机等的引导或初始化。存储控制器110可以通过数据训练提高与非易失性存储器件120、130和140的数据交换的可靠性。
特别地,存储控制器110可以以组为单位对非易失性存储器件120、130和140执行数据训练。在每个组中,存储控制器110可以训练一个非易失性存储器件并可以将训练结果应用于该组的其它非易失性存储器件。例如,存储控制器110对第一组Group1的非易失性存储器件NVM11至NVM14中的一个非易失性存储器件NVM_11执行数据训练。
存储控制器110可以在各种条件下在所选择的非易失性存储器件NVM_11中写入和/或读取训练模式以检测数据信号(DQ)窗口的中心(例如DQ窗口的中点)。为了将检测到的数据信号窗口的中心对准到数据信号DQ的采样时间点,存储控制器110可以调整延迟锁定环(DLL)电路118或锁相环(PLL)电路(未示出)的延迟偏移。具体地,作为非易失性存储器件NVM_11的训练结果而获得的延迟偏移还可以应用于包括在第一组Group1中的其余非易失性存储器件NVM_12、NVM_13和NVM_14,但是示例实施方式不限于此,也可以对该组的其余非易失性存储器件中的一个或更多个执行数据训练。因此,可以省略与非易失性存储器件NVM_12、NVM_13和NVM_14相关的数据训练。
以组为单位执行的数据训练可以同样应用于属于第二组Group2的非易失性存储器件NVM_21至NVM_24和属于第N组GroupN的非易失性存储器件NVM_N1至NVM_N4。也就是,根据组单位的数据训练方式,数据训练可以应用于包括在每个组中的仅一个非易失性存储器件(例如对包括在每个组中的仅一个非易失性存储器件执行)。换句话说,一个非易失性存储器件(以下称为“代表性非易失性存储器件”)的数据训练结果可以同样地应用于属于同一组的其它非易失性存储器件(例如应用于其中的每个)。
这里,用于选择与每个组中的数据训练对象对应的一个代表性非易失性存储器件的标准可以通过使用诸如地址、电特性、距存储控制器110的相对距离等信息来提供,但是不限于此。然而,代表性非易失性存储器件可以被随机地选择。此外,属于同一组的非易失性存储器件的数据信号DQ的特性可以被认为是彼此相同或相似。用于对组分类的标准可以考虑到该特性来提供。
在应用本发明构思的至少一个示例实施方式的组单位的数据训练方式的情况下,可以显著减少执行包括大量非易失性存储器件的存储装置100的数据训练所需的时间。因此,由于在诸如引导(其中通常执行存储装置100的数据训练)的情况下,开启时间(例如执行存储装置的数据训练花费的时间)是短的,所以本发明构思的示例实施方式中的一个或更多个的存储装置100可以被快速地访问。
图3是示出根据本发明构思的至少一个示例实施方式的存储控制器的方框图。参照图3,存储控制器110包括处理单元111、训练管理器113、主机接口115、缓冲管理器117和/或闪存接口119,但是不限于此。然而,本领域普通技术人员可以很好地理解,存储控制器110的部件不限于上述部件。例如,存储控制器110还可以包括存储初始引导操作所需的代码数据的只读存储器(ROM)、运行存储器等。
处理单元111可以包括一个或更多个中央处理单元、微处理器、多核处理器、多处理器系统、分布式处理器等。处理单元111可以处理存储控制器110中执行的全部控制操作。根据本发明构思的至少一个示例实施方式,处理单元111可以配置为执行包括用于操作存储控制器110的计算机可读指令的专用固件和/或专用软件。
训练管理器113在存储装置100的特定情况(诸如引导等)下执行用于与非易失性存储器件120通信的数据训练(例如DQ训练)。训练管理器113执行多个检测步骤以确定数据信号DQ的中心的位置。为了将所确定的数据信号的中心与数据信号DQ的采样时间点对准,训练管理器113可以调整存储控制器110的延迟锁定环(DLL)和/或锁相环(PLL)等的偏移值。
具体地,训练管理器113以组(例如非易失性存储器件的组)为单位对多个非易失性存储器件120、130和140(参照图2)执行数据训练。在每个组中,对代表性非易失性存储器件执行数据训练,并且根据一些示例实施方式,仅对代表性非易失性存储器件执行数据训练。训练管理器113将通过代表性非易失性存储器件获得的训练结果同样地应用于同一组中的其余非易失性存储器件的偏移设定。
训练管理器113可以参考所确定的数据信号DQ的中心以期望的、提高的和/或最佳的时序偏移值来设定存储控制器110的延迟锁定环DLL和/或锁相环PLL。训练管理器113可以用硬件实现,但是本领域普通技术人员将很好地理解,训练管理器113以固件和/或加载于存储控制器110和/或存储装置的运行存储器(未示出)上的软件的形式提供。
主机接口115可以提供主机与存储控制器110之间的接口。主机和存储控制器110可以通过各种标准化接口(例如数据总线接口等)中的至少一个连接。作为另一个示例,主机和存储控制器110可以通过各种标准化接口中的至少一个连接。这里,标准化接口可以包括各种接口方式诸如高级技术附件(ATA)、串行ATA(SATA)、外部SATA(e-SATA)、迷你SATA(mSATA)、小型计算机小接口(SCSI)、串行连接SCSI(SAS)、外设部件互连(PCI)、PCIExpress(PCI-E)、通用串行总线(USB)、IEEE 1394、通用闪存(UFS)和/或卡接口等,但是示例实施方式不限于此。
为了临时存储通过主机接口115和闪存接口119交换的数据,缓冲管理器117控制缓冲器150(参照图2)。此外,缓冲管理器117可以在读训练操作和/或写训练操作中存储与代表性非易失性存储器件交换的训练模式。
根据至少一个示例实施方式,闪存接口119提供存储控制器110和非易失性存储器件120之间的接口,但是示例实施方式不限于此,并且不同的数据总线接口类型可以用于存储控制器110和非易失性存储器件120之间的通信。例如,由处理单元111处理的数据通过闪存接口119传输到非易失性存储器件120。作为另一个示例,存储在非易失性存储器件120中的数据通过闪存接口119读取。
闪存接口119可以在数据训练操作期间以组为单位将非易失性存储器件120、130和140分类。数据训练可以对从每个组中选择的非易失性存储器件执行。从与每个组中的数据训练对象对应的非易失性存储器件获得的训练结果值可以应用于每个组中的其它非易失性存储器件的每个。
闪存接口119可以包括用于与非易失性存储器件120交换数据信号DQ的时钟电路。例如,闪存接口119可以包括延迟锁定环电路118。通过根据所确定的DQ信号的中心调整延迟锁定环电路118的时序偏移,从非易失性存储器件120发送的数据信号DQ的中心可以被对准到数据信号DQ的采样时间点。
以上讨论了根据至少一个示例实施方式的存储控制器110的部件。本发明构思的至少一个示例实施方式的存储控制器110在数据训练操作期间以组为单位训练多个非易失性存储器件。根据一些示例实施方式,非易失性存储器件的每组中仅一个代表性非易失性存储器件被选择用于数据训练。从代表性非易失性存储器件获得的数据训练结果可以与该组中的其余非易失性存储器件共用。因此,可以显著减少执行数据训练操作所花费的时间。
图4是示出根据至少一个示例实施方式的图2的非易失性存储器件的方框图。参照图4,属于第一组Group1的非易失性存储器件NVM_11可以包括单元阵列121、行解码器122、页缓冲器123、输入/输出电路124、控制逻辑125和/或电压发生器126,但是不限于此。
单元阵列121通过字线WL和/或选择线SSL和GSL连接到行解码器122。单元阵列121通过位线BL连接到页缓冲器123。单元阵列121可以包括形成为NAND型的多个单元串。单元串可以构成存储块BLK。这里,每个单元串的沟道可以形成在垂直或水平方向上。包括在单元阵列121中的存储单元由提供到字线和位线的电压编程。
在至少一个示例实施方式中,单元阵列121可以用三维(3D)存储阵列来实现,但是示例实施方式不限于此。三维存储阵列可以单片地形成在存储单元阵列的一个或多个物理层级中,该存储单元阵列具有布置在与存储单元的操作相关的电路上的有源区,但是示例实施方式不限于此。与存储单元的操作相关的电路可以位于基板中或在基板上。术语“单片”表示阵列的每个层级的层直接沉积在该阵列的每个下面的层级的层上。
行解码器122可以响应于地址ADD选择单元阵列121的存储块中的一个。行解码器122可以选择所选择的存储块的字线中的一条。行解码器122可以将来自电压发生器126的字线电压VWL传输到所选的字线。
页缓冲器123可以在编程操作中作为写驱动器操作并在读操作中作为感测放大器操作。在编程操作中,页缓冲器123将对应于待编程数据的位线电压提供到单元阵列121的位线。在读操作中,页缓冲器123可以通过位线感测存储在选择的存储单元中的数据。页缓冲器123锁存所感测的数据并将锁存的数据输出到输入/输出电路124。本发明构思的至少一个示例实施方式的页缓冲器123可以用作存储数据训练操作中的训练模式的先入先出(FIFO)缓冲器,但是示例实施方式不限于此,并且可以使用其它的数据结构,诸如后进先出(LIFO)等。也就是,在写训练操作中,训练模式可以在被存储在页缓冲器123中之后被输出,而不将训练模式存储在单元阵列121中。
输入/输出电路124将在编程操作期间接收到的写数据发送到页缓冲器123。输入/输出电路124在读操作中将从页缓冲器123提供的数据输出到外部(例如外部源、主机等)。输入/输出电路124将接收到的地址ADD和/或接收到的命令发送到行解码器122和/或控制逻辑125。
响应于从外部(例如外部源、主机等)发送的命令和控制信号/CE、/RE、/WE和DQS,控制逻辑125控制页缓冲器123和电压发生器126。在写操作中,响应于由存储控制器110提供的数据选通信号DQS,控制逻辑125锁存写数据。相反,在读操作中,控制逻辑125通过使用由存储控制器110提供的读使能信号/RE来产生数据选通信号DQS。
在控制逻辑125的控制下,电压发生器126可以产生将被提供到字线的各种字线电压VWL以及将被提供到其中形成存储单元的块体(例如阱区)的电压。将被提供到字线的字线电压包括编程电压Vpgm、通过电压Vpass、选择和/或非选择读电压Vrd和Vread等。
图5是示出根据本发明构思的至少一个示例实施方式的用于对非易失性存储器件分组的方法的一个示例的方框图。参照图5,存储装置200可以包括基于芯片使能信号CE分组的多个非易失性存储器件220、230和240,但是不限于此。也就是,存储装置200的数据训练可以以共用芯片使能信号CE的非易失性存储器件中的任一个为对象。下面,为了便于描述,可以省略以非易失性存储器件的组为单位发送的数据选通信号DQS的图示和描述。
存储控制器210可以通过芯片使能信号CE_0来选择多个非易失性存储器件当中的非易失性存储器件220的一个或多个。存储控制器210可以通过芯片使能信号CE_1选择所述多个非易失性存储器件当中的非易失性存储器件230的一个或多个。存储控制器210可以通过芯片使能信号CE_N选择所述多个非易失性存储器件当中的非易失性存储器件240的一个或多个。
在设计存储装置200时,芯片使能信号CE_0、CE_1、...、CE_N可以以具有相同数据倾斜DQ Skew的芯片(例如存储芯片、非易失性存储器件等)为单位进行分配。也就是,存储装置200被设计为使得具有相同数据倾斜DQ Skew或具有彼此不同但是足够相似从而对数据传输不具有显著影响的数据倾斜的芯片(例如每个单位的存储芯片具有相同、基本上相似和/或可忽略的数据倾斜等)通过一个芯片使能信号CE选择。例如,具有相同或相似的延迟或数据倾斜特性的连接到数据和信号线225的非易失性存储器件NVM_11、NVM_12、NVM_13和NVM_14可以被选择作为第一组Group1用于数据训练。也就是,共用芯片使能信号CE_0的非易失性存储器件NVM_11、NVM_12、NVM_13和NVM_14(例如芯片)可以被分类为第一组Group1用于数据训练。
共用芯片使能信号CE_1的非易失性存储器件NVM_21、NVM_22、NVM_23和NVM_24(例如芯片)可以被分类为第二组Group2用于组单位的数据训练。共用芯片使能信号CE_N的非易失性存储器件NVM_N1、NVM_N2、NVM_N3和NVM_N4可以被分类为第N组GroupN。在数据训练中,仅组Group1、Group2、......、GroupN中的代表性芯片(和/或非易失性存储器件)作为训练的对象,但是示例实施方式不限于此。代表性芯片的数据训练结果可以应用于延迟锁定环的偏移设定值,以限定对与每个代表性芯片对应的各组中的其它芯片的数据信号DQ的采样或者发送数据信号DQ的时间点。因此,在非易失性存储器件被分类为8组并且每组中存在4个芯片的情况下,当针对所有的芯片执行数据训练时,32个芯片作为训练的对象。然而,根据本发明构思的至少一个示例实施方式,如果以组单元执行数据训练,则可以对于32个芯片当中的仅8个代表性芯片执行数据训练,从而加快数据训练操作、减小数据训练操作的功耗和资源消耗、并提高存储装置的整体效率。
例如,对应于数据训练对象的代表性非易失性存储器件(例如NVM_11)从第一组Group1的非易失性存储器件NVM_11、NVM_12、NVM_13和NVM_14中选择。数据训练针对代表性非易失性存储器件NVM_11执行。对代表性非易失性存储器件NVM_11执行数据训练的结果可以同样地应用于第一组Group1的其余非易失性存储器件NVM_12、NVM_13和NVM_14。训练方法也可以应用于其余的组Group2、...、GroupN。
以上简要描述了以芯片使能信号CE为单位执行数据训练的组分类方法。换句话说,如果芯片使能信号CE_0被激活,则第一组Group1的全部非易失性存储器件220被选择。存储控制器210可以提供芯片地址用于选择使用芯片使能信号CE_0选择的非易失性存储器件220中的任一个。
如果在设计时基于数据倾斜DQ Skew分配芯片使能信号CE,则可以有效地执行用于数据训练的分组。此外,通过执行组单位的数据训练(也称为“基于组的数据训练操作”),可以显著减少存储装置200的数据训练所花费的时间。
图6是示出根据本发明构思的至少一个示例实施方式的用于对非易失性存储器件分组的方法的方框图。参照图6,存储装置300包括分为多个组Group1、Group2、...、GroupN的多个非易失性存储器件320、330和340,但是示例实施方式不限于此。这里,所述多个组Group1、Group2、...、GroupN的分类可以根据非易失性存储器件与存储控制器310的相对距离来进行。数据训练可以针对组Group1、Group2、...、GroupN的每个中包括的一个非易失性存储器件执行。
为了例如在存储装置300等的引导、初始化、特定数据传输情况下保证与非易失性存储器件320、330和340等的数据交换的可靠性,存储控制器310可以执行数据训练。具体地,存储控制器310可以以组Group1、Group2、...、GroupN为单位执行数据训练。
例如,存储控制器310对于第一组(Group1)320的非易失性存储器件NVM_11、NVM_12、NVM_13和NVM_14中的任何一个执行数据训练。存储控制器310对于第二组(Group2)330的非易失性存储器件NVM_21、NVM_22、NVM_23和NVM_24中的任何一个执行数据训练。类似地,存储控制器310对于第N组(GroupN)340的非易失性存储器件NVM_N1、NVM_N2、NVM_N3和NVM_N4中的任何一个执行数据训练。之后,存储控制器310可以使用组Group1、Group2、...、GroupN中的每个的代表性非易失性存储器件的数据训练的执行结果,用于每个组中的其余非易失性存储器件的数据信号的对准。
这里,用于组320、330和340的分类的标准可以基于每个非易失性存储器件NVM_ij(i和j是自然数)的数据信号线DQ线的长度来确定。详细地,组可以根据形成在非易失性存储器件NVM_ij与存储控制器310之间的数据信号线DQ线的相对长度来确定,但是示例实施方式不限于此,并且其它因素和/或特性可以用于确定非易失性存储器件的组。
例如,第一组320的非易失性存储器件NVM_11、NVM_12、NVM_13和NVM_14可以是芯片(例如非易失性存储器件、闪存器件等),其中与存储控制器310连接的数据线(DQ_0)325的长度不超过“L0”。第二组330的非易失性存储器件NVM_21、NVM_22、NVM_23和NVM_24可以是芯片,其中与存储控制器310连接的数据线(DQ_1)335的长度比“L0”长并且不大于“L1”。第N组340的非易失性存储器件NVM_N1、NVM_N2、NVM_N3和NVM_N4可以是芯片,其中与存储控制器310连接的数据线(DQ_N)345的长度不小于“LN”。
数据线的长度被包括作为对数据信号DQ的延迟具有影响的最关键因素。因此,可以基于数据线的长度对非易失性存储器件NVM_ij分组用于数据训练。如果组的划分完成,可以针对组中的任何一个芯片(或非易失性存储器件)执行数据训练。即使与任何一个芯片相关的数据训练的结果被应用于包括所述任何一个芯片的组中的其余芯片,数据的可靠性也可以被保持。也就是,每个组的代表性芯片的数据训练结果可以应用于延迟锁定环的偏移设定值,以限定与每个代表性芯片对应的组中的其它芯片的数据信号DQ的采样和/或发送数据信号DQ的时间点。
以上简要描述了基于数据信号线DQ线的长度对非易失性存储器件分组用于数据训练的方法。通过执行组单位的数据训练(和/或基于组的数据训练操作),可以显著减少存储装置300的数据训练花费的时间。
图7是示出根据至少一个示例实施方式的按照数据信号线的长度进行分组的存储装置的示例的截面图。参照图7,存储装置300可以包括堆叠在PCB基板360上的多个非易失性存储器件322、324、332、334、342、344、352和354以及存储控制器310,但是示例实施方式不限于此。
存储控制器310可以安装在多个堆叠的非易失性存储器件322、324、332、334、342、344、352和354中的最上面的一个上。存储控制器310可以通过引线311连接到PCB基板360。
例如,非易失性存储器件322和324可以顺序地位于存储控制器310下面/之下并可以通过引线321和323与PCB基板360电连接。非易失性存储器件342和344可以顺序地位于非易失性存储器件324下面/之下,并可以通过引线341和343与PCB基板360电连接。非易失性存储器件332和334可以顺序地位于非易失性存储器件344下面/之下并可以通过引线331和333与PCB基板360电连接。非易失性存储器件352和354可以顺序地位于非易失性存储器件334下面/之下并可以通过引线351和353与PCB基板360电连接。
例如,非易失性存储器件322和324可以被分类为第一组Group1用于数据训练。非易失性存储器件322和存储控制器310之间的数据信号线DQ线的相对长度由引线321和形成在PCB基板360中的印刷电路确定。非易失性存储器件324和存储控制器310之间的数据信号线DQ线的相对长度由引线323和形成在PCB基板360中的印刷电路确定。考虑到堆叠位置,非易失性存储器件322和324可以被认为用相同、相似和/或几乎相似的长度的数据信号线DQ线而与存储控制器310连接。因此,非易失性存储器件322和324可以被分类为第一组Group1。换句话说,当数据信号线的长度在期望的阈值长度内时,非易失性存储器件和/或存储芯片可以被分类在相同的组中。期望的阈值长度可以基于数据信号线的性能考虑来确定,诸如到/来自非易失性存储器件和/或存储芯片的数据信号传输的等待时间以及引线的长度之间的差异是否在期望的性能约束内(例如具有可忽略的性能的影响)。
非易失性存储器件332和334可以被分类为第二组Group2用于数据训练。非易失性存储器件332和存储控制器310之间的数据信号线DQ线的相对长度由引线331和形成在PCB基板360中的印刷电路确定。非易失性存储器件334和存储控制器310之间的数据信号线DQ线的相对长度由引线333和形成在PCB基板360中的印刷电路确定。非易失性存储器件332和334可以被认为用相同、相似和/或几乎相似的长度的数据信号线DQ线而与存储控制器310连接。因此,非易失性存储器件332和334可以被分类为第二组Group2。
根据上述方式,非易失性存储器件342和344可以被分类为第三组Group3,非易失性存储器件352和354可以被分类为第四组Group4。根据至少一个示例实施方式,非易失性存储器件使用引线与PCB基板360电连接。然而,本发明构思的示例实施方式不限于此。例如,可以理解,相同的分类方式的分组应用于使用贯穿硅通路TSV等的存储控制器和/或非易失性存储器件。
存储控制器310可以对于每个组中包括的所述多个非易失性存储器件中的一个或多个非易失性存储器件执行数据训练。存储控制器310可以将对于每个组中的所述一个非易失性存储器件的数据训练的结果应用于每个组中的其余非易失性存储器件。也就是,存储控制器310可以对于每个组对代表性非易失性存储器件执行数据训练。存储控制器310可以将对于每个组的代表性非易失性存储器件的数据训练的结果应用于每个组中的其余非易失性存储器件。也就是,从每个组中的一个非易失性存储器件的数据训练的结果确定的延迟锁定环DLL的偏移设定值可以同样地应用于每个组中的其余非易失性存储器件。
以上简要描述了根据非易失性存储器件的堆叠位置对非易失性存储器件分组用于数据训练的方法。这里,存储装置300可以用例如嵌入式多媒体卡(eMMC)实现,但是示例实施方式不限于此。通过执行组单位的数据训练,可以显著减少存储装置300的数据训练花费的时间。
图8是示出基于数据信号线的电特性进行分组应用到其的存储装置的示例的方框图。参照图8,存储装置400可以包括堆叠在PCB基板460上的多个非易失性存储器件NVM1至NVM8和存储控制器410,但是不限于此。这里,所述多个非易失性存储器件NVM1至NVM8可以根据形成在PCB基板460中的信号线的电特性来分组,但是示例实施方式不限于此。
存储控制器410可以将数据写入安装在PCB基板460上的所述多个非易失性存储器件NVM1至NVM8中或从其读取数据。存储控制器410可以在存储装置400的引导时执行数据训练用于确保与所述多个非易失性存储器件NVM1至NVM8数据交换的可靠性,但是不限于此。存储控制器410可以以组420、430、440和/或450等为单位执行数据训练。
例如,存储控制器410对于第一组420的非易失性存储器件NVM1和NVM2中的任何一个执行数据训练。存储控制器410对于第二组430的非易失性存储器件NVM3和NVM5中的任何一个执行数据训练。类似地,存储控制器410对于第三组440的非易失性存储器件NVM4和NVM6中的任何一个执行数据训练。存储控制器410对于第四组450的非易失性存储器件NVM7和NVM8中的任何一个执行数据训练。之后,存储控制器410可以将代表性非易失性存储器件的数据训练的执行结果应用于各个组420、430、440和450中的每个,以对准每个组中的其余非易失性存储器件的数据信号。
这里,用于组分类的标准可以遵照形成在非易失性存储器件NVM1至NVM8的每个与存储控制器410之间的数据信号线DQ线的物理特性。例如,非易失性存储器件NVM1至NVM8可以根据与存储控制器410的相对距离L0、L1、L2和L3来分组。然而,形成在PCB基板460中的数据信号线DQ线的实际长度可以考虑到各种迂回路径来确定。因此,例如,可以理解,非易失性存储器件NVM1至NVM8根据形成在PCB基板460上的印刷电路的长度而不是相对距离L0、L1、L2和L3来分组。
图9是示出根据本发明构思的至少一个示例实施方式的存储装置的数据训练方法的流程图。参照图9,至少一个示例实施方式的存储装置100、200、300或400可以以组为单位训练多个非易失性存储器件。这里,为了便于描述,将参照图2的存储装置100描述数据训练方法,然而,示例实施方式不限于此。
在操作S110中,存储控制器110可以根据和/或基于特定的分类标准对多个非易失性存储器件NVM_ij分类。例如,多个非易失性存储器件NVM_ij可以根据数据信号线DQ线的长度和/或延迟特性、电特性和/或芯片使能信号CE的分配等而被分类为不同的组。
在操作S120中,存储控制器110对于每个分组选择代表性非易失性存储器件。代表性非易失性存储器件可以被提供作为组中的非易失性存储器件当中的数据训练的对象。用于选择代表性非易失性存储器件的标准可以基于芯片地址或随机地选择。
在操作S130中,存储控制器110对于每个组的代表性非易失性存储器件执行数据训练。实质上,可以仅对代表性非易失性存储器件执行读训练或写训练,但是示例实施方式不限于此,并且可以对例如第二或更多非易失性存储器件执行用于验证的目的等。对于每个组中不是代表性非易失性存储器件的非易失性存储器件可以不执行数据训练。如果代表性非易失性存储器件的数据训练完成,则可以获得代表性非易失性存储器件的训练结果值。
在操作S140中,存储控制器110将每个组的代表性非易失性存储器件的训练结果值应用到每个组中的其余非易失性存储器件。也就是,在每个组中,通过使用从代表性非易失性存储器件获得的训练结果可以确定用于发送未经历数据训练的非易失性存储器件的数据信号的采样点,诸如时间点(例如主时钟信号转换等)。
因此,可以通过基于组的数据训练方法来提高训练包括多个非易失性存储器件的存储装置100的速度(例如训练速度)。
图10是示出根据本发明构思的至少一个示例实施方式的用于对非易失性存储器件分组的方法的方框图。参照图10,存储装置500包括分类为多个组Group1、Group2、...、GroupN的多个非易失性存储器件NVM_ij(i和j为自然数),但是不限于此。存储装置500包括缓冲芯片520、540和560,用于补偿共用数据信号线DQ线的非易失性存储器件NVM_ij的数据倾斜DQ Skew和/或延迟差。存储控制器510可以基于缓冲芯片520、540和560对非易失性存储器件NVM_ij分组。
存储控制器510可以以缓冲芯片520、540和/或560等为单位执行数据训练。存储控制器410和缓冲芯片520可以通过数据信号线DQ_0连接。缓冲芯片520通过数据信号线DQ_01和DQ_02与第一组530的非易失性存储器件连接。第一组530包括一个或更多个子组,诸如第一子组532和/或第二子组534等,但是不限于此。
例如,缓冲芯片520通过数据信号线DQ_01与由芯片使能信号CE_0选择的第一子组532连接。此外,缓冲芯片520通过数据信号线DQ_02与由芯片使能信号CE_1选择的第二子组534连接。缓冲芯片520插设在存储控制器510与一个或更多个子组(例如第一子组532和第二子组534)的非易失性存储器件之间,用于解决难以通过仅使用一条数据信号线DQ_0补偿数据倾斜的数据倾斜问题的目的。第一组530的非易失性存储器件中(和/或之间)发生的倾斜和/或延迟差引起的问题可以由缓冲芯片520解决。
包括在第一子组532中的非易失性存储器件(例如存储器芯片等)诸如NVM_01、NVM_02、NVM_03和NVM_04等通过芯片使能信号CE_0来选择。此外,包括在第二子组534中的非易失性存储器件例如NVM_11、NVM_12、NVM_13和NVM_14等由芯片使能信号CE_1选择。即使不同的芯片使能信号CE_0和CE_1被分配到第一子组532和第二子组534,包括在第一子组532和第二子组534中的非易失性存储器件也可以被分类为一个组。原因是作为存储介质的第一子组532和第二子组534与缓冲芯片520连接。
包括在第二组550中的非易失性存储器件可以被分类为一个或更多个子组,诸如第三子组552和/或第四子组554等。包括在第三子组552中的非易失性存储器件诸如NVM_21、NVM_22、NVM_23和NVM_24等通过芯片使能信号CE_2选择。此外,包括在第四子组554中的非易失性存储器件诸如NVM_31、NVM_32、NVM_33和NVM_34等通过芯片使能信号CE_3选择。尽管不同的芯片使能信号CE_2和CE_3被分配到第三子组552和第四子组554,但是包括在第三子组552和第四子组554中的非易失性存储器件可以被分类为一个组。
包括在第四组570中的非易失性存储器件可以被分类为一个或更多个子组,诸如第七子组572和/或第八子组574等。包括在第七子组572中的非易失性存储器件诸如NVM_61、NVM_62、NVM_63和NVM_64等由芯片使能信号CE_6选择。此外,包括在第八子组574中的非易失性存储器件诸如NVM_71、NVM_72、NVM_73和NVM_74等通过芯片使能信号CE_7选择。即使不同的芯片使能信号CE_6和CE_7被分配到第七子组572和第八子组574,包括在第七子组572和第八子组574中的非易失性存储器件也可以被分类为一个组。
上述组分类方法可以同样地应用于未示出的第三组Group3的非易失性存储器件。
在数据训练中,存储控制器510对第一组530执行数据训练。存储控制器510可以对由数据信号线DQ_0连接的缓冲芯片520执行数据训练。也就是,第一组530的数据训练可以基本上通过对于缓冲芯片520的读训练和/或写训练来执行。不需要在缓冲芯片520与包括在第一组530中的非易失性存储器件(例如NVM_01、NVM_02、NVM_03、NVM_04、NVM_11、NVM_12、NVM_13和NVM_14)之间执行数据训练。原因是缓冲芯片520与第一组530的非易失性存储器件(例如NVM_01、NVM_02、NVM_03、NVM_04、NVM_11、NVM_12、NVM_13和NVM_14)之间的数据倾斜的差异是不存在的、是可比的、可忽略的和/或在期望的阈值量内。
对于第二组550的数据训练可以与对于第一组530的数据训练相同地执行。也就是,数据训练可以仅对存储控制器510和缓冲芯片540之间的数据信号线DQ_1执行。存储控制器510可以对于缓冲芯片540执行读训练和/或写训练以用于第二组550的数据训练。即使不同的芯片使能信号CE_2和CE_3通过缓冲芯片540的操作连接到存储介质(或子组)552和554,存储介质552和554之间的数据倾斜也不存在、是可比的、可忽略的和/或在期望的阈值量内。换句话说,即使存储介质的组和/或子组使用不同的芯片使能信号连接,缓冲芯片也可以补偿存储介质的不同组和/或子组之间的数据倾斜(例如可以平衡数据倾斜等)。
以上述方式,可以通过缓冲芯片560的读训练和/或写训练对第四组570的非易失性存储器件执行数据训练,并通过未示出的缓冲芯片的读训练和/或写训练对没有示出的第三组的非易失性存储器件执行数据训练。
以上简要描述了以缓冲芯片为单位执行数据训练的存储装置500。多个非易失性存储器件实质上存在于存储装置500中,但是可以关于缓冲芯片(例如缓冲芯片520、540和560)执行数据训练。因此,执行数据训练的次数取决于缓冲芯片(例如缓冲芯片520、540和560)的数量,而不是非易失性存储器件的数量。由于数据训练方法应用于根据高容量的需求而配备有大量非易失性存储器件的存储装置500,所以在引导、初始化等时可以减少开启时间,从而可以确保快速的访问。
图11是示出根据至少一个示例实施方式的在图10的存储装置中执行的基于组的数据训练方法的流程图。参照图11,包括多个缓冲芯片(例如缓冲芯片520、540和/或560等)和多个组(例如530、550和/或570等)的非易失性存储器件的存储装置500(参照图10)仅通过对于缓冲芯片(例如缓冲芯片520、540和560)的数据训练来对每个组执行数据训练。
在操作S210中,存储控制器510可以根据与缓冲芯片(例如缓冲芯片520、540和/或560等)的连接关系将多个非易失性存储器件NVM_ij分类。例如,连接到缓冲芯片520的非易失性存储器件可以被分类为第一组530,而与芯片使能信号CE_0和CE_1无关。存储控制器510可以将连接到缓冲芯片540的非易失性存储器件分类为第二组550。
在操作S220中,存储控制器510对缓冲芯片(例如缓冲芯片520、540和/或560等)执行数据训练。存储控制器510可以通过顺序地执行对于缓冲芯片(例如缓冲芯片520、540和/或560等)的读训练和/或写训练来完成每个组的数据训练。用于调整缓冲芯片和非易失性存储器件之间的数据线(诸如DQ_01、DQ_02、DQ_11、DQ_12、...、DQ_31和/或DQ_32)的延迟的数据训练可以基本上不执行。
以上描述了以在具有多个缓冲芯片(例如缓冲芯片520、540和560)的存储装置500中连接的缓冲芯片为单位执行数据训练的方法。由于数据训练实质上是对于多个缓冲芯片(诸如缓冲芯片520、540和560)执行,所以数据训练所花费的时间可以减少。
根据本发明构思的至少一个示例实施方式,可以显著减少非易失性存储器件的数据训练所花费的时间。因此,可以减少存储装置的引导时间(或开启时间)。
尽管已经参照各种示例实施方式描述了本发明构思,但是对于本领域技术人员将是显然的,可以进行各种改变和修改,而没有脱离本发明构思的精神和范围。因此,应当理解,以上示例实施方式不是限制性的,而是说明性的。
本申请要求于2017年9月8日在韩国知识产权局(KIPO)提交的韩国专利申请第10-2017-0115353号的优先权的权益,其全部内容通过引用结合于此。
Claims (10)
1.一种存储装置,包括:
多个非易失性存储器件,每个配置为基于数据选通信号和数据信号交换数据;和
存储控制器,配置为将所述多个非易失性存储器件分类为多个组,并以所述多个组为单位对所述多个非易失性存储器件进行训练;以及
所述存储控制器还配置为对所述多个组中的第一组中选择的第一非易失性存储器件执行数据训练,并基于对于所述第一非易失性存储器件的数据训练的结果值来设定包括在所述第一组中的第二非易失性存储器件的数据信号的延迟,
其中所述存储控制器还配置为基于与连接到所述存储控制器的所述多个非易失性存储器件相关的信号线的长度来执行所述多个组的分类。
2.根据权利要求1所述的存储装置,其中所述信号线包括用于传输各个数据信号的数据信号线。
3.一种存储装置,包括:
多个非易失性存储器件,每个配置为基于数据选通信号和数据信号交换数据;和
存储控制器,配置为将所述多个非易失性存储器件分类为多个组,并以所述多个组为单位对所述多个非易失性存储器件进行训练;以及
所述存储控制器还配置为对所述多个组中的第一组中选择的第一非易失性存储器件执行数据训练,并基于对于所述第一非易失性存储器件的数据训练的结果值来设定包括在所述第一组中的第二非易失性存储器件的数据信号的延迟,
其中所述存储控制器还配置为基于堆叠在印刷电路板上的所述多个非易失性存储器件的高度来执行所述多个组的分类。
4.一种存储装置,包括:
多个非易失性存储器件,每个配置为基于数据选通信号和数据信号交换数据;和
存储控制器,配置为将所述多个非易失性存储器件分类为多个组,并以所述多个组为单位对所述多个非易失性存储器件进行训练;以及
所述存储控制器还配置为对所述多个组中的第一组中选择的第一非易失性存储器件执行数据训练,并基于对于所述第一非易失性存储器件的数据训练的结果值来设定包括在所述第一组中的第二非易失性存储器件的数据信号的延迟,
其中所述存储控制器还配置为基于所述多个非易失性存储器件到其上安装有所述多个非易失性存储器件的印刷电路板上的所述存储控制器的相对距离来执行所述多个组的分类。
5.一种存储装置,包括:
多个非易失性存储器件,每个配置为基于数据选通信号和数据信号交换数据;
存储控制器,配置为访问所述多个非易失性存储器件;和
多个缓冲芯片,每个配置为在所述存储控制器和所述多个非易失性存储器件之间提供数据缓冲功能;以及
所述存储控制器还配置为对所述多个缓冲芯片执行数据训练并跳过所述多个非易失性存储器件的数据训练。
6.根据权利要求5所述的存储装置,其中
所述多个缓冲芯片包括通过第一数据信号线连接到所述存储控制器的第一缓冲芯片,
所述第一缓冲芯片通过第一子数据信号线与第一组非易失性存储器件连接,并通过第二子数据信号线与第二组非易失性存储器件连接。
7.根据权利要求6所述的存储装置,其中所述存储控制器还配置为使用第一芯片使能信号来激活所述第一组非易失性存储器件,并使用第二芯片使能信号来激活所述第二组非易失性存储器件。
8.一种存储装置的数据训练方法,所述存储装置包括存储控制器和多个非易失性存储器件,所述方法包括:
使用所述存储控制器基于分类标准将所述多个非易失性存储器件分类为多个组,所述多个组中的每个组包括至少两个非易失性存储器件;
使用所述存储控制器在所述多个组中的至少一个组中选择代表性非易失性存储器件;
使用所述存储控制器对于所述代表性非易失性存储器件执行数据训练;以及
基于对于所述代表性非易失性存储器件的数据训练结果,使用所述存储控制器设定包括在所述至少一个组中的非代表性非易失性存储器件的数据信号的延迟值,
其中所述分类标准包括形成在所述存储控制器与所述多个非易失性存储器件中的每个之间的数据信号线的长度和数据倾斜。
9.根据权利要求8所述的方法,其中选择所述代表性非易失性存储器件包括:
基于与所述至少两个非易失性存储器件相关的芯片地址的顺序,从包括在所述至少一个组中的所述至少两个非易失性存储器件选择所述代表性非易失性存储器件。
10.根据权利要求8所述的方法,还包括:
使用所述存储控制器,利用对于所述多个组中的每个不同的芯片使能信号来选择所述多个组。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170115353A KR102340446B1 (ko) | 2017-09-08 | 2017-09-08 | 스토리지 장치 및 그것의 데이터 트레이닝 방법 |
KR10-2017-0115353 | 2017-09-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109471593A CN109471593A (zh) | 2019-03-15 |
CN109471593B true CN109471593B (zh) | 2023-09-15 |
Family
ID=65631521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811043333.7A Active CN109471593B (zh) | 2017-09-08 | 2018-09-07 | 存储装置及其数据训练方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10403375B2 (zh) |
KR (1) | KR102340446B1 (zh) |
CN (1) | CN109471593B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200031894A (ko) * | 2018-09-17 | 2020-03-25 | 에스케이하이닉스 주식회사 | 메모리 모듈 및 이를 포함하는 메모리 시스템 |
DE112019007422T5 (de) * | 2019-05-31 | 2022-02-24 | Micron Technology, Inc. | Speicherkomponente für ein system-on-chip-gerät |
KR102689091B1 (ko) * | 2019-09-18 | 2024-07-26 | 삼성전자주식회사 | 메모리 모듈 및 그것의 동작 방법 |
KR20210034784A (ko) * | 2019-09-23 | 2021-03-31 | 삼성전자주식회사 | 솔리드 스테이트 드라이브 장치 및 그 제조 방법 |
US11315614B2 (en) | 2019-10-07 | 2022-04-26 | Samsung Electronics Co., Ltd. | Memory device including interface circuit and method of operating the same |
KR20210041357A (ko) | 2019-10-07 | 2021-04-15 | 삼성전자주식회사 | 인터페이스 회로를 포함하는 메모리 장치 및 이의 동작 방법 |
CN111506527B (zh) * | 2020-04-13 | 2022-03-18 | 飞腾信息技术有限公司 | 数字高速并行总线自适应区间校正方法、装置及存储介质 |
KR20210136203A (ko) | 2020-05-06 | 2021-11-17 | 삼성전자주식회사 | 저장 장치 및 그것의 리트레이닝 방법 |
KR20220019944A (ko) | 2020-08-11 | 2022-02-18 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
US11810638B2 (en) | 2020-09-29 | 2023-11-07 | Samsung Electronics Co., Ltd. | Memory device including multiple memory chips and data signal lines and a method of operating the memory device |
KR20220085237A (ko) | 2020-12-15 | 2022-06-22 | 삼성전자주식회사 | 스토리지 컨트롤러, 스토리지 장치 및 스토리지 장치의 동작 방법 |
US20230105936A1 (en) * | 2021-10-01 | 2023-04-06 | Western Digital Technologies, Inc. | Continuous nand data-transfer with dynamic tm |
CN114528052A (zh) * | 2022-02-24 | 2022-05-24 | 浙江大华技术股份有限公司 | 数据的加载方法、装置、存储介质及电子装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013232152A (ja) * | 2012-05-01 | 2013-11-14 | Ps4 Luxco S A R L | 制御デバイス、メモリシステムおよびメモリモジュール |
JP2013242957A (ja) * | 2012-05-17 | 2013-12-05 | Samsung Electronics Co Ltd | 磁気メモリ装置 |
CN103996415A (zh) * | 2013-01-18 | 2014-08-20 | 三星电子株式会社 | 非易失性存储器件、存储系统及相关控制方法 |
CN106997324A (zh) * | 2015-12-14 | 2017-08-01 | 三星电子株式会社 | 非易失性存储器模块、具有其的计算系统及其操作方法 |
Family Cites Families (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002082830A (ja) * | 2000-02-14 | 2002-03-22 | Mitsubishi Electric Corp | インターフェイス回路 |
US6629225B2 (en) | 2001-05-31 | 2003-09-30 | Intel Corporation | Method and apparatus for control calibration of multiple memory modules within a memory channel |
US6871305B2 (en) * | 2001-06-14 | 2005-03-22 | Silicon Motion, Inc. | Device for prolonging lifetime of nonvolatile memory |
US7301831B2 (en) | 2004-09-15 | 2007-11-27 | Rambus Inc. | Memory systems with variable delays for write data signals |
US8121237B2 (en) | 2006-03-16 | 2012-02-21 | Rambus Inc. | Signaling system with adaptive timing calibration |
WO2008086488A2 (en) | 2007-01-10 | 2008-07-17 | Mobile Semiconductor Corporation | Adaptive memory system for enhancing the performance of an external computing device |
US8571463B2 (en) * | 2007-01-30 | 2013-10-29 | Breakthrough Performancetech, Llc | Systems and methods for computerized interactive skill training |
US20090327562A1 (en) * | 2008-06-25 | 2009-12-31 | International Business Machines Corporation | Implementing Bus Interface Calibration for Enhanced Bus Interface Initialization Time |
TW201013686A (en) * | 2008-09-26 | 2010-04-01 | Asustek Comp Inc | Method of detecting memory training result applied to a computer system |
JP2010182149A (ja) * | 2009-02-06 | 2010-08-19 | Renesas Electronics Corp | メモリ制御装置、及びメモリ制御方法 |
US8515609B2 (en) * | 2009-07-06 | 2013-08-20 | Honeywell International Inc. | Flight technical control management for an unmanned aerial vehicle |
KR101626084B1 (ko) * | 2009-11-25 | 2016-06-01 | 삼성전자주식회사 | 멀티 칩 메모리 시스템 및 그것의 데이터 전송 방법 |
KR20110100467A (ko) | 2010-03-04 | 2011-09-14 | 삼성전자주식회사 | 메모리 장치를 구비하는 시스템의 데이터 트레이닝 최적화 방법 |
JP4861497B2 (ja) | 2010-05-31 | 2012-01-25 | 株式会社東芝 | データ記憶装置及びメモリ調整方法 |
US8533538B2 (en) | 2010-06-28 | 2013-09-10 | Intel Corporation | Method and apparatus for training a memory signal via an error signal of a memory |
US8356155B2 (en) * | 2010-09-13 | 2013-01-15 | Advanced Micro Devices, Inc. | Dynamic RAM Phy interface with configurable power states |
KR101791456B1 (ko) | 2010-10-11 | 2017-11-21 | 삼성전자주식회사 | 라이트 트레이닝 방법 및 이를 수행하는 반도체 장치 |
KR20120085968A (ko) * | 2011-01-25 | 2012-08-02 | 삼성전자주식회사 | 컴퓨팅 시스템의 부팅 방법 및 이를 수행하는 컴퓨팅 시스템 |
US20120284576A1 (en) * | 2011-05-06 | 2012-11-08 | Housty Oswin E | Hardware stimulus engine for memory receive and transmit signals |
US9043586B2 (en) * | 2011-12-20 | 2015-05-26 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Memory training results corresponding to a plurality of memory modules |
KR101997079B1 (ko) * | 2012-07-26 | 2019-07-08 | 삼성전자주식회사 | 가변 저항 메모리를 포함하는 저장 장치 및 그것의 동작 방법 |
US9251437B2 (en) * | 2012-12-24 | 2016-02-02 | Google Inc. | System and method for generating training cases for image classification |
US9026725B2 (en) | 2012-12-27 | 2015-05-05 | Intel Corporation | Training for command/address/control/clock delays under uncertain initial conditions and for mapping swizzled data to command/address signals |
US20180293025A1 (en) * | 2014-11-10 | 2018-10-11 | Sony Corporation | Interface circuit, memory device, information processing system, and interface circuit controlling method |
KR20160075094A (ko) * | 2014-12-19 | 2016-06-29 | 삼성전자주식회사 | 메모리 컨트롤러와 이를 포함하는 메모리 시스템 |
US9811273B1 (en) * | 2014-12-23 | 2017-11-07 | Cadence Design Systems, Inc. | System and method for reliable high-speed data transfer in multiple data rate nonvolatile memory |
US10613995B2 (en) * | 2015-03-16 | 2020-04-07 | Rambus Inc. | Training and operations with a double buffered memory topology |
US20160342861A1 (en) * | 2015-05-21 | 2016-11-24 | Mitsubishi Electric Research Laboratories, Inc. | Method for Training Classifiers to Detect Objects Represented in Images of Target Environments |
US10261697B2 (en) * | 2015-06-08 | 2019-04-16 | Samsung Electronics Co., Ltd. | Storage device and operating method of storage device |
US10152413B2 (en) * | 2015-06-08 | 2018-12-11 | Samsung Electronics Co. Ltd. | Nonvolatile memory module and operation method thereof |
KR20160146401A (ko) * | 2015-06-12 | 2016-12-21 | 에스케이하이닉스 주식회사 | 메모리 시스템 |
-
2017
- 2017-09-08 KR KR1020170115353A patent/KR102340446B1/ko active IP Right Grant
-
2018
- 2018-04-16 US US15/953,992 patent/US10403375B2/en active Active
- 2018-09-07 CN CN201811043333.7A patent/CN109471593B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013232152A (ja) * | 2012-05-01 | 2013-11-14 | Ps4 Luxco S A R L | 制御デバイス、メモリシステムおよびメモリモジュール |
JP2013242957A (ja) * | 2012-05-17 | 2013-12-05 | Samsung Electronics Co Ltd | 磁気メモリ装置 |
CN103996415A (zh) * | 2013-01-18 | 2014-08-20 | 三星电子株式会社 | 非易失性存储器件、存储系统及相关控制方法 |
CN106997324A (zh) * | 2015-12-14 | 2017-08-01 | 三星电子株式会社 | 非易失性存储器模块、具有其的计算系统及其操作方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20190028610A (ko) | 2019-03-19 |
US20190080774A1 (en) | 2019-03-14 |
US10403375B2 (en) | 2019-09-03 |
KR102340446B1 (ko) | 2021-12-21 |
CN109471593A (zh) | 2019-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109471593B (zh) | 存储装置及其数据训练方法 | |
CN108885584B (zh) | 使用主机存储器缓冲区的无序读取传输 | |
US9792998B1 (en) | System and method for erase detection before programming of a storage device | |
US10296473B2 (en) | System and method for fast execution of in-capsule commands | |
US20170322897A1 (en) | Systems and methods for processing a submission queue | |
US10528506B2 (en) | Uniform performance monitor for a data storage device and method of operation | |
US9251891B1 (en) | Devices and methods to conditionally send parameter values to non-volatile memory | |
US20160180898A1 (en) | Memory controller and memory system including the same | |
US9996486B2 (en) | Data transfer rate adjustment | |
KR102419173B1 (ko) | 저전압 감지 회로 및 이를 포함하는 메모리 장치 | |
CN105869677B (zh) | 用于内部执行读取-验证操作的存储器装置及其操作方法和存储器系统 | |
US11698748B2 (en) | Memory comprising memory controller configured to determine a logical address of a target zone system and method of operating the memory controller | |
US11055022B2 (en) | Storage system and method for early host command fetching in a low queue depth environment | |
KR20130028589A (ko) | 비휘발성 메모리 장치, 그 데이터 판독 방법 및 기록 매체 | |
US10740243B1 (en) | Storage system and method for preventing head-of-line blocking in a completion path | |
US9897650B2 (en) | Integrated circuit and storage device including integrated circuit | |
US10902928B2 (en) | Memory system, operation method thereof, and nonvolatile memory device | |
US11961561B2 (en) | Memory device and method of operating the same | |
US20200174921A1 (en) | Data storage device, operation method thereof, and storage system including the same | |
CN112988058A (zh) | 与主机设备接合的存储设备及存储设备的操作方法 | |
CN115699180A (zh) | 多平面存储器装置中的独立并行平面存取 | |
CN111145812A (zh) | 存储器装置及其操作方法 | |
CN108172261B (zh) | 由数据存储设备的解码期间的流水线延迟检测 | |
KR102569177B1 (ko) | 컨트롤러, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법 | |
US20190294542A1 (en) | Memory system and operating method thereof |
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 |