CN104978280B - 数据储存系统及其特定指令执行方法 - Google Patents

数据储存系统及其特定指令执行方法 Download PDF

Info

Publication number
CN104978280B
CN104978280B CN201510304023.6A CN201510304023A CN104978280B CN 104978280 B CN104978280 B CN 104978280B CN 201510304023 A CN201510304023 A CN 201510304023A CN 104978280 B CN104978280 B CN 104978280B
Authority
CN
China
Prior art keywords
data
logical sector
address
sector address
read
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
Application number
CN201510304023.6A
Other languages
English (en)
Other versions
CN104978280A (zh
Inventor
曹世强
简廷芳
张安男
邱瀚辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Chuanyuan Information Technology Co., Ltd
Original Assignee
Shanghai Chuanyuan Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Chuanyuan Information Technology Co Ltd filed Critical Shanghai Chuanyuan Information Technology Co Ltd
Priority to CN201510304023.6A priority Critical patent/CN104978280B/zh
Publication of CN104978280A publication Critical patent/CN104978280A/zh
Application granted granted Critical
Publication of CN104978280B publication Critical patent/CN104978280B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明有关于一种数据储存系统及其特定指令执行方法,适用于一内存储存系统,当内存管理器接收到一由主机系统传来的指令时,将判断该指令是一正常指令或一特定指令,如果是特定指令,则解读该特定指令的一第一个逻辑扇区地址、一欲读取数据长度及一第二个逻辑扇区地址,并将第一个逻辑扇区地址所指向一第一个实体储存地址内的已储存数据读取复制于一内存缓冲区,另外将原指向于该第一个逻辑扇区地址的第一个实体储存地址搬移指向至第二个逻辑扇区地址,以此只需一个特定指令即可完成数据读取及数据搬移的动作。

Description

数据储存系统及其特定指令执行方法
技术领域
本发明有关于一种数据储存系统及其特定指令执行方法,可应用于非挥发 性内存、固态硬盘、随身碟或磁盘阵列等数据储存装置。
背景技术
按,非挥发性内存(non-volatile memory)由于具备有无机械结构、体积小、 低噪音、抗震动、省电及读写速度快等特性,因此被普遍使用于各种数据储存 装置,例如固态硬盘(Solid State Disk;SSD)、随身碟(Flash Drive)或磁盘阵列 (Redundant Array ofIndependent Drives;RAID)。
非挥发性内存的产品特性使然,于一实体区块(Physical Block)中包括有复 数个实体页面(Physical Page),在一主机系统(例如计算机主机)通知欲将一数据 写入(write)内存时,是以实体页面或更小的扇区(sector)为单位依序写入。而已 储存有数据的实体页面则必须先经过一抹除(Erase)程序后,才可以再度被写入 其他数据,而抹除程序的最小单位为一实体区块。又,非挥发性内存对于数据 的写入或抹除都有其使用数量限制,如果写入或抹除的次数超过一上限值,则 此内存不仅会降低其运行速度,甚至会造成整个内存毁损。
请参阅图1,具有实体储存内存15的数据储存系统10中包括有一内存管 理器19,可用以将主机系统20所能沟通或存取的逻辑扇区地址(Logical Sector Address;LSA)11转换为逻辑区块及逻辑页面,并且将逻辑区块及逻辑页面对 应指向至实体储存内存15的实体区块及实体页面,实体页面具有一实体储存 地址(Physical Address)13。而逻辑扇区地址11与实体储存地址13的映像关系 将被记载于一逻辑-实体地址对应表17。
当主机系统20需要将已储存数据从一(第一个)逻辑扇区地址L_1搬移至另 一(第二个)逻辑扇区地址L_4时,主机系统20必须传送一正常指令291,例如 一搬移(move)指令,至内存管理器19,而主机系统20及/或内存管理器19则 会进行:(a).将第一个逻辑扇区地址L_1所对应指向的已储存数据D_A(存放于 实体储存内存(B1,P0))读取(read)复制至一内存缓冲区25;(b).将内存缓冲区25 内暂存的已储存数据D_A写入(write)第二个逻辑扇区地址L_4所指向的另一实 体储存内存(B0,P2)中;及(c).将逻辑扇区地址L_1的已储存数据(D_A)予以删除 (delete)或设为无效(Invalid)。
同样的数据搬移指令,于具有同位检查(parity)功能的磁盘阵列系统,例如RAID4、RAID5或RAID6,其程序则相对复杂。主机系统20欲将一已储存数 据从一逻辑扇区地址L_A中搬移(move)至另一个逻辑扇区地址L_B时,主机 系统20及/或内存管理器19会控制并进行:(a).将逻辑扇区地址L_A所指向的已 储存数据D_A(储存于实体储存地址)读取至内存缓冲区25;(b).将逻辑扇区地 址L_A相对应的磁盘阵列数据条(Data Stripe)S_A的同位检查区块数据P_A读 取至内存缓冲区25;(c).将逻辑扇区地址L_B所指向的已储存数据D_B(储存 于实体储存地址)读取至内存缓冲区25;(d).将逻辑扇区地址L_B相对应的磁 盘阵列数据条S_B的同位检查区块数据P_B读取至内存缓冲区25;(e).通过储 存数据D_A、同位检查区块数据P_A及一空白数据,计算出(例如XOR运算) 逻辑扇区地址L_A的新同位检查区块数据P_A2;(f).通过储存数据D_B、同位 检查区块数据P_B及储存数据D_A,计算出(例如XOR运算)逻辑扇区地址L_B 的新同位检查区块数据P_B2;(g).将暂存于内存缓冲区25的已储存数据D_A 写入逻辑扇区地址L_B中;(h).将暂存于内存缓冲区25的新同位检查数据P_B2 写入磁盘阵列数据条S_B的同位检查区块中;(i).将逻辑扇区地址L_A内的储 存数据D_A予以删除或设为无效;及(j).将暂存于内存缓冲区25的新同位检查 数据P_A2写入磁盘阵列数据条S_A的同位检查区块中。
常用数据储存系统10虽然可以执行读取、写入、删除及/或搬移等指令, 但每一个指令动作皆必须个别下达,如果数据搬移动作中,用户想要检视所搬 移的储存数据内容,就必须个别下达读取及搬移两个指令动作。又,常用搬移 指令后,其数据储存系统10必须进行多次的读取或写入动作,对数据储存系 统10的使用寿命或使用效率而言都存在有可改善的空间。
发明内容
本发明即提供一种数据储存系统及其特定指令执行方法,其特定指令可同 时执行数据读取及搬移动作,以此不仅有效减少实体储存内存的写入次数 (WriteReduction)、降低输出入延迟(IO Latency),也可延长数据储存系统的使 用寿命及使用效律。
本发明即提供一种数据储存系统及其特定指令执行方法,其特定指令适用 于具有同位检查功能磁盘阵列中,以此不仅可有效降低指令的下达次数及数据 写入次数,又可提升磁盘阵列更新数据同位检查的效率。
为达成上述目的,本发明采用以下技术方案:
一种数据储存系统,包括:一个或多个实体储存内存,每一个实体储存内 存可区分成多个实体储存单元,而每一实体储存单元具有一实体储存地址,部 分实体储存单元内储存有一已储存数据;多个逻辑扇区地址,部分逻辑扇区地 址通过一逻辑-实体地址对照表指向相对应的其中一实体储存地址;及一内存 管理器,电性连接一主机系统、该实体储存内存及该逻辑扇区地址,可接收来 自于主机系统的一正常指令、一特定指令、或一正常指令及一特定指令,该特 定指令包括有其中一第一个逻辑扇区地址、一欲读取数据长度及一第二逻辑扇 区地址;其中,该内存管理器可根据该特定指令而将对应于该第一个逻辑扇区 地址及该欲读取数据长度所指向的一第一个实体储存地址内的该已储存数据 读取复制于一内存缓冲区,并将原指向于该第一个逻辑扇区地址的该实体储存 地址搬移(系指修改成)指向至该第二个逻辑扇区地址。
又,为达上述目的,本发明提供一种特定指令执行方法,适用于一数据储 存系统,该数据储存系统包括有至少一实体储存内存、多个逻辑扇区地址及一 内存管理器,该实体储存内存分成有多个实体储存单元,而每一个实体储存单 元具有一实体储存地址,部分实体储存单元内则储存有一已储存数据,部分逻 辑扇区地址可通过一逻辑-实体地址对照表而指向相对应的一实体储存地址, 而该内存管理器可分别电性连接该实体储存内存及该逻辑扇区地址区,该特定 指令执行方法包括;内存管理器接收一指令,判断该指令是一正常指令或一特 定指令:若为该特定指令,则解读该特定指令内的一第一个逻辑扇区地址、一 欲读取数据长度及一第二个逻辑扇区地址,将该第一个逻辑扇区地址所指向该 实体储存地址内的已储存数据读取复制于一内存缓冲区;及将原指向于该第一 个逻辑扇区地址的实体储存地址搬移(系指修改成)指向至该第二个逻辑扇区 地址。
又,为达上述目的,本发明提供一种特定指令执行方法,适用于一磁盘阵 列系统,该磁盘阵列系统为一日志模式或一写时复制模式,该磁盘阵列系统包 括有至少一实体储存内存、多个逻辑扇区地址及一内存管理器,该实体储存内 存分成多个实体储存单元,而每一个实体储存单元具有一实体储存地址,部分 实体储存单元内储存有一已储存数据,部分逻辑扇区地址可通过一逻辑-实体 地址对照表而指向相对应的其中一实体储存地址,而该内存管理器可分别电性 连接实体储存内存及逻辑扇区地址区,该特定指令执行方法包括:内存管理器 接收一指令,判断该指令是一正常指令或一特定指令;若为该特定指令,则解 读该特定指令内的一第一个逻辑扇区地址、一欲读取数据长度及一第二个逻辑 扇区地址,将该第一个逻辑扇区地址所指向该实体储存地址内的该已储存数据 读取复制于一内存缓冲区;将原指向于该第一个逻辑扇区地址的实体储存地址 搬移指向至该第二个逻辑扇区地址;将第二个逻辑扇区地址相对应的一第二个 磁盘阵列数据条的一第二个同位检查区块数据读取至该内存缓冲区;通过一空 白数据、该第二个同位检查区块数据及该已储存数据,计算出第二个逻辑扇区 地址的一第二个新同位检查区块数据;及将该第二个新同位检查区块数据写入 该第二个磁盘阵列数据条的该第二个同位检查区块中。
本发明一实施例中,其中该已储存数据搬移至该第二个逻辑扇区地址是经 由该内存管理器修改该逻辑-实体地址对照表,将储存该已储存数据的实体储 存地址所指向的逻辑扇区地址由该第一个逻辑扇区地址修改为该第二个逻辑 扇区地址。
本发明一实施例中,其中该正常指令包括有一读取指令,读取指令内包括 有一欲读取数据起始地址及该欲读取数据长度,而该特定指令即是将该欲读取 数据起始地址修改为一特定指令标识符、该第一个逻辑扇区地址及该第二个逻 辑扇区地址的组合。
本发明一实施例中,其中该正常指令包括有一读取指令,读取指令内包括 有一欲读取数据起始地址及该欲读取数据长度,而该特定指令即是将该欲读取 数据起始地址修改为一特定指令标识符及该第一个逻辑扇区地址的组合,而该 特定指令内的该第二个逻辑扇区地址则存放于该内存缓冲区。
本发明一实施例中,其中该特定指令为一厂商特定指令,包括该第一个逻 辑扇区地址、该欲读取数据长度及该第二个逻辑扇区地址。
本发明一实施例中,其中该内存缓冲区可设于该数据储存系统或该主机系 统。
附图说明
图1是常用数据储存系统与主机系统的构造示意图。
图2是本发明数据储存系统与主机系统的构造示意图。
图3是本发明数据储存系统执行指令时一实施例的动作流程图。
图4是本发明数据储存系统执行指令时又一实施例的动作流程图。
图5是本发明特定指令一实施例的构造示意图。
图6是本发明特定指令又一实施例的构造示意图。
图7是本发明特定指令又一实施例的构造示意图。
具体实施方式
请参阅图2,为本发明数据储存系统与一主机系统的构造示意图。如图所示,本发明适用于一数据储存装置,例如固态硬盘(Solid State Disk;SSD)、随 身碟(FlashDrive)或磁盘阵列(Redundant Array of Independent Drives;RAID)。 具有实体储存内存(非挥发性内存)35的数据储存系统30中包括有一内存管理 器39,电性连接一主机系统40及至少一实体储存内存35,可用以将主机系统 40所能沟通或存取的逻辑扇区地址(Logical Sector Address;LSA)31转换为逻 辑区块及逻辑页面,并且将逻辑区块及逻辑页面对应指向至实体储存内存35 的实体区块及实体页面,实体页面即可构成一实体储存单元351,每一实体储 存单元351具有一实体储存地址(Physical Address)33。而逻辑扇区地址31与实 体储存地址33的映像关系即被记载于一逻辑-实体地址对应表37。内存管理器39可连接并管理逻辑扇区地址31、实体储存地址33、实体储存内存35及逻辑 -实体地址对照表37。一内存缓冲区45设于主机系统40内及/或数据储存系统 30内,连接内存管理器39。
本发明主要是设计一新颖的特定指令495,为一读取-搬移指令。主机系统 40可因应用户的需求而对数据储存系统30下达至少一正常指令491及/或一特 定指令495,而正常指令491及/或特定指令495将被传送至内存管理器39, 内存管理器39即会根据所接到的指令以控制数据储存系统30进行读取、写入、 删除或搬移等正常指令程序或可自动执行数据读取及数据搬移的特定指令程 序。
请参阅图3,为本发明数据储存系统执行指令时一实施例的动作流程图。 请同时参阅图2,当主机系统40下达至少一指令传送给数据储存系统30的内 存管理器39,如步骤S301。内存管理器39即会判断此下达指令是否为一特定 指令495,如步骤S303,如果是特定指令495,则继续进行步骤S305;如果不 是特定指令495,而是一正常指令491,则进行步骤S315。
步骤S305,表示所接收的指令为一读取-搬移的特定指令495,通过主机 系统40及/或内存管理器39而将所欲读取并已储存于指定(第一个)逻辑扇区地 址L_A所指向的已储存数据D_A(储存于实体储存单元(B1,P40)
步骤S307,将所读取复制于内存缓冲区45内的已储存数据D_A搬移至新 的(第二个)逻辑扇区地址L_B。换句话说,新的逻辑扇区地址L_B可指向储存 数据D_A原本储存的实体储存地址(B1,P0)。
步骤S309,内存管理器39通知主机系统40已执行完毕所下达的指令。
步骤S315,表示主机系统40所传送的指令为一正常指令,例如一控制、 读取、写入、删除或搬移指令。则主机系统40及/或内存管理器39即可控制 数据储存系统30进行相对应的控制、读取、写入、删除或搬移程序。而控制、 读取、写入、删除或搬移为一般内存正常程序,在此不再赘述。
另外,请参阅图4,为本发明数据储存系统执行指令时又一实施例的动作 流程图。与前述图3所示实施例不同之处即在于,步骤S305将与步骤S307的 次序对调。由于本发明的特定指令495可自动执行数据读取及数据搬移动作, 并不需要个别去下达数据读取及数据搬移两个指令,因此数据读取与数据搬移 的先后次序并不重要。例如在此实施例中,步骤S303后,接续进行的步骤S405, 是将所欲读取的已储存数据D_A搬移至新的逻辑扇区地址L_B。换句话说, 新的逻辑扇区地址L_B可指向已储存数据D_A原本储存的实体储存地址(B1,P0)。接续再进行步骤S407,是将所欲读取的已储存数据D_A读取复制于 内存缓冲区25。
虽然在图2中,只呈现出一实体储存内存35,但本发明所揭露的技术亦可 同时适用于多个实体储存内存35,例如磁盘阵列系统。
本发明主要是设计并定义一特定指令495,可自动执行数据读取及数据搬 移动作,因此,如何让数据储存系统30可判断所接收的指令是否为一特定指 令495或一正常指令491即为重要。在本发明一实施例中,如图5所示,主要 是通过修改读取指令中的起始地址以成为一特定指令。一般读取指令中包括有 一欲读取数据起始地址(4951)及一欲读取数据长度4955。本发明可以将一特定 指令标识符(signature)、(旧)第一个逻辑扇区地址(L_A)及(新)第二个逻辑扇区 (L_B)地址串接组合后,填入原本的欲读取数据起始地址4951中,再加上原本 的欲读取数据长度4955,以此以组合成一特定指令495。换句话说,此实施例 的特定指令495将包括特定指令标识符、第一个逻辑扇区地址(L_A)、第二个 逻辑扇区地址(L_B)及欲读取数据长度4955。数据储存系统30接收到主机系统 40所下达的指令后,首先将比对欲读取数据起始地址4951是否包括有特定指令标识符?如果包括特定指令标识符,则代表是一特定指令495,必须执行数 据读取及数据搬移动作。将第一个逻辑扇区地址(L_A)及所欲读取数据长度 4955所指向实体储存单元351内储存的已储存数据(D_A)读取复制至内存缓冲 区45,并把该已储存数据D_A所在的实体储存地址(B1,P0)搬移(系指修改成) 指向至第二个逻辑扇区地址(L_B)。
又,请参阅图6,是本发明特定指令又一实施例的构造示意图。于此实施 例中,主要是修改读取指令的欲读取数据起始地址4951及利用内存缓冲区45 的部分空间,以成为一特定指令495。本发明可以将一特定指令标识符(signature)、(第一个)旧逻辑扇区地址(L_A)串接后,填入原本读取指令的欲读 取数据启始地址4951中,并把(第二个)新逻辑扇区地址(L_B)填入内存缓冲区 45的指定位置(例如第1个地址),如此即可成为一特定指令495。换句话说, 此实施例的特定指令495将包括特定指令标识符、第一个逻辑扇区地址(L_A) 及欲读取数据长度4955,而第二个逻辑扇区地址(L_B)则被另外存放于内存缓 冲区45。数据储存系统30接收到主机系统40所下达的指令后,首先将比对欲 读取数据起始地址4951是否包括有特定指令标识符?如果包括特定指令标识 符,则代表是一特定指令495,必须执行数据读取及数据搬移动作。将第一个 逻辑扇区地址(L_A)及所欲读取数据长度4955所指向实体储存单元351内储存 的已储存数据(D_A)读取复制至内存缓冲区45,并把该已储存数据D_A所在的 实体储存地址(B1,P0)搬移(系指修改成)指向至第二个逻辑扇区地址(L_B)。
又,请参阅图7,是本发明特定指令又一实施例的构造示意图。于此实施 例中,主要是创立另一个全新而不受现有内存指令规格限制的特定指令495, 可以称为一厂商特定指令(Vendor Specific Command)。此厂商特定指令495直 接包括有(旧)第一个逻辑扇区地址(L_A)、(新)第二个逻辑扇区地址(L_B)及所 欲读取数据长度,不会出现如先前实施例所使用的特定指令标识符。数据储存 系统30接收到主机系统40所下达的指令后,直接判断出是一厂商特定指令 495,则必须执行数据读取及数据搬移动作。将第一个逻辑扇区地址(L_A)及所 欲读取数据长度4955所指向实体储存单元351内储存的已储存数据(D_A)读取复制至内存缓冲区45,并把该已储存数据D_A所在的实体储存地址(B1,P0)搬 移(系指修改成)指向至第二个逻辑扇区地址(L_B)。
由于本发明的特定指令495可自动执行数据读取及数据搬移程序,所以当 用户有实际需求要读取实体储存内存35内的已储存数据(D_A),并需同时搬移 已储存数据(D_A)至另一个新的逻辑扇区地址(L_B)时,只要下达一个特定指令 495即可完成。相对于常用数据储存系统必须接收两个单独的读取指令及搬移 指令后,再去执行读取与搬移两个程序,或者是接收三个单独的读取、写入及 删除指令后,再去执行读取、写入及删除程序,本发明只需接收一个特定指令 后,即可自动执行读取及搬移两个程序,因此,本发明可以减少输出入延迟及 降低数据储存系统的写入次数,以提高数据储存系统的使用效率及使用寿命。
本发明数据储存系统及其特定指令执行方法亦适用于具有同位检查(parity) 功能的磁盘阵列系统,例如RAID4、RAID5或RAID6。当主机系统40欲读取 第一个逻辑扇区地址L_A所对应指向的已储存数据D_A,并将已储存数据D_A 中搬移(move)至另一第二个逻辑扇区地址L_B时,只要下达本发明的读取-搬 移的特定指令495。内存管理器39接收到一指令实,会判断该指令是一正常指 令或一特定指令,内存管理器39会控制并进行:(a).特定指令495已具有第一个 逻辑扇区地址L_A、欲读取数据长度、第二个逻辑扇区地址L_B数据,因此, 将已储存数据D_A读取复制于内存缓冲区45,且将原先第一个逻辑扇区地址 L_A所指向的实体储存地址(B1,P0)改由(搬移)第二个辑扇区地址L_B所指向 之;(b).将第一个逻辑扇区地址L_A所对应的磁盘阵列数据条(Data Stripe)S_A 的同位检查区块数据P_A读取至内存缓冲区45;(c).将第二个逻辑扇区地址 L_B的储存数据D_B读取至内存缓冲区45;(d).将第二个逻辑扇区地址L_B 相对应的磁盘阵列数据条S_B的同位检查区块数据P_B读取至内存缓冲区45; (e).通过储存数据D_A、同位检查区块数据P_A及一空白数据,计算出(例如 XOR运算)第一个逻辑扇区地址L_A的新同位检查区块数据P_A2;(f).通过储 存数据D_B、同位检查区块数据P_B及储存数据D_A,计算出(例如XOR运 算)逻辑扇区地址L_B的新同位检查区块数据P_B2;(g).将暂存于内存缓冲区 45的新同位检查数据P_B2写入磁盘阵列数据条S_B的同位检查区块中;(g). 将逻辑扇区地址L_A内的储存数据D_A予以删除或设为无效;及(i).将暂存于 内存缓冲区45的新同位检查数据P_A2写入磁盘阵列数据条S_A的同位检查 区块中。
相较于常用具有同位检查(parity)功能的磁盘阵列系统的读取指令及搬移 指令,本发明除了可减少一次读取指令下达外,也可以减少一次数据的写入 (D_A写入L_B),因此,本发明可以减少输出入延迟及降低数据储存系统的写 入次数,以提高数据储存系统的使用效率及使用寿命。
本发明尤其适用于磁盘阵列为植基为日志(Log-Based)、写时复制(Copy onWrite;COW)、或一般磁盘阵列搭配日志或写时复制文件系统。这些文件系统 具有数据搬移的目的地址(第二个逻辑扇区地址L_B)为空白区块,且来源地址 (第一个逻辑扇区地址L_A)于数据搬移后将被视无效。当主机系统40欲读取第 一个逻辑扇区地址L_A所对应的已储存数据D_A,并将已储存数据D_A中搬 移(move)至另一第二个逻辑扇区地址L_B时,只要下达本发明的读取-搬移的 特定指令495,主机系统40及/或内存管理器39会控制并进行:(a).特定指令495 已具有第一个逻辑扇区地址L_A、欲读取数据长度、第二个逻辑扇区地址L_B2 等数据,因此将已储存数据D_A读取复制于内存缓冲区45,且将原先第一个 逻辑扇区地址L_A所指向的实体储存地址(B1,P0)改由(搬移)第二个辑扇区地 址L_B所指向;(b).将逻辑扇区地址L_B相对应的磁盘阵列数据条S_B的同位 检查区块数据P_B读取至内存缓冲区45;(c).藉由储存数据D_B(空白数据)、 同位检查区块数据P_B及储存数据D_A,计算出(例如XOR运算)第二个逻辑 扇区地址L_B的新同位检查区块数据P_B2;(d).将暂存于内存缓冲区45的新 同位检查数据P_B2写入磁盘阵列数据条S_B的同位检查区块中。
相较于常用具有同位检查(parity)功能的磁盘阵列系统的读取指令及搬移 指令,本发明除了可减少一次读取指令下达外,也可以不必执行以下四个动 作:(b).读取复制L_A的同位检查区块数据P_A、(c).读取复制L_B所对应数据 D_B、(e).运算出L_A的新同位检查区块数据P_A2、及(j).将L_A所指向的实 体储存地址设为无效。以此可节省两次读取(P_A及D_B)、两次写入(D_A及 P_A2)、一次删除(L_A)及一次运算(P_A2)等六个步骤。因此,本发明可以减少 输出入延迟及降低数据储存系统的写入次数,以提高数据储存系统的使用效率 及使用寿命。
以上所述者,仅为本发明的一较佳实施例而已,并非用来限定本发明实施 的范围,即凡依本发明权利要求范围所述的形状、构造、特征及精神所为的均 等变化与修饰,均应包括于本发明的权利要求范围内。

Claims (12)

1.数据储存系统,其特征在于,包括:
一个或多个实体储存内存,每一个实体储存内存区分成多个实体储存单元,而每一实体储存单元具有一实体储存地址,一实体页面构成该实体储存单元,部分实体储存单元内储存有一已储存数据;
多个逻辑扇区地址,部分逻辑扇区地址通过一逻辑-实体地址对照表而指向相对应的其中一实体储存地址;及
一内存管理器,电性连接一主机系统、该实体储存内存及该逻辑扇区地址,接收来自于主机系统的一指令,该指令包括一正常指令或一特定指令,该特定指令包括一特定指令标识符、一第一个逻辑扇区地址、一欲读取数据长度及一第二个逻辑扇区地址;
其中,该内存管理器判断接收的该指令是否包括该特定指令标识符,如果包括该特定指令标识符,则代表接收的该指令为该特定指令,若为该特定指令,该内存管理器接收一读取-搬移的特定指令,根据该读取-搬移的特定指令而将对应于该第一个逻辑扇区地址及该欲读取数据长度所指向的一第一个实体储存地址内的该已储存数据读取复制于一内存缓冲区,并将原指向于该第一个逻辑扇区地址的该实体储存地址搬移指向至该第二个逻辑扇区地址,若为该正常指令,则该内存管理器依据该正常指令执行控制、读取、写入、删除或搬移的程序。
2.根据权利要求1所述的数据储存系统,其特征在于,所述已储存数据搬移至所述第二个逻辑扇区地址是经由所述内存管理器修改所述逻辑-实体地址对照表,将储存所述已储存数据的实体储存地址所指向的逻辑扇区地址由所述第一个逻辑扇区地址修改为所述第二个逻辑扇区地址。
3.根据权利要求1所述的数据储存系统,其特征在于,所述正常指令包括有一读取指令,读取指令内包括有一欲读取数据起始地址及所述欲读取数据长度,所述特定指令即是将该欲读取数据起始地址修改为一特定指令标识符、所述第一个逻辑扇区地址及第二个逻辑扇区地址的组合。
4.根据权利要求1所述的数据储存系统,其特征在于,所述正常指令包括有一读取指令,该读取指令内包括有一欲读取数据起始地址及所述欲读取数据长度,所述特定指令即是将该欲读取数据起始地址修改为一特定指令标识符及所述第一个逻辑扇区地址的组合,所述特定指令内的所述第二个逻辑扇区地址则存放于所述内存缓冲区。
5.根据权利要求1所述的数据储存系统,其特征在于,所述特定指令为一厂商特定指令,包括所述第一个逻辑扇区地址、欲读取数据长度及第二个逻辑扇区地址。
6.根据权利要求1所述的数据储存系统,其特征在于,所述内存缓冲区设于所述数据储存系统或主机系统。
7.特定指令执行方法,适用于一数据储存系统,该数据储存系统包括有至少一实体储存内存、多个逻辑扇区地址及一内存管理器,该实体储存内存分成多个实体储存单元,而每一个实体储存单元具有一实体储存地址,一实体页面构成该实体储存单元,部分实体储存单元内储存有一已储存数据,部分逻辑扇区地址由一逻辑-实体地址对照表而指向相对应的其中一实体储存地址,而该内存管理器分别电性连接实体储存内存及逻辑扇区地址区,其特征在于,该特定指令执行方法包括:
内存管理器接收一指令,该指令包括一正常指令或一特定指令,该特定指令包括一特定指令标识符、一第一个逻辑扇区地址、一欲读取数据长度及一第二个逻辑扇区地址,判断该指令是否包括该特定指令标识符;
若该内存管理器判断接收的该指令不包括该特定指令标识符,则该内存管理器依据该正常指令执行控制、读取、写入、删除或搬移的程序;
若该内存管理器判断接收的该指令包括该特定指令标识符,则解读一读取-搬移的特定指令内的一第一个逻辑扇区地址、一欲读取数据长度及一第二个逻辑扇区地址,将该第一个逻辑扇区地址所指向该实体储存地址内的该已储存数据读取复制于一内存缓冲区;及
将原指向于该第一个逻辑扇区地址的实体储存地址搬移指向至该第二个逻辑扇区地址。
8.根据权利要求7所述的特定指令执行方法,其特征在于,所述已储存数据搬移至所述第二个逻辑扇区地址是经由所述内存管理器修改所述逻辑-实体地址对照表,将储存所述已储存数据的实体储存地址所指向的逻辑扇区地址由所述第一个逻辑扇区地址修改为所述第二个逻辑扇区地址。
9.根据权利要求7所述的特定指令执行方法,其特征在于,所述正常指令包括有一读取指令,该读取指令内包括有一欲读取数据起始地址及所述欲读取数据长度,所述特定指令即是将该欲读取数据起始地址修改为一特定指令标识符、所述第一个逻辑扇区地址及第二个逻辑扇区地址的组合。
10.根据权利要求7所述的特定指令执行方法,其特征在于,所述正常指令包括有一读取指令,该读取指令内包括有一欲读取数据起始地址及所述欲读取数据长度,所述特定指令即是将该欲读取数据起始地址修改为一特定指令标识符及所述第一个逻辑扇区地址的组合,所述特定指令内的所述第二个逻辑扇区地址则存放于所述内存缓冲区。
11.根据权利要求7所述的特定指令执行方法,其特征在于,所述特定指令为一厂商特定指令,包括所述第一个逻辑扇区地址、欲读取数据长度及第二个逻辑扇区地址。
12.特定指令执行方法,适用于一磁盘阵列系统,该磁盘阵列系统为一日志模式或一写时复制模式,该磁盘阵列系统包括有至少一实体储存内存、多个逻辑扇区地址及一内存管理器,该实体储存内存分成多个实体储存单元,而每一个实体储存单元具有一实体储存地址,一实体页面构成该实体储存单元,部分实体储存单元内储存有一已储存数据,部分逻辑扇区地址通过一逻辑-实体地址对照表而指向相对应的其中一实体储存地址,而该内存管理器分别电性连接实体储存内存及逻辑扇区地址区,其特征在于,该特定指令执行方法包括:
内存管理器接收一指令,该指令包括一正常指令或一特定指令,该特定指令包括一特定指令标识符、一第一个逻辑扇区地址、一欲读取数据长度及一第二个逻辑扇区地址,判断该指令是否包括该特定指令标识符;
若该内存管理器判断接收的该指令不包括该特定指令标识符,则该内存管理器依据该正常指令执行控制、读取、写入、删除或搬移的程序;
若该内存管理器判断接收的该指令包括该特定指令标识符,则解读一读取-搬移的特定指令内的一第一个逻辑扇区地址、一欲读取数据长度及一第二个逻辑扇区地址,将该第一个逻辑扇区地址所指向该实体储存地址内的该已储存数据读取复制于一内存缓冲区;
将原指向于该第一个逻辑扇区地址的实体储存地址搬移指向至该第二个逻辑扇区地址;
将第二个逻辑扇区地址相对应的一第二个磁盘阵列数据条的一第二个同位检查区块数据读取至该内存缓冲区;
通过一空白数据、该第二个同位检查区块数据及该已储存数据,计算出第二个逻辑扇区地址的一第二个新同位检查区块数据;及
将该第二个新同位检查区块数据写入该第二个磁盘阵列数据条的该第二个同位检查区块中。
CN201510304023.6A 2015-06-04 2015-06-04 数据储存系统及其特定指令执行方法 Active CN104978280B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510304023.6A CN104978280B (zh) 2015-06-04 2015-06-04 数据储存系统及其特定指令执行方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510304023.6A CN104978280B (zh) 2015-06-04 2015-06-04 数据储存系统及其特定指令执行方法

Publications (2)

Publication Number Publication Date
CN104978280A CN104978280A (zh) 2015-10-14
CN104978280B true CN104978280B (zh) 2020-10-30

Family

ID=54274809

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510304023.6A Active CN104978280B (zh) 2015-06-04 2015-06-04 数据储存系统及其特定指令执行方法

Country Status (1)

Country Link
CN (1) CN104978280B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105739919B (zh) * 2016-01-21 2018-10-12 捷鼎创新股份有限公司 资料存取系统及方法
WO2022110172A1 (zh) * 2020-11-30 2022-06-02 华为技术有限公司 数据处理方法及相关设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1508802A (zh) * 2002-12-20 2004-06-30 捷诚科技股份有限公司 具有存储区块搬移功能的储存装置及其方法
US8296503B2 (en) * 2009-05-26 2012-10-23 Mediatek Inc. Data updating and recovering methods for a non-volatile memory array
CN102110056B (zh) * 2009-12-24 2013-07-17 群联电子股份有限公司 闪存管理方法、闪存控制器与闪存存储系统

Also Published As

Publication number Publication date
CN104978280A (zh) 2015-10-14

Similar Documents

Publication Publication Date Title
TWI531963B (zh) Data storage systems and their specific instruction enforcement methods
US8316201B2 (en) Methods for executing a command to write data from a source location to a destination location in a memory device
US20190258569A1 (en) Directed sanitization of memory
TWI584125B (zh) 輸入/輸出裝置及計算主機相互運作
US9021187B2 (en) Logical block address remapping
US8489803B2 (en) Efficient use of flash memory in flash drives
US9128618B2 (en) Non-volatile memory controller processing new request before completing current operation, system including same, and method
JP5649742B2 (ja) トランザクションログの復元
US20100161932A1 (en) Methods for writing data from a source location to a destination location in a memory device
US10310764B2 (en) Semiconductor memory device and storage apparatus comprising semiconductor memory device
KR102649131B1 (ko) 메모리 시스템 내 대용량 데이터 저장이 가능한 블록에서의 유효 데이터 체크 방법 및 장치
TWI446349B (zh) 非揮發性記憶體存取方法、系統,與非揮發性記憶體控制器
KR20240049262A (ko) 메모리 시스템 및 이의 동작 방법
KR20100091379A (ko) 반도체 디스크 장치 및 그것의 프로그램 페일 처리 방법
US11775389B2 (en) Deferred error-correction parity calculations
KR20200016075A (ko) 메모리 시스템에서의 유효 데이터 탐색 방법 및 장치
JP4745465B1 (ja) 半導体記憶装置及び半導体記憶装置の制御方法
US20140297949A1 (en) Disk array device
US9037781B2 (en) Method for managing buffer memory, memory controllor, and memory storage device
TW201917578A (zh) 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置
CN111435334B (zh) 在存储器系统中检查有效数据的设备和方法
CN104978280B (zh) 数据储存系统及其特定指令执行方法
US10162573B2 (en) Storage management system, storage management method, storage medium and information processing system
CN111026678B (zh) 基于固态硬盘的缓存设计方法、装置及计算机设备
TWI728634B (zh) 在儲存伺服器中進行資料存取管理的方法與裝置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20180827

Address after: Commercial centre, Furong Road 802, 802 West Bay Road, Grand Cayman Islands, British Cayman Islands

Applicant after: Czecho innovation Limited by Share Ltd

Address before: Chinese Taiwan New Taipei City

Applicant before: Jie Ding Internaional, Inc

TA01 Transfer of patent application right
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200304

Address after: Chinese Taiwan New Taipei City

Applicant after: INNODISK Corp.

Address before: Commercial centre, Furong Road 802, 802 West Bay Road, Grand Cayman Islands, British Cayman Islands

Applicant before: AccelStor, Inc.

TA01 Transfer of patent application right

Effective date of registration: 20200608

Address after: 04-95, Fanglin building, 531a, upper section of Klaus street, Singapore

Applicant after: Jieding Singapore Pte Ltd

Address before: Chinese Taiwan New Taipei City

Applicant before: INNODISK Corp.

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200807

Address after: Building C, No. 888, Huanhu West 2nd Road, Lingang New Area, Pudong New Area (Shanghai) pilot Free Trade Zone

Applicant after: Shanghai Chuanyuan Information Technology Co., Ltd

Address before: Fong Lam building, 531a upper cross street, Singapore 051531

Applicant before: Jieding Singapore Pte Ltd

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant