CN109101444A - 一种降低固态硬盘随机读延迟的方法及装置 - Google Patents

一种降低固态硬盘随机读延迟的方法及装置 Download PDF

Info

Publication number
CN109101444A
CN109101444A CN201810960579.4A CN201810960579A CN109101444A CN 109101444 A CN109101444 A CN 109101444A CN 201810960579 A CN201810960579 A CN 201810960579A CN 109101444 A CN109101444 A CN 109101444A
Authority
CN
China
Prior art keywords
module
order
cache area
request
random 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.)
Pending
Application number
CN201810960579.4A
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.)
Shenzhen Union Memory Information System Co Ltd
Original Assignee
Shenzhen Union Memory Information System 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 Shenzhen Union Memory Information System Co Ltd filed Critical Shenzhen Union Memory Information System Co Ltd
Priority to CN201810960579.4A priority Critical patent/CN109101444A/zh
Publication of CN109101444A publication Critical patent/CN109101444A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1626Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1642Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种降低固态硬盘随机读延迟的方法及装置,其中,该方法包括:接收主机下发的随机读请求命令;触发DRAM加载对应的映射信息到预加载映射缓存区;发起对应的映射表查询操作;CPU从预加载映射缓存区加载对应数据。本发明通过引入了预加载映射缓存区,当接收主机下发的随机读请求命令时,可触发DRAM加载对应的映射信息到预加载映射缓存区;当后续需要查询映射表时,不需要再等待耗时较大的DRAM访问,而是直接从预加载映射缓存区中获取对应表项,大大降低了随机读场景下的DRAM访问延迟。

Description

一种降低固态硬盘随机读延迟的方法及装置
技术领域
本发明涉及固态硬盘,更具体地说是一种降低固态硬盘随机读延迟的方法及装置。
背景技术
SSD(固态硬盘)已经被广泛应用于各种场合,由于其在性能、功耗、环境适应性等方面的优秀指标,正逐步替换传统的硬盘。
随着PC产业的发展,计算机的运行速度越来越快,其对存储的相应延迟要求也进而变得很高。
典型地以一个PCIe 1TB SSD来说,其在单个命令深度的情形下典型的时间延迟为60us,而在128个并发的命令深度的情形下,则需要每秒完成500K以上的请求。这样的需求对于SSD的内部设计提出了新的需求,在读的路径上需要进一步优化。
现有的SSD控制器中,片上***的Cache策略可以很好的应对顺序读请求的映射表访问加速,但是对于随机访问,现有的CPU Cache策略不能满足需求,故而导致在随机读请求过程中存在较大的延迟。
发明内容
本发明的目的在于克服现有技术的不足,提供一种降低固态硬盘随机读延迟的方法及装置。
为实现上述目的,本发明采用以下技术方案:一种降低固态硬盘随机读延迟的方法,所述方法包括:
接收主机下发的随机读请求命令;
触发DRAM加载对应的映射信息到预加载映射缓存区;
发起对应的映射表查询操作;
CPU从预加载映射缓存区加载对应数据。
其进一步技术方案为:所述接收主机下发的随机读请求命令的步骤,具体包括以下步骤:
监控主机下发的命令;
为下发的命令分配对应的索引,并存放到SSD命令存放队列中;
解析出命令中的逻辑地址信息以及队列的索引,并发送。
其进一步技术方案为:所述触发DRAM加载对应的映射信息到预加载映射缓存区的步骤,具体包括以下步骤:
接收对应命令的逻辑地址信息;
根据该逻辑地址信息查找对应的物理地址信息;
将对应的物理地址信息写入预加载映射缓存区的对应表项中;
根据该命令的所分配的索引,将该命令对应表项的valid bit设置为1。
其进一步技术方案为:所述根据该逻辑地址信息查找对应的物理地址信息的步骤,具体包括以下步骤:
发送查找对应命令的物理地址请求;
将请求转发至CPU总线;
对请求进行仲裁;
对请求进行优先级调度;
将调度后的请求数据输入到DDR控制器;
DDR控制器根据DRAM的规范,发起对应命令的DRAM读请求。
其进一步技术方案为:所述CPU从预加载映射缓存区加载对应数据的步骤,具体包括以下步骤:
预加载映射缓存区响应数据加载指令;
判断数据加载是否完成;
若是,则自动清除对应valid flag;
若否,则等待对应valid flag有效。
一种降低固态硬盘随机读延迟的装置,所述装置包括接收单元、触发单元、发起单元以及加载单元;
所述接收单元,用于接收主机下发的随机读请求命令;
所述触发单元,用于触发DRAM加载对应的映射信息到预加载映射缓存区;
所述发起单元,用于发起对应的映射表查询操作;
所述加载单元,用于CPU从预加载映射缓存区加载对应数据。
其进一步技术方案为:所述接收单元包括监控模块、分配模块以及解析模块;
所述监控模块,用于监控主机下发的命令;
所述分配模块,用于为下发的命令分配对应的索引,并存放到SSD命令存放队列中;
所述解析模块,用于解析出命令中的逻辑地址信息以及队列的索引,并发送。
其进一步技术方案为:所述触发单元包括接收模块、查找模块、写入模块以及设置模块;
所述接收模块,用于接收对应命令的逻辑地址信息;
所述查找模块,用于根据该逻辑地址信息查找对应的物理地址信息;
所述写入模块,用于将对应的物理地址信息写入预加载映射缓存区的对应表项中;
所述设置模块,用于根据该命令的所分配的索引,将该命令对应表项的valid bit设置为1。
其进一步技术方案为:所述查找模块包括发送子模块、转发子模块、仲裁子模块、调度子模块、输入子模块以及读请求子模块;
所述发送子模块,用于发送查找对应命令的物理地址请求;
所述转发子模块,用于将请求转发至CPU总线;
所述仲裁子模块,用于对请求进行仲裁;
所述调度子模块,用于对请求进行优先级调度;
所述输入子模块,用于将调度后的请求数据输入到DDR控制器;
所述读请求子模块,用于DDR控制器根据DRAM的规范,发起对应命令的DRAM读请求。
其进一步技术方案为:所述加载单元包括响应模块、判断模块、清除模块以及等待模块;
所述响应模块,用于预加载映射缓存区响应数据加载指令;
所述判断模块,用于判断数据加载是否完成;
所述清除模块,用于自动清除对应valid flag;
所述等待模块,用于等待对应valid flag有效。
本发明与现有技术相比的有益效果是:本发明一种降低固态硬盘随机读延迟的方法及装置通过引入了预加载映射缓存区,当接收主机下发的随机读请求命令时,可触发DRAM加载对应的映射信息到预加载映射缓存区;当后续需要查询映射表时,不需要再等待耗时较大的DRAM访问,而是直接从预加载映射缓存区中获取对应表项,大大降低了随机读场景下的DRAM访问延迟。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明技术手段,可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征及优点能够更明显易懂,以下特举较佳实施例,详细说明如下。
附图说明
图1为本发明一种降低固态硬盘随机读延迟的方法具体实施例的流程图;
图2为本发明一种降低固态硬盘随机读延迟的方法具体实施例中接收主机下发的随机读请求命令的流程图;
图3为本发明一种降低固态硬盘随机读延迟的方法具体实施例中触发DRAM加载对应的映射信息到预加载映射缓存区的流程图;
图4为本发明一种降低固态硬盘随机读延迟的方法具体实施例中找对应的物理地址信息的流程图;
图5为本发明一种降低固态硬盘随机读延迟的方法具体实施例中CPU从预加载映射缓存区加载对应数据的流程图;
图6为本发明一种降低固态硬盘随机读延迟的装置具体实施例的结构图;
图7为本发明一种降低固态硬盘随机读延迟的装置具体实施例中接收单元的结构图;
图8为本发明一种降低固态硬盘随机读延迟的装置具体实施例中触发单元的结构图;
图9为本发明一种降低固态硬盘随机读延迟的装置具体实施例中查找模块的结构图;
图10为本发明一种降低固态硬盘随机读延迟的装置具体实施例中加载单元的结构图。
具体实施方式
为了更充分理解本发明的技术内容,下面结合具体实施例对本发明的技术方案进一步介绍和说明,但不局限于此。
应当理解,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体/操作/对象与另一个实体/操作/对象区分开来,而不一定要求或者暗示这些实体/操作/对象之间存在任何这种实际的关系或者顺序。
还应当理解,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者***中还存在另外的相同要素。
如图1-5所示,本发明提供了一种降低固态硬盘随机读延迟的方法,该方法包括:
S10、接收主机下发的随机读请求命令;
S20、触发DRAM加载对应的映射信息到预加载映射缓存区;
S30、发起对应的映射表查询操作;
S40、CPU从预加载映射缓存区加载对应数据。
具体的,SSD读在随机读的情形下,由于请求之间的逻辑地址无任何关联性,所以一般是不会命中Cache的,故而需要直接发起DRAM读请求。在此过程中,软件需要原地等待,直到拿到所需的数据。在一个典型的高吞吐率的***中,单个CPU上每个请求的总操作时间大约为2us。而此处单个CPU的随机访问时间就会耗费0.2us,极大地影响了读性能延迟以及吞吐率。而本发明通过引入了预加载映射缓存区,使得在接收到随机读请求命令时,DRAM会加载对应的映射信息到预加载映射缓存区,而在此期间,软件可以并行地对命令进行其他的操作,如信息提取/资源分配等;直到需要构建NAND读请求时,才发起映射表读操作。此时可以直接从预加载映射缓存区中返回,而不需要原地等待DRAM访问,故而有效地提升了随机读的响应延迟,进而可以提升IOPS吞吐量。
在某些实施例中,步骤S10具体包括以下步骤:
S101、监控主机下发的命令;
S102、为下发的命令分配对应的索引,并存放到SSD命令存放队列中;
S103、解析出命令中的逻辑地址信息以及队列的索引,并发送。
在某些实施例中,步骤S20具体包括以下步骤:
S201、接收对应命令的逻辑地址信息;
S202、根据该逻辑地址信息查找对应的物理地址信息;
S203、将对应的物理地址信息写入预加载映射缓存区的对应表项中;
S204、根据该命令的所分配的索引,将该命令对应表项的valid bit(有效性标准)设置为1。
具体的,当的物理地址信息写入预加载映射缓存区的对应表项中之后,该命令对应表项的valid bit(有效性标准)设置为1,即表示在预加载映射缓存区中,该表项位置已载入对应的数据。
在某些实施例中,步骤S202具体包括以下步骤:
S2021、发送查找对应命令的物理地址请求;
S2022、将请求转发至CPU总线;
S2023、对请求进行仲裁;
S2024、对请求进行优先级调度;
S2025、将调度后的请求数据输入到DDR控制器;
S2026、DDR控制器根据DRAM的规范,发起对应命令的DRAM读请求。
具体的,在随机访问的情形下,由于请求之间的物理地址无任何关联性,所以一般是不会命中Cache的,故而需要直接发起DRAM读请求。
具体的,步骤S40具体包括以下步骤:
S401、预加载映射缓存区响应数据加载指令;
S402、判断数据加载是否完成;
S403、若是,则自动清除对应valid flag;
S404、若否,则等待对应valid flag有效。
具体的,只有当数据加载完成时,才自动清除对应valid flag(合法性标志),如果没有加载完成则等待valid flag(合法性标志)有效之后才进行数据加载。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
对应于上述实施例所述的一种降低固态硬盘随机读延迟的方法,本发明还提供了一种降低固态硬盘随机读延迟的装置。如图6-10所示,该装置包括接收单元1、触发单元2、发起单元3以及加载单元4;
接收单元1,用于接收主机下发的随机读请求命令;
触发单元2,用于触发DRAM加载对应的映射信息到预加载映射缓存区;
发起单元3,用于发起对应的映射表查询操作;
加载单元4,用于CPU从预加载映射缓存区加载对应数据。
具体的,SSD读在随机读的情形下,由于请求之间的逻辑地址无任何关联性,所以一般是不会命中Cache的,故而需要直接发起DRAM读请求。在此过程中,软件需要原地等待,直到拿到所需的数据。在一个典型的高吞吐率的***中,单个CPU上每个请求的总操作时间大约为2us。而此处单个CPU的随机访问时间就会耗费0.2us,极大地影响了读性能延迟以及吞吐率。而本发明通过引入了预加载映射缓存区,使得在接收到随机读请求命令时,DRAM会加载对应的映射信息到预加载映射缓存区,而在此期间,软件可以并行地对命令进行其他的操作,如信息提取/资源分配等;直到需要构建NAND读请求时,才发起映射表读操作。此时可以直接从预加载映射缓存区中返回,而不需要原地等待DRAM访问,故而有效地提升了随机读的响应延迟,进而可以提升IOPS吞吐量。
在某些实施例中,接收单元1包括监控模块11、分配模块12以及解析模块13;
监控模块11,用于监控主机下发的命令;
分配模块12,用于为下发的命令分配对应的索引,并存放到SSD命令存放队列中;
解析模块13,用于解析出命令中的逻辑地址信息以及队列的索引,并发送。
在某些实施例中,触发单元2包括接收模块21、查找模块22、写入模块23以及设置模块24;
接收模块21,用于接收对应命令的逻辑地址信息;
查找模块22,用于根据该逻辑地址信息查找对应的物理地址信息;
写入模块23,用于将对应的物理地址信息写入预加载映射缓存区的对应表项中;
设置模块24,用于根据该命令的所分配的索引,将该命令对应表项的valid bit设置为1。
具体的,当物理地址信息写入预加载映射缓存区的对应表项中之后,该命令对应表项的valid bit(有效性标准)设置为1,即表示在预加载映射缓存区中,该表项位置已载入对应的数据。
查找模块22包括发送子模块221、转发子模块222、仲裁子模块223、调度子模块224、输入子模块225以及读请求子模块226;
发送子模块221,用于发送查找对应命令的物理地址请求;
转发子模块222,用于将请求转发至CPU总线;
仲裁子模块223,用于对请求进行仲裁;
调度子模块224,用于对请求进行优先级调度;
输入子模块225,用于将调度后的请求数据输入到DDR控制器;
读请求子模块226,用于DDR控制器根据DRAM的规范,发起对应命令的DRAM读请求。
具体的,在随机访问的情形下,由于请求之间的逻辑地址无任何关联性,所以一般是不会命中Cache的,故而需要直接发起DRAM读请求。
在某些实施例中,加载单元4包括响应模块41、判断模块42、清除模块43以及等待模块44;
响应模块41,用于预加载映射缓存区响应数据加载指令;
判断模块42,用于判断数据加载是否完成;
清除模块43,用于自动清除对应valid flag;
等待模块44,用于等待对应valid flag有效。
具体的,只有当数据加载完成时,才自动清除对应valid flag(合法性标志),如果没有加载完成则等待valid flag(合法性标志)有效之后才进行数据加载。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的***实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明实施例各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
上述仅以实施例来进一步说明本发明的技术内容,以便于读者更容易理解,但不代表本发明的实施方式仅限于此,任何依本发明所做的技术延伸或再创造,均受本发明的保护。本发明的保护范围以权利要求书为准。

Claims (10)

1.一种降低固态硬盘随机读延迟的方法,其特征在于,所述方法包括:
接收主机下发的随机读请求命令;
触发DRAM加载对应的映射信息到预加载映射缓存区;
发起对应的映射表查询操作;
CPU从预加载映射缓存区加载对应数据。
2.根据权利要求1所述的一种降低固态硬盘随机读延迟的方法,其特征在于,所述接收主机下发的随机读请求命令的步骤,具体包括以下步骤:
监控主机下发的命令;
为下发的命令分配对应的索引,并存放到SSD命令存放队列中;
解析出命令中的逻辑地址信息以及队列的索引,并发送。
3.根据权利要求2所述的一种降低固态硬盘随机读延迟的方法,其特征在于,所述触发DRAM加载对应的映射信息到预加载映射缓存区的步骤,具体包括以下步骤:
接收对应命令的逻辑地址信息;
根据该逻辑地址信息查找对应的物理地址信息;
将对应的物理地址信息写入预加载映射缓存区的对应表项中;
根据该命令的所分配的索引,将该命令对应表项的valid bit设置为1。
4.根据权利要求3所述的一种降低固态硬盘随机读延迟的方法,其特征在于,所述根据该逻辑地址信息查找对应的物理地址信息的步骤,具体包括以下步骤:
发送查找对应命令的物理地址请求;
将请求转发至CPU总线;
对请求进行仲裁;
对请求进行优先级调度;
将调度后的请求数据输入到DDR控制器;
DDR控制器根据DRAM的规范,发起对应命令的DRAM读请求。
5.根据权利要求1所述的一种降低固态硬盘随机读延迟的方法,其特征在于,所述CPU从预加载映射缓存区加载对应数据的步骤,具体包括以下步骤:
预加载映射缓存区响应数据加载指令;
判断数据加载是否完成;
若是,则自动清除对应valid flag;
若否,则等待对应valid flag有效。
6.一种降低固态硬盘随机读延迟的装置,其特征在于,所述装置包括接收单元、触发单元、发起单元以及加载单元;
所述接收单元,用于接收主机下发的随机读请求命令;
所述触发单元,用于触发DRAM加载对应的映射信息到预加载映射缓存区;
所述发起单元,用于发起对应的映射表查询操作;
所述加载单元,用于CPU从预加载映射缓存区加载对应数据。
7.根据权利要求6所述的一种降低固态硬盘随机读延迟的装置,其特征在于,所述接收单元包括监控模块、分配模块以及解析模块;
所述监控模块,用于监控主机下发的命令;
所述分配模块,用于为下发的命令分配对应的索引,并存放到SSD命令存放队列中;
所述解析模块,用于解析出命令中的逻辑地址信息以及队列的索引,并发送。
8.根据权利要求7所述的一种降低固态硬盘随机读延迟的装置,其特征在于,所述触发单元包括接收模块、查找模块、写入模块以及设置模块;
所述接收模块,用于接收对应命令的逻辑地址信息;
所述查找模块,用于根据该逻辑地址信息查找对应的物理地址信息;
所述写入模块,用于将对应的物理地址信息写入预加载映射缓存区的对应表项中;
所述设置模块,用于根据该命令的所分配的索引,将该命令对应表项的valid bit设置为1。
9.根据权利要求8所述的一种降低固态硬盘随机读延迟的装置,其特征在于,所述查找模块包括发送子模块、转发子模块、仲裁子模块、调度子模块、输入子模块以及读请求子模块;
所述发送子模块,用于发送查找对应命令的物理地址请求;
所述转发子模块,用于将请求转发至CPU总线;
所述仲裁子模块,用于对请求进行仲裁;
所述调度子模块,用于对请求进行优先级调度;
所述输入子模块,用于将调度后的请求数据输入到DDR控制器;
所述读请求子模块,用于DDR控制器根据DRAM的规范,发起对应命令的DRAM读请求。
10.根据权利要求6所述的一种降低固态硬盘随机读延迟的装置,其特征在于,所述加载单元包括响应模块、判断模块、清除模块以及等待模块;
所述响应模块,用于预加载映射缓存区响应数据加载指令;
所述判断模块,用于判断数据加载是否完成;
所述清除模块,用于自动清除对应valid flag;
所述等待模块,用于等待对应valid flag有效。
CN201810960579.4A 2018-08-22 2018-08-22 一种降低固态硬盘随机读延迟的方法及装置 Pending CN109101444A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810960579.4A CN109101444A (zh) 2018-08-22 2018-08-22 一种降低固态硬盘随机读延迟的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810960579.4A CN109101444A (zh) 2018-08-22 2018-08-22 一种降低固态硬盘随机读延迟的方法及装置

Publications (1)

Publication Number Publication Date
CN109101444A true CN109101444A (zh) 2018-12-28

Family

ID=64850790

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810960579.4A Pending CN109101444A (zh) 2018-08-22 2018-08-22 一种降低固态硬盘随机读延迟的方法及装置

Country Status (1)

Country Link
CN (1) CN109101444A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110175000A (zh) * 2019-05-24 2019-08-27 深圳忆联信息***有限公司 基于固态硬盘的读写性能提升方法、装置和计算机设备
CN110334034A (zh) * 2019-07-12 2019-10-15 深圳忆联信息***有限公司 映射表动态加载的方法、装置、计算机设备及存储介质
CN111124314A (zh) * 2019-12-25 2020-05-08 深圳忆联信息***有限公司 映射表动态加载的ssd性能提升方法、装置、计算机设备及存储介质
CN111563052A (zh) * 2020-04-30 2020-08-21 深圳忆联信息***有限公司 降低读延时的缓存方法、装置、计算机设备及存储介质
WO2022217637A1 (zh) * 2021-04-16 2022-10-20 中山市江波龙电子有限公司 存储装置及其数据处理方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719103A (zh) * 2009-11-25 2010-06-02 成都市华为赛门铁克科技有限公司 基于存储设备的信息处理方法以及存储设备
CN102012791A (zh) * 2010-10-15 2011-04-13 中国人民解放军国防科学技术大学 基于Flash的数据存储PCIE板卡
US20130060999A1 (en) * 2011-09-01 2013-03-07 Waremax Electronics Corp. System and method for increasing read and write speeds of hybrid storage unit
CN103049397A (zh) * 2012-12-20 2013-04-17 中国科学院上海微***与信息技术研究所 一种基于新型存储器的固态硬盘内部缓存管理方法及***
CN105159622A (zh) * 2015-10-22 2015-12-16 湖南国科微电子股份有限公司 一种减小ssd读写io时延的方法与***
CN106354664A (zh) * 2016-08-22 2017-01-25 浪潮(北京)电子信息产业有限公司 一种固态硬盘数据传输方法及装置
CN106649144A (zh) * 2015-10-29 2017-05-10 爱思开海力士有限公司 数据储存设备及其操作方法
CN106775466A (zh) * 2016-12-05 2017-05-31 深圳市金泰克半导体有限公司 一种无dram的ftl读缓存管理方法及装置
CN107562379A (zh) * 2017-08-28 2018-01-09 东莞记忆存储科技有限公司 一种提升固态存储设备读性能的方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719103A (zh) * 2009-11-25 2010-06-02 成都市华为赛门铁克科技有限公司 基于存储设备的信息处理方法以及存储设备
CN102012791A (zh) * 2010-10-15 2011-04-13 中国人民解放军国防科学技术大学 基于Flash的数据存储PCIE板卡
US20130060999A1 (en) * 2011-09-01 2013-03-07 Waremax Electronics Corp. System and method for increasing read and write speeds of hybrid storage unit
CN103049397A (zh) * 2012-12-20 2013-04-17 中国科学院上海微***与信息技术研究所 一种基于新型存储器的固态硬盘内部缓存管理方法及***
CN105159622A (zh) * 2015-10-22 2015-12-16 湖南国科微电子股份有限公司 一种减小ssd读写io时延的方法与***
CN106649144A (zh) * 2015-10-29 2017-05-10 爱思开海力士有限公司 数据储存设备及其操作方法
CN106354664A (zh) * 2016-08-22 2017-01-25 浪潮(北京)电子信息产业有限公司 一种固态硬盘数据传输方法及装置
CN106775466A (zh) * 2016-12-05 2017-05-31 深圳市金泰克半导体有限公司 一种无dram的ftl读缓存管理方法及装置
CN107562379A (zh) * 2017-08-28 2018-01-09 东莞记忆存储科技有限公司 一种提升固态存储设备读性能的方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110175000A (zh) * 2019-05-24 2019-08-27 深圳忆联信息***有限公司 基于固态硬盘的读写性能提升方法、装置和计算机设备
CN110334034A (zh) * 2019-07-12 2019-10-15 深圳忆联信息***有限公司 映射表动态加载的方法、装置、计算机设备及存储介质
CN110334034B (zh) * 2019-07-12 2021-10-26 深圳忆联信息***有限公司 映射表动态加载的方法、装置、计算机设备及存储介质
CN111124314A (zh) * 2019-12-25 2020-05-08 深圳忆联信息***有限公司 映射表动态加载的ssd性能提升方法、装置、计算机设备及存储介质
CN111563052A (zh) * 2020-04-30 2020-08-21 深圳忆联信息***有限公司 降低读延时的缓存方法、装置、计算机设备及存储介质
CN111563052B (zh) * 2020-04-30 2023-08-08 深圳忆联信息***有限公司 降低读延时的缓存方法、装置、计算机设备及存储介质
WO2022217637A1 (zh) * 2021-04-16 2022-10-20 中山市江波龙电子有限公司 存储装置及其数据处理方法

Similar Documents

Publication Publication Date Title
CN109101444A (zh) 一种降低固态硬盘随机读延迟的方法及装置
EP1540485B1 (en) Out of order dram sequencer
CN105243033A (zh) 数据处理方法及电子设备
CN113918101B (zh) 一种写数据高速缓存的方法、***、设备和存储介质
CN107305504B (zh) 数据储存装置、其控制单元及其任务排序方法
US20080229049A1 (en) Processor card for blade server and process.
US8914571B2 (en) Scheduler for memory
KR20170013697A (ko) 데이터 저장 장치, 및 이를 포함하는 데이터 처리 시스템
CN109213423B (zh) 基于地址屏障无锁处理并发io命令
CN110716691A (zh) 调度方法、装置、闪存设备和***
CN109634664A (zh) 一种cpu给硬件电路下发命令描述符的方法及装置
CN112882663A (zh) 一种随机写的方法、电子设备及存储介质
US6836831B2 (en) Independent sequencers in a DRAM control structure
TW202011203A (zh) 指令處理方法及使用所述方法的儲存控制器
KR100389104B1 (ko) 기록 커맨드를 수행하기 위한 방법 및 직접 액세스 저장장치
US8713204B2 (en) High-performance AHCI interface
CN106776390A (zh) 多设备访问存储器的实现方法
CN110334034A (zh) 映射表动态加载的方法、装置、计算机设备及存储介质
CN108388498B (zh) 内存中计算的功率建模方法及功率管理方法
CN107924370A (zh) 单一中断服务例程线程中处理关联于多个请求的返回实体的方法以及使用该方法的装置
CN106598742B (zh) 一种ssd主控内部负载均衡***及方法
CN111338567B (zh) 一种基于Protocol Buffer的镜像缓存方法
TWI646460B (zh) 資料處理電路與資料處理方法
US11822816B2 (en) Networking device/storage device direct read/write system
CN110908717B (zh) 指令处理方法及使用所述方法的存储控制器

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20181228

RJ01 Rejection of invention patent application after publication