CN105320466A - 固态硬盘安排操作的方法 - Google Patents

固态硬盘安排操作的方法 Download PDF

Info

Publication number
CN105320466A
CN105320466A CN201410365857.3A CN201410365857A CN105320466A CN 105320466 A CN105320466 A CN 105320466A CN 201410365857 A CN201410365857 A CN 201410365857A CN 105320466 A CN105320466 A CN 105320466A
Authority
CN
China
Prior art keywords
solid state
state hard
hard disc
data
accessing operation
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.)
Pending
Application number
CN201410365857.3A
Other languages
English (en)
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.)
Quanta Storage Inc
Original Assignee
Quanta Storage Inc
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 Quanta Storage Inc filed Critical Quanta Storage Inc
Priority to CN201410365857.3A priority Critical patent/CN105320466A/zh
Priority to US14/667,711 priority patent/US20160034190A1/en
Publication of CN105320466A publication Critical patent/CN105320466A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/45Caching of specific data in cache memory
    • G06F2212/452Instruction code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/46Caching storage objects of specific type in disk cache
    • G06F2212/461Sector or disk block
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/46Caching storage objects of specific type in disk cache
    • G06F2212/466Metadata, control data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7208Multiple device management, e.g. distributing data over multiple flash devices

Abstract

一种固态硬盘安排操作的方法,接收主机的存取操作,暂存存取操作,以短操作时间型态的存取操作优先处理,重新排列存取操作,分送至各闪存平行处理相同型态的存取操作,将处理存取操作的数据送至主机,以提高操作效能。

Description

固态硬盘安排操作的方法
技术领域
本发明涉及一种固态硬盘,特别是涉及固态硬盘处理主机存取操作,对各闪存重新安排执行操作顺序的方法。
背景技术
固态硬盘(SolidStateDrive,简称SSD)由数个与非门闪存(NANDFlashMemory)整合成为单一储存装置。由于固态硬盘利用半导体变换电压存储的特性,传输数据非常快速,已成为大量信息储存的消费主流产品。
如图1所示的是现有技术固态硬盘数据传输的流程。现有技术固态硬盘由主机10发出数据的存取操作,由固态硬盘控制器11接收存取操作,并暂存在缓冲存储器12,再由固态硬盘控制器11依据接收存取操作的顺序,经各闪存14各自的先进先出(FirstInFirstOut,简称FIFO)管道,形成存取操作信道13a传送至各闪存14,各闪存14根据存取操作的顺序执行存取操作,将闪存14储存的数据,按照存取操作的指令进行处理数据,再由其先进先出管道传输处理数据,形成数据信道13b,依序送至主机10。因此,固态硬盘具有多个闪存14的先进先出管道,同时处理存取操作,可提高执行操作的效率。
然而,固态硬盘只要任一存取操作执行产生延迟,执行该存取操作的闪存受限于先进先出管道,后续未处理的存取操作也需静待处理,而主机也跟着延迟处理。此外,固态硬盘将相关的数据,随机分配储存在不同的闪存,纵使其它闪存已将处理数据送至主机,主机也需等待接收完闪存延迟处理的数据,才能进行处理,不仅引起主机效能的降低,更导致固态硬盘丧失高传输速度的特性。因此,固态硬盘在安排执行操作的方法上,仍有问题亟待解决。
发明内容
本发明的目的是提供一种固态硬盘安排操作的方法,根据存取操作的型态,以短操作时间的操作型态为优先,重新排列闪存存取操作的顺序,以提高操作效能。
为了达到前述发明的目的,本发明固态硬盘安排操作的方法,接收主机的存取操作;暂存存取操作;以短操作时间型态的存取操作优先处理,重新排列存取操作;分送至各闪存处理存取操作;将处理存取操作的数据送至主机。
本发明另一目的是提供一种固态硬盘安排操作的方法,通过在各闪存平行处理相同型态的操作,减少主机等待时间,以加速主机的操作。
为了达到前述发明的目的,本发明固态硬盘安排操作的方法,接收主机的存取操作,暂存在固态硬盘的缓冲存储器,根据读取、修改、写入及擦除操作由短至长的操作时间顺序,重新排列存取操作,经先进先出管道分送至各闪存,由各闪存平行处理相同型态的存取操作,将处理存取操作的数据经先进先出管道送至主机。
附图标记
图1是现有技术固态硬盘数据传输的流程图。
图2是本发明使用的固态硬盘的结构图。
图3是本发明对不同安排操作效能的比较图。
图4是本发明固态硬盘安排操作的示意图。
图5是本发明固态硬盘安排操作的方法的流程图。
附图符号说明
20主机
21处理器
22动态随机内存
30固态硬盘
31控制器
32缓冲存储器
33先进先出管道
33a操作信道
33b数据信道
34闪存
具体实施方式
有关本发明为实现上述目的,所采用的技术手段及其功效,列举优选实施例,并结合附图加以说明如下。
请参阅图2,为本发明使用的公知固态硬盘的系统结构。其中主机20设置处理器21发送存取操作,且设有动态随机内存(DRAM)22暂存存取的数据备用。本发明的固态硬盘30连接主机10,固态硬盘30内设控制器31配合缓冲存储器32,控制由多个先进先出管道33一对一对应连接的多个闪存34,整合成为单一储存装置,作为主机的主要数据储存装置。本实施例虽以固态硬盘30包含第0至3个等4个闪存34为例说明,但包含且不限于4个闪存34,可依需要增减闪存34的数量调整存储器容量。
固态硬盘30的控制器31接收主机20的存取操作,暂存在缓冲存储器32,依序分配处理存取操作的存储器单元34,经各自的先进先出管道33,将存取操作分送至各闪存34。各闪存34依存取操作的顺序进行数据处理。闪存34具有数据区(DataArea)及备用区(SpareArea),每区各包含多个实体区块(Block),实体区块包含多个实体页,且以实体区块为单位进行擦除数据。闪存34操作时,由数据区的数据实体区块,读取(Read,简称R)实体页的数据,经由各自的先进先出管道33送出至动态随机内存22,供主机20备用,主机20修改(Modify,简称M)数据数据后,固态硬盘30在备用区选取一备用实体区块,再将修改数据写入(Write,简称W)备用实体区块的实体页,形成数据区的新数据实体区块,并更新逻辑-实体对照表。然后登录废弃原数据实体区块的逻辑页,以待擦除(Erase,简称E)废弃的数据实体区块,形成备用实体区块回收再利用。因此,主机20对固态硬盘30的存取操作,一般为指令固态硬盘30对闪存34进行读取(R)、修改(M)、写入(W)及擦除(E)数据等型态的操作。
如图3所示,为本发明对不同安排操作效能的比较图。本发明比较读取(R)、修改(M)、写入(W)及擦除(E)等操作型态的操作时间,读取操作通常读取多个实体页的数据,所需时间最短,约需75微秒(μs)。而写入操作须数据转换格式及分配写入的闪存34,操作时间比读取操作长,约需1300μs。因修改操作包含读取、修正及写入操作,操作时间约需1390μs。至于擦除操作需对整个数据实体区块的数据进行擦除,操作时间最长约需3000μs。由于固态硬盘的相关的数据分散储存在各闪存34,主机20必须等待各闪存34将相关的数据全部读出时,才能开始处理该相关的数据,否则必须等待,而等待时间的长短直接影响主机的效能。因此,为了避免操作时间长的操作,因先进先出管道阻碍后续的操作,本发明采取重新排列存取操作,以短操作时间型态的存取操作优先处理,以减少主机等待时间。
举具体数据说明,假如本发明固态硬盘接收主机对一闪存的存取操作序列A为擦除(E)、修改(M)、写入(W)、读取(R)操作,本发明将存取操作序列A,以短操作时间型态的操作优先处理,重新安排顺序为存取操作序列B为读取(R)、修改(M)、写入(W)、擦除(E)操作,比较两者处理完存取操作序列主机需要等待时间。首先将存取操作序列A送至闪存34的先进先出管道33的操作信道33a,闪存34依序先处理擦除操作,最后由先进先出管道33的数据管道33b送出通知主机完成的操作时间3000μs,主机也同样等待时间3000μs,才能接收完擦除操作处理的数据。接着处理修改操作,除了操作时间1390μs,因受先进先出管道33的限制,主机尚须加上等待擦除的操作时间3000μs,如图3底线显示,主机共计等待时间3000μs+1390μs=4390μs,才能接收完修改操作处理的数据。同样处理写入操作,除了操作时间1300μs,因受先进先出管道33的限制,主机尚须加上等待擦除的操作时间3000μs及修改操作1390μs,主机共计等待时间3000μs+1390μs+1300=5690μs,才能接收完写入操作处理的数据。同样处理读取操作,除了操作时间75μs,因受先进先出管道33的限制,主机尚须加上等待擦除的操作时间3000μs、修改操作时间1390μs及写入操作时间1300μs,主机共计等待时间3000μs+1390μs+1300+75=5765μs,才能接收完读取操作处理的数据。因此处理完成存取操作序列A,固态硬盘的操作时间共计3000μs+1390μs+1300μs+79μs=5765μs,而主机等待时间共计3000μs+4390μs+5690μs+5765μs=18845μs。
同样将本发明重新安排的存取操作序列B送至闪存34,依序先处理读取操作,最后由先进先出管道33的数据管道33b送出通知主机完成的操作时间75μs,主机也同样等待时间75μs,才能接收完读取操作处理的数据。同样处理写入操作,除了操作时间1300μs,主机尚须加上等待读取的操作时间75μs,主机共计等待时间75μs+1300μs=1375μs,才能接收完写入操作处理的数据。处理修改操作,除了操作时间1390μs,主机尚须加上等待读取及写入的操作时间,主机共计等待时间75μs+1300μs+1390μs=2765μs,才能接收完修改操作处理的数据。处理擦除操作,除了操作时间3900μs,主机尚须加上等待读取、写入及修改的操作时间,主机共计等待时间75μs+1300μs+1390μs+3900μs=5765μs,才能接收完擦除操作处理的数据。因此处理完成存取操作序列B,固态硬盘的操作时间共计3000μs+1390μs+1300μs+79μs=5765μs,而主机等待时间共计75μs+1375μs+2765μs+5765μs=9780μs。虽然存取操作序列A与存取操作序列B的固态硬盘的操作时间同为5765μs,但重新排序后存取操作序列B的主机等待时间9780μs,与存取操作序列A的主机等待时间18845μs相比,约减少一半的等待时间,而可大幅提高主机的效能。
如图4所示,为本发明固态硬盘安排操作的示意图。例如本发明固态硬盘接收主机的存取操作序列C为E0-R2-M0-R1-W0-R3-W2-R0-E1-W1-E2-M2,其中操作后标的数字,代表存取操作的闪存。根据公知固态硬盘依序处理存取操作,存取操作将由固态硬盘送至闪存0-3,如图4中虚线所示排列。其中显示纵使闪存1-3能在很快处理出短操作时间的读取操作R1-R2-R3,读出相关数据送至主机,主机也必须等待闪存0先处理完长操作时间的E0-M0-W0操作,才能接收完读取的相关数据,导致主机延迟处理读取数据。同样情况也发生在后续操作W0-W2,受操作E1的阻碍,等待W1,以及操作M0,受操作E2的阻碍,等待M2,导致主机延迟处理数据。
经过本发明采取以短操作时间型态的操作优先处理的原则,根据读取(R)、修改(M)、写入(W)、擦除(E)操作型态的顺序,重新排列存取操作序列C’为R0-R1-R2-R3-W0-W1-W2-M0-M2-E0-E1-E2,由固态硬盘送至闪存0-3,排列如图4中黑实线所示。首先读取操作R0-R1-R2-R3,可在第一时间由各闪存0-3平行处理读取数据至主机,主机仅需等待一读取的操作时间75μs,就可完成处理读取数据,同样写入操作W0-W1-W2也可由各闪存0-2平行处理,主机等待一写入的操作时间1300μs,就可完成处理写入数据。修改操作M0-M2也可由各闪存0,2平行处理,主机仅需等待一修改的操作时间1390μs,就可完成处理修改数据。擦除操作E0-E1-E2也可由各闪存0-3平行处理,主机仅需等待一擦除的操作时间3900μs,就可完成处理擦除数据。让主机在各型态操作减少等待,以提高执行效能。
如图5所示,为本发明固态硬盘安排操作的方法的流程图。本发明固态硬盘安排操作的方法的详细步骤说明如下:在步骤S1,接收主机的存取操作;在步骤S2,暂存存取操作在缓冲存储器;步骤S3,以短操作时间型态的存取操作优先处理原则,根据读取(R)、修改(M)、写入(W)、擦除(E)操作型态顺序,重新排列存取操作;进入步骤S4,经先进先出管道分送至各闪存;步骤S5,由各闪存平行处理相同型态的存取操作;最后进入步骤S6,将处理存取操作的数据经先进先出管道送至主机。
由前述的步骤,本发明固态硬盘安排操作的方法,就可根据存取操作,以短操作时间型态的操作为优先,重新排列闪存的存取操作顺序,经由先进先出的管道,分送至各闪存,平行处理相同型态的操作,减少主机等待时间,以提高操作效能
以上所述仅为用以方便说明本发明的优选实施例,本发明的范围不限于这些优选实施例,凡依本发明所做的任何变更,在不脱离本发明的精神的范围内,均落入本发明申请专利的范围。

Claims (6)

1.一种固态硬盘安排操作的方法,其步骤包含:
接收主机的存取操作;
暂存存取操作;
以短操作时间型态的存取操作优先处理,重新排列存取操作;
分送至各闪存处理存取操作;以及
将处理存取操作的数据送至主机。
2.如权利要求1所述的固态硬盘安排操作的方法,其中存取操作暂存在固态硬盘的缓冲存储器。
3.如权利要求1所述的固态硬盘安排操作的方法,其中,存取操作由短至长的操作时间顺序为读取、修改、写入及擦除操作。
4.如权利要求1所述的固态硬盘安排操作的方法,其中存取操作经先进先出管道分送至各闪存。
5.如权利要求1所述的固态硬盘安排操作的方法,其中各闪存平行处理相同型态的存取操作。
6.如权利要求1所述的固态硬盘安排操作的方法,其中该处理存取操作的数据经先进先出管道送至主机。
CN201410365857.3A 2014-07-29 2014-07-29 固态硬盘安排操作的方法 Pending CN105320466A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410365857.3A CN105320466A (zh) 2014-07-29 2014-07-29 固态硬盘安排操作的方法
US14/667,711 US20160034190A1 (en) 2014-07-29 2015-03-25 Method for scheduling operation of a solid state disk

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410365857.3A CN105320466A (zh) 2014-07-29 2014-07-29 固态硬盘安排操作的方法

Publications (1)

Publication Number Publication Date
CN105320466A true CN105320466A (zh) 2016-02-10

Family

ID=55180058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410365857.3A Pending CN105320466A (zh) 2014-07-29 2014-07-29 固态硬盘安排操作的方法

Country Status (2)

Country Link
US (1) US20160034190A1 (zh)
CN (1) CN105320466A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107273045A (zh) * 2017-05-24 2017-10-20 记忆科技(深圳)有限公司 一种提高固态硬盘混合读写性能的方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10514848B2 (en) * 2015-09-28 2019-12-24 Beijing Lenovo Software Ltd. Data storage method for selectively storing data in a buffer preset in a memory of an electronic device or an inherent buffer in an SSD
US11442643B2 (en) 2020-02-13 2022-09-13 Samsung Electronics Co., Ltd. System and method for efficiently converting low-locality data into high-locality data
US11429299B2 (en) 2020-02-13 2022-08-30 Samsung Electronics Co., Ltd. System and method for managing conversion of low-locality data into high-locality data

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6170042B1 (en) * 1998-02-24 2001-01-02 Seagate Technology Llc Disc drive data storage system and method for dynamically scheduling queued commands
US6311256B2 (en) * 1997-06-30 2001-10-30 Emc Corporation Command insertion and reordering at the same storage controller
CN1550993A (zh) * 2003-04-16 2004-12-01 ƽ 读优先高速缓存系统和方法
US20100332846A1 (en) * 2009-06-26 2010-12-30 Simplivt Corporation Scalable indexing
US20120203986A1 (en) * 2009-09-09 2012-08-09 Fusion-Io Apparatus, system, and method for managing operations for data storage media
US8516172B1 (en) * 2007-08-30 2013-08-20 Virident Systems, Inc. Methods for early write termination and power failure with non-volatile memory
CN103370685A (zh) * 2010-09-15 2013-10-23 净睿存储股份有限公司 存储环境中的i/o写入的调度

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6311256B2 (en) * 1997-06-30 2001-10-30 Emc Corporation Command insertion and reordering at the same storage controller
US6170042B1 (en) * 1998-02-24 2001-01-02 Seagate Technology Llc Disc drive data storage system and method for dynamically scheduling queued commands
CN1550993A (zh) * 2003-04-16 2004-12-01 ƽ 读优先高速缓存系统和方法
US8516172B1 (en) * 2007-08-30 2013-08-20 Virident Systems, Inc. Methods for early write termination and power failure with non-volatile memory
US20100332846A1 (en) * 2009-06-26 2010-12-30 Simplivt Corporation Scalable indexing
US20120203986A1 (en) * 2009-09-09 2012-08-09 Fusion-Io Apparatus, system, and method for managing operations for data storage media
CN103370685A (zh) * 2010-09-15 2013-10-23 净睿存储股份有限公司 存储环境中的i/o写入的调度

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107273045A (zh) * 2017-05-24 2017-10-20 记忆科技(深圳)有限公司 一种提高固态硬盘混合读写性能的方法

Also Published As

Publication number Publication date
US20160034190A1 (en) 2016-02-04

Similar Documents

Publication Publication Date Title
JP2021168203A (ja) 不揮発性メモリの複数区画の同時アクセスのための装置及び方法
US9405485B2 (en) Method and apparatus for writing data to a flash memory
US8195871B2 (en) Method of handling I/O request and solid state drive using the same
TWI467574B (zh) 記憶體儲存裝置、記憶體控制器與其資料傳輸方法
US11385831B2 (en) Memory controller and storage device including the same
TWI512609B (zh) 讀取命令排程方法以及使用該方法的裝置
US8914571B2 (en) Scheduler for memory
US10606484B2 (en) NAND flash storage device with NAND buffer
US9330737B2 (en) Allocating memory address space between DIMMs using memory controllers
CN105320466A (zh) 固态硬盘安排操作的方法
US20160011969A1 (en) Method for accessing data in solid state disk
US20170003911A1 (en) Information processing device
CN105183378A (zh) 自适应混合读/写缓存的方法
US10365834B2 (en) Memory system controlling interleaving write to memory chips
KR101785189B1 (ko) 데이터 기입 방법 및 메모리 시스템
CN105426112A (zh) 固态硬盘动态调整高速缓冲区的方法
US20190361627A1 (en) Memory device, control method thereof and recording medium
US20140250258A1 (en) Data storage device and flash memory control method
AU2015203828B2 (en) Implementing enhanced performance with read before write to phase change memory to avoid write cancellations
US11150809B2 (en) Memory controller and storage device including the same
CN103092771A (zh) 固态储存装置及其高速缓存的控制方法
CN101562039A (zh) 多通道内存储存装置及其控制方法
TW201908958A (zh) 用來於一記憶裝置中進行編程管理之方法以及記憶裝置及其控制器
CN107943413B (zh) 一种固态硬盘提升读性能的方法
US20160011812A1 (en) Memory System

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160210