CN107168653A - 一种提高固态硬盘中只读性能的方法及固态硬盘 - Google Patents
一种提高固态硬盘中只读性能的方法及固态硬盘 Download PDFInfo
- Publication number
- CN107168653A CN107168653A CN201710371739.7A CN201710371739A CN107168653A CN 107168653 A CN107168653 A CN 107168653A CN 201710371739 A CN201710371739 A CN 201710371739A CN 107168653 A CN107168653 A CN 107168653A
- Authority
- CN
- China
- Prior art keywords
- read
- solid state
- hard disc
- state hard
- sata
- 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.)
- Granted
Links
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/061—Improving I/O performance
-
- 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/0674—Disk device
- G06F3/0676—Magnetic disk device
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)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明公开了一种提高固态硬盘中只读性能的方法及固态硬盘,其特征在固态硬盘中增加只读操作通道,具体为在FTL中增设一个地址映射接口,所述地址映射接口实现将读操作的地址映射为NFC的读地址,SATA接收到只读操作指令时调用地址映射接口获取只读操作指令对应的NFC地址,再直接将读取指令发送给NFC,NFC根据SATA的读取指令读取存储空间中的数据,直接反馈给SATA。通过识别只读操作并针对只读操作简化硬盘数据读取流程,减少FTL的处理时间,大大提升了只读性能。
Description
技术领域
本发明涉及固态硬盘控制技术,特别涉及一种提高固态硬盘中只读性能的方法及固态硬盘。
背景技术
主机对SATA固态硬盘(SSD)的操作包括读和写,因此在设计固态硬盘的固件(控制软件)的时将系统分为三大模块:接口SATA(以SATA接口为例说明)、FTL(Flashtranslation layer)闪存转换层和NandFlash控制器NFC,模块之间通过FIFO交互。图1是常规固件拓补结构,主机发起的读命令请求首先进入SATA,转译之后进入FTL,计算出映射地址后进入NFC,读出数据后返回FTL,再返回SATA后完成。
当主机只存在只读场景时主机只下发读命令。在只读场景下这种设计不是很高效,缺陷一:三大模块运转都需要占CPU资源;缺陷二:模块间的请求传递采用FIFO机制,因为互斥锁的存在,操作FIFO会有一定的延迟,延迟较高。因此常规固件拓扑结构在只读场景下的延时较大,性能具有较大的提升空间。
发明内容
针对以上缺陷,本发明目的如何提升固态硬盘在只读场景下的访问速度。
为了解决以上问题本发明提出了一种提高固态硬盘中只读性能的方法,其特征在固态硬盘中增加只读操作通道,具体为在FTL中增设一个地址映射接口,所述地址映射接口实现将读操作的地址映射为NFC的读地址,SATA接收到只读操作指令时调用地址映射接口获取只读操作指令对应的NFC地址,再直接将读取指令发送给NFC,NFC根据SATA的读取指令读取存储空间中的数据,直接反馈给SATA。
所述的提高固态硬盘中只读性能的方法,其特征在于SATA与NFC通过下行信号量和上行信号量进行同步。
所述的提高固态硬盘中只读性能的方法,其特征在于SATA调用地址映射接口前增加判断FTL当前是否属于暂停状态,如果是则直接调用,如果不是则向FTL发送暂停请求,FTL接收到暂停请求后,执行完SATA已经下发的操作指令后将状态设置为暂停状态,所述暂停状态时FTL可以响应地址映射接口的调用。
所述的提高固态硬盘中只读性能的方法,其特征在于固态硬盘或者主机中还包括只读识别模块,用于预估当前主机是否存在大量的只读操作。
所述的提高固态硬盘中只读性能的方法,其特征在于主机中设有专门只读接口函数,上层应用判断当前存在大量只读操作时,调用专门只读接口函数访问固态硬盘;固态硬盘的SATA接收到只读接口函数时,触发并通过只读操作通道读取固态硬盘数据。
一种固态硬盘,其特在在于采用了权利要求1至5任意一项所述的提高固态硬盘中只读性能的方法。
本发明通过识别只读操作并针对只读操作简化硬盘数据读取流程,减少FTL的处理时间,大大提升了只读性能。
附图说明
图1是常规固件拓补结构;
图2是改进后具体实施例一的固件拓扑结构。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
通过分析现有的固态硬盘读数据的处理流程,发现在只读操作时FTL模块此时只需提供地址映射功能,并不需要FTL提供额外的其它处理,为了这个单一的功能运行整个模块比较浪费。针对该情况在固态硬盘中增加只读操作通道,具体为通过改造FTL,在FTL中增设一个地址映射接口,地址映射接口只须实现将读操作的地址映射为NFC的读地址,SATA接收到只读操作指令时调用地址映射接口获取只读操作指令对应的NFC地址,再直接将读取指令发送给NFC,NFC根据SATA的读取指令读取存储空间中的数据,直接反馈给SATA。
图2是改进后具体实施例一的固件拓扑结构,在只读模式通过只读操作通道访问固态硬盘。暂停FTL模块的运行,以此来提升通道的运转效率,最终提升只读性能。通道中只有两个F I FO,而且FTL将不再占用CPU资源。还必须兼顾到暂停FTL不能影响用户数据和内部管理数据,所以暂停FTL要满足两个条件:1).SATA必须等到之前下发到FTL的请求都回到SATA,这样就不会影响用户数据。2).SATA必须等到FTL暂停内部处理,这样就不会影响内部管理数据。因此在SATA调用地址映射接口前增加判断FTL当前是否属于暂停状态,如果是则直接调用,如果不是则向FTL发送暂停请求,FTL接收到暂停请求后,执行完SATA已经下发的操作指令后将状态设置为暂停状态,所述暂停状态时FTL可以响应地址映射接口的调用。
同时在固态硬盘或者主机中还增加设置只读识别模块,用于预估当前主机是否存在大量的只读操作。
优选在主机中设有专门只读接口函数,因为上层应用更清楚其应用场景,在存在大量只读的场景中主动触发和调用专门只读接口函数访问固态硬盘;固态硬盘的SATA接收到只读接口函数时,触发并通过只读操作通道读取固态硬盘数据。减少固体硬盘内部状态的切换频率,也更有针对性,效果更优。
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。
Claims (6)
1.一种提高固态硬盘中只读性能的方法,其特征在固态硬盘中增加只读操作通道,具体为在FTL中增设一个地址映射接口,所述地址映射接口实现将读操作的地址映射为NFC的读地址,SATA接收到只读操作指令时调用地址映射接口获取只读操作指令对应的NFC地址,再直接将读取指令发送给NFC,NFC根据SATA的读取指令读取存储空间中的数据,直接反馈给SATA。
2.根据权利要求1所述的提高固态硬盘中只读性能的方法,其特征在于SATA与NFC通过下行信号量和上行信号量进行同步。
3.根据权利要求2所述的提高固态硬盘中只读性能的方法,其特征在于SATA调用地址映射接口前增加判断FTL当前是否属于暂停状态,如果是则直接调用,如果不是则向FTL发送暂停请求,FTL接收到暂停请求后,执行完SATA已经下发的操作指令后将状态设置为暂停状态,所述暂停状态时FTL可以响应地址映射接口的调用。
4.根据权利要求3所述的提高固态硬盘中只读性能的方法,其特征在于固态硬盘或者主机中还包括只读识别模块,用于预估当前主机是否存在大量的只读操作。
5.根据权利要求4所述的提高固态硬盘中只读性能的方法,其特征在于主机中设有专门只读接口函数,上层应用判断当前存在大量只读操作时,调用专门只读接口函数访问固态硬盘;固态硬盘的SATA接收到只读接口函数时,触发并通过只读操作通道读取固态硬盘数据。
6.一种固态硬盘,其特在在于采用了权利要求1至5任意一项所述的提高固态硬盘中只读性能的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710371739.7A CN107168653B (zh) | 2017-05-24 | 2017-05-24 | 一种提高固态硬盘中只读性能的方法及固态硬盘 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710371739.7A CN107168653B (zh) | 2017-05-24 | 2017-05-24 | 一种提高固态硬盘中只读性能的方法及固态硬盘 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107168653A true CN107168653A (zh) | 2017-09-15 |
CN107168653B CN107168653B (zh) | 2020-09-01 |
Family
ID=59820835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710371739.7A Active CN107168653B (zh) | 2017-05-24 | 2017-05-24 | 一种提高固态硬盘中只读性能的方法及固态硬盘 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107168653B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108132760A (zh) * | 2018-01-19 | 2018-06-08 | 湖南国科微电子股份有限公司 | 一种提升ssd读性能的方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100217920A1 (en) * | 2009-02-26 | 2010-08-26 | Samsung Electronics Co., Ltd. | Memory system and address allocating method of flash translation layer thereof |
CN102541760A (zh) * | 2012-01-04 | 2012-07-04 | 记忆科技(深圳)有限公司 | 基于固态硬盘的计算机系统 |
CN102915212A (zh) * | 2012-09-19 | 2013-02-06 | 记忆科技(深圳)有限公司 | 一种固态硬盘的raid实现方法、固态硬盘及电子设备 |
CN106469126A (zh) * | 2015-08-12 | 2017-03-01 | 北京忆恒创源科技有限公司 | 处理io请求的方法及其存储控制器 |
CN106649129A (zh) * | 2016-09-28 | 2017-05-10 | 深圳市金泰克半导体有限公司 | 一种基于ftl的具有版本管理功能的固态硬盘及其实现方法 |
-
2017
- 2017-05-24 CN CN201710371739.7A patent/CN107168653B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100217920A1 (en) * | 2009-02-26 | 2010-08-26 | Samsung Electronics Co., Ltd. | Memory system and address allocating method of flash translation layer thereof |
CN102541760A (zh) * | 2012-01-04 | 2012-07-04 | 记忆科技(深圳)有限公司 | 基于固态硬盘的计算机系统 |
CN102915212A (zh) * | 2012-09-19 | 2013-02-06 | 记忆科技(深圳)有限公司 | 一种固态硬盘的raid实现方法、固态硬盘及电子设备 |
CN106469126A (zh) * | 2015-08-12 | 2017-03-01 | 北京忆恒创源科技有限公司 | 处理io请求的方法及其存储控制器 |
CN106649129A (zh) * | 2016-09-28 | 2017-05-10 | 深圳市金泰克半导体有限公司 | 一种基于ftl的具有版本管理功能的固态硬盘及其实现方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108132760A (zh) * | 2018-01-19 | 2018-06-08 | 湖南国科微电子股份有限公司 | 一种提升ssd读性能的方法及系统 |
CN108132760B (zh) * | 2018-01-19 | 2021-03-12 | 湖南国科微电子股份有限公司 | 一种提升ssd读性能的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107168653B (zh) | 2020-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10783086B2 (en) | Method and apparatus for increasing a speed of accessing a storage device | |
US20240139621A1 (en) | Server and Data Processing Method, Apparatus, and System | |
EP3660686B1 (en) | Method and device for transmitting data processing request | |
EP3958121A1 (en) | Architecture and method for managing interrupts in a virtualized environment | |
US20130044071A1 (en) | Method and mobile terminal for automatically recognizing a rotation gesture | |
CN112559407B (zh) | Stp链路层状态机优化方法 | |
WO2014117682A1 (en) | Method, apparatus and terminal for releasing memory | |
CN102520792A (zh) | 用于网络浏览器的语音式交互方法 | |
CN107168653A (zh) | 一种提高固态硬盘中只读性能的方法及固态硬盘 | |
CN101826031A (zh) | 基于Linux系统的PCM流捕获的实现方法 | |
CN107209716A (zh) | 内存管理装置和方法 | |
CN103472065A (zh) | 一种钢板表面图像采集及数据传输方法 | |
US20060095630A1 (en) | Serial attached small computer system interface (SAS) connection emulation for direct attached serial advanced technology attachemnt (SATA) | |
CN101056316A (zh) | 一种pci以太网媒体访问控制器传输数据的方法 | |
CN102135857A (zh) | 应用开启的控制方法及终端 | |
CN106200866A (zh) | 一种应用冻结方法及移动终端 | |
CN104572485A (zh) | 双系统共用内存的分配方法及装置 | |
CN103838694A (zh) | 一种fpga高速读取usb接口数据的方法 | |
WO2023010879A1 (zh) | 内存管理方法、装置和计算机设备 | |
WO2021129489A1 (zh) | 应用程序预编译的方法、装置、电子设备及存储介质 | |
WO2021129339A1 (zh) | 配置文件处理方法、装置、电子设备及存储介质 | |
CN102023822B (zh) | 对主机清缓存的方法及系统 | |
WO2021035394A1 (zh) | 分布式人工智能应用数据加速方法、系统及计算机设备 | |
CN112188469B (zh) | 策略控制方法、装置及计算机可读存储介质 | |
CN102681951A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |