一种固态硬盘预读取的方法及其装置的制作方法

文档序号:6519344阅读:739来源:国知局
专利名称:一种固态硬盘预读取的方法及其装置的制作方法
技术领域
本发明涉及电子信息领域,尤其涉及一种固态硬盘预读取的方法及其装置。
背景技术
SSD (Solid State Disk或Solid State Drive,固态硬盘),也称作电子硬盘或者 固态电子盘,其没有普通硬盘的旋转介质,因而抗震性极佳。固态硬盘的存储模块是单个的 Flash芯片,目前的Flash芯片的组织形式一般都是分两级block (块)和page (页)。页 的大小有1KB,2KB,4KB等,且随着工艺的发展,有增大的趋势;每一个块一般包含16、32、64 或更多的页。在主机需要从固态硬盘中读取一页数据时,主机需要给出的命令类似read(LPA, N),其中LPA (Logical Page Address,逻辑页地址)代表逻辑页地址,其取值范围从0_LPA_ MAX,其中LPA_MAX等于固态硬盘中用户所见的总页数。N代表从LPA开始需要连续写入的 页数。在固态硬盘内部,页的读取操作是以类似read(BlockNumber,PageNumber)的形式 给出的,其中BlockNumber是块地址,PageNumber是块内页地址。为方便表述起见,定义物 理页地址PPA = BlockNumber*每块的页数+PageNumber。由于主机给出的地址和固态硬 盘内的地址不同,另一方面,由于NAND(闪存)无法本地更新造成有效数据的位置经常会变 化,所以固态硬盘提供了一种地址映射机制,保证从主机给出的逻辑地址能够迅速、准确地 找到固态硬盘内对应的物理地址。读取固态硬盘采用的映射机制可以分为页映射、块映射 和混合映射三种。下表为页映射的地址映射表的一示例,表格中物理页地址栏中的数字仅用于说 明,不代表任何实际的映射关系。基于页映射的读取某一页的过程如下主机给出所需要读 取页的逻辑页地址,比如0002,固态硬盘控制器根据该逻辑地址,从映射表里查到逻辑页地 址为0002的项,则可以得到对应的物理页地址为0637 ;如果该页对应的有效位为1,则固态 硬盘可以根据这个物理页地址读取相应的内容,读取过程结束。如果有效位为0,则返回系 统“无法找到数据页”提示。
权利要求
一种固态硬盘预读取的方法,其特征在于,包括设置固态硬盘的预读取度值;根据所述预读取度值,读取所述固态硬盘存储的数据。
2.根据权利要求1所述的固态硬盘预读取的方法,其特征在于,所述设置固态硬盘的 预读取度值的步骤包括根据所述固态硬盘当前工作负载的情况,设置所述固态硬盘的预读取度值; 或者,根据所述固态硬盘当前工作负载变化的情况,调整所述固态硬盘的预读取度值。
3.根据权利要求2所述的固态硬盘预读取的方法,其特征在于,在所述根据所述固态 硬盘当前工作负载变化的情况,调整所述固态硬盘的预读取度值的步骤中,当所述固态硬 盘当前工作负载增大时,减小所述预读取度值;当所述固态硬盘当前工作负载减小时,增大 所述预读取度值。
4.根据权利要求1所述的固态硬盘预读取的方法,其特征在于,所述根据所述预读取 度值,读取所述固态硬盘存储的数据的步骤包括接收读取所述固态硬盘存储的数据的指令,根据所述指令中的第一组逻辑地址查找对 应的地址映射表中所述第一组逻辑地址对应的第一组物理地址,并读取所述第一组物理地 址下存储的第一组数据;查找紧邻所述第一组逻辑地址于所述预读取度值范围内的第二组逻辑地址,并根据所 述第二组逻辑地址查找对应的地址映射表中所述第二组逻辑对应的第二组物理地址,并读 取所述第二组物理地址下存储的第二组数据;将所述第一组数据和第二组数据返回到所述固态硬盘的缓存中。
5.一种固态硬盘预读取的装置,其特征在于,包括 设置模块,用于设置固态硬盘的预读取度值;预读取模块,用于根据所述预读取度值,读取所述固态硬盘存储的数据。
6.根据权利要求5所述的固态硬盘预读取的装置,其特征在于,所述设置 模块包括设置子模块,根据所述固态硬盘当前工作负载的情况,设置所述固态硬盘的预读取度值;设置调整子模块,根据所述固态硬盘当前工作负载变化的情况,调整所述固态硬盘的 预读取度值。
7.根据权利要求6所述的固态硬盘预读取的装置,其特征在于,所述设置调整子模块 在所述固态硬盘当前工作负载增大时,减小所述预读取度值;在所述固态硬盘当前工作负 载减小时,增大所述预读取度值。
8.根据权利要求5所述的固态硬盘预读取的装置,其特征在于,所述预读取模块包括 接收子模块,用于接收读取所述固态硬盘存储数据的指令;查找子模块,用于根据所述指令中的第一组逻辑地址查找对应的地址映射表中所述第 一组逻辑地址对应的第一组物理地址;以及查找紧邻所述第一组逻辑地址于所述预读取度 值范围内的第二组逻辑地址,并根据所述第二组逻辑地址查找对应的地址映射表中所述第 二组逻辑对应的第二组物理地址;读取子模块,用于读取所述第一组物理地址下存储的第一组数据;预读取子模块,用于读取 所述第二组物理地址下存储的第二组数据;存储子模块,用于将所述第一组数据和第二组数据返回到所述固态硬盘的缓存中。
全文摘要
本发明公开了一种固态硬盘预读取的方法及其装置,所述方法包括设置固态硬盘的预读取度值;根据所述预读取度值,读取所述固态硬盘存储的数据。借此,本发明提高了固态硬盘在连续数据读取时的效率。
文档编号G06F3/06GK101976182SQ20101054445
公开日2011年2月16日 申请日期2010年11月15日 优先权日2010年11月15日
发明者刘伟 申请人:记忆科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1