一种硬盘点灯方法、系统、存储介质及设备与流程

阅读: 评论:0



1.本发明涉及硬盘技术领域,尤其涉及一种硬盘点灯方法、系统、存储介质及设备。


背景技术:



2.sgpio总线即串行gpio(serial gpio)总线,是由sff(small form factor)委员会制定的,给全球服务器行业用于主机总线适配器hba(host bus adapter)/独立冗余磁盘阵列raid(redundant arrays of inexpensive disks)控制卡与sas/sata硬盘背板之间通信的总线,hba/raid控制卡通过sgpio总线来获取背板上的硬盘插座状态,以及下发硬盘led(发光二极管)状态指示信号
3.现有技术中,如公开的专利文献《一种用于服务器的信号管理装置、方法及服务器》中使用单独的cpld(complex programmable logic device,复杂可编程逻辑器件)来解析、生成sgpio信号;公开的专利文献《一种硬盘拓展装置》中磁盘阵列卡也是通过soc(片上系统)上的专用sgpio控制器来解析、生成sgpio信号。不管是使用cpld还是专用sgpio控制器都会增加额外的成本和空间。


技术实现要素:



4.有鉴于此,本发明的目的在于提出一种硬盘点灯方法、系统、存储介质及设备,用以解决现有技术中只能通过片上系统的sgpio专用控制器或cpld来生成、解析sgpio信号,导致增加了硬件成本及电路板面积的问题。
5.基于上述目的,本发明提供了一种硬盘点灯方法,包括以下步骤:
6.基于sgpio总线协议确定待使用的多个gpio端口,多个gpio端口包括分别与sgpio总线中的sclock信号、sload信号和sdataout信号对应的第一gpio端口、第二gpio端口和第三gpio端口;
7.接收用户对多个gpio端口的初始化指示,并基于初始化指示对多个gpio端口进行初始化;
8.接收用户发出的硬盘点灯指示,并基于硬盘点灯指示及gpio协议使第一gpio端口和第二gpio端口依次输出相应电平状态的脉冲信号;
9.遍历所有硬盘的灯,并根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号,并基于第三gpio端口输出的脉冲信号实现对应硬盘的点灯。
10.在一些实施例中,基于初始化指示对多个gpio端口进行初始化包括:
11.读取多个gpio端口的端口号,并对多个gpio端口配置初始状态,初始状态至少包括初始电平状态,并对待使用的gpio时钟进行初始化。
12.在一些实施例中,基于硬盘点灯指示及gpio协议使第一gpio端口和第二gpio端口依次输出相应电平状态的脉冲信号包括:
13.基于硬盘点灯指示及gpio协议使第一gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期;
14.使第二gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期。
15.在一些实施例中,根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号包括:
16.根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期。
17.在一些实施例中,电平状态为高电平状态或低电平状态,灯状态信息为与高电平状态对应的第一状态信息或与低电平状态对应的第二状态信息。
18.在一些实施例中,硬盘点灯指示包括对所有硬盘中相应灯的状态指示,状态包括开启状态或关闭状态。
19.在一些实施例中,每个硬盘的灯至少包括活动指示灯、故障指示灯及定位指示灯。
20.本发明的另一方面,还提供了一种硬盘点灯系统,包括:
21.端口信号模块,配置用于基于sgpio总线协议确定待使用的多个gpio端口,多个gpio端口包括分别与sgpio总线中的sclock信号、sload信号和sdataout信号对应的第一gpio端口、第二gpio端口和第三gpio端口;
22.初始化模块,配置用于接收用户对多个gpio端口的初始化指示,并基于初始化指示对多个gpio端口进行初始化;
23.输出模块,配置用于接收用户发出的硬盘点灯指示,并基于硬盘点灯指示及gpio协议使第一gpio端口和第二gpio端口依次输出相应电平状态的脉冲信号;以及
24.点灯模块,配置用于遍历所有硬盘的灯,并根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号,并基于第三gpio端口输出的脉冲信号实现对应硬盘的点灯。
25.本发明的又一方面,还提供了一种计算机可读存储介质,存储有计算机程序指令,该计算机程序指令被处理器执行时实现上述方法。
26.本发明的再一方面,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该计算机程序被处理器执行时执行上述方法。
27.本发明至少具有以下有益技术效果:
28.本发明通过使用多个gpio端口,在嵌入式系统下利用软件编程使gpio端口输出符合sgpio协议的且与sclock、sload及sdataout信号实现相同功能的脉冲信号,实现了与现有技术中通过配置sgpio专用控制器寄存器输出sgpio信号一样的效果;通过此软件模拟方式,不需要系统级芯片集成sgpio专用控制器,通过底层的软件编程控制gpio寄存器实现sgpio的波形和时序,并向上层调用者提供易用的api接口,为系统级芯片的设计减少控制器成本的同时还减少了端口数量。
附图说明
29.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
30.图1为根据本发明实施例提供的硬盘点灯方法的示意图;
31.图2为根据本发明实施例提供的sff-8485定义的典型sgpio信号关系示意图;
32.图3为根据本发明实施例提供的gpio模拟sgpio的软件实现框架示意图;
33.图4为根据图3提供的action_start相关流程示意图;
34.图5为根据图3提供的action_set相关流程示意图;
35.图6为根据本发明实施例提供的硬盘点灯系统的示意图;
36.图7为根据本发明实施例提供的实现硬盘点灯方法的计算机可读存储介质的示意图;
37.图8为根据本发明实施例提供的执行硬盘点灯方法的计算机设备的硬件结构示意图。
具体实施方式
38.为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
39.需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称的非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备固有的其他步骤或单元。
40.基于上述目的,本发明实施例的第一个方面,提出了一种硬盘点灯方法的实施例。图1示出的是本发明提供的硬盘点灯方法的实施例的示意图。如图1所示,本发明实施例包括如下步骤:
41.步骤s10、基于sgpio总线协议确定待使用的多个gpio端口,多个gpio端口包括分别与sgpio总线中的sclock信号、sload信号和sdataout信号对应的第一gpio端口、第二gpio端口和第三gpio端口;
42.步骤s20、接收用户对多个gpio端口的初始化指示,并基于初始化指示对多个gpio端口进行初始化;
43.步骤s30、接收用户发出的硬盘点灯指示,并基于硬盘点灯指示及gpio协议使第一gpio端口和第二gpio端口依次输出相应电平状态的脉冲信号;
44.步骤s40、遍历所有硬盘的灯,并根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号,并基于第三gpio端口输出的脉冲信号实现对应硬盘的点灯。
45.本发明实施例通过使用多个gpio端口,在嵌入式系统下利用软件编程使gpio端口输出符合sgpio协议的且与sclock、sload及sdataout信号实现相同功能的脉冲信号,实现了与现有技术中通过配置sgpio专用控制器寄存器输出sgpio信号一样的效果;通过此软件模拟方式,不需要系统级芯片集成sgpio专用控制器,通过底层的软件编程控制gpio寄存器实现sgpio的波形和时序,并向上层调用者提供易用的api接口,为系统级芯片的设计减少控制器成本的同时还减少了端口数量。
46.gpio(general-purpose input/output),通用型之输入输出的简称,功能类似8051的p0—p3,其接脚可以供使用者由程控自由使用,引脚依现实考量可作为通用输入
(gpi)或通用输出(gpo)或通用输入与输出(gpio)。对于输入,可以通过读取某个寄存器来确定引脚电位的高低;对于输出,可以通过写入某个寄存器来让这个引脚输出高电位或者低电位;对于其他特殊功能,则有另外的寄存器来控制它们。
47.sgpio(serial general-purpose input/output,串行gpio总线)为由sff委员会制定的用于raid(redundant arrays of inexpensive disks,冗余磁盘阵列)/hba(host bus adapter,主机总线适配器)卡与硬盘背板之间通信的总线协议。
48.图2为根据本发明实施例提供的sff-8485(sff为一个委员会)定义的典型sgpio信号关系示意图。如图2所示,sff-8485定义的sgpio总线(serial general-purpose input/output,串行gpio总线,由sff委员会制定的用于raid/hba卡与硬盘背板之间通信的总线协议)的各信号如下表1所示:
49.表1 sgpio信号定义
[0050][0051]
在一些实施例中,每个硬盘的灯至少包括活动指示灯、故障指示灯及定位指示灯。
[0052]
根据协议规定,sdataout和sdatain上的位流串每3个bit指示一个drive(硬盘)的状态,分别表示activity/locate/error指示灯(活动指示灯/定位指示灯/故障指示灯)的状态。位流串是在sload型号被设置到1后重新开始发送。位流串至少含有4个驱动器的关键信息。位流串不必每次都是相同的长度,可以在drive3第3个bit位的任意位置结束,重新开始新一轮的位流传输。
[0053]
在一些实施例中,基于初始化指示对多个gpio端口进行初始化包括:读取多个gpio端口的端口号,并对多个gpio端口配置初始状态,初始状态至少包括初始电平状态,并对待使用的gpio时钟进行初始化。
[0054]
在一些实施例中,基于硬盘点灯指示及gpio协议使第一gpio端口和第二gpio端口依次输出相应电平状态的脉冲信号包括:基于硬盘点灯指示及gpio协议使第一gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期;使第二gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期。
[0055]
在一些实施例中,根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号包括:根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期。
[0056]
在一些实施例中,电平状态为高电平状态或低电平状态,灯状态信息为与高电平状态对应的第一状态信息或与低电平状态对应的第二状态信息。
[0057]
在一些实施例中,硬盘点灯指示包括对所有硬盘中相应灯的状态指示,状态包括开启状态或关闭状态。
[0058]
以下为本发明的硬盘点灯方法的具体实施例:
[0059]
图3为根据本发明实施例提供的gpio模拟sgpio的软件实现框架示意图。如图3所示,本实施例在嵌入式操作系统的gpio_dev(gpio设备)驱动层基础上封装一层sgpio_hal(sgpio硬件抽象层),对上层用户提供实现硬盘点灯功能的api(application program interface,应用程序界面)函数,内部通过调用gpio驱动层函数实现sgpio基本的信号波形。
[0060]
一、提供给用户调用的api接口包括:
[0061]
led_ctrl_init:对led_ctrl端口进行初始化;
[0062]
led_ctrl_action(uint8 drive_num,struct drivestatus*pdrive_status):
[0063]
具体实现led灯状态控制的接口,drive_num是sgpio需要控制的drive(硬盘)总数,pdrive_status指示每一个drive需要展示的active/error/locate led状态,具体定义如下:
[0064][0065]
二、sgpio_hal层接口包括:
[0066]
sgpio_port_init:对需要用到的gpio端口进行初始化配置;
[0067]
sclock_high/low:对sclock端口配置电平高低状态;
[0068]
sload_high/low:对sload端口配置电平高低状态;
[0069]
sdataout_high/low:对sdataout端口配置电平高低状态;
[0070]
action_set(struct drivestatus*pdrive_status):对单个drive的led状态进行设置,具体的状态由pdrive_status指示(即硬盘点灯指示)。
[0071]
action_start:在action_set之前进行sclock和sload信号的配置。
[0072]
三、调用到的gpio_dev层函数包括:
[0073]
rcc_gpio_clk_init:对用到的gpio族时钟进行初始化;
[0074]
gpio_init:对用到的gpio端口进行端口号、输入输出方向、上下拉类型、速率等参数的初始化;
[0075]
gpio_out:对指定gpio端口输出的高低电平进行设置,通过写寄存器实现。
[0076]
在初始化过程中,led_ctrl_init主要通过gpio_out接口,将从配置文件或全局变量读出来的需要使用的gpio端口进行默认状态配置(开漏输出/有上拉/高速/默认电平为低),并将gpio的时钟进行初始化,使gpio端口处于ready(准备)状态。
[0077]
图4为根据图3提供的action_start相关流程示意图。如图4所示,led_ctrl_action执行时会先调用action_start,按照协议规定拉起时钟信号,同时拉起sload信号,
表示配置开始。其中,half_cycle为半个时钟周期长度,根据协议可以配置为5us~17ms。
[0078]
图5为根据图3提供的action_set相关流程示意图。如图5所示,action_start流程完成后,对drive_num(硬盘数量)个drive分别调用action_set(即active_set)进行配置。
[0079]
本实施例在嵌入式操作系统上,通过封装操作系统提供的gpio底层驱动接口,实现了通过软件模拟符合sff-8485协议规定的波形及时序要求的sgpio信号。
[0080]
本发明实施例的第二个方面,还提供了一种硬盘点灯系统。图6示出的是本发明提供的硬盘点灯系统的实施例的示意图。如图6所示,一种硬盘点灯系统包括:端口信号模块10,配置用于基于sgpio总线协议确定待使用的多个gpio端口,多个gpio端口包括分别与sgpio总线中的sclock信号、sload信号和sdataout信号对应的第一gpio端口、第二gpio端口和第三gpio端口;初始化模块20,配置用于接收用户对多个gpio端口的初始化指示,并基于初始化指示对多个gpio端口进行初始化;输出模块30,配置用于接收用户发出的硬盘点灯指示,并基于硬盘点灯指示及gpio协议使第一gpio端口和第二gpio端口依次输出相应电平状态的脉冲信号;以及点灯模块40,配置用于遍历所有硬盘的灯,并根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号,并基于第三gpio端口输出的脉冲信号实现对应硬盘的点灯。
[0081]
本发明实施例的硬盘点灯系统,通过使用多个gpio端口,在嵌入式系统下利用软件编程使gpio端口输出符合sgpio协议的且与sclock、sload及sdataout信号实现相同功能的脉冲信号,实现了与现有技术中通过配置sgpio专用控制器寄存器输出sgpio信号一样的效果;通过此软件模拟方式,不需要系统级芯片集成sgpio专用控制器,通过底层的软件编程控制gpio寄存器实现sgpio的波形和时序,并向上层调用者提供易用的api接口,为系统级芯片的设计减少控制器成本的同时还减少了端口数量。
[0082]
本发明实施例的第三个方面,还提供了一种计算机可读存储介质,图7示出了根据本发明实施例提供的实现硬盘点灯方法的计算机可读存储介质的示意图。如图7所示,计算机可读存储介质3存储有计算机程序指令31。该计算机程序指令31被处理器执行时实现如下步骤:
[0083]
基于sgpio总线协议确定待使用的多个gpio端口,多个gpio端口包括分别与sgpio总线中的sclock信号、sload信号和sdataout信号对应的第一gpio端口、第二gpio端口和第三gpio端口;
[0084]
接收用户对多个gpio端口的初始化指示,并基于初始化指示对多个gpio端口进行初始化;
[0085]
接收用户发出的硬盘点灯指示,并基于硬盘点灯指示及gpio协议使第一gpio端口和第二gpio端口依次输出相应电平状态的脉冲信号;
[0086]
遍历所有硬盘的灯,并根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号,并基于第三gpio端口输出的脉冲信号实现对应硬盘的点灯。
[0087]
在一些实施例中,基于初始化指示对多个gpio端口进行初始化包括:读取多个gpio端口的端口号,并对多个gpio端口配置初始状态,初始状态至少包括初始电平状态,并对待使用的gpio时钟进行初始化。
[0088]
在一些实施例中,基于硬盘点灯指示及gpio协议使第一gpio端口和第二gpio端口依次输出相应电平状态的脉冲信号包括:基于硬盘点灯指示及gpio协议使第一gpio端口输
出相应电平状态的脉冲信号,并使其保持指定量的时钟周期;使第二gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期。
[0089]
在一些实施例中,根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号包括:根据硬盘点灯指示中的灯状态信息使第三gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期。
[0090]
在一些实施例中,电平状态为高电平状态或低电平状态,灯状态信息为与高电平状态对应的第一状态信息或与低电平状态对应的第二状态信息。
[0091]
在一些实施例中,硬盘点灯指示包括对所有硬盘中相应灯的状态指示,状态包括开启状态或关闭状态。
[0092]
在一些实施例中,每个硬盘的灯至少包括活动指示灯、故障指示灯及定位指示灯。
[0093]
应当理解,在相互不冲突的情况下,以上针对根据本发明的硬盘点灯方法阐述的所有实施方式、特征和优势同样地适用于根据本发明的硬盘点灯系统和存储介质。
[0094]
本发明实施例的第四个方面,还提供了一种计算机设备,包括如图8所示的存储器402和处理器401,该存储器402中存储有计算机程序,该计算机程序被该处理器401执行时实现上述任意一项实施例的方法。
[0095]
如图8所示,为本发明提供的执行硬盘点灯方法的计算机设备的一个实施例的硬件结构示意图。以如图8所示的计算机设备为例,在该计算机设备中包括一个处理器401以及一个存储器402,并还可以包括:输入装置403和输出装置404。处理器401、存储器402、输入装置403和输出装置404可以通过总线或者其他方式连接,图4中以通过总线连接为例。输入装置403可接收输入的数字或字符信息,以及产生与硬盘点灯系统的用户设置以及功能控制有关的键信号输入。输出装置404可包括显示屏等显示设备。
[0096]
存储器402作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本技术实施例中的硬盘点灯方法对应的程序指令/模块。存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储硬盘点灯方法的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至本地模块。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0097]
处理器401通过运行存储在存储器402中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的硬盘点灯方法。
[0098]
最后需要说明的是,本文的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。作为例子而非限制性的,非易失性存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦写可编程rom(eeprom)或快闪存储器。易失性存储器可以包括随机存取存储器(ram),该ram可以充当外部高速缓存存储器。作为例子而非限制性的,ram可以以多种形式获得,比如同步ram(dram)、动态ram(dram)、同步dram(sdram)、双数据速率sdram(ddr sdram)、增强sdram(esdram)、同步链路dram(sldram)、以及直接rambus ram(drram)。所公开的方面的存储设备意在包括但不限于这些和其它合适类型的存储器。
[0099]
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
[0100]
结合这里的公开所描述的各种示例性逻辑块、模块和电路可以利用被设计成用于执行这里功能的下列部件来实现或执行:通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。通用处理器可以是微处理器,但是可替换地,处理器可以是任何传统处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、一个或多个微处理器结合dsp和/或任何其它这种配置。
[0101]
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
[0102]
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
[0103]
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

技术特征:


1.一种硬盘点灯方法,其特征在于,包括以下步骤:基于sgpio总线协议确定待使用的多个gpio端口,所述多个gpio端口包括分别与sgpio总线中的sclock信号、sload信号和sdataout信号对应的第一gpio端口、第二gpio端口和第三gpio端口;接收用户对所述多个gpio端口的初始化指示,并基于所述初始化指示对所述多个gpio端口进行初始化;接收用户发出的硬盘点灯指示,并基于所述硬盘点灯指示及所述gpio协议使所述第一gpio端口和所述第二gpio端口依次输出相应电平状态的脉冲信号;遍历所有硬盘的灯,并根据所述硬盘点灯指示中的灯状态信息使所述第三gpio端口输出相应电平状态的脉冲信号,并基于所述第三gpio端口输出的脉冲信号实现对应硬盘的点灯。2.根据权利要求1所述的方法,其特征在于,基于所述初始化指示对所述多个gpio端口进行初始化包括:读取所述多个gpio端口的端口号,并对所述多个gpio端口配置初始状态,所述初始状态至少包括初始电平状态,并对待使用的gpio时钟进行初始化。3.根据权利要求1所述的方法,其特征在于,基于所述硬盘点灯指示及所述gpio协议使所述第一gpio端口和所述第二gpio端口依次输出相应电平状态的脉冲信号包括:基于所述硬盘点灯指示及所述gpio协议使所述第一gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期;使所述第二gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期。4.根据权利要求1所述的方法,其特征在于,所述硬盘点灯指示中的灯状态信息使所述第三gpio端口输出相应电平状态的脉冲信号包括:根据所述硬盘点灯指示中的灯状态信息使所述第三gpio端口输出相应电平状态的脉冲信号,并使其保持指定量的时钟周期。5.根据权利要求1所述的方法,其特征在于,所述电平状态为高电平状态或低电平状态,所述灯状态信息为与所述高电平状态对应的第一状态信息或与所述低电平状态对应的第二状态信息。6.根据权利要求1所述的方法,其特征在于,所述硬盘点灯指示包括对所述所有硬盘中相应灯的状态指示,所述状态包括开启状态或关闭状态。7.根据权利要求1所述的方法,其特征在于,每个硬盘的灯至少包括活动指示灯、故障指示灯及定位指示灯。8.一种硬盘点灯系统,其特征在于,包括:端口信号模块,配置用于基于sgpio总线协议确定待使用的多个gpio端口,所述多个gpio端口包括分别与sgpio总线中的sclock信号、sload信号和sdataout信号对应的第一gpio端口、第二gpio端口和第三gpio端口;初始化模块,配置用于接收用户对所述多个gpio端口的初始化指示,并基于所述初始化指示对所述多个gpio端口进行初始化;输出模块,配置用于接收用户发出的硬盘点灯指示,并基于所述硬盘点灯指示及所述gpio协议使所述第一gpio端口和所述第二gpio端口依次输出相应电平状态的脉冲信号;以
及点灯模块,配置用于遍历所有硬盘的灯,并根据所述硬盘点灯指示中的灯状态信息使所述第三gpio端口输出相应电平状态的脉冲信号,并基于所述第三gpio端口输出的脉冲信号实现对应硬盘的点灯。9.一种计算机可读存储介质,其特征在于,存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-7任意一项所述的方法。10.一种计算机设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时执行如权利要求1-7任意一项所述的方法。

技术总结


本发明提供了一种硬盘点灯方法、系统、存储介质及设备,方法包括:基于SGPIO总线协议确定待使用的多个GPIO端口,多个GPIO端口包括分别与SGPIO总线中的SClock信号、SLoad信号和SDataOut信号对应的第一GPIO端口、第二GPIO端口和第三GPIO端口;接收用户对多个GPIO端口的初始化指示,并基于初始化指示对多个GPIO端口进行初始化;接收用户发出的硬盘点灯指示,并基于硬盘点灯指示及GPIO协议使第一GPIO端口和第二GPIO端口依次输出相应电平状态的脉冲信号;遍历所有硬盘的灯,并根据硬盘点灯指示中的灯状态信息使第三GPIO端口输出相应电平状态的脉冲信号,并基于第三GPIO端口输出的脉冲信号实现对应硬盘的点灯。本发明通过软件模拟方式使GPIO端口输出符合SGPIO协议的脉冲信号,减少了系统级芯片的成本。减少了系统级芯片的成本。减少了系统级芯片的成本。


技术研发人员:

陈瑾 刘宝阳 郭卫斌 姜东湖 孙明

受保护的技术使用者:

山东云海国创云计算装备产业创新中心有限公司

技术研发日:

2022.07.31

技术公布日:

2022/10/20

本文发布于:2022-11-28 16:46:54,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/4/10818.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:端口   状态   硬盘   信号
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图