固态储存装置及其相关计算机系统的制作方法

文档序号:18029090发布日期:2019-06-28 22:27阅读:230来源:国知局
本发明是有关于一种固态储存装置(solidstatedrive,简称ssd)及其相关计算机系统,且特别是有关于一种开放信道型固态储存装置(open-channelssd,简称ocssd)及其相关计算机系统。
背景技术
::众所周知,固态储存装置(solidstatedrive,简称ssd)已经非常广泛的应用于各种电子产品,例如sd卡、固态硬盘等等。一般来说,固态储存装置是由控制电路以及非挥发性存储器(non-volatilememory)组合而成。请参照图1,其所绘示为现有固态储存装置与计算机系统示意图。计算机系统100包括一主机110与一固态储存装置120。主机110经由一总线130连接至固态储存装置120。其中,总线130可为usb总线、sata总线、pcie总线、m.2总线或者u.2总线等等。再者,固态储存装置120内,非挥发性存储器的储存区域124中更包括一开机区域(bootarea)122,开机区域122储存操作系统(operationsystem,简称os)。如图1所示,当计算机系统100开机时,主机110中的基本输入输出系统(basicinputoutputsystem,简称bios)先检测出固态储存装置120连接于主机110。接着,操作系统即由固态储装置120内的开机区域122加载至主机110的存储器中,成为核心操作系统(kernel)112。另外,运用于该操作系统的所有驱动程序(driver)也会由固态储存装置120的储存区域124加载主机110。举例来说,视窗非挥发性存储器存取驱动程序(windowsnvmedriveraccessdriver)114也会加载至主机110的存储器。基本上,视窗非挥发性存储器存取驱动程序114是由微软公司开发,作为核心操作系统112与固态储存装置120之间沟通的接口。如图1所示,假设操作系统为微软公司的windows10。则计算机系统100开机之后,主机110的存储器中加载核心操作系统112,并成为windows10的计算机系统。另外,加载的视窗非挥发性存储器存取驱动程序114会作为核心操作系统112与固态储存装置120之间沟通的接口。因此,当计算机系统100在运作的过程,使用者要存取固态储存装置120的数据时,核心操作系统112即可利用视窗非挥发性存储器存取驱动程序114来存取固态储存装置120。当主机110欲将数据写入固态储存装置120时,视窗非挥发性存储器存取驱动程序114会发出写入指令以及对应的逻辑区块地址(logicalblockaddress)至固态储存装置120。再者,固态储存装置120中的快闪转换层(flashtranslationlayer,简称ftl)126会根据一对应表(mappingtable)将逻辑区块地址转换为实体区块地址(physicalblockaddress),写入数据进行错误校正编码(eccencode)后,将编码后的写入数据写入储存区域124中对应的实体区块地址处。当主机110欲读取固态储存装置120中的读取数据时,视窗非挥发性存储器存取驱动程序114会发出读取指令以及对应的逻辑区块地址至固态储存装置120。再者,固态储存装置120中的快闪转换层126会根据对应表将逻辑区块地址转换为实体区块地址,并获得储存于储存区域124实体区块地址处的读取数据,读取数据进行错误校正译码(eccdecode)后,将校正后的读取数据传递至主机110。众所周知,快闪转换层126为固态储存装置120中的一种固件算法,由固态储存装置120中的一控制电路(未绘示)来执行。快闪转换层126除了可进行上述逻辑区块地址与实体区块地址的转换、错误校正的编码与译码之外,也可以于适当的时机对储存区域124进行垃圾搜集(garbagecollection)动作与损耗平均(wearleveling)动作等等。在现有的固态储存装置120中,由于快闪转换层126是设计在固态储存装置120内,所以逻辑区块地址与实体区块地址的转换、垃圾搜集动作以及损耗平均动作,皆会在现有固态储存装置120内进行。换句话说,在现有的计算机系统100中,主机110无法直接要求现有固态储存装置120进行垃圾搜集动作以及损耗平均动作。由以上的说明可知,固态储存装置120的制造商需要负责开发快闪转换层126的固件算法,并运用于自家生产的固态储存装置120。当然,此快闪储存层126仅适用于自家生产的固态储存装置120,并无法运用于其他制造商所生产的固态储存装置。近来,cnex实验室(cnexlab)开发出一种开放信道型固态储存装置(open-channelssd,简称ocssd)。此开放信道型固态储存装置运用于linux的计算机系统。在linux计算机系统中,开放信道型固态储存装置中并未包含快闪转换层。而快闪转换层所执行的固件算法是由主机来进行。因此,当主机将数据写入开放信道型固态储存装置时,主机是直接发出写入指令与对应的实体区块地址。而信道型固态储存装置不需要进行任何转换,直接将写入数据储存于储存区域的实体区块地址处。同理,当主机读取开放信道型固态储存装置时,主机是直接发出读取指令与对应的实体区块地址。而信道型固态储存装置直接于储存区域的实体区块地址处取得读取数据,并传递至主机。然而,由于现今的开放信道型固态储存装置中并未包含快闪转换层,所以开放信道型固态储存装置无法安装于视窗操作系统的计算机系统。换句话说,于计算机系统开机时,基本输入输出系统根本无法检测出开放信道型固态储存装置已经连接至主机。当然,也无法利用开放信道型固态储存装置将操作系统加载计算机系统。技术实现要素:本发明有关于一种固态储存装置,连接至一主机,该固态储存装置包括:一非挥发性存储器与一第一快闪转换层。该非挥发性存储器中包括一第一储存区域与一第二储存区域,且该第一储存区域包括一开机区域,且一操作系统储存于该开机区域。该第一快闪转换层接收该主机发出的一第一指令与一第一逻辑区块地址,并将该第一逻辑区块地址转换为第一实体区块地址,该固态储存装置根据该第一实体区块地址来存取该第一储存区域。其中,该固态储存装置接收该主机发出的一第二指令与一第二实体区块地址,并根据该第二实体区块地址来存取该第二储存区域。本发明有关于一种计算机系统,包括:一固态储存装置与一主机。固态储存装置包括一非挥发性存储器与一第一快闪转换层,其中该非挥发性存储器包括一第一储存区域与一第二储存区域,且该第一储存区域包括一开机区域,且一操作系统储存于该开机区域。于该计算机系统开机时,该开机区域内的该操作系统以及该第一储存区域中的一视窗非挥发性存储器存取驱动程序与一开放通道型固态储存设备驱动器加载至该主机的一存储器。该第一快闪转换层,接收该视窗非挥发性存储器存取驱动程序发出的一第一指令与一第一逻辑区块地址,并将该第一逻辑区块地址转换为第一实体区块地址,使得该固态储存装置根据该第一实体区块地址来存取该第一储存区域。该固态储存装置接收该开放信道型固态储存设备驱动器发出的一第二指令与一第二实体区块地址,并根据该第二实体区块地址来存取该第二储存区域。为了对本发明之上述特征及其他方面有更佳的了解,下文特举实施例,并配合所附图式详细说明如下。附图说明图1为现有固态储存装置与计算机系统示意图。图2为本发明固态储存装置与计算机系统示意图。具体实施方式请参照图2,其所绘示为本发明固态储存装置及其计算机系统示意图。此固态储存装置为具备开机功能的开放信道型固态储存装置。如图2所示,计算机系统200包括一主机210与一固态储存装置220。主机210经由一总线230连接至固态储存装置220。其中,总线230可为usb总线、sata总线、pcie总线、m.2总线或者u.2总线等等。根据本发明的实施例,固态储存装置220的非挥发性存储器中规划为多个储存区域224a、224b、224c、224d。其中,储存区域224a中包括一开机区域222,开机区域222中储存操作系统(os)。举例来说,假设固态储存装置220的非挥发性存储器为1tbyte的容量。则可规划出256gbyte的容量的四个储存区域224a~224d。再者,本发明并不限定非挥发性存储器中储存区域的实际数目与容量,只要在非挥发性存储器中规划出至少二个储存区域即可实现本发明。如图2所示,当计算机系统200开机时,主机210中的基本输入输出系统(basicinputoutputsystem,简称bios)仅能检测出固态储存装置220中的储存区域224a。接着,操作系统(os)即由固态储装置220内的开机区域222加载至主机210的存储器中,成为核心操作系统(kernel)212。另外,运用于该操作系统(os)的所有驱动程序(driver)也会由固态储存装置220的储存区域224a加载至主机210。根据本发明的实施例,视窗非挥发性存储器存取驱动程序(windowsnvmedriveraccessdriver)214以及开放通道型固态储存设备驱动器(open-channelssddriver)216也会加载至主机210的存储器。基本上,视窗非挥发性存储器存取驱动程序214作为核心操作系统212与固态储存装置220之储存区域224a沟通的接口。另外,开放通道型固态储存设备驱动器216则作为核心操作系统212与固态储存装置220之其他储存区域224b~224d沟通的接口。如图2所示,假设操作系统(os)为微软公司的windows10。则计算机系统200开机之后,主机210的存储器中加载了核心操作系统212,并成为windows10的计算机系统。由于主机210中已加载开放通道型固态储存设备驱动器216,所以主机210也检测出固态储存装置220内的其他储存区域224b~224d。再者,开放通道型固态储存设备驱动器216包括一视窗非挥发性存储器转译层(windowsnvmetranslatinglayer)252、快闪转换层(ftl)254b~254d与输入输出层(i/olayer)256。根据本发明的实施例,当计算机系统200在运作的过程,使用者要存取固态储存装置220的储存区域224a之数据时,核心操作系统212即利用视窗非挥发性存储器存取驱动程序214来存取固态储存装置220的储存区域224a。另外,当用户要存取固态储存装置220的储存区域224b~224d之数据时,核心操作系统212即利用开放信道型固态储存设备驱动器216来存取固态储存装置220的储存区域224b~224d。举例来说,当主机210欲将数据写入固态储存装置220的储存区域224a时,视窗非挥发性存储器存取驱动程序214会发出写入指令以及对应的逻辑区块地址至固态储存装置220。再者,固态储存装置220中的快闪转换层(ftla)254a会根据一对应表将逻辑区块地址转换为实体区块地址,将写入数据进行错误校正编码后写入储存区域224a中对应的实体区块地址处。当主机210欲读取固态储存装置220中储存区域224a的数据时,视窗非挥发性存储器存取驱动程序214会发出读取指令以及对应的逻辑区块地址至固态储存装置220。再者,固态储存装置220中的快闪转换层254a会根据对应表将逻辑区块地址转换为实体区块地址,并获得储存于储存区域224a实体区块地址处的读取数据,经过错误校正译码后,将校正后的读取数据传递至主机210。由以上的说明可知,本发明的固态储存装置220中,储存区域224a的运作类似于现有固态储存装置,因此计算机系统200开机时,即可将开机区域222的操作系统(os)加载主机210。再者,固态储存装置220中的快闪转换层254a也可以针对储存区域224a进行垃圾搜集动作、损耗平均动作等等。根据本发明的实施例,由于主机210中已加载开放通道型固态储存设备驱动器216,所以使用者也可以存取任一储存区域224b~224d的数据。以下仅介绍存取储存区域224b的数据,其他储存区域224c、224d的存取不再赘述。当主机210欲将数据写入固态储存装置220的储存区域224b时,视窗非挥发性存储器转译层252会接收到核心操作系统212的要求(request)。因此,快闪转换层(ftlb)254b会根据一对应表将逻辑区块地址转换为实体区块地址,且对写入数据进行错误校正编码。之后,输入输出层256产生写入指令以及对应的实体区块地址至固态储存装置220,使得编码后的写入数据储存于储存区域224b中对应的实体区块地址处。当主机210读取固态储存装置220中储存区域224b的数据时,视窗非挥发性存储器转译层252会接收到核心操作系统212的要求(request)。因此,快闪转换层(ftlb)254b会根据一对应表将逻辑区块地址转换为实体区块地址。之后,输入输出层256产生读取指令以及对应的实体区块地址至固态储存装置220,获得储存于储存区域224b实体区块地址处的读取数据并传递至输入输出层256。再者,快闪转换层(ftlb)254b经过错误校正译码后,即获得译码后的读取数据。由以上的说明可知,本发明的固态储存装置220具备开放信道型固态储存装置的运作模式。也就是说,当主机210存取固态储存装置220的储存区域224b~224d时,固态储存装置220是直接接收指令以及实体区块地址。而在固态储存装置220内部并不会进行区块地址的转换,固态储存装置220直接将写入数据储存于对应储存区域224b~224d的实体区块中。或者,直接由储存区域224b~224d中的实体区块地址内获得读取数据,并传递至主机210。当然,由于多个快闪转换层ftlb254b至ftld254d皆在主机210内的开放信道型固态储存设备驱动器216。因此,主机210可以适时的对固态储存装置220的储存区域224b~224d进行垃圾搜集动作以及损耗平均动作。再者,由于开放通道型固态储存设备驱动器216为使用者安装(install)于主机210中,因此用户可以自行选定不同的固件算法的快闪转换层ftlb~ftld来管理对应的储存区域224b~224d,针对不同种类或格式的数据,利用适合的快闪转换层ftlb~ftld储存至对应的储存区域224b~224d。如此将可大幅改善固态储存装置220的效能与寿命。由以上的说明可知,本发明提出的固态储存装置中具有一非挥发性存储器与一快闪转换层。而非挥发性存储器中至少规划出一第一储存区域与一第二储存区域,且第一储存区域包括一开机区域,且一操作系统储存于开机区域。而快闪转换层接收主机发出的指令与逻辑区块地址,并将逻辑区块地址转换为实体区块地址。使得快闪转换层根据该实体区块地址来存取该第一储存区域。另外,该固态储存装置更可接收该主机发出的指令与实体区块地址,并根据该实体区块地址来直接存取该第二储存区域。再者,将本发明的固态储存装置运用于计算机系统时,即为可开机的固态储存装置。当该计算机系统开机时,开机区域内的该操作系统以及第一储存区域中的视窗非挥发性存储器存取驱动程序与开放信道型固态储存设备驱动器皆被加载该主机的存储器中。因此,快闪转换层可接收视窗非挥发性存储器存取驱动程序发出的第一指令与第一逻辑区块地址,并将第一逻辑区块地址转换为第一实体区块地址,使得快闪转换层根据第一实体区块地址来存取第一储存区域。另外,固态储存装置接收开放信道型固态储存设备驱动器发出的第二指令与第二实体区块地址,并根据第二实体区块地址来存取第二储存区域。由以上的说明可知,本发明提出的固态储存装置具备开放信道型固态储存装置的功能,其具有开机功能可运用于视窗操作系统。而主机是透过视窗非挥发性存储器存取驱动程序来存取固态储存装置中的一个储存区域。另外,主机是透过开放信道型固态储存设备驱动器来存取固态储存装置中的另一个储存区域。综上所述,虽然本发明已以实施例揭露如上,然其并非用以限定本发明。本发明所属
技术领域
:中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视后附的权利要求所界定者为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1