一种硬盘的Active灯定频闪烁控制系统及控制方法与流程

文档序号:11432172阅读:785来源:国知局
一种硬盘的Active灯定频闪烁控制系统及控制方法与流程

本发明涉及硬盘领域,尤其涉及一种硬盘的active灯定频闪烁控制系统及控制方法。



背景技术:

随着服务器对存储量要求的不断提高,多硬盘搭载是当今的一大发展方向。activityled作为硬盘活动的指示信号,对研发人员及客户具有重要提示作用。在现有的硬盘背板设计中,activityled指示信号直接由硬盘输出作为activityled的控制信号;如图1所示。不同硬盘存在activityled信号方波频率多样性和不一致的问题,存在闪烁过快人眼无法识别的和闪烁速率不一致的情况,从而影响客户判断。



技术实现要素:

为了克服上述现有技术中的不足,本发明提供一种硬盘的active灯定频闪烁控制系统,包括:硬盘边沿检测模块、闪烁频率控制模块,输出控制模块,多个led灯;

硬盘边沿检测模块与闪烁频率控制模块连接,硬盘边沿检测模块用于根据检测硬盘的activity边沿,获取硬盘读写动作信息,并将硬盘的activity边沿信息发送给闪烁频率控制模块;

闪烁频率控制模块与输出控制模块连接,闪烁频率控制模块用于接收硬盘的activity边沿,通过内置计数器计量硬盘的每个activity边沿,当硬盘处于activity边沿时,控制信号act_out处于低电平,硬盘处于非activity边沿时,控制信号act_out处于初始状态,初始状态为高电平;

输出控制模块实时检测act_out电平状态,当act_out处于低电平时,控制led灯亮;当act_out处于高电平时,控制led灯灭。

优选地,闪烁频率控制模块采用cpld或fpga。

优选地,还包括:检验起止控制模块;

检验起止控制模块与闪烁频率控制模块连接,检验起止控制模块用于通过计时器对硬盘边沿的检测进行累积计时,当在预设的检测时间内未检测到硬盘的activity电平变化时,判断硬盘停止读写动作,向闪烁频率控制模块发送硬盘停止读写动作信息,使闪烁频率控制模块的控制信号act_out处于高电平,输出控制模块控制led灯停止闪烁。

优选地,硬盘边沿检测模块设有寄存器,寄存器用于锁存硬盘activity的上升沿与下降沿。

优选地,硬盘边沿检测模块采用fsm状态机。

一种硬盘的active灯定频闪烁控制方法,控制方法包括:

硬盘边沿检测模块初始处于空闲状态,闪烁频率控制模块的控制信号act_out处于高电平等待状态;

硬盘边沿检测模块检测硬盘activity的边沿,当硬盘边沿检测模块检测到硬盘activity下降沿时,确定硬盘开始读写动作,将硬盘的activity下降沿发送给闪烁频率控制模块;

闪烁频率控制模块接收硬盘的activity下降沿,通过内置计数器计量硬盘的每个activity下降沿,当硬盘处于activity下降沿时,控制信号act_out处于低电平,硬盘处于非activity下降沿时,控制信号act_out处于高电平;

输出控制模块实时检测act_out电平状态,当act_out处于低电平时,控制led灯亮;当act_out处于高电平时,控制led灯灭。

优选地,控制方法还包括:硬盘边沿检测模块在检测硬盘activity下降沿的同时,检验起止控制模块通过计时器对硬盘activity下降沿的检测进行累积计时,当在预设的检测时间内检测到硬盘的activity电平未发生变化时,判断硬盘停止读写动作,向闪烁频率控制模块发送硬盘停止读写动作信息,

闪烁频率控制模块的控制信号act_out被拉高,进入高电平等待状态;

输出控制模块控制led灯停止闪烁;

硬盘边沿检测模块初始处于空闲状态。

从以上技术方案可以看出,本发明具有以下优点:

硬盘的active灯定频闪烁控制系统及方法将硬盘的activity信号输入到cpld/fpga,cpld/fpga经过内部逻辑判断与处理,输出驱动led灯亮灭以及固定闪烁频率,防止各种硬盘led灯闪烁频率不一致给用户造成误判断。同时,为避免跨时钟域造成的停止误判断与亚稳态问题,通过计数器对停止位进行累积判断和以及寄存器锁存输出active灯控制信号。

附图说明

为了更清楚地说明本发明的技术方案,下面将对描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为现有技术示意图;

图2为硬盘的active灯定频闪烁控制系统的整体示意图;

图3为硬盘activity实际波形与频率变化图;

图4为边沿检测及停止校验示意图;

图5为硬盘的active灯定频闪烁控制方法流程图。

具体实施方式

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将运用具体的实施例及附图,对本发明保护的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本专利中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利保护的范围。

本发明提供一种硬盘的active灯定频闪烁控制系统,如图2所示,包括:硬盘边沿检测模块1、闪烁频率控制模块2,输出控制模块3,多个led灯4;

硬盘边沿检测模块1与闪烁频率控制模块2连接,硬盘边沿检测模块1用于根据检测硬盘的activity边沿,获取硬盘读写动作信息,并将硬盘的activity边沿信息发送给闪烁频率控制模块2;

闪烁频率控制模块2与输出控制模块3连接,闪烁频率控制模块2用于接收硬盘的activity边沿,通过内置计数器计量硬盘的每个activity边沿,当硬盘5处于activity边沿时,控制信号act_out处于低电平,硬盘5处于非activity边沿时,控制信号act_out处于初始状态,初始状态为高电平;

输出控制模块3实时检测act_out电平状态,当act_out处于低电平时,控制led灯4亮;当act_out处于高电平时,控制led灯4灭。

本实施例中,系统还包括:检验起止控制模块;检验起止控制模块与闪烁频率控制模块2连接,检验起止控制模块用于通过计时器对硬盘边沿的检测进行累积计时,当在预设的检测时间内未检测到硬盘的activity电平变化时,判断硬盘停止读写动作,向闪烁频率控制模块发送硬盘停止读写动作信息,使闪烁频率控制模块的控制信号act_out处于高电平,输出控制模块控制led灯停止闪烁。

闪烁频率控制模块采用cpld或fpga。硬盘边沿检测模块设有寄存器,寄存器用于锁存硬盘activity的上升沿与下降沿。硬盘边沿检测模块采用fsm状态机。

fsm(finitestatemachine,有限状态机),veriloghdl(veriloghardwaredescriptionlanguage,verilog硬件描述语言),fpga(fieldprogrammablegatearray,现场可编程门阵列),fsm(finitestatemachine,有限状态机),sgpio(serialgeneralpurposeinput/output,串行通用输入输出)。

cpld/fpga是半定制的专用集成电路,具有可编程、可擦除、易于验证、集成度高等特点,在工程开发前期验证和应用领域具有广泛的应用,在服务器设计中,通过cpld/fpga主要实现上电/下电时序控制、接口通信、指示灯控制等。cpld/fpga时钟频率较高,一般采用50mhz,硬盘输出activity为hz~khz,相对较低。通过cpld/fpga高频率时钟sys_clk检测低频率时钟硬盘activity信号存在跨时钟域问题,在每个硬盘activity变化沿不进行停止判断或者判断错误的话,则存在误判断的危险,从而导致activityled闪烁不对。硬盘activity实际波形与频率变化如图3所示。

通过cpld/fpga直接解析硬盘输出的activity信号,进而控制activityled的闪烁,既可以避免硬盘直接输出及sgpio解析造成的闪烁频率不可控甚至闪烁不可见等问题,又可以在已有cpld/fpga芯片基础上,发挥cpld/fpga可裁剪、可编程、activityled闪烁频率可控等优势。但是必须保证cpld/fpga解析代码的正确性,增加停止检测及模块化接口等。

将硬盘的activity信号输入到cpld/fpga,cpld/fpga经过内部逻辑判断与处理,输出驱动activeled闪烁频率。通过cpld/fpga实现的控制逻辑是基于verilog的带停止检测功能的参数化模块,主要包括:硬盘activity边沿检测模块、activeled闪烁频率控制模块及activeled输出控制模块。硬盘activity边沿检测模块是通过高频率的cpld/fpga系统时钟检测硬盘activity的边沿,从而确定是否有硬盘读写动作;activeled闪烁频率控制模块是通过计数器实现activeled闪烁频率控制,为便于根据不同需求调节闪烁频率,对计数值采用参数化设计方法;activeled输出控制模块是对activeled进行闪烁输出控制,为防止误判断,采用计数器对停止位进行累积判断,同时,为调节累积判断时间,对停止计数值也采用参数化设计方法。本专利通过cpld/fpga逻辑控制实现在搭载不同硬盘时,activeled定频率闪烁,同时通过停止校验,避免误判断。由于本发明基于现有的cpld/fpga进行的设计,不会增加硬件成本。

硬盘activity边沿检测方式,硬盘activity边沿检测模块是通过cpld/cpld/fpga的系统时钟对硬盘activity进行检测,这个是通过检测硬盘activity两个时刻的电平实现的:如果前一时刻与当前时刻电平一致,则没有硬盘活动;如果前一时刻是高电平,当前时刻为低电平,则表示有硬盘活动且采样到硬盘activity下降沿;如果前一时刻是低电平,当前时刻为高电平,则表示有硬盘活动且采样到硬盘activity上升沿。为解决不同频率时钟(系统时钟和硬盘activity频率)可能造成的稳定性问题,通过一级寄存器锁存采样时钟。

active灯闪烁频率控制方式,cpld/fpga的系统时钟频率高,为在肉眼范围里识别active灯闪烁,需要基于cpld/fpga系统时钟产生active灯闪烁频率,通过计数器对系统时钟计数实现。同时,为实现不同需求下对active灯闪烁频率的控制,本发明对计数值采用参数化设计方法,只要对模块化参数进行修改即可实现active灯闪烁频率的控制。

active灯输出控制方式,active灯即为led灯4。由于采用cpld/fpga的高频率系统时钟采样低频率硬盘activity时钟,所以存在采不到硬盘activity时钟误判断的情况,但在实际应用中,由于硬盘activity时钟边沿变化缓慢,所以发生该风险的概率非常低。但为提高判断可靠性,该发明增加了active灯亮灭控制模块,即通过计数器对边沿检测进行累积计数,如果检测时间内未检测到硬盘activity电平变化,即认为硬盘停止活动。同时,为便于调节检测时间,对累积计数最大值采用参数化设计。

通过veriloghdl描述硬盘activity边沿检测模块电路图,示意图如图4所示。高频率的系统时钟sys_clk通过两个时刻确定硬盘activity上升沿与下降沿。为解决跨时钟域可能带来的亚稳态问题,对检测时钟采用一级寄存器锁存输出。

通过veriloghdl描述active灯闪烁频率控制模块电路,主要通过参数化的计数器实现active灯闪烁频率控制,可通过修改接口参数实现“一改全改”的active灯闪烁频率控制。

通过veriloghdl描述active灯亮灭控制模块电路,其fsm设计如图4所示。fsm初始处于idle空闲状态,此时active灯亮灭控制信号act_out处于高电平等待状态;当检测到硬盘activity下降沿,act_out根据“active灯闪烁频率控制原理”闪烁频率输出act_out;满足“active灯亮灭控制原理”停止条件,即累积检测时间内未检测到硬盘activity边沿变化,act_out被拉高,同时fsm重新回到idle等待状态,相反,act_out周期性高低电平变化输出。

本发明还提供一种硬盘的active灯定频闪烁控制方法,如图5所示,控制方法包括:

s1:硬盘边沿检测模块初始处于空闲状态,闪烁频率控制模块的控制信号act_out处于高电平等待状态;

s2:硬盘边沿检测模块检测硬盘activity的边沿,当硬盘边沿检测模块检测到硬盘activity下降沿时,确定硬盘开始读写动作,将硬盘的activity下降沿发送给闪烁频率控制模块;

s3:闪烁频率控制模块接收硬盘的activity下降沿,通过内置计数器计量硬盘的每个activity下降沿,当硬盘处于activity下降沿时,控制信号act_out处于低电平,硬盘处于非activity下降沿时,控制信号act_out处于高电平;

s4:输出控制模块实时检测act_out电平状态,当act_out处于低电平时,控制led灯亮;当act_out处于高电平时,控制led灯灭。

具体的,控制方法还包括:硬盘边沿检测模块在检测硬盘activity下降沿的同时,检验起止控制模块通过计时器对硬盘activity下降沿的检测进行累积计时,当在预设的检测时间内检测到硬盘的activity电平未发生变化时,判断硬盘停止读写动作,向闪烁频率控制模块发送硬盘停止读写动作信息,

闪烁频率控制模块的控制信号act_out被拉高,进入高电平等待状态;

输出控制模块控制led灯停止闪烁;

硬盘边沿检测模块初始处于空闲状态。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1