CN109101189B - 数据储存装置与数据储存方法 - Google Patents
数据储存装置与数据储存方法 Download PDFInfo
- Publication number
- CN109101189B CN109101189B CN201810007265.2A CN201810007265A CN109101189B CN 109101189 B CN109101189 B CN 109101189B CN 201810007265 A CN201810007265 A CN 201810007265A CN 109101189 B CN109101189 B CN 109101189B
- Authority
- CN
- China
- Prior art keywords
- volatile memory
- data storage
- memory controller
- mailbox
- storage device
- 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
- 238000013500 data storage Methods 0.000 title claims abstract description 115
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000015654 memory Effects 0.000 claims abstract description 310
- 230000005540 biological transmission Effects 0.000 claims description 10
- 238000003491 array Methods 0.000 claims 1
- 238000012546 transfer Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000009429 electrical wiring Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
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/0626—Reducing size or complexity of storage systems
-
- 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/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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/0604—Improving or facilitating administration, e.g. storage management
-
- 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/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- 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/0629—Configuration or reconfiguration of storage systems
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本发明涉及一种数据储存装置与数据储存方法,包括至少一非挥发式存储器以及具有两阶层架构的控制器。两阶层架构包括耦接主机的前端以及耦接非挥发式存储器的后端。控制器包括指令处理器以及至少一非挥发式存储器控制器。指令处理器配置于前端,并且与主机进行沟通,以及依据来自主机的外部指令对数据储存装置的运作进行排程。非挥发式存储器控制器,配置于后端,依据指令处理器的排程而控制非挥发式存储器。当非挥发式存储器的数量增加时,非挥发式存储器控制器的数量亦对应地增加,指令处理器的数量维持不变。
Description
技术领域
本发明有关于一种数据储存装置与数据储存方法,特别有关于一种具备可扩充性的数据储存装置与数据储存方法。
背景技术
快闪存储器为一种普遍的非挥发式数据储存装置,是以电性方式抹除与程式化。以与非门型的快闪存储器(NAND FLASH)为例,常用作记忆卡(memory card)、通用串行总线闪存装置(USB flash device)、固态硬碟(SSD)、嵌入式快闪存储器模组(eMMC)、通用快闪存储器(UFS)…等使用。
然而,当需要写入较大量的数据、或是需要高速的数据吞吐流量时,原本的数据储存装置可能会不敷使用而需要扩充。举例而言,上述扩充包括增加储存容量或是处理器等。如何快速并且有效率地进行扩充,就成为数据储存领域的一项重要课题。因此,需要一种能够快速并且方便扩充的数据储存装置与数据储存方法。
发明内容
为了解决上述问题,本发明提出一种数据储存装置与数据储存方法,能够快速并且方便扩充数据储存装置以符合数据存取的需求。
详细而言,本发明的数据储存装置包括至少一非挥发式存储器以及具有两阶层架构的控制器。两阶层架构包括耦接一主机的一前端以及耦接非挥发式存储器的一后端。本发明的数据储存装置可随着非挥发式存储器的增加而对应地进行扩充。无论数据储存装置在后端扩充与增加多少个控制单元,前端的配置皆维持不变。换言之,前端的每个元件的数量都没有增加。因此,藉由本发明所提供的两阶层架构的控制器,能够在不变更前端的情况下,依据需求增加后端的控制单元的配置。此外,每个控制单元的组成与配置都是相同的,不需要为了扩充而重新设计。因此,本发明的两阶层架构的数据储存装置与数据储存方法,提供了方便且快速的可扩充性。
本发明的一实施例提供了一种数据储存装置,包括至少一非挥发式存储器以及具有两阶层架构的控制器。两阶层架构包括耦接一主机的一前端(Front End)以及耦接非挥发式存储器的一后端(Back End)。控制器包括一指令处理器以及至少一非挥发式存储器控制器。指令处理器配置于前端,并且与主机进行沟通,以及依据来自主机的指令对数据储存装置的运作进行排程。非挥发式存储器控制器,配置于后端,依据指令处理器的排程而控制非挥发式存储器。当非挥发式存储器的数量增加时,非挥发式存储器控制器的数量亦对应地增加,指令处理器的数量维持不变。
本发明的另一实施例提供了一种数据储存方法,适用于一数据储存装置。上述数据储存装置具有至少一非挥发式存储器以及具有两阶层架构的一控制器。两阶层架构包括耦接一主机的一前端以及耦接非挥发式存储器的一后端。数据储存方法包括:与主机进行沟通,以及依据来自主机的指令对数据储存装置的运作进行排程;依据排程而控制非挥发式存储器;以及当非挥发式存储器的数量增加时,对应地增加非挥发式存储器控制器的数量,并且维持指令处理器的数量。
关于本发明其他附加的特征与优点,此领域的熟悉技术人士,在不脱离本发明的精神和范围内,当可根据本发明实施方法中所揭示的数据储存装置与数据储存方法。
附图说明
根据以下的详细说明并配合附图做完整揭露。应注意的是,根据本产业的一般作业,图示并未必按照比例绘制。事实上,可能任意的放大或缩小元件的尺寸,以做清楚的说明。
图1是显示根据本发明一实施例所述的数据储存装置与主机的示意图;
图2是显示根据本发明另一实施例所述的数据储存装置与主机的示意图;
图3是显示根据本发明一实施例所述的数据储存装置的扩充性的示意图;
图4是显示根据本发明一实施例所述的数据储存方法的流程图;
图5是显示根据本发明另一实施例所述的数据储存方法的流程图;
图6是显示根据本发明另一实施例所述的数据储存方法的流程图。
符号说明
100A、100B、100C~数据储存装置;
102~控制器;
102A-102Z~控制单元;
104~主机;
106~总线介面;
108~指令协议控制器;
110、120~126~总线控制器;
BE~后端;
BEP1-BEPZ~非挥发式存储器控制器;
CH1、CH2~通道;
CmdP~指令处理器;
FE~前端;
MB1、MB2、MB3~信箱;
NVM1-NVMZ~非挥发式存储器;
VM1-VMZ~挥发式存储器;
VMCon1、VMCon2~挥发式存储器控制器;
S400…S610~步骤。
具体实施方式
为让本发明的目的、特征和优点能更明显易懂,下文特举出本发明的具体实施例,并配合附图作详细说明如下。目的在于说明本发明的精神而非用以限定本发明的保护范围,应理解下列实施例可经由软件、硬件、固件固件、或上述任意组合来实现。
数据储存装置所采用的非挥发式存储器(non-volatile memory,简称NVM)有多种形式─例如,快闪存储器(flash memory)、磁阻式随机存取存储器(MagnetoresistiveRAM)、铁电随机存取存储器(Ferroelectric RAM)、电阻式存储器(Resistive RAM,RRAM)、自旋转移力矩随机存取存储器(Spin Transfer Torque-RAM,STT-RAM)…等,用于长时间数据保存。为了提升主机与数据储存装置之间的数据流量(throughput),本发明以两阶层架构实现数据储存装置的控制器。
图1是显示根据本发明一实施例所述的数据储存装置100与主机104的示意图。数据储存装置100符合嵌入式快闪存储器(eMMC,embedded MultiMediaCard)、通用快闪存储器(UFS,Universal Flash Storage)、NVMe(Non-Volatile Memory express,非挥发性存储器快捷),ATA(Advanced Technology Attachment,先进技术附件)、PATA(Parallel ATA)、SATA(Serial ATA),SCSI(Small Computer System Interface,小型电脑系统介面)规范。在下述说明中,将以NVMe规范为例进行说明,但不以此为限。主机104可以为手机、平板电脑、笔记型电脑、导航机或车载系统等各种电子产品。如图1所示,数据储存装置100包括一控制器102、挥发式存储器VM1、以及非挥发式存储器NVM1。详细而言,挥发式存储器VM1作为非挥发式存储器NVM1的运作所需的数据暂存空间。挥发式存储器VM1可以是内建或外接于控制器102。
在一实施例中,控制器102分为前端FE(front end)以及后端BE(back end)。前端FE负责数据储存装置100与主机104的沟通。后端BE负责控制非挥发式存储器NVM1的运作,使得主机104可以对非挥发式存储器NVM1进行数据的写入或读取。如此两阶层架构使得主机104以及数据储存装置之间的数据通讯被专责进行(前端FE),主机104与数据储存装置100之间的数据吞吐量(throughput)因而显著提升,更可降低前端FE以及后端BE除错的复杂度。
如图1所示,主机104透过总线介面106连结数据储存装置100A。经指令协议控制器108,主机104下达的符合NVMe规范的指令(以下简称为外部指令)将由指令处理器(commandprocessor)CmdP排程,再交由后端BE处理。换言之,指令处理器CmdP藉由总线介面106与主机104进行沟通,可简化且加速数据储存装置100A与主机104的沟通,指令处理器CmdP依优先权的设定或接收的先后顺序来对外部指令进行排程。
在一实施例中,总线介面106可为eMMC、UFS、PCIE介面。指令协议控制器108除了是符合NVMe规范之外,亦可以符合ATA(advanced technology attachment,先进技术附件)、PATA(Parallel ATA)、SATA(Serial ATA),SCSI(Small Computer System Interface,小型电脑系统介面SCSI)、eMMC或UFS等规范。在另一实施例中,指令协议控制器108具有加密机制,能够对主机104所传送的数据进行加密,然后再将加密后的数据藉由总线控制器110传送或分配至后端BE。举例而言,上述加密机制包括、进阶加密标准(Advanced EncryptionStandard,AES)、或是RSA加密演算法。除了加密机制之外,指令协议控制器108更具有检验机制以检验数据的正确性,上述检验机制较佳为安全杂凑机制(Secure Hash Algorithm,SHA)。
在一实施例中,前端FE所输出的外部指令传送或分配至后端BE,并交由后端BE的元件处理。如第1图所示,基于接收到的外部指令,非挥发式存储器控制器BEP1藉由挥发式存储器控制器VMCon1操作挥发式存储器VM1,以暂存非挥发式存储器控制器BEP1所收到的外部指令。然后,非挥发式存储器控制器BEP1再将外部指令转化成读写指令,并于适当的时间点依据读写指令对非挥发式存储器NVM1执行读/写的操作。在另一实施例中,非挥发式存储器控制器BEP1会直接将外部指令转化成读写指令,再将读写指令暂存于挥发式存储器控制器VMCon1所操作的挥发式存储器VM1,再于适当的时间点依据读写指令对非挥发式存储器NVM1执行读/写的操作。
本发明双阶层的控制单元具备多处理器(包括指令处理器CmdP、非挥发式存储器控制器BEP1、以及挥发式存储器控制器VMCon1)。处理器之间可采多处理器间沟通机制,例如:邮箱(mailbox)机制,以协调多处理器之间的运作。在一实施例中,指令处理器CmdP具有邮箱MB1,非挥发式存储器控制器BEP1具有邮箱MB2,邮箱MB1与邮箱MB2具有来源/目的关系或轮流为来源/目的关系。
此外,数据储存装置100A还包括多个总线控制器110、120及122。如图1所示,总线控制器110配置于前端FE,总线控制器120和122配置于后端BE。上述邮箱MB1和MB2配合总线控制器110、120及122进行数据与读写指令的传输,使的非挥发式存储器控制器BEP1、挥发式存储器控制器VMCon1与指令处理器CmdP的运作得以配合且协调。要注意的是,考量多个处理器之间固件版本同步,本发明较佳以非挥发式存储器NVM1储存各处理器的固件映像档(FW images),并由非挥发式存储器控制器BEP1先于指令处理器CmdP进行开机/初始化,并将非挥发式存储器NVM1上储存的固件映像档读出、并正确传递。
图2是显示根据本发明另一实施例所述的数据储存装置100B与主机104的示意图。由于具有二套后端BE,因此,数据储存装置100B理论上可以提供二倍于数据储存装置100A的数据储存量。详细而言,在图2所示的数据储存装置100B中,非挥发式存储器NVM1以及NVM2的储存容量为相同或等比例。图2的实施例中数据乃分流(相同或等比例)至非挥发式存储器NVM1以及NVM2中,所以,数据存取所需的时间可有效地降低,增加数据储存装置100B的整体效能,也佐证高数据吞吐量的可行。其他实施方式可以更多数量的非挥发式存储器实作。或者,单一的大尺寸非挥发式存储器也是可能实施方式。
在一种实施方式中,非挥发式存储器NVM1以及NVM2为快闪存储器。挥发式存储器VM1以及VM2可为动态随机存取存储器(DRAM)。此外,数据储存装置100B具有对应非挥发式存储器NVM1以及NVM2数量的挥发式存储器VM1以及VM2、非挥发式存储器控制器BEP1以及BEP2、挥发式存储器控制器VMCon1以及VMcon2、信箱MB2以及MB3、以及总线控制器120~126。
如图2所示,控制单元102A用以控制非挥发式存储器NVM1与挥发式存储器VM1,控制单元102B用以控制非挥发式存储器NVM2与挥发式存储器VM2。详细而言,控制单元102A包括2个总线控制器120与122、挥发式存储器控制器VMCon1、以及包含邮箱MB2的非挥发式存储器控制器BEP1。控制单元102B包括2个总线控制器124与126、挥发式存储器控制器VMCon2、以及包含邮箱MB3的非挥发式存储器控制器BEP2。
要注意的是,基于非挥发式存储器NVM1与NVM2的配置方式,控制单元102B的配置亦相同或对应于控制单元102A的配置。当非挥发式存储器NVM2的储存容量相等于非挥发式存储器NVM1的储存容量时,则控制单元102B的配置相同于控制单元102A的配置。当非挥发式存储器NVM2的储存容量大于非挥发式存储器NVM1的储存容量时,则控制单元102B可能需要配置性能更优越的控制器(亦即挥发式存储器控制器VMCon2以及非挥发式存储器控制器BEP2),以提升存取较大容量的非挥发式存储器NVM2的速度,使其存取速度与较小容量的非挥发式存储器NVM1的存取速度是一致的。
在一实施例中,非挥发式存储器NVM1的储存容量相等于非挥发式存储器NVM2的储存容量。在另一实施例中,非挥发式存储器NVM1与NVM2可作为容错式磁碟阵列(RedundantArray of Independent Disks,简称RAID),以提升数据可靠性以及增加数据储存装置100B的读写效能。在第一种RAID模式中,非挥发式存储器NVM1与NVM2为镜像对映,并且非挥发式存储器NVM1所储存的数据与非挥发式存储器NVM2所储存的数据是相同的。在第二种RAID模式中,非挥发式存储器NVM1与NVM2分别储存数据,其中,非挥发式存储器NVM2除了数据之外,还储存非挥发式存储器NVM1与NVM2的数据的RAID校验码(parity code)。另外,RAID校验码除了可固定地储存于非挥发式存储器NVM2之外,亦可轮流地储存于非挥发式存储器NVM1~2中。数据储存装置100B可提供多种RAID模式供使用者选择。
此外,本发明所提供的邮箱MB1接收/储存非挥发式存储器控制器BEP1与BEP2讯息(例如其对应存储器的剩余储存容量以及空闲程度等),邮箱MB2-3分别接收并储存指令处理器CmdP的讯息以协调前端FE以及后端BE的运作。举例而言,非挥发式存储器控制器BEP1与BEP2分别定时监测非挥发式存储器NVM1与NVM2的空闲程度,并且分别将其所监测的空闲程度即时传送至前端FE的信箱MB1。如此一来,指令处理器CmdP可以依据信箱MB1所接收/储存的讯息写入外部指令编号至后端BE的邮箱MB2或MB3以将外部指令分配给较空闲的非挥发式存储器NVM1或NVM2,避免过度干扰较忙碌的另一分挥发式存储器,使数据储存装置100能够运作顺畅。
在一实施例中,指令处理器CmdP接收到主机104所传送的外部指令后,将外部指令转换成读写指令,并将外部指令所对应的数据分割为多个子数据,并且交错地将读写指令及子数据分配至非挥发式存储器控制器BEP1~2及挥发式存储器VM1~2,分别藉由非挥发式存储器控制器BEP1~2依读写指令分别对非挥发式存储器NVM1以及NVM2进行数据读取或写入的操作。
举例而言,指令处理器CmdP将外部指令所对应的数据分割为编号01~20的20个子数据。然后,指令处理器CmdP将奇数编号的子数据透过非挥发式存储器控制器BEP1写入至非挥发式存储器NVM1,并且将偶数编号的子数据透过非挥发式存储器控制器BEP2写入至非挥发式存储器NVM2。换言之,非挥发式存储器控制器BEP1~2轮流将子数据#01、子数据#02、子数据#03等写入非挥发式存储器NVM1与NVM2。要注意的是,上述分割数量以及数据的传送或分配作为例示之用,而非用以限制本发明。本领域所述技术人员分割为其他数量的数据以及其他方式的传送亦不脱离本发明的精神与范畴。
在一实施例中,如果主机104没有指定要写入的是非挥发式存储器NVM1与NVM2,则指令处理器CmdP可依据非挥发式存储器NVM1与NVM2的状态,对外部指令进行传送或分配,以促进数据存取效率并且提升可靠度。在一实施例中,藉由本发明所提供的信箱机制,指令处理器CmdP将较多外部指令以及数据(子数据)传送或分配至至剩余储存容量较大的非挥发式存储器。举例而言,指令处理器CmdP藉由信箱机制而得知非挥发式存储器NVM1的剩余储存容量为非挥发式存储器NVM2的剩余储存容量的3倍。因此,指令处理器CmdP将20个子数据中的其中15个子数据传送或分配至非挥发式存储器NVM1,将其中5个子数据传送或分配至非挥发式存储器NVM2。也就是说,指令处理器CmdP将较多数据(子数据)分配至剩余储存容量较大的非挥发式存储器。
此外,指令处理器CmdP安排将数据交错地传送或分配至非挥发式存储器NVM1与NVM2以提升效率。换言之,指令处理器CmdP依序将子数据#01~03传送或分配至非挥发式存储器NVM1、将子数据#04传送或分配至非挥发式存储器NVM2、将子数据#05~07传送或分配至非挥发式存储器NVM1、将子数据#08传送或分配至非挥发式存储器NVM2等。要注意的是,上述剩余储存容量的差异以及数据传送或分配作为例示之用,而非用以限制本发明。本领域所述技术人员依据其他储存储存容量的差异而安排其他数据传输方式亦不脱离本发明的精神与范畴。
要注意的是,非挥发式存储器NVM1/NVM2与该非挥发式存储器控制器BEP1/BEP2之间具有多个通道(channel),并且非挥发式存储器控制器BEP1/BEP2将需要存取的数据平均分配给上述通道,以进行与非挥发式存储器NVM1/NVM2之间的数据的写入或读取。
举例而言,在上述实施例中,非挥发式存储器NVM1与非挥发式存储器控制器BEP1具有4个通道,则非挥发式存储器控制器BEP1将子数据#01~04分别透过4个通道传送或分配至非挥发式存储器NVM1。相较于将子数据#01~04全都透过1个通道进行传输,本发明的平均分配给每个通道能够提升数据的传输效率,避免延迟的发生。要注意的是,上述通道数量以及数据传送或分配作为例示之用,而非用以限制本发明。本领域所述技术人员配置其他数量的通道与数据的分配亦不脱离本发明的精神与范畴。
在一实施例中,指令处理器CmdP藉由信箱机制而得知非挥发式存储器NVM1处于忙碌状态,非挥发式存储器NVM2处于空闲状态。因此,指令处理器CmdP将较多数据传送或分配至较空闲的非挥发式存储器NVM2。同样地,指令处理器CmdP安排将数据交错地写入非挥发式存储器NVM1与NVM2以提升效率。非挥发式存储器控制器BEP1/BEP2将需要存取的数据平均分配给全部通道,以进行与非挥发式存储器NVM1与NVM2之间的数据的写入或读取。
以上实施例为主机104并未指定要写入的非挥发式存储器。在另一实施例中,指令处理器CmdP接收到主机104所传送的外部指令,并指定存取的储存空间为非挥发式存储器NVM1,则指令处理器CmdP将外部指令传送或分配至非挥发式存储器控制器BEP1以完成外部指令的执行。此外,非挥发式存储器控制器BEP1将需要存取的数据平均分配给全部通道,以提升数据的传输效率。
图3是显示根据本发明一实施例所述的数据储存装置100C。控制单元的数量对应且正比于于存储器(包括挥发式存储器与非挥发式存储器)的数量。存储器的数量越多,则控制单元的数量就越多。控制单元的数量、非挥发式存储器的数量、以及挥发式存储器的数量,三者是相等的。在一实施例中,每个控制单元的组成与配置都是相同的。
详细而言,前端FE的指令处理器CmdP主要对后端BE的多个控制单元102A~102Z进行沟通与管理,并不直接存取非挥发式存储器的数据,其中,Z为正整数。换言之,前端FE的指令处理器CmdP的功能在于有效率地处理来自于主机104的外部指令,并将外部指令及数据传送或分配给不同的控制单元102A~102Z。后端BE的多个控制单元102A~102Z用以对非挥发式存储器NVM1~Z或挥发式存储器VM1~Z进行沟通与管理,有效率地分配通道以进行数据的读取或写入。
要注意的是,前端FE的数量与后端BE的数量无直接相关,前端FE的数量较佳与总线介面106的频宽直接相关,后端BE的数量较佳与总线介面106的频宽、后端BE的频宽及非挥发式存储器的存取速度直接相关。非挥发式存储器的存取速度较慢,是数据储存装置100C的系统效能的瓶颈。前端FE的数量小于后端BE的数量,后端BE的数量较佳是前端FE的数量的偶数倍。因此,藉由本发明所提供的两阶层架构的控制器102,能够在不变更前端FE的情况下,依据使用者对于系统效能的需求来增加后端BE的控制单元的配置。此外,每个后端BE的控制单元的组成与配置基本上都是相同的,因此,后端BE的控制单元的配置可轻易完成,满足各种使用者的需求。因此,本发明的两阶层架构的数据储存装置100C与数据储存方法,提供了方便且快速的可扩充性。
在一实施例中,非挥发式存储器NVM1~Z的数量决定于数据储存装置100C所储存的数据量、数据储存装置100C以及主机104之间的流量、以及非挥发式存储器NVM1~Z与非挥发式存储器控制器BEP1~Z之间的通道数量。详细而言,非挥发式存储器NVM1~Z的数量正比于数据储存装置100C所需储存的数据量。如果数据储存装置100C所需储存的数据量越大,则非挥发式存储器NVM1~Z所需的数量就越多。
此外,非挥发式存储器NVM1~Z的数量正比于总线介面106的频宽。总线介面106的频宽越大,表示在一固定时间内数据储存装置100C需执行的外部指令愈多,所需写入或读取的数据越多,因此,数据储存装置100C需配置的非挥发式存储器NVM1~Z的数量就越多。
在另一实施例中,非挥发式存储器NVM1~Z的数量,反比于非挥发式存储器NVM1~Z与非挥发式存储器控制器BEP1~Z之间的通道数量。一般而言,数据储存装置100C以及主机104之间的流量、以及非挥发式存储器NVM1~Z与非挥发式存储器控制器BEP1~Z之间的每个通道的流量都是固定的。如果非挥发式存储器NVM1~Z与非挥发式存储器控制器BEP1~Z之间的通道越多,就会更加消耗数据储存装置100C以及主机104之间的流量,能够配置的非挥发式存储器NVM1~Z的数量就越少。
图4是显示根据本发明一实施例所述的数据储存方法的流程图。在步骤S400,配置第二信箱至非挥发式存储器控制器BEP1、第三信箱至非挥发式存储器控制器BEP2以及第一信箱至指令处理器CmdP。在步骤S402中,传送与更新非挥发式存储器控制器BEP1或非挥发式存储器控制器BEP2的状态至第一信箱。在步骤S404中,指令处理器CmdP依据第一信箱所储存的状态来传送或分配指令处理器CmdP所接收的外部指令,其中,外部指令来自于主机104,且外部指令符合NVMe规范,另外,外部指令于传送或分配之前,可伫列于指令处理器CmdP中,并依优先权的设定或接收的先后顺序来对外部指令进行排程。在步骤S406中,指令处理器CmdP交错地将外部指令传送或分配至非挥发式存储器控制器BEP1或BEP1。然后,在步骤S408,非挥发式存储器控制器BEP1或BEP2分别地将外部指令转化成读写指令。步骤S410,非挥发式存储器控制器BEP1或BEP2分别地依据读写指令对非挥发式存储器NVM1或NVM2执行存取操作,其中,非挥发式存储器控制器BEP1或BEP2较佳是以多通道方式对非挥发式存储器NVM1或NVM2执行存取操作。
图5是显示根据本发明另一实施例所述的数据储存方法的流程图。在步骤S500,配置第二信箱至非挥发式存储器控制器BEP1、第三信箱至非挥发式存储器控制器BEP2以及第一信箱至指令处理器CmdP。在步骤S502中,传送与更新非挥发式存储器控制器BEP1或非挥发式存储器控制器BEP2的状态至第一信箱。在步骤S504中,指令处理器CmdP伫列来自于主机104的外部指令,其中,指令处理器CmdP依据优先权的设定或接收的先后顺序来对伫列的外部指令进行排程。在步骤S506中,指令处理器CmdP将伫列的外部指令转化成读写指令。在步骤S508中,指令处理器CmdP依据第一信箱所储存的状态来传送或分配读写指令至非挥发式存储器控制器BEP1或BEP1。在步骤S510中,非挥发式存储器控制器BEP1或BEP2分别地依据读写指令对非挥发式存储器NVM1或NVM2执行存取操作,其中,非挥发式存储器控制器BEP1或BEP2较佳以多通道方式对非挥发式存储器NVM1或NVM2执行存取操作。
图6是显示根据本发明另一实施例所述的数据储存方法的流程图。在步骤S600,分别配置一信箱于第一非挥发式存储器控制器、第二非挥发式存储器控制器以及指令处理器CmdP。在步骤S602中,藉由信箱传送与更新第一非挥发式存储器控制器、第二非挥发式存储器控制器以及指令处理器CmdP的状态,以协调前端FE以及后段BE的运作。在步骤S604中,指令处理器CmdP接收来自主机104的外部指令,并对外部指令进行排程。
在步骤S606中,藉由第一非挥发式存储器控制器以及第二非挥发式存储器控制器的信箱MB2和MB3,分别将第一非挥发式存储器以及第二非挥发式存储器的状态传送至指令处理器CmdP的信箱MB1。在步骤S608中,依据所接收的状态判断第一非挥发式存储器以及第二非挥发式存储器的空闲状态及/或剩余储存容量。
然后,在步骤S610,指令处理器CmdP优先将外部指令或外部指令所转化的读写指令传送或分配至较空闲及/或剩余储存容量较大的第一非挥发式存储器或第二非挥发式存储器。要注意的是,图4-6所示的各种数据储存方法个别单独使用、也可以适当结合而一起使用以促进数据储存装置的扩充性以及读写效能,本发明并不加以限制。
本发明的方法,或特定型态或其部份,可以以程式码的型态存在。程式码可储存于实体媒体,如软碟、光碟片、硬碟、或是任何其他机器可读取(如电脑可读取)储存媒体,亦或不限于外在形式的电脑程式产品,其中,当程式码被机器,如电脑载入且执行时,此机器变成用以参与本发明的装置。程式码也可透过一些传送媒体,如电线或电缆、光纤、或是任何传输型态进行传送,其中,当程式码被机器,如电脑接收、载入且执行时,此机器变成用以参与本发明的装置。当在一般用途处理单元实作时,程式码结合处理单元提供一操作类似于应用特定逻辑电路的独特装置。
在本说明书以及权利要求书中的序数,例如"第一"、"第二"、"第三"等等,彼此之间并没有顺序上的先后关系,其仅用于标示分割两个具有相同名字的不同元件。本发明说明书中"耦接"一词泛指各种直接或间接的电性连接方式。本发明虽以较佳实施例揭示如上,然其并非用以限定本发明的范围,任何熟悉本技术领域者,在不脱离本发明的精神和范围内,当可做些许的更动与润饰,因此本发明的保护范围当由权利要求书界定为准。
Claims (21)
1.一种数据储存装置,包括:
至少一非挥发式存储器;以及
具有两阶层架构的控制器,其中该两阶层架构包括耦接一主机的一前端以及耦接该至少一非挥发式存储器的一后端,该控制器包括:
一指令处理器,配置于该前端,并且与该主机进行沟通,以及依据来自该主机的一外部指令对该数据储存装置的运作进行排程;以及
至少一非挥发式存储器控制器,配置于该后端,依据该指令处理器的该排程而控制该至少一非挥发式存储器,其中当该非挥发式存储器的数量增加时,该非挥发式存储器控制器的数量亦对应地增加,该指令处理器的数量维持不变;
其中,该至少一非挥发式存储器包括一第一非挥发式存储器,该至少一非挥发式存储器控制器包括一第一非挥发式存储器控制器,该指令处理器包括一第一信箱,该第一非挥发式存储器控制器包括一第二信箱,该第二信箱传送与更新该第一非挥发式存储器控制器的一第一状态至该第一信箱,并且该指令处理器依据该第一信箱的该第一状态协调该前端以及该后端的运作。
2.如权利要求1所述的数据储存装置,其特征在于,该非挥发式存储器的数量决定于该数据储存装置所储存的数据量、该数据储存装置以及该主机之间的流量、以及该至少一非挥发式存储器与该至少一非挥发式存储器控制器之间的通道数量。
3.如权利要求2所述的数据储存装置,其特征在于,该非挥发式存储器的数量正比于该数据储存装置所储存的数据量、正比于该数据储存装置以及该主机之间的流量、以及反比于该至少一非挥发式存储器与该至少一非挥发式存储器控制器之间的通道数量。
4.如权利要求1所述的数据储存装置,其特征在于,该至少一非挥发式存储器与该至少一非挥发式存储器控制器之间具有多个通道,并且该至少一非挥发式存储器控制器将需要存取的数据平均分配给该通道,以进行与该非挥发式存储器之间的数据的写入或读取。
5.如权利要求1所述的数据储存装置,其特征在于,该控制器还包括:
一指令协议控制器,配置于该前端,用以支援该数据储存装置的指令协议,以及对来自该主机的数据进行加密。
6.如权利要求1所述的数据储存装置,其特征在于,该至少一非挥发式存储器还包括一第二非挥发式存储器,该至少一非挥发式存储器控制器还包括一第二非挥发式存储器控制器,该第二非挥发式存储器控制器包括一第三信箱该第三信箱传送与更新该第二非挥发式存储器控制器的一第二状态至该第一信箱,并且该指令处理器还依据该第一信箱的该第一状态以及该第二状态协调该前端以及该后端的运作。
7.如权利要求6所述的数据储存装置,其特征在于,该指令处理器交错地将该外部指令传送或分配至该第一非挥发式存储器控制器或该第二非挥发式存储器控制器。
8.如权利要求7所述的数据储存装置,其特征在于,该第一非挥发式存储器控制器或该第二非挥发式存储器控制器分别将该外部指令转化成一读写指令,并且该第一非挥发式存储器控制器或该第二非挥发式存储器控制器分别依据该读写指令对该第一非挥发式存储器或该第二非挥发式存储器执行存取操作。
9.如权利要求6所述的数据储存装置,其特征在于,该第一非挥发式存储器控制器以及该第二非挥发式存储器控制器的该第二信息以及该第三信箱分别将该第一非挥发式存储器以及该第二非挥发式存储器的该第一状态以及该第二状态传送至该指令处理器的该第一信箱,该指令处理器的信箱依据该第一信息的该第一状态以及该第二状态判断该第一非挥发式存储器以及该第二非挥发式存储器的空闲状态,并且优先将需要写入的数据传送至较空闲的该第一非挥发式存储器或该第二非挥发式存储器。
10.如权利要求6所述的数据储存装置,其特征在于,该第一非挥发式存储器控制器以及该第二非挥发式存储器控制器的该第二信息以及该第三信箱分别将该第一非挥发式存储器以及该第二非挥发式存储器的该第一状态以及该第二状态传送至该指令处理器的该第一信箱,该指令处理器的该第一信箱依据该第一信息的该第一状态以及该第二状态判断该第一非挥发式存储器以及该第二非挥发式存储器的剩余储存容量,并且优先将需要写入的数据传送至剩余储存容量较大的该第一非挥发式存储器或该第二非挥发式存储器。
11.如权利要求6所述的数据储存装置,其特征在于,该第一非挥发式存储器与该第二非挥发式存储器为容错式磁碟阵列。
12.如权利要求11所述的数据储存装置,其特征在于,该第一非挥发式存储器与该第二非挥发式存储器为镜像,并且该第一非挥发式存储器所储存的数据相同于该第二非挥发式存储器所储存的数据。
13.一种数据储存方法,适用于一数据储存装置,该数据储存装置具有至少一非挥发式存储器以及具有两阶层架构的一控制器,该两阶层架构包括耦接一主机的一前端以及耦接该至少一非挥发式存储器的一后端,该数据储存方法包括:
藉由配置于该前端的一指令处理器,与该主机进行沟通,以及依据来自该主机的一外部指令对该数据储存装置的运作进行排程;
藉由配置于该后端的至少一非挥发式存储器控制器,依据该排程而控制该非挥发式存储器;以及
当该非挥发式存储器的数量增加时,对应地增加该非挥发式存储器控制器的数量,并且维持该指令处理器的数量;
其中,该至少一非挥发式存储器包括一第一非挥发式存储器,该至少一非挥发式存储器控制器包括一第一非挥发式存储器控制器,该指令处理器包括一第一信箱,该第一非挥发式存储器控制器包括一第二信箱,该第二信箱传送与更新该第一非挥发式存储器控制器的一第一状态至该第一信箱,并且该指令处理器依据该第一信箱的该第一状态协调该前端以及该后端的运作。
14.如权利要求13所述的数据储存方法,其特征在于,该非挥发式存储器的数量决定于该数据储存装置所储存的数据量、该数据储存装置以及该主机之间的流量、以及该非挥发式存储器与该至少一非挥发式存储器控制器之间的通道数量。
15.如权利要求13所述的数据储存方法,其特征在于,还包括:
配置多个通道于该至少一非挥发式存储器与该至少一非挥发式存储器控制器之间;以及
将需要存取的数据平均分配给该通道,以进行该非挥发式存储器控制器与该至少一非挥发式存储器之间的数据的写入或读取。
16.如权利要求13所述的数据储存方法,其特征在于,还包括:
支援该数据储存装置的指令协议,以及对来自该主机的数据进行加密。
17.如权利要求13所述的数据储存方法,其特征在于,该至少一非挥发式存储器还包括一第二非挥发式存储器及该至少一非挥发式存储器控制器还包括一第二非挥发式存储器控制器,该数据储存方法还包括:
配置一第三信箱于该第二非挥发式存储器控制器;以及
传送与更新该第二非挥发式存储器控制器的一第二状态至该第一信息,使得该指令处理器依据该第一信箱的该第一状态以及该第二状态协调该前端以及该后端的运作。
18.如权利要求17所述的数据储存方法,其特征在于,还包括:
交错地将该外部指令传送或分配至该第一非挥发式存储器控制器或该第二非挥发式存储器控制器。
19.如权利要求18所述的数据储存方法,其特征在于,还包括:
藉由该第一非挥发式存储器控制器或该第二非挥发式存储器控制器分别将该外部指令转化成一读写指令;以及
藉由该第一非挥发式存储器控制器或该第二非挥发式存储器控制器分别依据该读写指令对该第一非挥发式存储器或该第二非挥发式存储器执行存取操作。
20.如权利要求17所述的数据储存方法,其特征在于,还包括:
藉由该第一非挥发式存储器控制器以及该第二非挥发式存储器控制器的该第二信箱以及该第三信箱分别将该第一非挥发式存储器以及该第二非挥发式存储器的该第一状态以及该第二状态传送至该指令处理器的该第一信箱;
藉由该指令处理器的该第一信息依据该第一信箱的该第一状态以及该第二状态判断该第一非挥发式存储器以及该第二非挥发式存储器的空闲状态;以及
优先将需要写入的数据传送至较空闲的该第一非挥发式存储器或该第二非挥发式存储器。
21.如权利要求17所述的数据储存方法,其特征在于,还包括:
藉由该第一非挥发式存储器控制器以及该第二非挥发式存储器控制器的该第二信息以及该第三信箱分别将该第一非挥发式存储器以及该第二非挥发式存储器的该第一状态以及该第二状态传送至该指令处理器的该第一信箱;
藉由该指令处理器的该第一信箱依据该第一信箱的该第一状态以及该第二状态判断该第一非挥发式存储器以及该第二非挥发式存储器的剩余储存容量;以及
优先将需要写入的数据传送至剩余储存容量较大的该第一非挥发式存储器或该第二非挥发式存储器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106120535 | 2017-06-20 | ||
TW106120535A TWI645295B (zh) | 2017-06-20 | 2017-06-20 | 資料儲存裝置與資料儲存方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109101189A CN109101189A (zh) | 2018-12-28 |
CN109101189B true CN109101189B (zh) | 2021-12-24 |
Family
ID=64658011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810007265.2A Active CN109101189B (zh) | 2017-06-20 | 2018-01-04 | 数据储存装置与数据储存方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11099775B2 (zh) |
CN (1) | CN109101189B (zh) |
TW (1) | TWI645295B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI660269B (zh) * | 2018-01-26 | 2019-05-21 | 慧榮科技股份有限公司 | 用來於一記憶裝置中進行寫入管理之方法以及記憶裝置及其控制器 |
TWI680375B (zh) * | 2018-08-23 | 2019-12-21 | 慧榮科技股份有限公司 | 具有分散式信箱架構的多處理器系統及其處理器錯誤檢查方法 |
US11797717B2 (en) * | 2019-05-21 | 2023-10-24 | Micron Technology, Inc. | Bus encryption for non-volatile memories |
CN111008041B (zh) * | 2019-12-04 | 2022-03-11 | 北京百度网讯科技有限公司 | 用于主机的命令处理方法、装置、电子设备和存储介质 |
TWI778363B (zh) * | 2020-05-29 | 2022-09-21 | 慧榮科技股份有限公司 | 採多級架構控制器的資料儲存裝置 |
KR20220067795A (ko) * | 2020-11-18 | 2022-05-25 | 삼성전자주식회사 | 스토리지 장치 및 이를 포함하는 스토리지 시스템 |
EP4250105A1 (en) * | 2022-03-22 | 2023-09-27 | Samsung Electronics Co., Ltd. | Communication method between virtual machines using mailboxes, system-on chip performing communication method, and in-vehicle infotainment system including same |
TWI819635B (zh) | 2022-06-01 | 2023-10-21 | 瑞昱半導體股份有限公司 | 記憶體控制系統與記憶體控制方法 |
TWI826216B (zh) * | 2022-12-29 | 2023-12-11 | 瑞昱半導體股份有限公司 | 記憶體控制系統與記憶體控制方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201118883A (en) * | 2009-11-24 | 2011-06-01 | Mediatek Inc | Multi-channel memory apparatus and method for accessing a multi-channel memory apparatus |
CN105304669A (zh) * | 2014-07-28 | 2016-02-03 | 财团法人交大思源基金会 | 一种非挥发性阻变式储存电路及其控制方法 |
TW201706850A (zh) * | 2015-07-13 | 2017-02-16 | 三星電子股份有限公司 | 電腦系統以及非揮發性記憶體的操作方法 |
CN106462498A (zh) * | 2014-06-23 | 2017-02-22 | 利奇德股份有限公司 | 用于数据存储系统的模块化交换架构 |
CN106708442A (zh) * | 2016-12-30 | 2017-05-24 | 武汉安嘉颐科技有限公司 | 同时适应磁盘与固态硬盘读写特性的海量数据存储方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005309957A (ja) * | 2004-04-23 | 2005-11-04 | Denso Corp | マイクロコンピュータ、車載システム |
US20100250826A1 (en) * | 2009-03-24 | 2010-09-30 | Micron Technology, Inc. | Memory systems with a plurality of structures and methods for operating the same |
US8930585B2 (en) * | 2012-05-29 | 2015-01-06 | Mediatek Inc. | USB host controller and scheduling methods thereof |
KR101842621B1 (ko) * | 2013-09-26 | 2018-03-27 | 인텔 코포레이션 | 지속 메모리에 대한 블록 저장 애퍼처들 |
US9129665B2 (en) * | 2013-12-17 | 2015-09-08 | Sandisk Enterprise Ip Llc | Dynamic brownout adjustment in a storage device |
US9952991B1 (en) * | 2014-04-17 | 2018-04-24 | Bitmicro Networks, Inc. | Systematic method on queuing of descriptors for multiple flash intelligent DMA engine operation |
US9720860B2 (en) * | 2014-06-06 | 2017-08-01 | Toshiba Corporation | System and method for efficient processing of queued read commands in a memory system |
US10126950B2 (en) * | 2014-12-22 | 2018-11-13 | Intel Corporation | Allocating and configuring persistent memory |
US9904635B2 (en) * | 2015-08-27 | 2018-02-27 | Samsung Electronics Co., Ltd. | High performance transaction-based memory systems |
US9996436B2 (en) * | 2015-10-22 | 2018-06-12 | Netapp Inc. | Service processor traps for communicating storage controller failure |
-
2017
- 2017-06-20 TW TW106120535A patent/TWI645295B/zh active
-
2018
- 2018-01-04 CN CN201810007265.2A patent/CN109101189B/zh active Active
- 2018-03-08 US US15/915,183 patent/US11099775B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201118883A (en) * | 2009-11-24 | 2011-06-01 | Mediatek Inc | Multi-channel memory apparatus and method for accessing a multi-channel memory apparatus |
CN106462498A (zh) * | 2014-06-23 | 2017-02-22 | 利奇德股份有限公司 | 用于数据存储系统的模块化交换架构 |
CN105304669A (zh) * | 2014-07-28 | 2016-02-03 | 财团法人交大思源基金会 | 一种非挥发性阻变式储存电路及其控制方法 |
TW201706850A (zh) * | 2015-07-13 | 2017-02-16 | 三星電子股份有限公司 | 電腦系統以及非揮發性記憶體的操作方法 |
CN106708442A (zh) * | 2016-12-30 | 2017-05-24 | 武汉安嘉颐科技有限公司 | 同时适应磁盘与固态硬盘读写特性的海量数据存储方法 |
Also Published As
Publication number | Publication date |
---|---|
US11099775B2 (en) | 2021-08-24 |
TWI645295B (zh) | 2018-12-21 |
TW201905712A (zh) | 2019-02-01 |
US20180364945A1 (en) | 2018-12-20 |
CN109101189A (zh) | 2018-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109101189B (zh) | 数据储存装置与数据储存方法 | |
US10101924B2 (en) | Storage processor managing NVMe logically addressed solid state disk array | |
JP6163532B2 (ja) | メモリシステムコントローラを含む装置 | |
US10761977B2 (en) | Memory system and non-transitory computer readable recording medium | |
US8156252B2 (en) | Apparatus and method for block-based data striping to solid-state memory modules with optional data format protocol translation | |
US9335929B2 (en) | Nonvolatile semiconductor storage system | |
JP5918359B2 (ja) | メモリシステムコントローラを含む装置および関連する方法 | |
CN111258496B (zh) | 动态分配数据路径的装置和方法 | |
KR20160031099A (ko) | 저장 장치 및 그것을 포함하는 데이터 저장 시스템의 가비지 컬렉션 방법 | |
CN112035381A (zh) | 一种存储系统及存储数据处理方法 | |
KR20210122726A (ko) | 메모리제어장치 및 메모리제어장치의 동작 방법 | |
US10310758B2 (en) | Storage system and storage control method | |
US20180364946A1 (en) | Data storage device | |
US11347637B2 (en) | Memory system and non-transitory computer readable recording medium | |
JP5782556B2 (ja) | 不揮発半導体記憶システム | |
US11899947B2 (en) | Storage device, storage system, and operating method thereof capable of dynamically allocating write blocks to a stream | |
US11768628B2 (en) | Information processing apparatus | |
JP5968508B2 (ja) | 不揮発半導体記憶システム | |
KR20130084902A (ko) | 저장 장치, 저장 시스템 및 저장 장치에 대한 입출력 제어 방법 | |
JP6276208B2 (ja) | メモリシステム及びプログラム | |
KR101693966B1 (ko) | 디바이스 컨트롤러를 포함하는 저장 장치, 상기 디바이스 컨트롤러가 수행하는 입출력 분산 처리 방법 | |
JP2009080549A (ja) | ディスクアレイ制御装置およびデータ配置方法 | |
CN115756339A (zh) | 存储系统和存储盘组 | |
WO2016147351A1 (ja) | 計算機システム、方法、及びホスト計算機 |
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 |