专利名称:一种实现硬盘状态点灯的方法、装置及存储系统的制作方法
技术领域:
本发明涉及计算机领域,尤其涉及一种实现硬盘状态点灯的方法、装置及存储系统。
背景技术:
存储系统中使用大量的硬盘,每个硬盘都要求有对应的硬盘指示灯来指示硬盘的各种状态。一般而言,当硬盘的链路没有连接(LINK)时指示灯灭,当硬盘链路LINK时指示灯长亮,当硬盘正在进行数据传输时指示灯快速闪烁。目前常用的实现硬盘状态点灯的方案有如下两种 方式一,通过串行连接小型计算机系统界面(Serial Attached SCSI,SAS)控制器,或者串行高级技术附件(Serial Advanced Technology Attachment, SATA)控制器产生。该方案实现的前提是硬盘控制器提供了相关指示灯信号。一般存储系统中都会用背板来连接硬盘,这样在硬盘较多的情况,需要较多的走线,主背板间连接器也需要较多的引脚,从而样会增加成本及设计复杂度。方式二,通过硬盘的READY LED信号来驱动硬盘指示灯。与硬盘连接的硬盘驱动器会根据硬盘的数据传输状态提供该READY LED信号,该READY LED信号为高低电平信号,通过将该高低电平信号输出到硬盘指示灯,能够控制硬盘指示灯的开启或关闭。该方案不需要从硬盘控制器上连接大量的走线,可简化设计。另外,即使在控制器不方便将点灯信号引出的情况下,也能采用该方案。根据硬盘类型的不同,与该硬盘连接的硬盘驱动器输出的READY LED信号的状态可能不相同。例如,SATA规范定义该信号为设备活动(Activity)输出,即有数据传输时输出。根据不同的厂家的实现,有数据传输时输出的可能为低电平信号(硬盘指示灯亮),也可能高低交替电平信号(硬盘指示灯闪烁);没有数据传输时为高电平信号(硬盘指示灯灭)。SAS规范定义该信号为设备准备好(Ready)输出或者设备Activity输出,根据READY LED含义位(READY LED MEANING bit)的设置不同,分别定义如下READY LED MEANING bit为0 :设备准备好后信号为低电平(硬盘指示灯亮),有数据传输时为高低交替电平信号(硬盘指示灯闪烁),设备没有准备好时为高电平(硬盘指示灯灭)。READY LED MEANING bit为I :只有在有数据传输时为高低交替电平信号(硬盘指示灯闪烁),没有数据传输时为高电平(硬盘指示灯灭)。由于存储系统中一般会使用大量的硬盘,而硬盘的类型有可能不相同,这样,就有可能造成对于同样的硬盘状态,硬盘指示灯的指示状态不相同,给用户的使用造成困惑。例如,对于SATA硬盘,在进行数据传输时,其指示灯可能长亮,而对于SAS硬盘,当READY LEDMEANING bit为O时,设备准备好但没有进行数据传输,其指示灯也是长亮。而且,即使使用的是相同类型的硬盘,例如使用的都是SATA硬盘,也有可能存在由于生产厂家的不同,造成对于同样的硬盘状态,硬盘指示灯的指示状态也不相同,例如,硬盘在进行数据传输时,硬盘指示灯有可能为长亮或者闪烁,而且指示灯的闪烁频率也可能不一致,甚至可能因为闪烁太快而看上去是长亮的。
发明内容
有鉴于此,本发明的目的是提供一种实现硬盘状态点灯的方法、装置及存储系统,使得在包括多个硬盘的存储系统中,处于相同状态的硬盘对应的硬盘指示灯的指示状态相同。为实现上述目的,本发明提供技术方案如下一种实现硬盘状态点灯的方法,应用于具有多个硬盘的存储系统中,所述方法包括获取硬盘的类型信息;
当硬盘的类型为SAS硬盘时,将该硬盘对应的READY LED含义位置位;获取硬盘的READY LED信号;当硬盘的READY LED信号为固定低电平或者高低交替电平时,根据所述READY LED信号生成预定频率、高低交替电平的第一驱动信号,以驱动硬盘指示灯按照预定频率闪烁。一种实现硬盘状态点灯的装置,应用于具有多个硬盘的存储系统中,所述装置包括第一获取模块,用于获取硬盘的类型信息;置位模块,用于当硬盘的类型为SAS硬盘时,将该硬盘对应的READYLED含义位置位;第二获取模块,用于获取硬盘的READY LED信号;驱动模块,用于当硬盘的READY LED信号为固定低电平或者高低交替电平时,根据所述READY LED信号生成预定频率、高低交替电平的第一驱动信号,以驱动硬盘指示灯按照预定频率闪烁。与现有技术相比,本发明通过将存储系统中不同类型硬盘的READYLED信号所表示的含义调整为一致,并对READY LED信号进行转换得到驱动信号,由所述驱动信号来驱动硬盘指示灯,如此,能够使得在包括多个硬盘的存储系统中,处于相同状态的硬盘对应的硬盘指示灯的指示状态相同,从而方便用户的使用。
图I是本发明实施例的实现硬盘状态点灯的方法流程图;图2是READY LED信号为固定高电平时的硬盘指示灯输出示意图;图3是READY LED信号为固定低电平时的硬盘指示灯输出示意图;图4是READY LED信号为高低交替电平时的硬盘指示灯输出示意图。图5是本发明实施例的实现硬盘状态点灯的装置结构图。
具体实施例方式以下结合附图对本发明进行详细描述。针对现有技术中存在的处于相同状态的硬盘,但硬盘指示灯的指示状态可能不相同的问题,本发明实施例提供一种实现硬盘状态点灯的方法、装置及存储系统,通过将存储系统中不同类型硬盘的READY LED信号所表示的含义调整为一致,并对READY LED信号进行转换得到驱动信号,由所述驱动信号来驱动硬盘指示灯,如此,能够使得在包括多个硬盘的存储系统中,处于相同状态的硬盘对应的硬盘指示灯的指示状态相同。图I是本发明实施例的实现硬盘状态点灯的方法流程图。参照图1,所述方法可以包括如下步骤步骤101,获取硬盘的类型信息;本发明实施例的方法可以应用于具有多个硬盘的存储系统中。所述多个硬盘中包括SAS硬盘和SATA硬盘。在本步骤中,所述类型信息的获取方式为,从硬盘中读取该硬盘的硬件描述信息,根据该硬件描述信息确定硬盘的类型信息。步骤102,当硬盘的类型为SAS硬盘时,将该硬盘对应的READY LED含义位置位;如前所述,SATA规范定义READY LED信号为设备Activity输出,即有数据传输时输出;而SAS规范定义READY LED信号为设备Ready输出或者设备Activity输出,具体地,当 READY LED MEANING bit 为 0 时表示设备 Ready 输出,当 READY LED MEANING bit 为 I(即置位)时表不设备Activity输出。因此,本步骤中,在获取到硬盘的类型信息后,当确定该硬盘为SAS硬盘时,将该硬盘对应的READY LED MEANING bit进行置位,当确定该硬盘为SATA硬盘时,则不处理。这样,就将SAS硬盘和SATA硬盘的READYLED信号所表示的含义调整为一致,即不论是SAS硬盘还是SATA硬盘,READY LED信号均为设备Activity输出。这样,就能够避免将SATA硬盘的数据传输状态与READY LED MEANING bit为0的SAS硬盘的设备准备好状态相混淆。步骤103,获取硬盘的READY LED信号;可以从与该硬盘连接的硬盘驱动器中获取该硬盘对应的READY LED信号,并将该READY LED信号输出到逻辑可编程器件或者其他可编程器件中。步骤104,当硬盘的READY LED信号为固定低电平或者高低交替电平时,根据所述READY LED信号生成预定频率、高低交替电平的第一驱动信号,以驱动硬盘指示灯按照预定频率闪烁。根据硬盘传输状态的不同,硬盘驱动器输出的READY LED信号可能有三种情况固定低电平、固定高电平和高低交替电平。固定低电平是指在预定时长内READY LED信号保持为低电平,固定高电平是指在预定时长内READY LED信号保持为低电平,高低交替电平是指READY LED信号按照一定频率在高电平和低电平之间转换。如前所述,对于SAS硬盘,将该硬盘对应的READY LED MEANING bit进行置位后,当硬盘在进行数据传输时,READY LED信号为高低交替电平,没有进行数据传输时,READY LED信号为固定高电平。对于SATA硬盘,当硬盘在进行数据传输时,READY LED信号可能为高低交替电平,也可能为固定低电平,没有进行数据传输时,READY LED信号为固定高电平。与现有技术直接用READY LED信号驱动硬盘指示灯不同,本发明实施例将READYLED信号进行转换,根据转换得到的驱动信号来驱动硬盘指示灯。在本步骤中,不论硬盘的READY LED信号为固定低电平还是高低交替电平时,都根据所述READY LED信号生成第一驱动信号,通过所述第一驱动信号来驱动硬盘指示灯按照预定频率闪烁。这样,对于不同厂家的硬盘,可以使得其在进行数据传输时,硬盘指示灯的闪烁相同。
可以通过软件处理来生成所述第一驱动信号,也可以通过硬件,例如,通过逻辑可编程器件或者其他可编程器件来生成所述第一驱动信号。不论是软件实现还是硬件实现,都可以采用如下实现方式启动一个2比特的计数器;当所述READY LED信号由高电平跳变为低电平时,将所述计数器清0,并按照所述预定频率将所述计数器的计数值增加I ;将所述第一驱动信号的逻辑幅值设置为所述计数器的高位计数值,例如,当计数器的高位计数值为I时,将所述第一驱动信号的逻辑幅值设置为1,即该第一驱动信号当前为高电平;当计数器的高位计数值为O时,将所述第一驱动信号的逻辑幅值设置为0,即该第一驱动信号当前为低电平。这样,不论READY LED信号是固定低电平还是高低交替电 平,都将其转换为预定频率的高低电平。需要说明的是,该预定频率可以和高低交替电平的READYLED信号的频率相同,也可以不同,也就是说,不管READY LED信号的频率是多少,都可以统一转换为预定频率。这里,由于第一驱动信号为高低电平信号,其具体的信号值是O和I 二者中的一个,为便于描述,在本文中将其定义为第一驱动信号的逻辑幅值,即第一驱动信号的逻辑幅值要么是1,要么是O。当然,本领域技术人员也可以采用其他方式来生成所述第一驱动信号。其中,所述预定频率可以根据需要进行选择,例如可以为IOHf20Hz。根据步骤102,SAS硬盘和SATA硬盘的READY LED信号均为设备Activity输出,即硬盘处于非数据传输状态时,READY LED信号为固定高电平,因此,上述方法还可以包括当硬盘的READY LED信号为固定高电平时,根据所述READY LED信号生成低电平的第二驱动信号,以点亮硬盘指示灯。可以根据仿真波形来体现上述方法的实施效果,具体请参照图2 图4。图中,HDD_LED_IN为硬盘的READY LED信号,LED_G_N为硬盘指示灯输出,高电平有效,CLK为复杂可编程逻辑器件(CPLD)工作时钟,PULSE_16HZ为低频采样时钟。图中LED_G_N是快速脉冲,由于人眼的余辉效应,实际看到的是一个稳定的状态。对应于上述方法,本发明实施例还提供一种实现硬盘状态点灯的装置,所述装置应用于具有多个硬盘的存储系统中。参照图5,所述装置可以包括第一获取模块10,用于获取硬盘的类型信息;置位模块20,用于当硬盘的类型为SAS硬盘时,将该硬盘对应的READYLED含义位置位;第二获取模块30,用于获取硬盘的READY LED信号;驱动模块40,用于当硬盘的READY LED信号为固定低电平或者高低交替电平时,根据所述READY LED信号生成预定频率、高低交替电平的第一驱动信号,以驱动硬盘指示灯按照预定频率闪烁。可选地,所述驱动模块40还可以用于当硬盘的READY LED信号为固定高电平时,根据所述READY LED信号生成低电平的第二驱动信号,以点亮硬盘指示灯。可选地,所述驱动模块40中包括第一驱动子模块(图未示),用于启动一个2比特的计数器;
当所述READY LED信号跳变为低电平时,将所述计数器清0,并按照所述预定频率将所述计数器的计数值增加I ;将所述第一驱动信号的逻辑幅值设置为所述计数器的高位计数值。其中,所述预定频率可以根据需要进行选择,例如可以为IOHf20Hz。另外,本发明实施例还提供一种存储系统,所述存储系统包括上述的实现硬盘状态点灯的装置。综上所述,本发明通过将存储系统中不同类型硬盘的READY LED信号所表示的含义调整为一致,并对READY LED信号进行转换得到驱动信号,由所述驱动信号来驱动硬盘指示灯,如此,能够使得在包括多个硬盘的存储系统中,处于相同状态的硬盘对应的硬盘指示灯的指示状态相同,从而方便用户的使用。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.一种实现硬盘状态点灯的方法,应用于具有多个硬盘的存储系统中,其特征在于,所述方法包括 获取硬盘的类型信息; 当硬盘的类型为SAS硬盘时,将该硬盘对应的READY LED含义位置位; 获取硬盘的READY LED信号; 当硬盘的READY LED信号为固定低电平或者高低交替电平时,根据所述READY LED信号生成预定频率、高低交替电平的第一驱动信号,以驱动硬盘指示灯按照预定频率闪烁。
2.如权利要求I所述的方法,其特征在于,还包括 当硬盘的READY LED信号为固定高电平时,根据所述READY LED信号生成低电平的第二驱动信号,以点亮硬盘指示灯。
3.如权利要求I或2所述的方法,其特征在于,所述当硬盘的READYLED信号为固定低电平或者高低交替电平时,根据所述READY LED信号生成第一驱动信号,具体包括 启动一个2比特的计数器; 当所述READY LED信号跳变为低电平时,将所述计数器清O,并按照所述预定频率将所述计数器的计数值增加I ; 将所述第一驱动信号的逻辑幅值设置为所述计数器的高位计数值。
4.如权利要求3所述的方法,其特征在于 所述预定频率为IOHz 20Hz。
5.一种实现硬盘状态点灯的装置,应用于具有多个硬盘的存储系统中,其特征在于,所述装置包括 第一获取模块,用于获取硬盘的类型信息; 置位模块,用于当硬盘的类型为SAS硬盘时,将该硬盘对应的READYLED含义位置位; 第二获取模块,用于获取硬盘的READY LED信号; 驱动模块,用于当硬盘的READY LED信号为固定低电平或者高低交替电平时,根据所述READY LED信号生成预定频率、高低交替电平的第一驱动信号,以驱动硬盘指示灯按照预定频率闪烁。
6.如权利要求5所述的装置,其特征在于,所述驱动模块还用于 当硬盘的READY LED信号为固定高电平时,根据所述READY LED信号生成低电平的第二驱动信号,以点亮硬盘指示灯。
7.如权利要求4或5所述的装置,其特征在于,所述驱动模块中包括第一驱动子模块,用于 启动一个2比特的计数器; 当所述READY LED信号跳变为低电平时,将所述计数器清0,并按照所述预定频率将所述计数器的计数值增加I ; 将所述第一驱动信号的逻辑幅值设置为所述计数器的高位计数值。
8.如权利要求7所述的装置,其特征在于 所述预定频率为IOHz 20Hz。
9.一种存储系统,其特征在于,包括如权利要求5-8中任一项所述的实现硬盘状态点灯的装置。
全文摘要
本发明提供一种实现硬盘状态点灯的方法、装置及存储系统,属于计算机领域。所述方法应用于具有多个硬盘的存储系统中,所述方法包括获取硬盘的类型信息;当硬盘的类型为SAS硬盘时,将该硬盘对应的READY LED含义位置位;获取硬盘的READY LED信号;当硬盘的READY LED信号为固定低电平或者高低交替电平时,根据所述READY LED信号生成预定频率、高低交替电平的第一驱动信号,以驱动硬盘指示灯按照预定频率闪烁。根据本发明,能够使得在包括多个硬盘的存储系统中,处于相同状态的硬盘对应的硬盘指示灯的指示状态相同。
文档编号G06F11/32GK102929766SQ20121041202
公开日2013年2月13日 申请日期2012年10月24日 优先权日2012年10月24日
发明者黄金海, 梁红伟, 许勇, 陈清海, 陈莹 申请人:浙江宇视科技有限公司