一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

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

2022-02-19 07:21:03 来源:中国专利 TAG:

存储装置及其操作方法
1.相关申请的交叉引用
2.本技术要求于2020年6月17日在韩国知识产权局提交的申请号为10

2020

0073795的韩国申请的优先权,该韩国申请通过引用整体并入本文。
技术领域
3.各个实施例通常涉及一种电子装置,并且更特别地,涉及一种存储装置及其操作方法。


背景技术:

4.近来,计算机环境范例已转变为能够随时随地使用计算机系统的普适计算。因此,诸如移动电话、数码相机和笔记本计算机的便携式电子装置的使用正在迅速增长。这种便携式电子装置通常使用包括存储器组件的数据存储装置。数据存储装置用于存储便携式电子装置中使用的数据。
5.这种数据存储装置的优点在于:由于没有机械驱动单元,因此稳定性和耐久性优异、信息访问速度非常快并且功耗低。具有这种优点的数据存储装置的示例包括通用串行总线(usb)存储器设备、具有各种接口的存储卡、通用闪存(ufs)装置和固态驱动器。


技术实现要素:

6.各个实施例旨在提供一种能够减少读取命令的处理延迟的存储装置及其操作方法。
7.各个实施例旨在提供一种能够准确地确定从主机接收的映射信息是否有效的存储装置及其操作方法。
8.在实施例中,一种存储装置包括:非易失性存储器,被配置为存储映射数据;以及控制器,被配置为将映射数据之中待上传的映射数据划分为多个映射单元,并且在对多个映射单元中的第一映射单元进行编码之后且在对多个映射单元之中的、在第一映射单元的编码完成之后待编码的下一映射单元进行编码之前,处理在命令队列中排队的普通读取命令。
9.在实施例中,提供一种存储装置的操作方法,该存储装置包括控制器和存储映射数据的非易失性存储器,该操作方法包括:将映射数据之中待上传的映射数据划分为多个映射单元;顺序地读取多个映射单元并对映射单元进行编码;并且在对多个映射单元中的第一映射单元进行编码之后且在对多个映射单元之中的、在第一映射单元的编码完成之后待编码的下一映射单元进行编码之前,处理在命令队列中排队的普通读取命令。
10.在实施例中,一种控制器包括:第一内核,被配置为用作与主机的接口;以及第二内核,被配置为将在非易失性存储器中存储的映射数据之中待上传的映射数据划分为多个映射单元,并且在对多个映射单元中的第一映射单元进行编码之后且在对多个映射单元之中的、在第一映射单元的编码完成之后待编码的下一映射单元进行编码之前,处理在命令
队列中排队的普通读取命令。
11.在实施例中,一种控制器的操作方法包括:对设定数量的映射单元中的每一个进行编码;标记该设定数量的映射单元之中在编码后被更新的映射单元;在对该设定数量的映射单元全部进行编码之后,向主机提供经编码的映射单元;并且不考虑从主机提供回的经标记的映射单元,其中编码包括:在控制非易失性存储器装置执行操作的同时中断编码;并且在完成操作时恢复编码。
12.根据实施例,在向主机上传与从主机接收的一个映射读取命令相对应的待上传的映射数据的进程中,处理普通读取命令,从而可以减少普通读取命令的处理延迟并且提高读取性能。
13.此外,根据实施例,利用位图来管理待传输到主机的映射单元是否已经被编码以及映射单元的映射信息是否已经改变,从而可以准确地确定从主机接收的映射单元是否有效。
附图说明
14.图1是示出根据实施例的存储装置的示图。
15.图2是示出诸如图1的非易失性存储器的非易失性存储器的示图。
16.图3是示出地址映射表的示图。
17.图4是示出诸如图1的存储器的存储器的示图。
18.图5是示出诸如图4的有效映射数据位图的有效映射数据位图的示图。
19.图6是示出根据实施例的在处理映射读取命令的同时处理普通读取命令的操作的示图。
20.图7是示出根据实施例的针对映射数据的编码的完成和映射信息改变中的每一个来改变有效映射数据位图的操作的示图。
21.图8是示出根据实施例的存储装置的操作方法的流程图。
22.图9是示出根据实施例的基于从主机接收的映射信息是否有效来处理普通读取命令的方法的流程图。
23.图10是示出根据实施例的包括固态驱动器(ssd)的数据处理系统的示图。
24.图11是示出图10所示的控制器的示图。
25.图12是示出根据实施例的包括数据存储设备的数据处理系统的示图。
26.图13是示出根据实施例的包括数据存储设备的数据处理系统的示图。
27.图14是示出根据实施例的包括数据存储设备的网络系统的示图。
28.图15是示出根据实施例的数据存储设备中包括的非易失性存储器装置的示图。
具体实施方式
29.在下文中,参照附图描述各个实施例。在整个说明书中,对“实施例”、“另一实施例”等的引用不一定仅针对一个实施例,并且对任何这种短语的不同引用不一定针对相同的实施例。
30.图1是示出根据实施例的存储装置10的配置的示图。
31.参照图1,存储装置10可以存储由诸如移动电话、mp3播放器、膝上型计算机、台式
计算机、游戏机、电视机和车载信息娱乐系统的主机(未示出)访问的数据。存储装置10也可以称为存储器系统。
32.根据连接到主机的接口协议,可以用各种类型的存储装置中的任意一种来实施存储装置10。例如,存储装置10可以被配置为固态驱动器(ssd)、mmc、emmc、rs

mmc或微型mmc形式的多媒体卡,sd、迷你sd或微型sd形式的安全数字卡,通用串行总线(usb)存储装置,通用闪存(ufs)装置,个人计算机存储卡国际协会(pcmcia)卡形式的存储装置,外围组件互连(pci)卡形式的存储装置,高速pci(pci

e)卡、紧凑型闪存(cf)卡、智能媒体卡和/或记忆棒形式的存储装置。
33.可以将存储装置10制造成各种类型的封装中的任意一种。例如,可以将存储装置10制造成堆叠封装(pop)、系统级封装(sip)、片上系统(soc)、多芯片封装(mcp)、板上芯片(cob)、晶圆级制造封装(wfp)和/或晶圆级堆叠封装(wsp)。
34.存储装置10可以包括非易失性存储器100和控制器200。
35.非易失性存储器100可以作为存储装置10的数据存储介质而进行操作。根据非易失性存储器100中的存储器单元的类型,非易失性存储器100可以被配置为诸如以下的各种类型的非易失性存储器中的任意一种:nand闪速存储器设备、nor闪速存储器设备、使用铁电电容器的铁电随机存取存储器(fram)、使用隧道磁阻(tmr:tunneling magneto

resistive)膜的磁性随机存取存储器(mram)、使用硫族化物合金的相变随机存取存储器(pram)和使用过渡金属氧化物的电阻式随机存取存储器(reram)。
36.为了清楚起见,图1将非易失性存储器100作为一个方框示出,然而,非易失性存储器100可以包括多个存储器芯片(或管芯)。本发明可以同样地应用于包括有包括多个存储器芯片的非易失性存储器100的存储装置10。
37.非易失性存储器100可以包括具有多个存储器单元的存储器单元阵列(未示出),多个存储器单元分别布置在多条位线(未示出)和多条字线(未示出)的相交区域处。存储器单元阵列可以包括多个存储块并且多个存储块中的每一个可以包括多个页面。
38.例如,存储器单元阵列的每个存储器单元可以是存储一位数据的单层单元(slc)、能够存储两位数据的多层单元(mlc)、能够存储三位数据的三层单元(tlc)或者能够存储四位数据的四层单元(qlc)。存储器单元阵列可以包括单层单元、多层单元、三层单元和四层单元中的至少一种。而且,存储器单元阵列可以包括具有二维水平结构的存储器单元或具有三维垂直结构的存储器单元。
39.图2是示出图1的非易失性存储器100的示图。
40.参照图2,非易失性存储器100可以包括多个子区域,即sub region 0至sub region k

1,其中k是大于或等于2的自然数。多个子区域中的每一个可以具有相同的大小。在另一实施例中,至少两个子区域可以具有不同的大小。多个子区域中的每一个可以包括多个存储块,多个存储块中的每一个可以包括多个页面,然而,本发明不限于该特定布置。每个子区域可以是子存储器区域。
41.图3是示出地址映射表的示图。尽管图1中未示出,但是非易失性存储器100可以包括图3所示的地址映射表。
42.参照图3,地址映射表可以包括多个映射段。多个映射段中的每一个可以分别包括i个逻辑地址和映射到i个逻辑地址的i个物理地址,其中i是大于或等于2的自然数。即,多
个映射段中的每一个可以包括i个逻辑地址到物理地址(l2p)条目。每个l2p条目可以包括一个逻辑地址和映射到该逻辑地址的一个物理地址。
43.多个映射段中的每一个中包括的逻辑地址可以以升序或降序进行排序和布置,然而,本发明不限于该特定布置。可以将映射到相应的逻辑地址的物理地址更新为指示与相应的逻辑地址有关的数据新存储的位置的新的(不同的)物理地址。此外,根据来自主机的取消映射请求,可以取消一个或多个映射的逻辑和物理地址对的映射。
44.如图3所示,多个映射段,即0至k

1,其中k是大于或等于2的自然数,可以分别对应于多个子区域,即图2所示的sub region 0至sub region k

1。例如,映射段“0”可以对应于sub region 0。因此,映射段的数量和子区域的数量可以相同。
45.此外,可以基于映射段来执行映射更新操作。映射更新操作可以包括映射信息改变操作。映射信息改变可以包括将映射到逻辑地址的物理地址改变为指示与该逻辑地址有关的数据新存储的另一位置的另一物理地址。
46.例如,当将要更新(或将要改变)与逻辑地址“lba0”相关联的映射信息时,在映射更新操作期间读取映射段“0”中包括的所有逻辑地址lba0至lbai

1并且将映射段“0”中包括的所有逻辑地址lba0至lbai

1存储在存储器220的映射更新缓冲器(未示出)中,然后可以改变“lba0”的映射信息,即物理地址pba。
47.参照回图1,控制器200可以控制存储装置10的全部操作。控制器200可以处理从主机接收的请求。控制器200可以响应于从主机接收的请求而生成控制非易失性存储器100的操作的控制信号,并且向非易失性存储器100提供所生成的控制信号。控制器200可以包括第一内核210、存储器220、第二内核230和数据传输电路240。
48.根据主机的协议,第一内核210可以用作主机和存储装置10之间的接口。因此,第一内核210可以称为协议内核。例如,第一内核210可以用以下中的任意一种与主机通信:通用串行总线(usb)、通用闪存(ufs)、多媒体卡(mmc)、并行高级技术附件(pata)、串行高级技术附件(sata)、小型计算机系统接口(scsi)、串列scsi(sas)、外围组件互连(pci)和高速pci(pci

e)协议。
49.第一内核210可以包括微控制单元(mcu)和中央处理单元(cpu)。
50.第一内核210可以接收从主机传输的命令,并且向第二内核230提供所接收的命令。例如,第一内核210可以使从主机接收的命令在存储器220的命令队列(未示出)中排队,并且向第二内核230提供指示命令排队的信息,然而,本发明不限于该特定布置。
51.第一内核210可以将从主机接收的数据(例如,写入数据)存储在存储器220的写入缓冲器(未示出)中。此外,第一内核210可以向主机传输在存储器220的读取缓冲器(未示出)中存储的数据(例如,读取数据)。
52.存储器220可以被配置为诸如静态随机存取存储器(sram)或动态随机存取存储器(dram)的随机存取存储器,然而,本发明不特别限于此。尽管图1示出控制器200中包括存储器220,但是存储器220可以设置在控制器200的外部。
53.存储器220可以电连接到第一内核210和第二内核230,并且也可以物理地连接到第一内核210和第二内核230。存储器220可以存储由第二内核230运行的固件。此外,存储器220可以存储运行固件的数据,例如,元数据。即,存储器220可以作为第二内核230的工作存储器而进行操作。
54.此外,存储器220可以被配置为包括:写入缓冲器,用于临时存储待从主机传输到非易失性存储器100的写入数据;以及读取缓冲器,用于存储待从非易失性存储器100传输到主机的读取数据。即,存储器220可以作为缓冲存储器而进行操作。下文参照图4详细描述存储器220的内部配置。
55.第二内核230可以通过运行加载在存储器220中的固件或软件来控制存储装置10的全部操作。第二内核230可以解密并且运行诸如固件或软件的代码类型的指令或算法。因此,第二内核230也可以称为闪存转换层(ftl)内核。第二内核230可以包括微控制单元(mcu)和中央处理单元(cpu)。
56.第二内核230可以基于从第一内核210提供的命令来生成控制非易失性存储器100的操作的控制信号,并且向非易失性存储器100提供所生成的控制信号。控制信号可以包括控制非易失性存储器100的命令、地址、操作控制信号等。第二内核230可以向非易失性存储器100提供在存储器220中临时存储的写入数据,或者将从非易失性存储器100接收的读取数据存储在存储器220中。
57.第二内核230可以将在非易失性存储器100中存储的待上传的映射数据划分为多个映射单元,基于映射单元从非易失性存储器100读取映射单元并对该映射单元进行编码,并且向主机传输经编码的映射单元。在对一个映射单元进行编码之后并且在从非易失性存储器100读取下一映射单元之前,第二内核230可以使在存储器220的命令队列227中排队的普通读取命令出列并且处理该普通读取命令。
58.此外,在完成对从非易失性存储器100读取的映射单元的编码之后,第二内核230可以设置有效映射数据位图226(参见图4)中与经编码的映射单元相对应的位。该设置位可以指示待上传到主机的经编码的映射单元是有效映射信息。
59.此外,当存在在对映射单元进行编码之后由于映射更新操作导致映射信息改变的经编码的映射单元时,第二内核230可以清除有效映射数据位图226中先前设置的、与经编码的映射单元相对应的位,以指示这种改变。先前设置的位的这种清除可以指示待上传到主机的经编码的映射单元是无效映射信息。
60.数据传输电路240可以根据从第一内核210提供的控制信号而进行操作。例如,数据传输电路240可以根据从第一内核210接收的(多个)控制信号,将从主机接收的写入数据存储在存储器220的写入缓冲器中。此外,数据传输电路240可以根据从第一内核210接收的(多个)控制信号,读取在存储器220的读取缓冲器中存储的读取数据并且向主机传输该读取数据。此外,数据传输电路240可以根据从第一内核210接收的控制信号,向主机传输在存储器220中存储的映射数据(例如,经编码的映射单元)。
61.图4是示出图1的存储器220的示图。
62.参照图4,根据实施例的存储器220可以划分为第一区域和第二区域,然而,本公开不限于该特定布置。例如,存储器220的第一区域可以存储由第二内核230解译和运行的软件(或固件)以及在第二内核230执行计算和处理操作时使用的元数据等。此外,存储器220的第一区域可以存储从主机接收的命令。
63.例如,在存储器220的第一区域中存储的软件可以是闪存转换层(ftl)。闪存转换层(ftl)可以由第二内核230运行,并且第二内核230可以运行闪存转换层(ftl)以控制非易失性存储器100的操作,并且向主机提供装置兼容性。通过运行闪存转换层(ftl),主机可以
识别并且使用存储装置10作为诸如硬盘的通用存储装置。
64.闪存转换层(ftl)可以存储在非易失性存储器100的系统区域(未示出)中,并且当存储装置10通电时,可以从非易失性存储器100的系统区域读取闪存转换层(ftl)并且将闪存转换层(ftl)加载在存储器220的第一区域中。此外,也可以将加载在存储器220的第一区域中的闪存转换层(ftl)加载在设置在第二内核230中或外部的专用存储器(未示出)中。
65.闪存转换层(ftl)可以包括执行各种功能的模块。例如,闪存转换层(ftl)可以包括读取模块、写入模块、垃圾收集模块、损耗均衡模块、坏块管理模块、映射模块等,然而,本发明不限于那些特定模块。例如,闪存转换层(ftl)中包括的模块中的每一个可以包括执行特定操作(或功能)的一组源代码。
66.映射模块可以控制非易失性存储器100和存储器220以执行与映射数据有关的操作。与映射数据有关的操作通常可以包括映射更新操作、映射高速缓存操作和映射上传操作,然而,本发明不限于那些特定操作。
67.映射更新操作可以包括:将在地址映射表(参见图3)中存储的l2p条目的物理地址改变为指示与该l2p条目的逻辑地址有关的数据新存储的另一位置的另一物理地址;并且将更新后的、带有改变后的物理地址的l2p条目存储在非易失性存储器100中。映射更新操作可以是改变映射信息的操作。
68.映射高速缓存操作可以包括:从非易失性存储器100读取映射段,该映射段包括与从主机与读取命令一起接收的逻辑地址相对应的l2p条目;并且将该映射段存储在存储器220的映射高速缓存缓冲器(未示出)中。可以对频繁请求读取的逻辑地址和/或最近请求读取的逻辑地址执行映射高速缓存操作。
69.映射上传操作可以包括从非易失性存储器100读取待上传的映射数据并且向主机传输该映射数据。可以基于映射单元执行从非易失性存储器100读取待上传的映射数据并且向主机传输待上传的映射数据的操作。映射上传操作可以进一步包括对待上传的映射数据进行编码的操作。可以基于映射单元来执行对待上传的映射数据进行编码的操作。
70.例如,第二内核230可以响应于从主机接收的映射读取命令而将非易失性存储器100中的待上传的映射数据划分为多个映射单元,从第一映射单元开始顺序地读取映射单元,对所读取的映射单元进行编码,然后将经编码的映射单元传输到主机。例如,对映射单元进行编码的操作可以包括将元信息(与相应的映射单元有关的信息)和循环冗余校验(crc:cyclical redundancy check)值添加到映射单元并且使映射单元随机化,然而,映射单元的编码方法不限于这些特定操作。
71.存储器220的第一区域可以包括元区域,用于驱动闪存转换层(ftl)中包括的各种模块的元数据存储在该元区域中。元区域可以存储有效映射数据位图(vmb)226,有效映射数据位图(vmb)226包括针对与子区域即sub region 0至sub region k

1中的每一个相对应的映射数据的一个或多个位。参照图6更详细地描述存储器220的第二区域内的映射加载缓冲器222和映射上传缓冲器223。
72.图5是示出有效映射数据位图(vmb)226的示图。
73.参照图5,有效映射数据位图226可以包括针对与子区域即sub region 0至sub region k

1中的每一个相对应的映射数据的一个或多个位。例如,当将与一个子区域相对应的映射数据划分为八个映射单元时,可以为sub region 0至sub region k

1中的每一个
分配八个位,并且每个位可以指示相应的映射单元是否有效。当主机请求存储装置10的操作时,在所上传的映射单元从主机提供回存储装置10时,可能需要确定上传到主机的映射单元是否有效。上传到主机的映射单元有效的事实可以指示该映射单元是最新的映射信息。
74.例如,当完成对待上传到主机的映射单元的编码时,第二内核230可以设置有效映射数据位图226的位之中的相应的位。这可以指示经编码并且待上传到主机的映射单元是最新的映射信息并且有效。
75.在实施例中,即使在响应于一个映射读取命令而完成操作之前,也可以响应于在命令队列中排队的命令而执行操作。在实施例中,在响应于映射读取命令而执行操作的同时,可以响应于命令,特别是在命令队列中排队的普通读取命令而执行操作。因此,有可能由于在响应于映射读取命令而执行操作的同时响应于排队的命令而执行操作导致待上传的经编码的映射数据内的映射信息改变,从而在编码之后映射信息改变的、待上传到主机的经编码的映射数据不再是最新的映射单元。
76.因此,当完成对待上传到主机的映射单元的编码时,第二内核230设置有效映射数据位图226的位之中与经编码的映射单元相对应的位。当存在由于映射更新操作而导致映射信息改变的经编码的映射单元时,第二内核230清除有效映射数据位图226的相应的设置位。通过这样做,可以根据在有效映射数据位图226内是设置还是清除包括此后从主机接收的映射信息的接收的映射数据的相应位,来准确地确定接收的映射信息是否有效。
77.图6是示出根据实施例的在处理一个映射读取命令的同时处理普通读取命令的操作的示图。尽管图6中未示出,但是假设已经从主机接收到映射读取命令。接收的映射读取命令可以包括关于与待上传的映射数据相对应的子区域的信息,并且第二内核230可以基于映射读取命令中包括的信息来确定待上传的映射数据。
78.参照图6,第二内核230可以将在非易失性存储器100中存储的待上传的映射数据划分为多个映射单元(

)。然后,第二内核230可以从非易失性存储器100读取多个映射单元中的第一映射单元(

)并且将所读取的第一映射单元存储在映射加载缓冲器222中(

)。
79.然后,第二内核230可以从映射加载缓冲器222读取第一映射单元并且对第一映射单元进行编码,并且设置有效映射数据位图226的与经编码的第一映射单元相对应的位(

)。此外,第二内核230可以将经编码的第一映射单元存储在映射上传缓冲器223中(

)。
80.然后,第二内核230可以使在存储器220的命令队列227中排队的命令之中的普通读取命令出列并且处理该普通读取命令(

)。当完成对普通读取命令的处理时,第二内核230可以从非易失性存储器100读取第二映射单元(

)。然后,尽管图6中未示出,但是第二内核230可以将所读取的第二映射单元存储在映射加载缓冲器222中,对第二映射单元进行编码,设置有效映射数据位图226的与经编码的第二映射单元相对应的位,并且将经编码的第二映射单元存储在映射上传缓冲器223中。然后,第二内核230可以使在命令队列227中排队的命令之中的普通读取命令出列并且处理该普通读取命令。
81.如上所述,在向主机上传与从主机接收的一个映射读取命令相对应的映射数据的同时,处理普通读取命令,从而可以减少普通读取命令的处理延迟并且提高读取性能。
82.图7是示出根据实施例的针对映射数据的编码的完成和映射信息改变中的每一个
来改变有效映射数据位图的操作的示图。例如,假设在对与sub region 0相对应的所有八个映射单元完全编码之前,映射信息已经改变。
83.参照图7,可以理解的是,第二内核230已经对八个映射单元中的第一至第四映射单元进行编码,因此待上传到主机的经编码的第一至第四映射单元现在是具有最新的映射信息的有效映射单元。
84.然后,当在完成对四个映射单元的编码之后并且在对剩余的第五至第八映射单元进行编码之前,触发映射更新操作并且经编码的第二映射单元的映射信息改变时,第二内核230清除与经编码然后经更新的第二映射单元相对应的设置位。即,这指示待上传到主机的经编码的第二映射单元已变为无效映射单元。
85.如上所述,设置与经完全编码的映射单元相对应的位,并且清除与在编码之后映射信息改变的经编码的映射单元相对应的设置位,从而可以根据此后从主机接收的映射单元在有效映射数据位图226内的相应位的状态(设置或清除),准确地确定接收的映射单元是否有效。
86.图8是示出根据实施例的存储装置的操作方法的流程图。尽管图8中未示出,但是假设已经从主机接收到映射读取命令。在参照图8描述存储装置的操作方法时,可以对其他附图进行二次参照。
87.在操作s31中,控制器200的第二内核230可以将非易失性存储器100中的待上传的映射数据划分为多个映射单元。
88.在操作s32中,第二内核230可以从非易失性存储器100读取映射单元,将所读取的映射单元存储在映射加载缓冲器222中,然后对映射单元进行编码。例如,第二内核230可以从第一映射单元开始顺序地读取多个映射单元并且对所读取的映射单元进行编码。
89.在操作s33中,第二内核230可以设置有效映射数据位图中与经编码并且待上传的相应的映射单元相对应的位。
90.在操作s34中,第二内核230可以将经编码的映射单元存储在映射上传缓冲器223中。
91.在操作s35中,第二内核230可以使普通读取命令从命令队列227出列并且处理该普通读取命令。
92.在操作s36中,第二内核230可以确定经编码的映射单元内的映射信息是否已经改变。例如,当已经对经编码的映射单元执行映射更新操作时,第二内核230可以确定经编码的映射单元内的映射信息已经改变。当经编码的映射单元内的映射信息已经改变时,进程可以进行到操作s37。当经编码的映射单元内的映射信息尚未改变时,进程可以进行到操作s38。
93.在操作s37中,第二内核230可以清除有效映射数据位图中与在编码之后映射信息已经改变的一个或多个经编码的映射单元相对应的设置位。
94.在操作s38中,第二内核230可以确定是否已经完成对待上传的映射数据的最后一个映射单元的编码。当已经完成对最后一个映射单元的编码时,进程可以进行到操作s39。当尚未完成对最后一个映射单元的编码时,进程可以进行到操作s40。
95.在操作s39中,第二内核230可以将在映射上传缓冲器223中存储的经编码的映射单元传输到主机。例如,第二内核230可以向第一内核210提供指示已经完成对待上传的所
有映射数据的编码的信息,并且第一内核210可以基于接收的信息向数据传输电路240提供控制信号。数据传输电路240可以根据接收的控制信号将在映射上传缓冲器223中存储的经编码的映射单元传输到主机。
96.在操作s40中,第二内核230可以从非易失性存储器100读取下一映射单元,将所读取的映射单元存储在映射加载缓冲器222中,对下一映射单元进行编码,然后重复操作s33至s40。
97.图9是示出根据实施例的基于从主机接收的映射信息是否有效来处理普通读取命令的方法的流程图。
98.在操作s41中,可以从主机接收普通读取命令和映射信息。映射信息可以是从存储装置10的控制器200上传的映射数据(或映射单元)。从主机接收的映射信息可以包括一个或多个映射条目,每个映射条目包括逻辑地址和映射到该逻辑地址的物理地址。
99.在操作s42中,第一内核210可以对从主机接收的映射信息进行解码。主机可以将经编码的所上传的映射单元传输到存储装置10。因此,可以由存储装置10的控制器200对经编码的映射单元进行解码。第一内核210可以向第二内核230提供经解码的映射信息和普通读取命令。
100.在操作s43中,第二内核230可以基于从第一内核210提供的经解码的映射信息,检查有效映射数据位图的位之中与经解码的映射信息相对应的位。
101.在操作s44中,第二内核230可以确定经解码的映射信息是否有效。即,第二内核230可以确定经解码的映射信息是否是最新的(最新式的)映射信息并且因此确定经解码的映射信息是否有效。当经解码的映射信息有效时,进程可以进行到操作s45,而当经解码的映射信息无效时,进程可以进行到操作s46。
102.在操作s45中,第二内核230可以基于经解码的映射信息来处理普通读取命令。
103.在操作s46中,第二内核230可以基于在存储器220的映射高速缓存缓冲器中存储的映射数据或在非易失性存储器100中存储的映射数据来处理普通读取命令。
104.图10示出根据实施例的包括固态驱动器(ssd)的数据处理系统。参照图10,数据处理系统2000可以包括主机设备2100和ssd 2200。
105.ssd 2200可以包括控制器2210、缓冲存储器装置2220、非易失性存储器装置2231至223n、电源2240、信号连接器2250以及电源连接器2260。
106.控制器2210可以控制ssd 2200的全部操作。
107.缓冲存储器装置2220可以临时存储待存储在非易失性存储器装置2231至223n中的数据。缓冲存储器装置2220可以临时存储从非易失性存储器装置2231至223n读取的数据。根据控制器2210的控制可以将在缓冲存储器装置2220中临时存储的数据传输到主机设备2100或非易失性存储器装置2231至223n。
108.非易失性存储器装置2231至223n可以用作ssd 2200的存储介质。非易失性存储器装置2231至223n可以分别通过多个通道ch1至chn联接到控制器2210。在另一实施例中,一个或多个非易失性存储器装置可以联接到相同的通道,在这种情况下,通道的数量可以比存储器装置的数量少。联接到相同的通道的非易失性存储器装置可以联接到相同的信号总线和相同的数据总线。
109.电源2240可以向ssd 2200的内部提供通过电源连接器2260输入的电力。电源2240
可以包括辅助电源2241。辅助电源2241可以提供电力,从而即使当发生突然断电时,也会使ssd 2200适当地终止。辅助电源2241可以包括能够对电源pwr进行充电的大容量电容器。
110.控制器2210可以通过信号连接器2250与主机设备2100交换信号sgl。信号sgl可以包括命令、地址、数据等。根据主机设备2100和ssd 2200之间的接口方法,信号连接器2250可以被配置为各种类型的连接器中的任意一种。
111.图11示出图10的控制器2210。参照图11,控制器2210可以包括主机接口2211、控制组件2212、随机存取存储器(ram)2213、错误校正码(ecc)组件2214和存储器接口2215。
112.主机接口2211可以根据主机设备2100的协议来在主机设备2100和ssd 2200之间执行接口连接。例如,主机接口2211可以通过以下之中的任意一种来与主机设备2100通信:安全数字协议、通用串行总线(usb)协议、多媒体卡(mmc)协议、嵌入式mmc(emmc)协议、个人计算机存储卡国际协会(pcmcia)协议、并行高级技术附件(pata)协议、串行高级技术附件(sata)协议、小型计算机系统接口(scsi)协议、串列scsi(sas)协议、外围组件互连(pci)协议、高速pci(pci

e)协议和/或通用闪存(ufs)协议。主机接口2211可以执行盘仿真功能(disc emulation function),使得主机设备2100将ssd 2200识别为例如硬盘驱动器hdd的通用数据存储设备。
113.控制组件2212可以分析和处理从主机设备2100输入的信号sgl。控制组件2212可以根据驱动sdd 2200的固件和/或软件来控制内部功能块的操作。ram 2213可以作为驱动固件或软件的工作存储器而进行操作。
114.ecc组件2214可以生成待传送到非易失性存储器装置2231至223n的数据的校验数据。所生成的校验数据可以与数据一起存储在非易失性存储器装置2231至223n中。ecc组件2214可以基于校验数据来检测从非易失性存储器装置2231至223n读取的数据的错误。当检测到的错误的数量在可校正范围内时,ecc组件2214可以校正检测到的错误。
115.存储器接口2215可以根据控制组件2212的控制向非易失性存储器装置2231至223n提供诸如命令和地址的控制信号。存储器接口2215可以根据控制组件2212的控制与非易失性存储器装置2231至223n交换数据。例如,存储器接口2215可以向非易失性存储器装置2231至223n提供在缓冲存储器装置2220中存储的数据,或者向缓冲存储器装置2220提供从非易失性存储器装置2231至223n读取的数据。
116.图12示出根据实施例的包括数据存储设备的数据处理系统。参照图12,数据处理系统3000可以包括主机设备3100和数据存储设备3200。
117.主机设备3100可以被配置为诸如印刷电路板(pcb)的板的形式。尽管图12中未示出,但是主机设备3100可以包括被配置为执行主机设备3100的功能的内部功能块。
118.主机设备3100可以包括诸如插座、插槽或连接器的连接端子3110。数据存储设备3200可以安装在连接端子3110上。
119.数据存储设备3200可以被配置为诸如pcb的板的形式。数据存储设备3200可以指的是存储器模块或存储卡。数据存储设备3200可以包括控制器3210、缓冲存储器装置3220、非易失性存储器装置3231和3232、电源管理集成电路(pmic)3240以及连接端子3250。
120.控制器3210可以控制数据存储设备3200的全部操作。控制器3210可以与图11所示的控制器2210具有相同的配置。
121.缓冲存储器装置3220可以临时存储待存储在非易失性存储器装置3231和3232中
的数据。缓冲存储器装置3220可以临时存储从非易失性存储器装置3231和3232读取的数据。根据控制器3210的控制,可以将在缓冲存储器装置3220中临时存储的数据传输到主机设备3100或非易失性存储器装置3231和3232。
122.非易失性存储器装置3231和3232可以用作数据存储设备3200的存储介质。
123.pmic 3240可以向数据存储设备3200的内部提供通过连接端子3250输入的电力。pmic 3240可以根据控制器3210的控制来管理数据存储设备3200的电力。
124.连接端子3250可以联接到主机设备3100的连接端子3110。可以通过连接端子3250在主机设备3100和数据存储设备3200之间传输诸如命令、地址和数据的信号以及电力。根据主机设备3100和数据存储设备3200之间的接口连接方法,连接端子3250可以被配置为各种形式中的任意一种。连接端子3250可以布置在数据存储设备3200的任意一侧中或任意一侧上。
125.图13示出根据实施例的包括数据存储设备的数据处理系统。参照图13,数据处理系统4000可以包括主机设备4100和数据存储设备4200。
126.主机设备4100可以被配置为诸如pcb的板的形式。尽管图13中未示出,但是主机设备4100可以包括被配置为执行主机设备4100的功能的内部功能块。
127.数据存储设备4200可以被配置为表面安装封装形式。数据存储设备4200可以通过焊球4250安装在主机设备4100上。数据存储设备4200可以包括控制器4210、缓冲存储器装置4220和非易失性存储器装置4230。
128.控制器4210可以控制数据存储设备4200的全部操作。控制器4210可以被配置为与图11所示的控制器2210具有相同的配置。
129.缓冲存储器装置4220可以临时存储待存储在非易失性存储器装置4230中的数据。缓冲存储器装置4220可以临时存储从非易失性存储器装置4230读取的数据。通过控制器4210的控制可以将在缓冲存储器装置4220中临时存储的数据传输到主机设备4100或非易失性存储器装置4230。
130.非易失性存储器装置4230可以用作数据存储设备4200的存储介质。
131.图14示出根据实施例的包括数据存储设备的网络系统5000。参照图14,网络系统5000可以包括通过网络5500联接的服务器系统5300和多个客户端系统5410至5430。
132.服务器系统5300可以响应于多个客户端系统5410至5430的请求而服务数据。例如,服务器系统5300可以存储由多个客户端系统5410至5430提供的数据。在另一示例中,服务器系统5300可以向多个客户端系统5410至5430提供数据。
133.服务器系统5300可以包括主机设备5100和数据存储设备5200。数据存储设备5200可以被配置为图1的存储装置10、图10的ssd 2200、图12的数据存储设备3200或图13的数据存储设备4200。
134.图15示出根据实施例的数据存储设备中包括的非易失性存储器装置。参照图15,非易失性存储器装置300可以包括存储器单元阵列310、行解码器320、列解码器340、数据读取/写入块330、电压生成器350和控制逻辑360。
135.存储器单元阵列310可以包括存储器单元mc,存储器单元mc布置在字线wl1至wlm和位线bl1至bln彼此相交的区域中。
136.行解码器320可以通过字线wl1至wlm来联接到存储器单元阵列310。行解码器320
可以通过控制逻辑360的控制而进行操作。行解码器320可以对从外部设备(未示出)提供的地址进行解码。行解码器320可以基于解码结果来选择并且驱动字线wl1至wlm。例如,行解码器320可以向字线wl1至wlm提供从电压生成器350提供的字线电压。
137.数据读取/写入块330可以通过位线bl1至bln来联接到存储器单元阵列310。数据读取/写入块330可以包括与位线bl1至bln相对应的读取/写入电路rw1至rwn。数据读取/写入块330可以根据控制逻辑360的控制来进行操作。根据操作模式,数据读取/写入块330可以作为写入驱动器或读出放大器而进行操作。例如,数据读取/写入块330可以作为写入驱动器而进行操作,写入驱动器被配置为在写入操作中将从外部设备提供的数据存储在存储器单元阵列310中。在另一示例中,数据读取/写入块330可以作为读出放大器而进行操作,读出放大器被配置为在读取操作中从存储器单元阵列310读取数据。
138.列解码器340可以通过控制逻辑360的控制来进行操作。列解码器340可以对从外部设备(未示出)提供的地址进行解码。列解码器340可以基于解码结果,将与位线bl1至bln相对应的数据读取/写入块330的读取/写入电路rw1至rwn和数据输入/输出(i/o)线(或数据i/o缓冲器)联接。
139.电压生成器350可以生成用于非易失性存储器装置300的内部操作的电压。可以将通过电压生成器350生成的电压施加到存储器单元阵列310的存储器单元。例如,可以将在编程操作中生成的编程电压施加到待执行编程操作的存储器单元的字线。在另一示例中,可以将在擦除操作中生成的擦除电压施加到待执行擦除操作的存储器单元的阱区。在另一示例中,可以将在读取操作中生成的读取电压施加到待执行读取操作的存储器单元的字线。
140.控制逻辑360可以基于从例如主机的外部设备提供的控制信号来控制非易失性存储器装置300的全部操作。例如,控制逻辑360可以控制非易失性存储器装置300的各种操作,诸如非易失性存储器装置300的读取操作、写入操作、擦除操作。
141.尽管已经示出和描述各个实施例,但是本领域技术人员将理解的是,所公开的实施例仅是示例。因此,本发明不限于所公开的实施例中的任意一个或不受所公开的实施例中的任意一个限制。相反,本发明涵盖落入权利要求书的范围内的所有变型和修改。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献