一种针对交换芯片的温度数据获取方法和装置与流程
未命名
08-05
阅读:111
评论:0
1.本发明涉及针对交换芯片的温度数据获取技术领域,特别是涉及一种针对交换芯片的温度数据获取方法、一种服务器、一种针对交换芯片的温度数据获取装置、一种电子设备以及一种计算机可读存储介质。
背景技术:
2.交换芯片为交换机核心芯片之一,决定了交换机的性能,属于交换机的心脏。交换机主要功能是提供子网内的高性能和低延时交换,而高性能交换的功能主要由交换芯片完成。同时由于交换机的部署节点多、规模大,需要交换机具备更低的功耗和更低的成本,对交换芯片功耗和成本提出了更高的要求。随着数据中心业务的迅速发展,数据中心交换机需求量也在迅速增加。目前,交换芯片温度获取方式大部分采用统计频率方式计算温度,而当采用8bit统计频率进行计算时,统计频率偏差
±
1对应温度偏差
±
5℃,导致针对交换芯片的温度曲线波动剧烈,稳定性和可靠性不足。
3.因此,如何提升针对交换芯片温度获取结果的准确性是本领域内技术人员需要克服的问题。
技术实现要素:
4.本发明实施例是提供一种针对交换芯片的温度数据获取方法、装置、电子设备以及计算机可读存储介质,以解决如何提升针对交换芯片温度获取结果的准确性的问题。
5.本发明实施例公开了一种针对交换芯片的温度数据获取方法,所述交换芯片具有对应的管理总线,所述管理总线具有对应的管理总线数据宽度,可以包括:
6.基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;
7.采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据。
8.可选地,所述交换芯片包括温度管脚,所述基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据的步骤可以包括:
9.采用所述温度管脚获取高位上升沿脉冲个数数值和低位上升沿脉冲个数数值;所述高位上升沿脉冲个数数值用于表达数据宽度为8比特率的高位温度数据;所述低位上升沿脉冲个数数值用于表达数据宽度为8比特率的低位温度数据。
10.可选地,所述交换芯片配置有对应的可编程逻辑器件,所述可编程逻辑器件包括计时器和寄存器,所述寄存器配置有对应的16比特率脉冲上升沿计数器,所述计时器用于设置预设时间周期,还可以包括:
11.判断当前计时时间是否到达预设时间周期;
12.当判定当前计时时间到达预设时间周期时,则将所述高位上升沿脉冲个数数值标记为初始高位上升沿脉冲个数数值,并将所述低位上升沿脉冲个数数值分别标记为初始低
位上升沿脉冲个数数值和目标低位上升沿脉冲个数数值;所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值用于更新至16比特率脉冲上升沿计数器;所述目标低位上升沿脉冲个数数值用于更新至所述寄存器。
13.可选地,所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值具有对应的关联关系,所述采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据的步骤可以包括:
14.当通过所述寄存器读取到所述目标低位上升沿脉冲个数数值时,基于所述关联关系从所述初始高位上升沿脉冲个数数值中确定出与所述目标低位上升沿脉冲个数数值对应的目标高位上升沿脉冲个数数值,并采用所述目标低位上升沿脉冲个数数值和所述目标高位上升沿脉冲个数数值,生成数据宽度为16比特率的目标温度数据。
15.可选地,还可以包括:
16.当判定当前计时时间未到达预设时间周期时,则执行所述采用所述温度管脚获取高位上升沿脉冲个数数值和低位上升沿脉冲个数数值的步骤。
17.可选地,所述可编程逻辑器件包括管理总线接口模块,所述可编程逻辑器件具有对应的中央处理器,所述管理总线接口模块用于使所述中央处理器基于所述管理总线通过所述寄存器读取所述目标温度数据。
18.本发明实施例还公开了一种针对交换芯片的温度数据获取装置,所述交换芯片具有对应的管理总线,所述管理总线具有对应的管理总线数据宽度,可以包括:
19.8比特率数据获取模块,用于基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;
20.16比特率数据生成模块,用于采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据。
21.可选地,所述交换芯片包括温度管脚,所述8比特率数据获取模块可以包括:
22.上升沿脉冲个数数值获取子模块,用于采用所述温度管脚获取高位上升沿脉冲个数数值和低位上升沿脉冲个数数值;所述高位上升沿脉冲个数数值用于表达数据宽度为8比特率的高位温度数据;所述低位上升沿脉冲个数数值用于表达数据宽度为8比特率的低位温度数据。
23.可选地,所述交换芯片配置有对应的可编程逻辑器件,所述可编程逻辑器件包括计时器和寄存器,所述寄存器配置有对应的16比特率脉冲上升沿计数器,所述计时器用于设置预设时间周期,还可以包括:
24.时间判断子模块,用于判断当前计时时间是否到达预设时间周期;
25.数值标记子模块,用于当判定当前计时时间到达预设时间周期时,则将所述高位上升沿脉冲个数数值标记为初始高位上升沿脉冲个数数值,并将所述低位上升沿脉冲个数数值分别标记为初始低位上升沿脉冲个数数值和目标低位上升沿脉冲个数数值;所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值用于更新至16比特率脉冲上升沿计数器;所述目标低位上升沿脉冲个数数值用于更新至所述寄存器。
26.可选地,所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值具有对应的关联关系,所述16比特率数据生成模块可以包括:
27.16比特率数据生成子模块,用于当通过所述寄存器读取到所述目标低位上升沿脉
冲个数数值时,基于所述关联关系从所述初始高位上升沿脉冲个数数值中确定出与所述目标低位上升沿脉冲个数数值对应的目标高位上升沿脉冲个数数值,并采用所述目标低位上升沿脉冲个数数值和所述目标高位上升沿脉冲个数数值,生成数据宽度为16比特率的目标温度数据。
28.可选地,还可以包括:
29.当判定当前计时时间未到达预设时间周期时,则调用所述上升沿脉冲个数数值获取子模块。
30.可选地,所述可编程逻辑器件包括管理总线接口模块,所述可编程逻辑器件具有对应的中央处理器,所述管理总线接口模块用于使所述中央处理器基于所述管理总线通过所述寄存器读取所述目标温度数据。
31.本发明实施例还公开了一种服务器,其所述服务器包括交换芯片,所述交换芯片具有对应的管理总线,所述管理总线具有对应的管理总线数据宽度,所述服务器用于基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据。
32.本发明实施例还公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
33.所述存储器,用于存放计算机程序;
34.所述处理器,用于执行存储器上所存放的程序时,实现如本发明实施例所述的方法。
35.本发明实施例还公开了一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如本发明实施例所述的方法。
36.本发明实施例包括以下优点:
37.本发明实施例通过基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据,以减小温度曲线波动,从而提升针对交换芯片温度获取结果的准确性。
附图说明
38.图1是本发明实施例中提供的一种针对交换芯片的温度数据获取方法的步骤流程图;
39.图2是本发明实施例中提供的一种针对交换芯片温度数据的获取架构的结构示意图;
40.图3是本发明实施例中提供的一种交换芯片温度获取模块的工作流程示意图;
41.图4是本发明实施例中提供的一种温度同步模块的工作流程示意图;
42.图5是本发明实施例中提供的一种针对交换芯片的温度数据获取装置的结构框图;
43.图6是本发明各实施例中提供的一种电子设备的硬件结构框图;
44.图7是本发明实施例中提供的一种计算机可读介质的示意图。
具体实施方式
45.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
46.在实际应用中,随着数据中心业务迅速发展,数据中心交换机需求量也在迅速增加。broadcom方案交换机温度获取方式大部分采用统计频率方式计算温度,采用8bit统计频率,统计频率偏差
±
1对应温度偏差
±
5℃,导致获取到的温度曲线波动较大,导致用户无法温度曲线准确读取交换机温度;采用16bit统计频率,统计频率偏差
±
1,即,对应温度偏差
±
0.01℃,虽然采用16bit统计频率所生成的温度曲线波动较小,更有利于准确体现交换机温度,但受限于交换机内部管理总线数据宽度8bit,不支持16bit并行访问,而16bit分开访问存在数据高8bit和低8bit不是同一组采样数据,导致温度突然升高或者降低,影响交换机散热策略,针对如上问题,本发明实施例提出了一种基于cpld实现交换机温度同步方法,通过8bit数据总线获取16bit数据,从而提升获取交换机温度的准确性,进一步地,为了减少设计复杂度、减少diag os和cpld修改复杂度,数据总线还是采用8bit,通过cpld内部的交换芯片温度同步模块解决高8bit和低8bit数据不同步问题,进而为上层软件提供统一温度获取接口,方便软件统一处理,降低软件处理复杂度,从而降低开发难度和风险,降低运营成本,达到提高经济效益的目的。
47.参照图1,示出了本发明实施例中提供的一种针对交换芯片的温度数据获取方法的步骤流程图,具体可以包括如下步骤:
48.步骤101,基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;
49.步骤102,采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据。
50.在具体实现中,本发明实施例可以应用于服务器,服务器可以配置有对应的交换芯片,交换芯片具有对应的管理总线。
51.在实际应用中,交换芯片可以是数据中心交换机的芯片,数据中心交换机:数据中心交换机是网络通信设备,为组网形成“路由”服务,连接在组网中的每个节点,实现网络节点之间的互联互通,以传输网络流量。它可以切换大量数据,有助于加快网络上的流量,提高网络的效率。数据中心交换器采用了相当复杂的硬件技术,内部包含多个功能子系统,每个功能子系统有自己的特征,可以支持开发特定的协议,以满足不同业务需要。使用正确的配件和技术,数据中心交换机可以满足网络需要,支持不同应用所需的电路吞吐量和网络安全保护,从而保证资源有效地进行任务分配。
52.数据中心交换机是网络中最重要的组成部分,一个高效的、可靠的交换机设备对于网络的性能有着不可磨灭的重要作用。它支持数据中心网络的不断发展,能够满足服务器,存储,网络设备之间的信息快速传输,是维护核心数据中心网络的主要交换设备,具有高拥塞能力和高安全能力。
53.数据中心交换机分为交换机和路由器,可以按照传输介质(以太网或光纤),架构类型(交叉式、负载均衡和三层网络架构),管理特性(简单管理或较高级管理),带宽大小以
及扩展性(插槽数量),分类。数据中心交换机分隔vlan,可以对网络信息进行逻辑分组,支持“用户”与“互联网”,不同的网络之间的模块互相独立,减少网络拥塞,提高网络的可靠性和安全性。
54.管理总线i2c是一种简单、双向二线制同步串行总线。管理总线i2c只需要两根线即可在连接于总线上的器件之间传送信息。主器件用于启动总线传送数据,并产生时钟以开放传送的器件,此时任何被寻址的器件均被认为是从器件,在总线上主和从、发和收的关系不是恒定的,而取决于此时数据传送方向。如果主机要发送数据给从器件,则主机首先寻址从器件,然后主动发送数据至从器件,最后由主机终止数据传送;如果主机要接收从器件的数据,首先由主器件寻址从器件,然后主机接收从器件发送的数据,最后由主机终止接收过程。在这种情况下,主机负责产生定时时钟和终止数据传送。
55.本发明实施例的管理总线可以具有对应的管理总线数据宽度,在具体实现中,由于相关技术的交换机仍将8bit设定为管理总线数据宽度,为了在不增加生产成本的前提下,本发明实施例的管理总线数据宽度也可以为8比特率,比特率bit是指单位时间内传送的比特(bit)数,单位为bps(bit per second)。
56.在实际应用中,一个16bit的数据在代码中表示为data[15:0],截断高8bit和低8bit,直观地表示为data[15:8]和data[7:0],其中,针对高8bit数据和低8bit数据:可以用0、1记数值,可以对应的是低高电平;每个0或1代表一位,一个数或值用16位表示,记数是从0位开始的,存储值是从低位开始向上进位的,高8位一般是第8到第15位,低8位一般是第0位到第7位。
[0057]
在确定管理总线的数据宽度后,本发明实施例可以基于8bit的管理总线数据宽度获取针对交换芯片的8比特率高位温度和8比特率低位温度数据,然后采用数据宽度为8比特率的高位温度和数据宽度为8比特率的低位温度数据,生成数据宽度为16比特率的目标温度数据。
[0058]
本发明实施例通过基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据,以减小温度曲线波动,从而提升针对交换芯片温度获取结果的准确性。
[0059]
在上述实施例的基础上,提出了上述实施例的变型实施例,在此需要说明的是,为了使描述简要,在变型实施例中仅描述与上述实施例的不同之处。
[0060]
在本发明的一个可选地实施例中,所述交换芯片包括温度管脚,所述基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据的步骤包括:
[0061]
采用所述温度管脚获取高位上升沿脉冲个数数值和低位上升沿脉冲个数数值;所述高位上升沿脉冲个数数值用于表达数据宽度为8比特率的高位温度;所述低位上升沿脉冲个数数值用于表达数据宽度为8比特率的低位温度。
[0062]
在实际应用中,管脚,又称引脚,英文叫pin。就是从集成电路(芯片)内部电路引出与外围电路的接线,所有的引脚就构成了这块芯片的接口。引线末端的一段,通过软钎焊使这一段与印制板上的焊盘共同形成焊点。引脚可划分为脚跟(bottom)、脚趾(toe)、脚侧(side)等部分。
[0063]
上升沿:数字电路中,数字电平从低电平(数字“0”)变为高电平(数字“1”)的那一瞬间(时刻)叫作上升沿。
[0064]
本发明实施例可的交换芯片可以包括温度管脚。
[0065]
在具体实现中,本发明实施例可以采用温度管脚获取用于表达数据宽度为8比特率的高位温度数据的高位上升沿脉冲个数数值sw_temp_h,和用于表达数据宽度为8比特率的低位温度数据的低位上升沿脉冲个数数值sw_temp_l。
[0066]
本发明实施例,通过采用所述温度管脚获取高位上升沿脉冲个数数值和低位上升沿脉冲个数数值;所述高位上升沿脉冲个数数值用于表达数据宽度为8比特率的高位温度数据;所述低位上升沿脉冲个数数值用于表达数据宽度为8比特率的低位温度数据,从而提升了获取高位温度数据和低位温度数据的效率,更进一步地提升了温度数据的获取效率。
[0067]
在本发明的一个可选地实施例中,所述交换芯片配置有对应的可编程逻辑器件,所述可编程逻辑器件包括计时器和寄存器,所述寄存器配置有对应的16比特率脉冲上升沿计数器,所述计时器用于设置预设时间周期,还包括:
[0068]
判断当前计时时间是否到达预设时间周期;
[0069]
当判定当前计时时间到达预设时间周期时,则将所述高位上升沿脉冲个数数值标记为初始高位上升沿脉冲个数数值,并将所述低位上升沿脉冲个数数值分别标记为初始低位上升沿脉冲个数数值和目标低位上升沿脉冲个数数值;所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值用于更新至16比特率脉冲上升沿计数器;所述目标低位上升沿脉冲个数数值用于更新至所述寄存器;所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值具有对应的关联关系。
[0070]
在实际应用中,为了使获取到的交换芯片的温度数据具备即时性,本发明实施例可以周期性的对温度数据进行获取,进一步地,在实际应用中,用于获取温度数据的软件并非处于随时需要读取温度数据的状态,如何使软件做到在需要读取的温度数据的时候能够即刻生成温度数据,有利于提升获取温度数据的效率。
[0071]
cpld:(complex programmable logic device)是complex pld的简称,一种较pld更为复杂的逻辑元件。cpld是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆(“在系统”编程)将代码传送到目标芯片中,实现设计的数字系统。
[0072]
diag os:(diagnostics operating system)诊断操作系统,用于平台的设置、配置和恢复。
[0073]
寄存器:寄存器可以用于暂时存放参与运算的数据和运算结果,是一种常用的时序逻辑电路。
[0074]
本发明实施例可以为交换芯片配置对应的可编程逻辑器件cpld,示例性地,参考图2,图2是本发明实施例中提供的一种针对交换芯片温度数据的获取架构的结构示意图,本发明实施例的可编程逻辑器件cpld可以包括交换芯片温度获取模块和寄存器,寄存器可以由对应的寄存器接口模块,以实现diag os等软件通过寄存器接口模块与寄存器实现数据交互,交换芯片温度获取模块可以包含用于设置预设时间周期的计时器。
[0075]
示例性地,可以以250ms作为预设时间周期,判断当前计时时间是否到达250ms,当
判定到达250ms时,则可以将高位上升沿脉冲个数数值sw_temp_h标记为初始高位上升沿脉冲个数数值sw_temp_rh,并将低位上升沿脉冲个数数值sw_temp_l标记为初始低位上升沿脉冲个数数值sw_temp_rl,并将sw_temp_rh和sw_temp_rl更新至16比特率脉冲上升沿计数器;将低位上升沿脉冲个数数值sw_temp_l标记为目标低位上升沿脉冲个数数值sw_temp_reg_l,并将目标低位上升沿脉冲个数数值sw_temp_reg_l更新至寄存器。
[0076]
可选地,当判定当前计时时间未到达预设时间周期时,则执行所述采用所述温度管脚获取高位上升沿脉冲个数数值和低位上升沿脉冲个数数值的步骤。
[0077]
本发明实施例通过判断当前计时时间是否到达预设时间周期;当判定当前计时时间到达预设时间周期时,则将所述高位上升沿脉冲个数数值标记为初始高位上升沿脉冲个数数值,并将所述低位上升沿脉冲个数数值分别标记为初始低位上升沿脉冲个数数值和目标低位上升沿脉冲个数数值;所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值用于更新至16比特率脉冲上升沿计数器;所述目标低位上升沿脉冲个数数值用于更新至所述寄存器;当判定当前计时时间未到达预设时间周期时,则执行所述采用所述温度管脚获取高位上升沿脉冲个数数值和低位上升沿脉冲个数数值的步骤,为diag os等软件能够在需要获取温度数据时,获取到具有即时性的温度数据创造了条件,从而更进一步地提升了获取交换芯片温度数据的效率。
[0078]
所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值具有对应的关联关系,所述采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据的步骤包括:
[0079]
当通过所述寄存器读取到所述目标低位上升沿脉冲个数数值时,基于所述关联关系从所述初始高位上升沿脉冲个数数值中确定出与所述目标低位上升沿脉冲个数数值对应的目标高位上升沿脉冲个数数值,并采用所述目标低位上升沿脉冲个数数值和所述目标高位上升沿脉冲个数数值,生成数据宽度为16比特率的目标温度数据。
[0080]
在实际应用中,交换机内部管理总线数据宽度8bit,不支持16bit并行访问,而16bit分开访问存在数据高8bit和低8bit不是同一组采样数据,导致获取到的温度数据突然升高或者降低。
[0081]
示例性地,由于本发明实施例的初始高位上升沿脉冲个数数值sw_temp_rh和初始低位上升沿脉冲个数数值sw_temp_rl是在同一时间周期内更新至脉冲上升沿计数器的同一组数据,所以,可以按时间周期为其划分组,同一组的初始高位上升沿脉冲个数数值sw_temp_rh和初始低位上升沿脉冲个数数值sw_temp_rl具有关联关系,而初始低位上升沿脉冲个数数值sw_temp_rl和目标低位上升沿脉冲个数数值sw_temp_reg_l又对应同一个低位上升沿脉冲个数数值sw_temp_l,所以,在读取寄存器中的目标低位上升沿脉冲个数数值sw_temp_reg_l时,只要将与初始低位上升沿脉冲个数数值sw_temp_rl同一组的初始高位上升沿脉冲个数数值sw_temp_rh更新到寄存器中作为目标高位上升沿脉冲个数数值sw_temp_reg_h,就可以保证diag os等用于获取交换芯片温度数据的软件在每次获取到的16bit数是同一组数据,避免了前后获取的高8bit和低8bit非同一组数据情况引入的温度忽高忽低。
[0082]
本发明实施例,通过当通过所述寄存器读取到所述目标低位上升沿脉冲个数数值时,基于所述关联关系从所述初始高位上升沿脉冲个数数值中确定出与所述目标低位上升
沿脉冲个数数值对应的目标高位上升沿脉冲个数数值,并采用所述目标低位上升沿脉冲个数数值和所述目标高位上升沿脉冲个数数值,生成数据宽度为16比特率的目标温度数据,实现了软件在每次获取到的16bit数是同一组数据,避免了前后获取的高8bit和低8bit非同一组数据情况引入的温度忽高忽低,从而更进一步地提升了获取交换芯片的温度数据的准确性。
[0083]
在本发明的一个可选地实施例中,所述可编程逻辑器件包括管理总线接口模块,所述可编程逻辑器件具有对应的中央处理器,所述管理总线接口模块用于使所述中央处理器基于所述管理总线通过所述寄存器读取所述目标温度数据。
[0084]
在实际应用中,交换芯片的温度数据可以用于为针对交换芯片的温度调控策略,而中央处理器(central processing unit,简称cpu)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。
[0085]
参考图2,图2是本发明实施例中提供的一种针对交换芯片温度数据的获取架构的结构示意图,可编程逻辑器件cpld可以包括管理总线接口模块,可编程逻辑器件cpld具有对应的中央处理器cpu,管理总线接口模块可以用于中央处理器基于管理总线通过寄存器读取目标温度数据,从而实现通过中央处理器基于目标温度数据对交换芯片制定并执行温度调控策略,从而更高效的基于目标温度数据对交换芯片执行温度调控。
[0086]
为使本领域技术人员更好地理解本发明实施例,以下用一完整示例对本发明实施例进行说明。
[0087]
参考图2,图2是本发明实施例中提供的一种针对交换芯片温度数据的获取架构的结构示意图,交换芯片温度数据的获取架构的结构可以包括中央处理器cpu,可编程逻辑器件cpld和交换芯片;其中,可编程逻辑器件cpld可以包括i2c接口模块、寄存器接口模块、交换芯片温度同步模块、交换芯片温度获取模块;其中,i2c接口模块是解析i2c读写协议,转换成读写使能信号、地址信号、写数据信号和读数据信号;寄存器接口模块是完成寄存器读写功能;交换芯片温度同步模块是完成高8bit和低8bit数据同步功能;交换芯片温度获取模块是统计250ms内交换芯片温度管脚上升沿脉冲个数,由软件获取该值进而计算出交换芯片温度。
[0088]
如图3所示,图3是本发明实施例中提供的一种交换芯片温度获取模块的工作流程示意图,交换芯片温度获取模块,主要由计时器以及fsm_idle和fsm_temp两个状态组成。其中,fsm_idle状态实时统计交换芯片温度管脚脉冲上升沿个数;fsm_temp状态主要计时器记到250ms后将最新统计的脉冲个数更新到16bit脉冲上升沿计数器sw_temp_h和sw_temp_l。
[0089]
参考图4,图4是本发明实施例中提供的一种温度同步模块的工作流程示意图,软件未读sw_temp_reg_h和sw_temp_reg_l寄存器时,将交换芯片获取模块值sw_temp_h和sw_temp_l实时更新到sw_temp_rh和sw_temp_rl,将sw_temp_l实时更新到sw_temp_reg_l,在软件读取sw_temp_reg_l寄存器时,将sw_temp_rh更新到sw_temp_reg_h,这据均样软件每次获取到的16bit数是同一组数据,避免了前后获取的高8bit和低8bit非同一组数据情况引入的温度忽高忽低,对交换机设备温度调控策略引入干扰。
[0090]
通过上述方式,可以不修改整体设计而实现获取交换芯片温度功能,提高了温度获取的准确性,增强了温度获取的可靠性和稳定性。上层驱动不需要调整,减小了开发复杂
度和设计难度,降低开发风险,提高了可靠性,从而起到了节约成本的作用。
[0091]
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0092]
参照图5,示出了本发明实施例中提供的一种针对交换芯片的温度数据获取装置的结构框图,具体可以包括如下模块:
[0093]
8比特率数据获取模块501,用于基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;
[0094]
16比特率数据生成模块502,用于采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据。
[0095]
可选地,所述交换芯片包括温度管脚,所述8比特率数据获取模块可以包括:
[0096]
上升沿脉冲个数数值获取子模块,用于采用所述温度管脚获取高位上升沿脉冲个数数值和低位上升沿脉冲个数数值;所述高位上升沿脉冲个数数值用于表达数据宽度为8比特率的高位温度数据;所述低位上升沿脉冲个数数值用于表达数据宽度为8比特率的低位温度数据。
[0097]
可选地,所述交换芯片配置有对应的可编程逻辑器件,所述可编程逻辑器件包括计时器和寄存器,所述寄存器配置有对应的16比特率脉冲上升沿计数器,所述计时器用于设置预设时间周期,还可以包括:
[0098]
时间判断子模块,用于判断当前计时时间是否到达预设时间周期;
[0099]
数值标记子模块,用于当判定当前计时时间到达预设时间周期时,则将所述高位上升沿脉冲个数数值标记为初始高位上升沿脉冲个数数值,并将所述低位上升沿脉冲个数数值分别标记为初始低位上升沿脉冲个数数值和目标低位上升沿脉冲个数数值;所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值用于更新至16比特率脉冲上升沿计数器;所述目标低位上升沿脉冲个数数值用于更新至所述寄存器。
[0100]
可选地,所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值具有对应的关联关系,所述16比特率数据生成模块可以包括:
[0101]
16比特率数据生成子模块,用于当通过所述寄存器读取到所述目标低位上升沿脉冲个数数值时,基于所述关联关系从所述初始高位上升沿脉冲个数数值中确定出与所述目标低位上升沿脉冲个数数值对应的目标高位上升沿脉冲个数数值,并采用所述目标低位上升沿脉冲个数数值和所述目标高位上升沿脉冲个数数值,生成数据宽度为16比特率的目标温度数据。
[0102]
可选地,还可以包括:
[0103]
当判定当前计时时间未到达预设时间周期时,则调用所述上升沿脉冲个数数值获取子模块。
[0104]
可选地,所述可编程逻辑器件包括管理总线接口模块,所述可编程逻辑器件具有对应的中央处理器,所述管理总线接口模块用于使所述中央处理器基于所述管理总线通过所述寄存器读取所述目标温度数据。
[0105]
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0106]
本发明实施例还公开了一种服务器,其所述服务器包括交换芯片,所述交换芯片具有对应的管理总线,所述管理总线具有对应的管理总线数据宽度,所述服务器用于基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据。
[0107]
对于服务器实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0108]
另外,本发明实施例还提供了一种电子设备,包括:处理器,存储器,存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述针对交换芯片的温度数据获取方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0109]
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述针对交换芯片的温度数据获取方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等。
[0110]
图6为实现本发明各个实施例的一种电子设备的硬件结构示意图。
[0111]
该电子设备600包括但不限于:射频单元601、网络模块602、音频输出单元603、输入单元604、传感器605、显示单元606、用户输入单元607、接口单元608、存储器609、处理器610、以及电源611等部件。本领域技术人员可以理解,图6中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,电子设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
[0112]
应理解的是,本发明实施例中,射频单元601可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器610处理;另外,将上行的数据发送给基站。通常,射频单元601包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元601还可以通过无线通信系统与网络和其他设备通信。
[0113]
电子设备通过网络模块602为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
[0114]
音频输出单元603可以将射频单元601或网络模块602接收的或者在存储器609中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元603还可以提供与电子设备600执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元603包括扬声器、蜂鸣器以及受话器等。
[0115]
输入单元604用于接收音频或视频信号。输入单元604可以包括图形处理器(graphics processing unit,gpu)6041和麦克风6042,图形处理器6041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处
理。处理后的图像帧可以显示在显示单元606上。经图形处理器6041处理后的图像帧可以存储在存储器609(或其它存储介质)中或者经由射频单元601或网络模块602进行发送。麦克风6042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元601发送到移动通信基站的格式输出。
[0116]
电子设备600还包括至少一种传感器605,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板6061的亮度,接近传感器可在电子设备600移动到耳边时,关闭显示面板6061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器605还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
[0117]
显示单元606用于显示由用户输入的信息或提供给用户的信息。显示单元606可包括显示面板6061,可以采用液晶显示器(liquid crystal display,lcd)、有机发光二极管(organic light-emitting diode,oled)等形式来配置显示面板6061。
[0118]
用户输入单元607可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元607包括触控面板6071以及其他输入设备6072。触控面板6071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板6071上或在触控面板6071附近的操作)。触控面板6071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器610,接收处理器610发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板6071。除了触控面板6071,用户输入单元607还可以包括其他输入设备6072。具体地,其他输入设备6072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
[0119]
进一步的,触控面板6071可覆盖在显示面板6061上,当触控面板6071检测到在其上或附近的触摸操作后,传送给处理器610以确定触摸事件的类型,随后处理器610根据触摸事件的类型在显示面板6061上提供相应的视觉输出。虽然在图6中,触控面板6071与显示面板6061是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板6071与显示面板6061集成而实现电子设备的输入和输出功能,具体此处不做限定。
[0120]
接口单元608为外部装置与电子设备600连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(i/o)端口、视频i/o端口、耳机端口等等。接口单元608可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到电子设备600内的一个或多个元件或者可以用于在电子设备600和外部装置之间传输数据。
[0121]
存储器609可用于存储软件程序以及各种数据。存储器609可主要包括存储程序区
和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器609可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0122]
处理器610是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器609内的软件程序和/或模块,以及调用存储在存储器609内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器610可包括一个或多个处理单元;优选的,处理器610可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器610中。
[0123]
电子设备600还可以包括给各个部件供电的电源611(比如电池),优选的,电源611可以通过电源管理系统与处理器610逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
[0124]
另外,电子设备600包括一些未示出的功能模块,在此不再赘述。
[0125]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0126]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0127]
如图7所示,在本发明提供的又一实施例中,还提供了一种计算机可读存储介质701,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中所述的针对交换芯片的温度数据获取方法。
[0128]
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
[0129]
本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0130]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0131]
在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0132]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0133]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0134]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0135]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
技术特征:
1.一种针对交换芯片的温度数据获取方法,其特征在于,所述交换芯片具有对应的管理总线,所述管理总线具有对应的管理总线数据宽度,包括:基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据。2.根据权利要求1所述的方法,其特征在于,所述交换芯片包括温度管脚,所述基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据的步骤包括:采用所述温度管脚获取高位上升沿脉冲个数数值和低位上升沿脉冲个数数值;所述高位上升沿脉冲个数数值用于表达数据宽度为8比特率的高位温度数据;所述低位上升沿脉冲个数数值用于表达数据宽度为8比特率的低位温度数据。3.根据权利要求2所述的方法,其特征在于,所述交换芯片配置有对应的可编程逻辑器件,所述可编程逻辑器件包括计时器和寄存器,所述寄存器配置有对应的16比特率脉冲上升沿计数器,所述计时器用于设置预设时间周期,还包括:判断当前计时时间是否到达预设时间周期;当判定当前计时时间到达预设时间周期时,则将所述高位上升沿脉冲个数数值标记为初始高位上升沿脉冲个数数值,并将所述低位上升沿脉冲个数数值分别标记为初始低位上升沿脉冲个数数值和目标低位上升沿脉冲个数数值;所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值用于更新至16比特率脉冲上升沿计数器;所述目标低位上升沿脉冲个数数值用于更新至所述寄存器。4.根据权利要求3所述的方法,其特征在于,所述初始高位上升沿脉冲个数数值和所述初始低位上升沿脉冲个数数值具有对应的关联关系,所述采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据的步骤包括:当通过所述寄存器读取到所述目标低位上升沿脉冲个数数值时,基于所述关联关系从所述初始高位上升沿脉冲个数数值中确定出与所述目标低位上升沿脉冲个数数值对应的目标高位上升沿脉冲个数数值,并采用所述目标低位上升沿脉冲个数数值和所述目标高位上升沿脉冲个数数值,生成数据宽度为16比特率的目标温度数据。5.根据权利要求3所述的方法,其特征在于,还包括:当判定当前计时时间未到达预设时间周期时,则执行所述采用所述温度管脚获取高位上升沿脉冲个数数值和低位上升沿脉冲个数数值的步骤。6.根据权利要求4所述的方法,其特征在于,所述可编程逻辑器件包括管理总线接口模块,所述可编程逻辑器件具有对应的中央处理器,所述管理总线接口模块用于使所述中央处理器基于所述管理总线通过所述寄存器读取所述目标温度数据。7.一种针对交换芯片的温度数据获取装置,其特征在于,所述交换芯片具有对应的管理总线,所述管理总线具有对应的管理总线数据宽度,包括:8比特率数据获取模块,用于基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;
16比特率数据生成模块,用于采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据。8.一种服务器,其特征在于,所述服务器包括交换芯片,所述交换芯片具有对应的管理总线,所述管理总线具有对应的管理总线数据宽度,所述服务器用于基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据。9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行存储器上所存放的程序时,实现如权利要求1-6任一项所述的方法。10.一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-6任一项所述的方法。
技术总结
本发明实施例提供了一种针对交换芯片的温度数据获取方法和装置,通过基于所述管理总线数据宽度获取针对所述交换芯片的数据宽度为8比特率的高位温度数据和低位温度数据;采用数据宽度为8比特率的所述高位温度数据和所述低位温度数据,生成数据宽度为16比特率的目标温度数据,以减小温度曲线波动,从而提升针对交换芯片温度获取结果的准确性。对交换芯片温度获取结果的准确性。对交换芯片温度获取结果的准确性。
技术研发人员:王金友 韩威
受保护的技术使用者:苏州浪潮智能科技有限公司
技术研发日:2023.04.18
技术公布日:2023/8/4
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
