CN106993241B - 一种主控板、风扇框和网络设备 - Google Patents

一种主控板、风扇框和网络设备 Download PDF

Info

Publication number
CN106993241B
CN106993241B CN201710209736.3A CN201710209736A CN106993241B CN 106993241 B CN106993241 B CN 106993241B CN 201710209736 A CN201710209736 A CN 201710209736A CN 106993241 B CN106993241 B CN 106993241B
Authority
CN
China
Prior art keywords
register
fan
frame
access
main
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710209736.3A
Other languages
English (en)
Other versions
CN106993241A (zh
Inventor
刘汉忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201710209736.3A priority Critical patent/CN106993241B/zh
Publication of CN106993241A publication Critical patent/CN106993241A/zh
Application granted granted Critical
Publication of CN106993241B publication Critical patent/CN106993241B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q1/00Details of selecting apparatus or arrangements
    • H04Q1/02Constructional details
    • H04Q1/035Cooling of active equipments, e.g. air ducts

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明实施例提供了一种主控板、风扇框和网络设备,主控板包括CPU和主风扇控制器,主风扇控制器包括一组寄存器、主控制模块、主发送模块和主接收模块;CPU发起访问操作,将访问操作对应的命令数据写入目标寄存器;主控制模块将目标寄存器中存储的命令数据发送给主发送模块;主发送模块根据命令数据构造请求数据帧,通过串行控制总线发送请求数据帧给风扇框;主接收模块通过串行控制总线接收风扇框发送的响应数据帧,解析响应数据帧获得响应数据,发送响应数据给主控制模块;主控制模块根据响应数据确定访问操作结果;通知CPU访问操作结束。应用本发明实施例,实现了灵活的适配多种类型的风扇。

Description

一种主控板、风扇框和网络设备
技术领域
本发明涉及通信技术领域,特别是涉及一种主控板、风扇框和网络设备。
背景技术
在机框类的网络设备中,采用风扇风冷是主要的散热方式,风扇框中风扇的控制为一个网络设备中不可或缺的部分。
目前,如图1所示,机框类的网络设备包括主控板100和风扇框200;主控板100上包括主控制器(如图1中的CPU110)和风扇控制器(如图1中的可编程逻辑器件120),风扇框200上设置有风扇210;CPU100通过与可编程逻辑器件120连接,可编程逻辑器件120与风扇210连接,控制风扇210的转速。
具体地,主控板100控制风扇框200上风扇210转速时,可编程逻辑器件120向风扇210发送PWM(Pulse Width Modulation,脉冲宽度调制)信号;风扇210根据PWM信号控制转速,并将风扇210的转速反馈信号和故障信号发送给可编程逻辑器件120;可编程逻辑器件120根据转速反馈信号和故障(fault)信号重新计算风扇210的转速,并根据重新计算的转速,再次向风扇210发送PWM信号,控制风扇210的转速。
现有技术中,可编程逻辑器件120发送的PWM信号需要适配风扇210的类型,而主控板100无法预知将来风扇210的类型,风扇210是可插拔,若机框类的网络设备上的一个风扇210损坏,则可将该风扇210拔掉,更换新的风扇210。此时,若机框类的网络设备更换新的风扇210为新类型的风扇210,则需要修改主控板100的可编程逻辑器件120,使得可编程逻辑器件120能够发送对应该新类型的风扇210的PWM信号,这使得一个机框类的设备适配多种类型的风扇的难度增加。
发明内容
本发明实施例的目的在于提供一种主控板、风扇框和网络设备,以实现灵活的适配多种类型的风扇。具体技术方案如下:
一方面,本发明实施例公开了一种主控板,所述主控板包括:CPU和与所述CPU连接的主风扇控制器;所述主风扇控制器包括一组寄存器、主控制模块、主发送模块和主接收模块;
所述CPU,用于发起访问操作,将所述访问操作对应的命令数据写入目标寄存器;所述访问操作的对象为选定的位于风扇框上的目标访问寄存器;
所述主控制模块,用于将所述目标寄存器中存储的所述命令数据发送给所述主发送模块;
所述主发送模块,用于根据所述命令数据构造请求数据帧;通过串行控制总线发送所述请求数据帧给所述风扇框;
所述主接收模块,用于通过串行控制总线接收所述风扇框发送的响应数据帧;解析所述响应数据帧,获得响应数据;发送所述响应数据给所述主控制模块;
所述主控制模块,还用于根据所述响应数据确定访问操作结果;通知所述CPU所述访问操作结束。
二方面,本发明实施例公开了一种风扇框,所述风扇框包括:从风扇控制器;所述从风扇控制器包括:一组寄存器、从控制模块、从发送模块和从接收模块;
所述从接收模块,用于通过串行控制总线接收主控板发送的请求数据帧;解析所述请求数据帧,获取命令数据;发送所述命令数据给所述从控制模块;
所述从控制模块,用于根据所述命令数据确定作为访问操作对象的目标访问寄存器,访问所述目标访问寄存器,对所述风扇进行转速控制和状态监控;根据访问操作结果,确定响应数据;将所述响应数据发送给所述从发送模块;
所述从发送模块,用于根据所述响应数据构造响应数据帧;通过串行控制总线发送所述响应数据帧给所述主控板。
三方面,本发明实施例公开了一种网络设备,所述网络设备包括所述的主控板和至少一个所述的风扇框;
所述主控板和每个所述风扇框通过串行控制总线连接。
本发明实施例中,主控板的主风扇控制器与风扇框通过串行控制总线连接,主控板只需要实现串行控制总线的控制功能就可以了,不需要获知风扇的类型,生成与该风扇的类型适配的PWM信号。可见,本发明实施例中,主控板能够独立于风扇的类型,网络设备选用新类型的风扇时,主风扇控制器不需要做任何修改,简化了主控板的设计,简化了主风扇控制器的设计,实现了灵活的适配多种类型的风扇。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一种网络设备的结构示意图;
图2为本发明实施例提供的一种主控板的一种结构示意图;
图3为本发明实施例提供的一种主控板的另一种结构示意图;
图4为本发明实施例提供的一种主控板的另一种结构示意图;
图5为本发明实施例中主风扇控制器处理访问操作的流程示意图;
图6为本发明实施例中CPU进行写操作的流程示意图;
图7为本发明实施例中CPU进行读操作的流程示意图;
图8为本发明实施例提供的一种风扇框的一种结构示意图;
图9为本发明实施例提供的一种风扇框的另一种结构示意图;
图10为本发明实施例中从风扇控制器处理访问操作的流程示意图;
图11为本发明实施例提供的一种网络设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面通过具体实施例,对本发明进行详细说明。
参考图2,图2为本发明实施例提供的一种主控板的一种结构示意图,该主控板包括:CPU 11和与CPU 11连接的主风扇控制器12;这里,主风扇控制器12通过串行控制总线与风扇框连接,一个主风扇控制器12可以与至少一个风扇框连接,一条串行控制总线连接一个风扇框和主风扇控制器12,不同串行控制总线间是相互独立的。
这种情况下,主风扇控制器12只需要实现串行控制总线的控制功能就可以了,降低了主风扇控制器12对风扇类型的依赖。
需要说明的是,串行控制总线可以为同步串行控制总线,也可以为异步串行控制总线,本发明实施例对此不进行限定;另外,网络设备对应的串行控制总线的数量可以根据风扇框的数量增加或减少。
具体地,主风扇控制器12包括一组寄存器1200、主控制模块121、主发送模块122和主接收模块123;
其中,主控制模块121,负责启动主发送模块122和主接收模块123,以及信息的处理;主发送模块122,负责发送请求数据帧;主接收模块123,负责接收响应数据帧。
具体地,CPU 11,用于发起访问操作,将访问操作对应的命令数据写入目标寄存器;访问操作的对象为选定的位于风扇框上的目标访问寄存器;
这里,目标寄存器为上述一组寄存器1200中的一个或多个寄存器。
主控制模块121,用于将目标寄存器中存储的命令数据发送给主发送模块122;
主发送模块122,用于根据命令数据构造请求数据帧;通过串行控制总线发送请求数据帧给风扇框;
主接收模块123,用于通过串行控制总线接收风扇框发送的响应数据帧;解析响应数据帧,获得响应数据;发送响应数据给主控制模块;
主控制模块121,还用于根据响应数据确定访问操作结果;通知CPU 11访问操作结束。
在本发明的一个实施例中,为了便于主控板控制风扇的转速和获取风扇的状态信息,参考图3,图3为本发明实施例提供的一种主控板的另一种结构示意图,基于图2,主风扇控制器包括的一组寄存器1200可以包括:访问使能寄存器124、读写指示寄存器125、访问地址寄存器126、写数据寄存器127、读数据寄存器128、访问状态寄存器129和通道选择寄存器1210,如表1所示;
表1
Figure BDA0001260706940000051
其中,访问使能寄存器124,用于存储当前串行控制总线状态,其Bit[0](又可以称为EN)可以设置为两种值,分别为串行控制总线空闲(如0)和串行控制总线忙(如1),当访问使能寄存器的Bit[0]为0时,表示上一次的数据帧传输结束,当前串行控制总线空闲,可以传输新的数据帧;当访问使能寄存器的Bit[0]为1时,表示正在数据帧,当前串行控制总线忙,不能传输新的数据帧;访问使能寄存器的Bit[7:1]保留,以便于访问使能寄存器的Bit[0]出现故障时备用;
读写指示寄存器125,用于存储对风扇框的访问操作的标识,包括Bit[7:0];其中,读写指示寄存器的Bit[0]存储对风扇框的访问操作的标识,例如写操作的标识为0、读操作的标识为1,读写指示寄存器的Bit[7:1]保留,以便于读写指示寄存器的Bit[0]出现故障时备用;
访问地址寄存器126,用于存储需要访问的寄存器的地址,也就是,用于存储目标访问寄存器的地址,包括Bit[7:0];
在本发明的一个实施例中,风扇框可以包括:多个寄存器,例如存储控制风扇转速的转速控制数据的风扇控制寄存器和存储风扇状态信息的风扇状态寄存器。这种情况下,为了便于操作,需要将目标访问寄存器的地址写入访问地址寄存器,例如,若需要对风扇转速进行控制,也就是访问操作为写操作时,目标访问寄存器为风扇控制寄存器;若需要获取风扇的状态信息,也就是访问操作为读操作,目标访问寄存器为风扇状态寄存器。
写数据寄存器127,用于存储需要写入目标访问寄存器的数据,也就是,用于存储转速控制数据,包括Bit[7:0];
读数据寄存器128,用于存储风扇框返回的读出数据,包括Bit[7:0];其中,读出数据为风扇的状态信息。每次发起读操作时,只有在访问使能寄存器的Bit[0]为串行控制总线空闲,且访问状态寄存器中存储的为访问成功时,读数据寄存器的Bit[7:0]存储的数据才有效;
访问状态寄存器129,用于存储访问状态和错误类型,包括Bit[7:0];其中,访问状态寄存器的Bit[2:0]用于存储错误类型,如:无错误、超时、帧格式错误等;访问状态寄存器中的Bit[6:3]保留,以便于访问状态寄存器的Bit[2:0]或Bit[7]出现故障时备用;访问状态寄存器的Bit[7]用于存储访问状态,如当前访问有失败为1、当前访问成功为0;
通道选择寄存器1210,用于存储需要访问的风扇框的标识,包括Bit[7:0]。
由于一条串行控制总线连接一个风扇框与主风扇控制器12。CPU11可以通过将需要访问的风扇框的标识写入通道选择寄存器,就确定了需要传输数据帧的串行控制总线,进而实现控制和管理网络设备的各个风扇框。此时,若风扇框增加,不必在主控板的主风扇控制器12中增设管理风扇框的速度控制和检测模块,只需要确定增加的风扇框对应的串行控制总线就可以了,不会造成主控板的资源压力的增加。
基于图3所示主控板,在本发明的一个实施例中,若访问操作为写操作,目标寄存器可以包括:读写指示寄存器、访问地址寄存器、写数据寄存器和通道选择寄存器;若访问操作为读操作,目标寄存器可以包括:读写指示寄存器、访问地址寄存器和通道选择寄存器。
这种情况下,CPU 11,还用于若访问操作为写操作,将写操作的标识写入读写指示寄存器125,将目标访问寄存器的地址写入访问地址寄存器126,将转速控制数据写入写数据寄存器127,将风扇框的标识写入通道选择寄存器1210;
CPU 11,还用于若访问操作为读操作,将读操作的标识写入读写指示寄存器125,将目标访问寄存器的地址写入访问地址寄存器126,将风扇框的标识写入通道选择寄存器1210。
基于图3所示主控板,在本发明的一个实施例中,CPU 11,还用于在查询到访问使能寄存器124的EN指示为空闲,也就是,查询到访问使能寄存器124的EN指示为串行控制总线空闲时,发起访问操作;
此时,CPU 11,还用于在将访问操作对应的命令数据写入目标寄存器后,将访问使能寄存器124的EN置为启动访问操作,也就是,将访问使能寄存器124的EN置为串行控制总线忙;
主控制模块121,还用于在查询到访问使能寄存器124的EN指示为启动访问操作时,将目标寄存器中存储的命令数据发送给主发送模块;
主控制模块121,还用于在根据响应数据确定访问操作结果后,将访问使能寄存器124的EN置为空闲,并通知CPU 11访问操作结束。
参考图4,图4为本发明实施例提供的一种主控板的另一种结构示意图,基于图3,主风扇控制器12还可以包括:定时器1211;
这种情况下,主控制模块121,还用于在确定主发送模块122发送请求数据帧完毕后,使能主接收模块123,并启动定时器1211;当定时器1211超时溢出时,去使能主接收模块123;
主接收模块123,还用于在接收到响应数据帧、且确定响应数据帧有效时解析有效的响应数据帧,获得有效的响应数据;
主控制模块121,还用于对有效的响应数据进行校验;当对有效的响应数据帧校验通过,将访问状态寄存器129的指示位indicator置为访问操作成功;
主控制模块121,还用于在确定定时器1211超时溢出、或确定主接收模块123接收到无效的响应数据帧、或对有效的响应数据校验未通过时,将访问状态寄存器129的indicator置为访问操作失败,以及将访问状态寄存器129的错误类型置为相应的值。
基于图3或图4所示的主控板,在本发明的其他实施例中,主控制模块121,还用于当对有效的响应数据帧校验通过、且访问操作为读操作时,将有效的响应数据中的读出数据写入读数据寄存器128,也就是,将有效的响应数据中的状态信息写入读数据寄存器128。
在本发明的一个实施例中,为了提高主控板接收的可靠性和风扇框接收的可靠性,可以预先设置一个帧格式,该帧格式为:帧开始和帧结束的间隔符为010。
此时,主发送模块122可以按照预设帧格式根据命令数据构造请求数据帧,风扇框可以按照预设帧格式构造响应数据帧。
请求数据帧和响应数据帧的帧开始和帧结束的间隔符中包括了0-1的跳变和1-0的跳变,风扇框按照该预设帧格式对接收的请求数据帧进行校验,有效地提高了风扇框接收的可靠性;主接收模块123按照该预设帧格式对接收的响应数据帧进行校验,确定有效的响应数据帧,有效地提高了主控板接收的可靠性。
另外,为了进一步提高接收的可靠性,可以规定请求数据帧和响应数据帧中的具体内容,将与请求数据帧包括的内容匹配的响应数据帧确定为预期响应数据帧。访问操作不同,请求数据帧和响应数据帧不完全相同,参考表2所示的请求数据帧和响应数据帧的格式;
表2
Figure BDA0001260706940000081
其中,MSB(Most Significant Bit,最高有效位)为先发送的,LSB(LeastSignificant Bit,最低有效位)为最后发送的;010为帧开始和帧结束的间隔符;Cmd_we表示写操作的标识,Ack_we表示写操作的响应标识,Addr表示目标访问寄存器的地址或响应寄存器的地址,WData表示转速控制数据;Cmd_rd表示读操作的标识,Ack_rd表示读操作的响应标识,RData表示读出的据(状态信息);
若Cmd_we为00,Ack_we为01,Addr为0000 0001,WData为0000 0100,则可以构造一条如表3所示的写操作的请求数据帧;
表3
Cmd_we Addr WData
写操作的请求数据帧 010 00 0000 0001 0000 0100 010
这里,WData可以为其他数据填充,此处仅以写入到0000 00100为例。
此时,该写操作的请求数据帧的预期响应数据帧可以参考表4:
表4
Ack_we Addr
写操作的响应数据帧 010 01 0000 0001 010
这里,预期响应数据帧为与请求数据帧中的读/写操作的标识、目标访问寄存器的地址匹配的响应数据帧。
若Cmd_rd为10,Ack_rd为11,Addr为0000 0010,RData为0000 0101,则可以构造一条读操作的请求数据帧如表5所示;
表5
Cmd_rd Addr
读操作的请求数据帧 010 10 0000 0010 010
此时,该读操作的预期响应数据帧可以参考表6:
表6
Ack_rd Addr RData
读操作的响应数据帧 010 11 0000 0010 0000 0101 010
这里,RData可以由风扇框根据读出的数据填充,此处仅以读取到0000 0101为例。
参考图5,图5为本发明实施例中主风扇控制器12处理访问操作的流程示意图。下面结合图4所示的主控板进行说明,该流程包括:
S01、主控制模块121实时查询访问使能寄存器124的EN是否为1;如果是,则执行S02;如果否,则重新执行S01,实时查询访问使能寄存器124的EN是否为1;
这里,主控制模块121根据访问使能寄存器124的EN,判断是否需要执行访问操作;当访问使能寄存器124的EN为0时,说明当前没有待执行的访问操作,主控制模块121继续等待;当访问使能寄存器124的EN为1时,说明有待执行的访问操作。
需要说明的是,访问操作由CPU 11发起,CPU 11发起访问操作时,需要将相应的命令数据写入到一个或多个寄存器中。其中,访问操作的类型包括读操作和写操作,针对这两种访问操作,CPU 11需要配置的寄存器不完全相同,为了描述方便,这里可以将CPU 11针对任意一种访问操作配置的寄存器称为目标寄存器。
例如,针对读操作,CPU 11配置的目标寄存器可以包括:读写指示寄存器125、访问地址寄存器126、通道选择寄存器1210;
针对写操作,CPU 11配置的目标寄存器可以包括:读写指示寄存器125、访问地址寄存器126、写数据寄存器127和通道选择寄存器1210。
CPU 11在完成目标寄存器的配置后,将访问使能寄存器124的EN设置为1,以告知主控制模块121有待执行的访问操作,触发主控制模块121执行访问操作。
S02、主控制模块121根据目标寄存器中配置的信息,确定命令数据,将命令数据发送给主发送模块122,并使能主发送模块122;主发送模块122按照预设帧格式将接收的命令数据封装成请求数据帧,并将该请求数据帧发送给风扇框;
当访问使能寄存器124的EN为1时,主控制模块121开始执行访问操作,确定命令数据,并存储命令数据,以便对接收到的响应数据帧进行校验。其中,针对不同的访问操作,主控制模块121确定的命令数据不完全相同。
例如,当访问操作为读操作时,命令数据包括:读操作标识、目标访问寄存器的地址;
当访问操作为写操作时,命令数据包括:写操作标识、目标访问寄存器的地址和转速控制数据。
需要说明的是,主控制模块121可以在将命令数据发送给主发送模块122的同时,将一个发送请求信号发送给主发送模块122,使能主发送模块122;也可以在将命令数据发送给主发送模块122之后,将发送请求信号发送给主发送模块122,使能主发送模块122;但不能在将命令数据发送给主发送模块122之前,将发送请求信号发送给主发送模块122,使能主发送模块122。这里,发送请求信号可以用于使能主发送模块122。
S03、主控制模块121使能主接收模块123,启动定时器1211;
主发送模块122在发送请求数据帧结束后,向主控制模块121发送一个发送响应信号,通知主控制模块121请求数据帧发送完毕;
主控制模块121确定主发送模块122发送请求数据帧完毕后,向主接收模块123发送一个接收请求信号,使能主接收模块123,打开接收通道,等待接收风扇框反馈的响应数据帧,并通知主接收模块123等待接收的响应数据帧的类型;其中,接收请求信号用于使能主接收模块123,响应数据帧的类型包括读操作的响应数据帧和写操作的响应数据帧。
这种情况下,主接收模块123就可以确定等待接收的是读操作的响应数据帧还是写操作的响应数据帧,进而根据预设帧格式,确定需要接收的响应数据帧的长度,确定响应数据帧中帧开始和帧结束的间隔符的位置;这样,主接收模块123就可以根据确定的帧开始和帧结束的间隔符的位置,对接收的响应数据帧进行校验,确定接收的响应数据帧是否为有效的响应数据帧。
S04、主接收模块123实时判断是否接收到响应数据帧;如果否,则执行S05;如果是,则执行S06;
S05、当S04中主接收模块123判定未接收到响应数据帧时,通知主控制模块121,由主控制模块121判断定时器1211是否超时溢出;如果否,则主控制模块121通知主接收模块123继续执行S04;如果是,则去使能主接收模块123,执行S09;
S06、当S04中主接收模块123判定接收到响应数据帧时,主接收模块123对接收的响应数据帧进行校验,判断接收的响应数据帧是否为有效的响应数据帧;如果是,则执行S07;如果否,则执行S09;
主接收模块123对接收的响应数据帧进行校验,即对接收的响应数据帧中帧开始和帧结束的间隔符进行校验;如果接收的响应数据帧中帧开始和帧结束的间隔符的位置正确,则确定接收的数据帧为有效的响应数据帧;
如果接收的响应数据帧的帧开始和帧结束的间隔符的位置错误,确定接收的响应数据帧为无效的响应数据帧。例如,在检测到响应数据帧的帧开始的间隔符时,若按照确定的响应数据帧的长度所确定的帧结束的间隔符的位置不是帧结束的间隔符,则可以确定接收的响应数据帧中帧开始和帧结束的间隔符的位置错误,确定接收的响应数据帧为无效的响应数据帧,也就是错误的响应数据帧。
S07、主接收模块123解析有效的响应数据帧获得有效的响应数据,发送有效的响应数据给主控制模块121;主控制模块121对有效的响应数据进行校验;若校验通过,则执行S08,若校验未通过,则执行S09;
主控制模块121对接收的有效的响应数据进行校验,进一步对主接收模块123接收的响应数据帧进行校验。
具体地,主控制模块121对接收的有效的响应数据进行校验时,可以判断接收的响应数据中的读/写操作的标识和响应寄存器的地址是否与S02中发送的请求数据帧中包括的读/写操作的标识和目标访问寄存器的地址匹配;如果是,则校验通过;如果否,则校验未通过;
例如,若读操作的标识为10,读操作的标识对应的响应标识为11;若S02中发送的请求数据帧中包括的读/写操作的标识为10、目标访问寄存器的地址为00000010,则当S07中接收的有效的响应数据中包括的读/写操作标识为11、响应寄存器的地址为00000010时,可以确定校验通过;否则确定校验未通过。
需要说明的是,当S07中校验通过时,可以确定接收的响应数据帧为预期响应数据帧。
S08、当S07中主控制模块121对接收的有效的响应数据校验通过时,访问成功,主控制模块121配置对应的寄存器;
当主控制模块121对接收的有效的响应数据校验通过时,可以确定主接收模块123接收的有效的响应数据帧为预期响应数据帧,本次访问成功,主控制模块121将访问状态寄存器129中Bit[7]的indicator置为0;将访问状态寄存器129中Bit[2:0]的错误类型指示位置为无错误。例如,000为无错误,当主控制模块121确定本次访问操作成功时,将访问状态寄存器129的Bit[2:0]设置为000。
当访问操作为读操作时,主控制模块121还可以将接收的有效的响应数据中包括的读出数据写入读数据寄存器128。
S09、当S07中主控制模块121对接收的有效的响应数据校验未通过时,访问失败,主控制模块121根据错误类型,配置访问状态寄存器129;
当主控制模块121对接收的有效的响应数据校验未通过时,可以确定主接收模块123接收的有效的响应数据帧不是预期响应数据帧,本次访问失败,主控制模块121将访问状态寄存器129中Bit[7]的indicator置为1,并根据错误类型,将访问状态寄存器129中Bit[2:0]置为对应的值。
由上述步骤可知,错误类型包括以下几种:
一是S05中主控制模块121确定定时器1211超时溢出时还未接收到风扇框返回的响应数据帧;一是S06中主接收模块123确定接收的响应数据帧为无效的响应数据帧;一是S07中主控制模块121对接收的有效的响应数据的校验未通过。
S010、主控制模块121将访问使能寄存器124的EN设置为0,通知CPU 11本次访问操作结束。
承接S08或S09,由于访问操作已完成,所以主控制模块121将访问使能寄存器121中的EN置为0,指示访问操作结束,并通知CPU 11。后续,CPU 11再次发起访问操作时,可将访问使能寄存器124中的EN置为1。主控制模块121可以实时查询访问使能寄存器124中的EN,当访问使能寄存器124中的EN被置为1时,说明有待执行的访问操作。
参考图6,图6为本发明实施例中CPU 11进行写操作的流程示意图。下面结合图4所示的主控板进行说明,该流程包括:
S11、CPU 11进行写准备;
S12、CPU 11定时查询访问使能寄存器的EN是否为0;若为是,则执行S13;若为否,则重新执行S12,查询访问使能寄存器的EN是否为0;
在对风扇框进行访问操作前,CPU 11先查询访问使能寄存器124的EN是否为0,在EN为0时再配置对应的寄存器,避免了多个串行控制总线同时传输数据帧,产生冲突,导致风扇框访问失败的问题。
S13、CPU 11配置读写指示寄存器125、访问地址寄存器126、写数据寄存器127和通道选择寄存器1210;
具体地,CPU 11将写操作的标识0写入读写指示寄存器125的Bit[0],将目标访问寄存器的地址(例如风扇控制寄存器的地址)写入访问地址寄存器126的Bit[7:0],将转速控制数据写入写数据寄存器127的Bit[7:0],将需要访问的风扇框的标识写入通道选择寄存器1210的Bit[7:0]。
S14、CPU 11将访问使能寄存器124的EN置为1;
CPU 11将EN置为1,以告知主控制模块121有待执行的访问操作,触发主控制模块121执行访问操作。
S15、CPU 11定时查询访问使能寄存器124的EN是否为0;若为是,则执行S16;若为否,则重新执行S15,查询访问使能寄存器124的EN是否为0;
当本次访问操作结束后,主控制模块121会将访问使能寄存器124的EN置为0;这种情况下,当CPU 11查询到访问使能寄存器124的EN为0时,则可以确定本次访问操作结束。
S16、CPU 11定时查询访问状态寄存器1210的Indicator是否为0;如果是,则执行S17;如果否,则执行S18;
S17、CPU 11确定本次写操作成功;
S18、CPU 11确定本次写操作失败,从访问状态寄存器1210的Bit[2:0]获取错误类型,并根据获取的错误类型进行异常处理。
参考图7,图7为本发明实施例中CPU 11进行读操作的流程示意图。下面结合图4所示的主控板进行说明,该流程包括:
S21、CPU 11进行读准备;
S22、CPU 11定时查询访问使能寄存器124的EN是否为0;若为是,则执行S23;若为否,则重新执行S22,查询访问使能寄存器124的EN是否为0;
S23、CPU 11配置读写指示寄存器125、访问地址寄存器126和通道选择寄存器1210;
具体地,CPU 11将表示写操作的标识1写入读写指示寄存器125的Bit[0],将目标访问寄存器的地址(例如风扇状态寄存器的地址)写入访问地址寄存器126的Bit[7:0],将需要访问的风扇框的标识写入通道选择寄存器1210的Bit[7:0]。
S24、CPU 11将访问使能寄存器124的EN置为1;
CPU 11将EN设置为1,以告知主控制模块121有待执行的访问操作,触发主控制模块121执行访问操作。
S25、CPU 11定时查询访问使能寄存器124的EN是否为0;若为是,则执行S26;若为否,则重新执行S25,查询访问使能寄存器124的EN是否为0;
当本次访问操作结束后,主控制模块121会将访问使能寄存器124的EN置为0;这种情况下,当CPU 11查询到访问使能寄存器124的EN为0时,则可以确定本次访问操作结束。
S26、CPU 11查询访问状态寄存器1210的Indicator是否为0;如果是,则执行S27;如果否,则执行S28;
S27、CPU 11确定本次读操作成功,确定读数据寄存器128中存储的数据为有效数据,从读数据寄存器128中读取数据;
S28、CPU 11确定本次读操作失败,从访问状态寄存器129的Bit[2:0]获取错误类型,并根据获取的错误类型进行异常处理。
需要说明的是,本发明实施例中提到的主风扇控制器可以为可编程逻辑器件,此时,可以通过对可编程逻辑器件的编辑实现上述主风扇控制器中包括的各个模块的功能。
应用上述实施例,主控板的主风扇控制器与风扇框通过串行控制总线连接,主控板只需要实现串行控制总线的控制功能就可以了,不需要获知风扇的类型,生成与该风扇的类型适配的PWM信号。可见,本发明实施例中,主控板能够独立于风扇的类型,网络设备选用新类型的风扇时,主风扇控制器不需要做任何修改,简化了主控板的设计,简化了主风扇控制器的设计,实现了灵活的适配多种类型的风扇。
参考图8,图8为本发明实施例提供的一种风扇框的一种结构示意图,该风扇框包括:从风扇控制器21和风扇22;
这里,从风扇控制器21通过串行控制总线与主控板连接,也就是,从风扇控制器21与主控板通过串行控制总线进行通信。这样,主控板只需要实现串行控制总线的控制功能就可以了,降低了主控板对风扇类型的依赖。
需要说明的是,串行控制总线可以为同步串行控制总线,也可以为异步串行控制总线,本发明实施例对此不进行限定。
具体地,从风扇控制器包括:一组寄存器2100、从控制模块211、从发送模块212和从接收模块213;
其中,从控制模块211,负责协调从接收模块213和从发送模块212协同工作;从接收模块213,负责接收请求数据帧;从发送模块212,负责发送响应数据帧;
具体地,从接收模块213,用于通过串行控制总线接收主控板发送的请求数据帧;解析请求数据帧,获取命令数据;发送命令数据给从控制模块211;
这里,从接收模块213在单板复位后就处于接收状态,时刻等待接收请求数据帧。
从控制模块211,用于根据命令数据访问目标访问寄存器;根据访问操作结果,确定响应数据;将响应数据发送给主发送模块212;
从发送模块212,用于根据响应数据构造响应数据帧;通过串行控制总线发送响应数据帧给主控板。
在本发明的一个实施例中,从接收模块213,还用于在接收到请求数据帧、且确定请求数据帧有效时解析所述有效的请求数据帧,获取有效的命令数据。
在本发明的一个实施例中,为了便于风扇框控制风扇的转速和获取风扇的状态信息,参考图9,图9为本发明实施例提供的一种风扇框的另一种结构示意图,基于图8,从风扇控制器21中的一组寄存器2100可以包括:风扇控制寄存器214和风扇状态寄存器215;从风扇控制器21还可以包括:信号生成模块216和信息转发模块217;另外,风扇框还可以包括与从控制模块211连接的温度传感器218;
其中,风扇控制寄存器214,用于存储针对风扇转速的转速控制数据;这里,转速控制数据可以包括:风扇调速的信息、调速策略等信息;风扇状态寄存器215,用于存储风扇反馈的状态信息;温度传感器218,用于检测本地的温度值,并将检测到的温度值发送给从控制模块211。
基于图9所示的风扇框,若访问操作为写操作,目标访问寄存器包括:风扇控制寄存器;若访问操作为读操作,目标访问寄存器包括:风扇状态寄存器。
这种情况下,从控制模块211,还用于根据有效的命令数据确定作为写操作对象的风扇控制寄存器214,将有效的命令数据中包括的转速控制数据写入风扇控制寄存器214,对风扇22进行转速控制;
从控制模块211,还用于根据有效的命令数据确定作为读操作对象的风扇状态寄存器215,从风扇状态寄存器215中获取状态信息,对风扇22进行状态监控;
信号生成模块216,用于根据风扇控制寄存器214中存储的转速控制数据生成与风扇22的类型适配的转速控制信号,根据转速控制信号对风扇22的转速进行控制;
信息转发模块217,用于收集风扇22的状态信息,将状态信息写入风扇状态寄存器215。
这里,转速控制信号可以为PWM信号。风扇22安装在风扇框上,风扇框能够获知本地风扇22的类型,因此,风扇框能够生成与风扇的类型适配的PWM信号,实现风扇转速的控制。
值得一提的是,风扇控制寄存器214可以存储的转速控制数据,风扇状态寄存器215可以存储状态信息;这种情况下,即使主控板被拔掉,从风扇控制器21依然可以根据风扇控制寄存器214和风扇状态寄存器215中存储的信息,控制风扇的转速、获取风扇的转速信息等。
基于图9所示的风扇框,从控制模块211,还用于根据温度传感器218检测到的温度值,确定转速控制数据,并将转速控制数据写入风扇控制寄存器214。
这种情况下,风扇框能够更好的控制风扇22的转速,避免了局部温度过高,同时节省能耗。
在本发明的一个实施例中,为了提高主控板接收的可靠性和风扇框接收的可靠性,可以预先设置一个帧格式,该帧格式为:帧开始和帧结束的间隔符为010。
这种情况下,从发送模块212可以按照预设帧格式根据响应数据构造响应数据帧;主控板可以按照预设帧格式根据命令数据构造请求数据帧。
请求数据帧和响应数据帧的帧开始和帧结束的间隔符中包括了0-1的跳变和1-0的跳变,从接收模块213按照该预设帧格式对接收的请求数据帧进行校验,确定有效的请求数据帧,丢弃无效的请求数据帧,有效地提高了风扇框接收的可靠性;主控板按照该预设帧格式对接收的响应数据帧进行校验,有效地提高了主控板接收的可靠性。
参考图10,图10为本发明实施例中从风扇控制器21处理访问操作的流程示意图。下面结合图9所示的风扇框进行说明,该流程包括:
S31、从接收模块213检测到有请求数据帧输入时,接收该请求数据帧,当请求数据帧接收完毕后,对接收的请求数据帧进行校验,丢弃无效的请求数据帧,保留有效的请求数据帧;从接收模块213解析有效的请求数据帧,获取有效的命令数据,发送有效的命令数据给从控制模块211;
这里,从接收模块213在风扇框单板复位后,就处于接收状态,时刻等待接收数据帧,并对数据帧进行校验。
从接收模块213按预设的帧格式对接收的请求数据帧进行校验。例如,如表2中所示的数据帧的格式,当从接收模块213检测到帧开始的间隔符时,其后面8位为读/写操作的标识,在读取到读/写操作的标识后,就可以确定在读/写操作标识之后的间隔多少位的位置为帧结束的间隔符;若从接收模块213检测到所确定帧结束的间隔符的位置为帧结束的间隔符,则可以确定接收的数据帧为有效的请求数据帧;否则,确定接收的数据帧为无效的请求数据帧。
S32、从主控制模块211根据有效的命令数据,确定读/写操作的标识、目标访问寄存器的地址和数据信息;
具体地,当有效的命令数据为针对读操作的数据时,确定的信息有:读操作的标识和目标访问寄存器的地址;这里,目标访问寄存器为风扇状态寄存器214;
当有效的命令数据为针对写操作的数据时,确定的信息有:写操作标识、目标访问寄存器的地址和转速控制数据;这里,目标访问寄存器为风扇控制寄存器215。
S33、从主控制模块211根据确定的信息,更改或读取对应寄存器的内容;
具体地,若确定的信息为读操作的标识和目标访问寄存器的地址,则从目标访问寄存器中读出数据,该读出数据为风扇的状态信息等;
若确定的信息为写操作标识、目标访问寄存器的地址和转速控制数据,则更改目标访问寄存器中的数据,将转速控制数据写入目标访问寄存器。
S34、从主控制模块211根据访问结果,确定响应数据,并将响应数据发送给从发送模块212,启动从发送模块212发送响应数据帧;
具体地,当访问操作为读操作时,在从目标访问寄存器中读出数据后,确定的响应数据包括:目标访问寄存器的地址(也就是响应寄存器的地址)和读出数据;当访问操作为写操作时,在将转速控制数据写入目标访问寄存器后,确定的响应数据包括:目标访问寄存器的地址。
从发送模块212接收到响应数据后,按照预设帧格式根据响应数据构造响应数据帧,将构造的响应数据帧发送给主控板。
S35、从主控制模块211实时判断响应数据帧是否发生完毕;如果是,则执行S36;如果否,则继续执行S35实时判断响应数据帧是否发生完毕;
从发送模块212在发送响应数据帧完毕后,向从主控制模块213发送一个发送响应信号;
从主控制模块211接收到发送响应信号后,确定响应数据帧发送完毕,向从接收模块213发送一个接收请求信号,使能从接收模块213。
S36、从接收模块212继续等待接收新的请求数据帧。
此时,本次访问结束。
需要说明的是,本发明实施例中提到的从风扇控制器均可以为可编程逻辑器件,此时,可以通过对可编程逻辑器件的编辑实现上述从风扇控制器中包括的各个模块的功能。
另外,需要说明的是,一个风扇框中可以包括多个风扇22,从风扇控制器21接收到请求数据帧后,可以对各个风扇22单独进行访问,如:关闭某个风扇22,或调高某个风扇22的转速等。
应用上述实施例,主控板的主风扇控制器与风扇框通过串行控制总线连接,主控板只需要实现串行控制总线的控制功能就可以了,不需要获知风扇的类型,生成与该风扇的类型适配的PWM信号。可见,本发明实施例中,主控板能够独立于风扇的类型,网络设备选用新类型的风扇时,主风扇控制器不需要做任何修改,简化了主控板的设计,简化了主风扇控制器的设计,实现了灵活的适配多种类型的风扇。
参考图11,图11为本发明实施例提供的一种网络设备的一种结构示意图,该网络设备包括主控板1和至少一个风扇框2;主控板1和每个风扇框2通过串行控制总线3连接。
其中,主控板1包括:CPU 11和主风扇控制器12;主风扇控制器12包括一组寄存器A、主控制模块、主发送模块和主接收模块;
CPU,用于发起访问操作,将访问操作对应的命令数据写入目标寄存器;访问操作的对象为选定的位于风扇框上的目标访问寄存器;
这里,目标寄存器为上述一组寄存器A中的一个或多个寄存器。
主控制模块,用于将目标寄存器中存储的命令数据发送给主发送模块;
主发送模块,用于根据命令数据构造请求数据帧;通过串行控制总线发送请求数据帧给风扇框;
主接收模块,用于通过串行控制总线接收风扇框发送的响应数据帧;解析响应数据帧,获得响应数据;发送响应数据给主控制模块;
主控制模块,还用于根据响应数据确定访问操作结果;通知CPU访问操作结束;
另外,风扇框包括:从风扇控制器21和风扇22;从风扇控制器21包括:一组寄存器B、从控制模块、从发送模块和从接收模块;
从接收模块,用于通过串行控制总线接收主控板发送的请求数据帧;解析请求数据帧,获取命令数据;发送命令数据给从控制模块;
从控制模块,用于根据命令数据确定作为访问操作对象的目标访问寄存器,访问目标访问寄存器,对风扇22进行转速控制和状态监控;根据访问操作结果,确定响应数据;将响应数据发送给从发送模块;
从发送模块,用于根据响应数据构造响应数据帧;通过串行控制总线发送响应数据帧给主控板。
在本发明的一个实施例中,一组寄存器A包括:读写指示寄存器、访问地址寄存器、写数据寄存器和通道选择寄存器;
若访问操作为写操作,目标寄存器包括:读写指示寄存器、访问地址寄存器、写数据寄存器和通道选择寄存器;
若访问操作为读操作,目标寄存器包括:读写指示寄存器、访问地址寄存器和通道选择寄存器;
这种情况下,CPU,还用于若访问操作为写操作,将写操作的标识写入读写指示寄存器,将目标访问寄存器的地址写入访问地址寄存器,将转速控制数据写入写数据寄存器,将风扇框的标识写入通道选择寄存器;
CPU,还用于若访问操作为读操作,将读操作的标识写入读写指示寄存器,将目标访问寄存器的地址写入访问地址寄存器,将风扇框的标识写入通道选择寄存器。
在本发明的一个实施例中,一组寄存器A包括:访问使能寄存器;
CPU,还用于在查询到访问使能寄存器的启动位EN指示为空闲时,发起访问操作;还用于在将访问操作对应的命令数据写入目标寄存器后,将访问使能寄存器的EN置为启动访问操作;
主控制模块,还用于在查询到访问使能寄存器的EN指示为启动访问操作时,将目标寄存器中存储的命令数据发送给主发送模块;
主控制模块,还用于在根据响应数据确定访问操作结果后,将访问使能寄存器的EN置为空闲,并通知CPU访问操作结束。
在本发明的一个实施例中,主风扇控制器12还包括:定时器;
主控制模块,还用于在确定主发送模块发送请求数据帧完毕后,使能主接收模块,并启动定时器;当定时器超时溢出时,去使能主接收模块;
主接收模块,还用于在接收到响应数据帧、且确定响应数据帧有效时解析有效的响应数据帧,获得有效的响应数据;
主控制模块,还用于对有效的响应数据进行校验。
在本发明的一个实施例中,一组寄存器A包括:访问状态寄存器;
主控制模块,还用于当对有效的响应数据校验通过时,将访问状态寄存器的指示位indicator置为访问操作成功;
主控制模块,还用于在确定定时器超时溢出、或确定主接收模块接收到无效的响应数据帧、或对有效的响应数据校验未通过时,将访问状态寄存器的indicator置为访问操作失败,以及将访问状态寄存器的错误类型置为相应的值。
在本发明的一个实施例中,一组寄存器A包括读数据寄存器;
主控制模块,还用于当对有效的响应数据校验通过、且访问操作为读操作时,将有效的响应数据中的读出数据写入读数据寄存器。
在本发明的一个实施例中,主发送模块,还用于按照预设帧格式根据命令数据构造请求数据帧;预设帧格式为:帧开始的间隔符和帧结束的间隔符为010。
在本发明的一个实施例中,从接收模块,还用于在接收到请求数据帧、且确定请求数据帧有效时解析有效的请求数据帧,获取有效的命令数据。
在本发明的一个实施例中,一组寄存器B包括:风扇控制寄存器和风扇状态寄存器;
若访问操作为写操作,目标访问寄存器包括:风扇控制寄存器;
若访问操作为读操作,目标访问寄存器包括:风扇状态寄存器;
从控制模块,还用于根据有效的命令数据确定作为写操作对象的风扇控制寄存器,将有效的命令数据中包括的转速控制数据写入风扇控制寄存器,对风扇22进行转速控制;
从控制模块,还用于根据有效的命令数据确定作为读操作对象的风扇状态寄存器,从风扇状态寄存器中获取状态信息,对风扇22进行状态监控。
在本发明的一个实施例中,风扇框还包括风扇;从风扇控制器还包括信号生成模块和信息转发模块;
信号生成模块,用于根据风扇控制寄存器中存储的转速控制数据生成与风扇的类型适配的转速控制信号,根据转速控制信号对风扇22的转速进行控制;
信息转发模块,用于收集风扇22的状态信息,将状态信息写入风扇状态寄存器。
在本发明的一个实施例中,风扇框还包括:与从控制模块连接的温度传感器;
温度传感器,用于检测本地的温度值,并将检测到的温度值发送给从控制模块;
从控制模块,还用于根据检测到的温度值,确定转速控制数据,并将转速控制数据写入风扇控制寄存器。
在本发明的一个实施例中,转速控制信号为PWM信号。
在本发明的一个实施例中,从发送模块,还用于按照预设帧格式根据响应数据构造响应数据帧;预设帧格式为:帧开始的间隔符和帧结束的间隔符为010。
需要说明的是,上述主控板1的实施例可参考图2-7的实施例,上述风扇框2的实施例可参考图8-10的实施例,此处不再赘述。
下面通过获取风扇状态信息的实例说明本发明实施例中网络设备的工作流程,其中,风扇控制寄存器的地址为01H,风扇状态寄存器的地址为02H,当前需要读取风扇框02H的风扇状态寄存器中存储的状态信息,则网络设备获取风扇状态信息的过程包括:
1、CPU读取访问使能寄存器的Bit[0]的值,若访问使能寄存器的Bit[0]为0,确定串行控制总线空闲,发起访问操作,开始传输新的数据帧;
2、CPU将读写指示寄存器的Bit[0]置为1,将访问地址寄存器的Bit[7:0]置为02H,也就是将访问地址寄存器的Bit[7:0]置为0000 0010,将通道选择寄存器的Bit[7:0]置为02H;
3、CPU将访问使能寄存器的Bit[0]置为1,之后,CPU查询访问使能寄存器的Bit[0]的值是否为0,直到访问使能寄存器的Bit[0]为0,才表示访问操作结束;
4、主控制模块查询到访问使能寄存器的Bit[0]为1,则根据读写指示寄存器和访问地址寄存器中的信息,确定命令数据;将命令数据发送给主发送模块;
5、主发送模块根据命令数据构造请求数据帧,如表7所示;主发送模块将该请求数据帧发送给风扇框02H的从接收模块;在主发送模块发送完毕后,主控制模块启动主接收模块和定时器;
表7
读操作的请求数据帧 010 10 0000 0010 010
6、风扇框02H的从接收模块接收到请求数据帧,并校验无误后,解析请求数据帧,获得命令数据,将命令数据发送给风扇框02H的从控制模块;
7、风扇框02H的从控制模块根据命令数据,从地址02H(也就是风扇状态寄存器)中读取状态信息,例如读取到的状态信息为0xA5;将读取到的状态信息及风扇状态寄存器的地址作为响应数据发送给风扇框02H的从发送模块,并启动从发送模块;
8、风扇框02H的从发送模块根据响应数据构造响应数据帧,如表8所示;
表8
读操作的响应数据帧 010 11 0000 0010 1010 0101 010
9、风扇框02H的从发送模块将响应数据帧发送给主接收模块;
10、主接收模块接收到响应数据帧后,协同主控制模块校验是否有错误,是否为期望响应数据帧,如:是否超时、是否间隔符错误、是否响应寄存器的地址错误等,若没有错误且为期望响应数据帧,主控制模块将该响应数据帧中的数据0xA5写入读数据寄存器中;
11、主控制模块将访问使能寄存器的Bit[0]置为0,通知CPU,本次访问操作结束。
应用上述实施例,主控板的主风扇控制器与风扇框通过串行控制总线连接,主控板只需要实现串行控制总线的控制功能就可以了,不需要获知风扇的类型,生成与该风扇的类型适配的PWM信号。可见,本发明实施例中,主控板能够独立于风扇的类型,网络设备选用新类型的风扇时,主风扇控制器不需要做任何修改,简化了主控板的设计,简化了主风扇控制器的设计,实现了灵活的适配多种类型的风扇。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (15)

1.一种主控板,其特征在于,所述主控板包括:CPU和与所述CPU连接的主风扇控制器;所述主风扇控制器包括一组寄存器、主控制模块、主发送模块和主接收模块;
所述CPU,用于发起访问操作,将所述访问操作对应的命令数据写入目标寄存器;所述访问操作的对象为选定的位于风扇框上的目标访问寄存器,所述目标寄存器为所述一组寄存器中与所述访问操作的类型匹配的寄存器;
所述主控制模块,用于将所述目标寄存器中存储的所述命令数据发送给所述主发送模块;
所述主发送模块,用于根据所述命令数据构造请求数据帧;通过串行控制总线发送所述请求数据帧给所述风扇框;
所述主接收模块,用于通过串行控制总线接收所述风扇框发送的响应数据帧;解析所述响应数据帧,获得响应数据;发送所述响应数据给所述主控制模块;
所述主控制模块,还用于根据所述响应数据确定访问操作结果;通知所述CPU所述访问操作结束。
2.根据权利要求1所述的主控板,其特征在于,所述一组寄存器包括:读写指示寄存器、访问地址寄存器、写数据寄存器和通道选择寄存器;
若所述访问操作为写操作,所述目标寄存器包括:读写指示寄存器、访问地址寄存器、写数据寄存器和通道选择寄存器;
若所述访问操作为读操作,所述目标寄存器包括:读写指示寄存器、访问地址寄存器和通道选择寄存器;
所述CPU,还用于若所述访问操作为写操作,将写操作的标识写入所述读写指示寄存器,将所述目标访问寄存器的地址写入所述访问地址寄存器,将转速控制数据写入所述写数据寄存器,将所述风扇框的标识写入所述通道选择寄存器;
所述CPU,还用于若所述访问操作为读操作,将读操作的标识写入所述读写指示寄存器,将所述目标访问寄存器的地址写入所述访问地址寄存器,将所述风扇框的标识写入所述通道选择寄存器。
3.根据权利要求1或2所述的主控板,其特征在于,所述一组寄存器包括:访问使能寄存器;
所述CPU,还用于在查询到所述访问使能寄存器的启动位EN指示为空闲时,发起所述访问操作;还用于在将所述访问操作对应的命令数据写入目标寄存器后,将所述访问使能寄存器的EN置为启动访问操作;
所述主控制模块,还用于在查询到所述访问使能寄存器的EN指示为启动访问操作时,将所述目标寄存器中存储的所述命令数据发送给所述主发送模块;
所述主控制模块,还用于在根据所述响应数据确定访问操作结果后,将所述访问使能寄存器的EN置为空闲,并通知所述CPU所述访问操作结束。
4.根据权利要求1或2所述的主控板,其特征在于,所述主风扇控制器还包括:定时器;
所述主控制模块,还用于在确定所述主发送模块发送所述请求数据帧完毕后,使能所述主接收模块,并启动所述定时器;当所述定时器超时溢出时,去使能所述主接收模块;
所述主接收模块,还用于在接收到所述响应数据帧、且确定所述响应数据帧有效时解析所述有效的响应数据帧,获得有效的响应数据;
所述主控制模块,还用于对所述有效的响应数据进行校验。
5.根据权利要求4所述的主控板,其特征在于,所述一组寄存器包括:访问状态寄存器;
所述主控制模块,还用于当对所述有效的响应数据校验通过时,将所述访问状态寄存器的指示位indicator置为访问操作成功;
所述主控制模块,还用于在确定所述定时器超时溢出、或确定所述主接收模块接收到无效的响应数据帧、或对所述有效的响应数据校验未通过时,将所述访问状态寄存器的indicator置为访问操作失败,以及将所述访问状态寄存器的错误类型置为相应的值。
6.根据权利要求5所述的主控板,其特征在于,所述一组寄存器包括读数据寄存器;
所述主控制模块,还用于当对所述有效的响应数据校验通过、且所述访问操作为读操作时,将所述有效的响应数据中的读出数据写入所述读数据寄存器。
7.根据权利要求1所述的主控板,其特征在于,
所述主发送模块,还用于按照预设帧格式根据所述命令数据构造请求数据帧;所述预设帧格式为:帧开始的间隔符和帧结束的间隔符为010。
8.一种风扇框,其特征在于,所述风扇框包括:从风扇控制器和与所述从风扇控制器连接的风扇;所述从风扇控制器包括:一组寄存器、从控制模块、从发送模块和从接收模块;
所述从接收模块,用于通过串行控制总线接收主控板发送的请求数据帧;解析所述请求数据帧,获取命令数据;发送所述命令数据给所述从控制模块;
所述从控制模块,用于根据所述命令数据确定作为访问操作对象的目标访问寄存器,访问所述目标访问寄存器,对所述风扇进行转速控制和状态监控;根据访问操作结果,确定响应数据;将所述响应数据发送给所述从发送模块;
所述从发送模块,用于根据所述响应数据构造响应数据帧;通过串行控制总线发送所述响应数据帧给所述主控板。
9.根据权利要求8所述的风扇框,其特征在于,
所述从接收模块,还用于在接收到所述请求数据帧、且确定所述请求数据帧有效时解析所述有效的请求数据帧,获取有效的命令数据。
10.根据权利要求9所述的风扇框,其特征在于,所述一组寄存器包括:风扇控制寄存器和风扇状态寄存器;
若所述访问操作为写操作,所述目标访问寄存器包括:风扇控制寄存器;
若所述访问操作为读操作,所述目标访问寄存器包括:风扇状态寄存器;
所述从控制模块,还用于根据所述有效的命令数据确定作为写操作对象的所述风扇控制寄存器,将所述有效的命令数据中包括的转速控制数据写入风扇控制寄存器,对所述风扇进行转速控制;
所述从控制模块,还用于根据所述有效的命令数据确定作为读操作对象的所述风扇状态寄存器,从所述风扇状态寄存器中获取状态信息,对所述风扇进行状态监控。
11.根据权利要求10所述的风扇框,其特征在于,所述从风扇控制器还包括信号生成模块和信息转发模块;
所述信号生成模块,用于根据所述风扇控制寄存器中存储的转速控制数据生成与所述风扇的类型适配的转速控制信号,根据所述转速控制信号对所述风扇的转速进行控制;
所述信息转发模块,用于收集所述风扇的状态信息,将所述状态信息写入所述风扇状态寄存器。
12.根据权利要求11所述的风扇框,其特征在于,所述风扇框还包括:与所述从控制模块连接的温度传感器;
所述温度传感器,用于检测本地的温度值,并将检测到的温度值发送给所述从控制模块;
所述从控制模块,还用于根据检测到的温度值,确定转速控制数据,并将所述转速控制数据写入所述风扇控制寄存器。
13.根据权利要求11或12所述的风扇框,其特征在于,所述转速控制信号为脉冲宽度调制PWM信号。
14.根据权利要求8所述的风扇框,其特征在于,
所述从发送模块,还用于按照预设帧格式根据所述响应数据构造响应数据帧;所述预设帧格式为:帧开始的间隔符和帧结束的间隔符为010。
15.一种网络设备,其特征在于,所述网络设备包括权利要求1至7任一项所述的主控板和至少一个权利要求8至14任一项所述的风扇框;
所述主控板和每个所述风扇框通过串行控制总线连接。
CN201710209736.3A 2017-03-31 2017-03-31 一种主控板、风扇框和网络设备 Active CN106993241B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710209736.3A CN106993241B (zh) 2017-03-31 2017-03-31 一种主控板、风扇框和网络设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710209736.3A CN106993241B (zh) 2017-03-31 2017-03-31 一种主控板、风扇框和网络设备

Publications (2)

Publication Number Publication Date
CN106993241A CN106993241A (zh) 2017-07-28
CN106993241B true CN106993241B (zh) 2020-08-07

Family

ID=59414764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710209736.3A Active CN106993241B (zh) 2017-03-31 2017-03-31 一种主控板、风扇框和网络设备

Country Status (1)

Country Link
CN (1) CN106993241B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108845651A (zh) * 2018-06-27 2018-11-20 郑州云海信息技术有限公司 一种无系统的服务器自主降温方法及系统
CN114221903B (zh) * 2021-11-30 2024-03-12 新华三技术有限公司合肥分公司 一种数据传输方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101788939A (zh) * 2009-01-22 2010-07-28 中兴通讯股份有限公司 一种控制器状态监测装置及方法
CN102377778A (zh) * 2011-10-17 2012-03-14 中国人民解放军国防科学技术大学 一种基于以太网的远程非对称端通信方法
CN102609378A (zh) * 2012-01-18 2012-07-25 中国科学院计算技术研究所 一种消息式内存访问装置及其访问方法
CN106484059A (zh) * 2016-10-21 2017-03-08 郑州云海信息技术有限公司 一种服务器散热调控方法、装置及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101788939A (zh) * 2009-01-22 2010-07-28 中兴通讯股份有限公司 一种控制器状态监测装置及方法
CN102377778A (zh) * 2011-10-17 2012-03-14 中国人民解放军国防科学技术大学 一种基于以太网的远程非对称端通信方法
CN102609378A (zh) * 2012-01-18 2012-07-25 中国科学院计算技术研究所 一种消息式内存访问装置及其访问方法
CN106484059A (zh) * 2016-10-21 2017-03-08 郑州云海信息技术有限公司 一种服务器散热调控方法、装置及系统

Also Published As

Publication number Publication date
CN106993241A (zh) 2017-07-28

Similar Documents

Publication Publication Date Title
JP3711432B2 (ja) 周辺処理装置およびその制御方法
JP4259557B2 (ja) 印刷装置及び論理パケット処理方法
US20040093454A1 (en) USB endpoint controller flexible memory management
IL207122A (en) Command and response of a computer to determine the I / O mode
CN106993241B (zh) 一种主控板、风扇框和网络设备
US20080071942A1 (en) Method for executing a software updating process and computer for implementing the method
CN107025203B (zh) 第一板卡、第二板卡及一种设备
US9930216B2 (en) Printing system, computer readable recording medium stored with printing device search program, and computer readable recording medium stored with printing device control program for acquiring and displaying information without requiring client terminal authentication
US20230205870A1 (en) Control instruction processing method, apparatus and device, and computer storage medium
JP2002016613A (ja) 電子機器、電子機器システムおよび通信制御方法
JP5294743B2 (ja) 画像形成システム、画像形成装置、画像形成装置の制御方法、情報処理装置、情報処理装置の制御方法及び制御プログラム、並びに記憶媒体
CN114221903B (zh) 一种数据传输方法及装置
CN111367766A (zh) 监控主机与设备间连接关系确定方法、装置及设备
CN106775818B (zh) 基于can总线的ecu升级方法及ecu升级设备
EP3345361B1 (en) Communication link establishment using a global unique identifier
CN107147719A (zh) 一种硬件更新方法、主节点、从节点以及服务器集群
US11431782B2 (en) Method, apparatus, and device for transmitting file based on BMC, and medium
US11314670B2 (en) Method, apparatus, and device for transmitting file based on BMC, and medium
US8634325B2 (en) Tuning of industrial automation system performance based on device operating characteristics
CN107153580B (zh) 获取队列精确状态的装置及其方法
US20090161154A1 (en) Communication device and method of controlling the same
KR101810196B1 (ko) 인버터의 통신모듈
CN116756078B (zh) pcie数据包的通知方法、装置及存储介质
US20180039454A1 (en) Information processing apparatus and method of controlling information processing apparatus
CN113824752B (zh) 参数处理方法、电器设备及服务器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant