[发明专利]一种固态硬盘及其控制装置、系统、方法有效
申请号: | 201310022799.X | 申请日: | 2013-01-22 |
公开(公告)号: | CN103942005B | 公开(公告)日: | 2017-03-08 |
发明(设计)人: | 黎智;李欣;王灿;杨继涛;张琴;李程;向志华 | 申请(专利权)人: | 广东华晟数据固态存储有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F9/30 |
代理公司: | 广州粤高专利商标代理有限公司44102 | 代理人: | 林瑞云 |
地址: | 511457 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 固态 硬盘 及其 控制 装置 系统 方法 | ||
技术领域
本发明涉及计算机领域,尤其涉及一种固态硬盘及其对应的控制装置、控制系统和控制方法。
背景技术
固态硬盘(Nand Flash)由控制单元和存储单元(FLASH芯片)组成,简单的说就是用固态电子存储芯片阵列而制成的硬盘,固态硬盘的接口规范和定义、功能及使用方法上与普通硬盘的相同,在产品外形和尺寸上也与普通硬盘一致(参见中国专利申请“基于固态硬盘的计算机系统”CN201210000778.3)。
目前固态硬盘广泛应用于军事、车载、工控、视频监控、网络监控、网络终端、电力、医疗、航空、导航设备等领域。虽然目前成本较高,但也正在逐渐普及到DIY市场。固态硬盘相对于传统硬盘,具有速度快、响应延时低、抗震动、静音等优点。
但是由于存储介质的改变,需要根据固态硬盘的特性提供一些功能,供主机调用以获取高的性能及增加可靠性。这些功能一般都是采用Vendor Specific命令进行实现(参见中国专利申请“原生SATA的固态硬盘控制器”CN200810032053.6、美国专利“NAND flash memory”US8233325以及“Increased NAND flash memory read throughput”US8174892)。
但是在实际应用中,部分RAID卡、HBA卡、SPS(SATA Port Selector)芯片存在对ATA命令部分支持的情况,特别是对于ATA协议(ATA串行传输是一种高速的ATA协议。串行传输使用了G比特技术和8b/10b编码)中规定的Vendor Specific命令会出现不支持的情况。导致在这种主机环境下这些Vendor Specific命令无法下发,固态硬盘不能得到合适的配置,从而不能发挥出应有的性能及获得可靠性的提升。
即使在支持Vendor Specific命令的主机环境中。由于SATA(Serial Advanced Technology Attachment,一种基于行业标准的串行硬件驱动器接口)协议规定,NCQ(Native Command Queue)命令和非NCQ命令不能混合执行,当下发这些为固态硬盘设计的Vendor Specific命令时,必须先停止业务(即NCQ命令),这样会造成性能的短暂下降。
发明内容
为解决上述现有技术中存在的技术问题,本发明提供一种固态硬盘及其对应的控制装置、控制系统和控制方法,本发明提供的技术方案主要是利用NCQ命令下发Vendor Specific指令代码,在不支持Vendor Specific命令的主机环境上同样实现Vendor Specific命令对应的功能,从而避免在某些主机环境上无法下发Vendor Specific命令的情况。同时本发明提供的技术方案可以将下发Vendor Specific命令对固态硬盘性能造成的影响降到最低程度,保证固态硬盘在各种环境下均可以按照设计目的获得高的性能和良好的可靠性。
为解决上述技术问题,本发明提供一种固态硬盘控制方法,包括:
创建一条原生命令队列NCQ,并将设定的Vendor Specific指令代码写入到NCQ命令的LBA Field字段;
向固态硬盘下发携带有所述Vendor Specific指令代码的NCQ命令;
所述固态硬盘接收所述NCQ命令后,解析其LBA Field字段,并判断所述LBA Field字段是否携带Vendor Specific指令代码;
若所述判断为是,则根据所述Vendor Specific指令代码执行相应的操作,并反馈执行结果。
其中,所述判断所述LBA Field字段是否携带Vendor Specific指令代码之后还包括:若所述判断为否,则进一步判断所述LBA Field字段是否在所述固态硬盘的读写范围内;
若判断为是,则执行相应读写操作,包括:读取固态硬盘上的相应数据和/或将相应数据写入固态硬盘;若判断为否,则反馈命令失败。
其中,所述NCQ命令包括:READ FPDMA QUEUED命令和/或WRITE FPDMA QUEUED命令;
所述NCQ命令的LBA Field字段的有效值为48Bit,并定义0xFFFFFFFFF00-0xFFFFFFFFFFFF的范围为Vendor Specific指令代码。
其中,所述固态硬盘接收所述NCQ命令后,解析其LBA Field字段,并判断所述LBA Field字段是否携带Vendor Specific指令代码,包括
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东华晟数据固态存储有限公司,未经广东华晟数据固态存储有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310022799.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种粘胶纤维工业废水处理方法及装置
- 下一篇:一种去除污水总氮的处理方法