CN114297125B - 一种服务器、i2c网络及其控制策略更新方法 - Google Patents
一种服务器、i2c网络及其控制策略更新方法 Download PDFInfo
- Publication number
- CN114297125B CN114297125B CN202111666938.3A CN202111666938A CN114297125B CN 114297125 B CN114297125 B CN 114297125B CN 202111666938 A CN202111666938 A CN 202111666938A CN 114297125 B CN114297125 B CN 114297125B
- Authority
- CN
- China
- Prior art keywords
- control strategy
- adjacent
- master
- state
- mark
- 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
Links
- 238000011217 control strategy Methods 0.000 title claims abstract description 155
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000004891 communication Methods 0.000 claims abstract description 11
- 239000011159 matrix material Substances 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 10
- 230000000875 corresponding effect Effects 0.000 abstract 1
- 230000009471 action Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000009792 diffusion process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Abstract
本申请公开了一种I2C网络,包括K个I2C主器件,每个I2C主器件均至少具有1个相邻的I2C主器件,至少存在1个I2C主器件具有1个以上的相邻的I2C主器件,任意相邻的两个I2C主器件之间通信连接,任意1个I2C主器件均用于:当接收到上层应用下发的新版本控制策略时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用新版本控制策略进行自身的控制策略的更新,并且在更新完成之后,利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新。应用本申请的方案,提高了I2C控制策略的更新效率。本申请还提供了一种服务器、I2C网络的控制策略更新方法,具有相应效果。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种服务器、I2C网络及其控制策略更新方法。
背景技术
I2C(Inter-Integrated Circuit,二线制同步串行总线)总线是由PHILIPS公司开发的两线式串行总线,可以连接微控制器及其外围设备,是微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有接口线少,控制方式简单,器件封装形式小,通信速率较高等优点。
目前,在进行I2C控制策略的更新时,通常是逐个进行I2C控制策略的更新,这样的更新方法费时费力,时效性差,人力成本较高,特别是在需要更新控制策略的I2C设备数量较多时,这样的方案缺点较为明显。
综上所述,如何更加高效地进行I2C控制策略的更新,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种服务器、I2C网络及其控制策略更新方法,以更加高效地进行I2C控制策略的更新。
为解决上述技术问题,本发明提供如下技术方案:
一种I2C网络,包括K个I2C主器件,在所述I2C网络中,每个I2C主器件均至少具有1个相邻的I2C主器件,至少存在1个I2C主器件具有1个以上的相邻的I2C主器件,任意相邻的两个I2C主器件之间通信连接,K为不小于3的正整数,任意1个I2C主器件均用于:
当接收到上层应用下发的新版本控制策略时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用所述新版本控制策略进行自身的控制策略的更新,并且在更新完成之后,利用所述新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新。
优选的,任意1个I2C主器件中均存储了状态表,所述状态表中包括I2C主器件的编号,相邻的各个I2C主器件的编号,版本号,以及器件状态信息,任意1个I2C主器件均具体用于:
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号不一致,并且该相邻的I2C主器件的器件状态信息中的第二标志为有效状态时,确定出该相邻的I2C主器件中存储有新版本控制策略和新版本控制策略的版本号;
当接收到上层应用下发的新版本控制策略和新版本控制策略的版本号时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用所述新版本控制策略进行自身的控制策略的更新;
在进行自身的控制策略的更新的过程中,将自身的器件状态信息中的第一标志设置为有效状态;
在将自身的控制策略更新完成之后,将自身的器件状态信息中的第二标志设置为有效状态,并将自身的器件状态信息中的第一标志、第三标志以及第四标志均设置为无效状态,并且利用新版本控制策略的版本号进行自身的状态表中的版本号的更新,并且利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新;
当检测出自身的状态表中的版本号与相邻的每1个I2C主器件的状态表中的版本号均一致,并且自身的器件状态信息中的第二标志或者至少1个相邻的I2C主器件的器件状态信息中的第二标志为有效状态时,将自身的器件状态信息中的第三标志设置为有效状态,并且将自身的器件状态信息中的第一标志,第二标志以及第四标志均设置为无效状态;
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号一致,并且该相邻的I2C主器件的器件状态信息中的第一标志为有效状态时,将自身的器件状态信息中的第四标志设置为有效状态;
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号一致,并且该相邻的I2C主器件的器件状态信息中的第四标志为有效状态时,将自身的器件状态信息中的第四标志设置为有效状态。
优选的,任意1个I2C主器件中存储的状态表位于该I2C主器件的寄存器中。
优选的,任意1个I2C主器件的所述器件状态信息中还包括第五标志,任意1个I2C主器件均还用于:
当自身的器件状态信息中的第五标志为有效状态时,禁止自身进行控制策略的更新,且禁止相邻的I2C主器件获取自身的控制策略。
优选的,任意1个I2C主器件的所述器件状态信息中的第五标志均由上层应用进行状态控制。
优选的,所述第一标志,所述第二标志,所述第三标志以及所述第四标志的数据大小均为1bit。
优选的,所述I2C网络中的K个I2C主器件为m×n的二维矩阵结构;m和n均为正整数,且m×n=K。
优选的,所述I2C网络中的K个I2C主器件为由p层m×n的二维矩阵结构构成的三维结构;p,m和n均为正整数,且m×n×p=K。
一种I2C网络的控制策略更新方法,应用于如上述任一项所述的I2C网络中的I2C主器件中,所述I2C网络的控制策略更新方法包括:
当接收到上层应用下发的新版本控制策略时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用所述新版本控制策略进行自身的控制策略的更新;
在自身的控制策略更新完成之后,利用所述新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新。
一种服务器,包括如上述任一项所述的I2C网络。
应用本发明实施例所提供的技术方案,I2C网络中包括K个I2C主器件,各个I2C主器件有各自管理的若干I2C从器件。由于每个I2C主器件均至少具有1个相邻的I2C主器件,任意相邻的两个I2C主器件之间通信连接,因此K个I2C主器件可以直接或者间接地通信连接。当任意1个I2C主器件接收到上层应用下发的新版本控制策略时,该I2C主器件可以利用新版本控制策略进行自身的控制策略的更新,并且在更新完成之后,利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新。同样的,当任意1个I2C主器件检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,也可以利用新版本控制策略进行自身的控制策略的更新,并且在更新完成之后,利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新。可以看出,当任意1个I2C主器件接收到上层应用下发的新版本控制策略之后,新版本控制策略就会在I2C网络中扩散,直至各个I2C主器件均完成控制策略的更新,并控制各自管理的I2C从器件进行控制策略的更新。相较于传统的逐个更新的方案,本申请的方案可以让新版本控制策略按照I2C网络的架构进行快速地扩散,提高了I2C控制策略的更新效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中一种I2C网络的结构示意图;
图2为本发明中一种I2C网络的控制策略更新方法的实施流程图。
具体实施方式
本发明的核心是提供一种I2C网络,可以让新版本控制策略按照I2C网络的架构进行快速地扩散,提高了I2C控制策略的更新效率。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明中一种I2C网络的结构示意图,该I2C网络包括K个I2C主器件,在I2C网络中,每个I2C主器件均至少具有1个相邻的I2C主器件,至少存在1个I2C主器件具有1个以上的相邻的I2C主器件,任意相邻的两个I2C主器件之间通信连接,K为不小于3的正整数,任意1个I2C主器件均用于:
当接收到上层应用下发的新版本控制策略时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用新版本控制策略进行自身的控制策略的更新,并且在更新完成之后,利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新。
I2C通过串行数据线(SDA)和串行时钟线(SCL),在连接到总线的器件间传递信息。每个器件都有一唯一的地址识别,而且都可以作为发送器或接收器,主机是初始化总线的数据传输并产生允许传输的时钟信号的器件,此时,任何被寻址的器件都被认为是从机。
在通常情况下,I2C链路较为简单,会设置为一主多从的状态。但是,当服务器组成数据中心时,I2C链路之间实现互连之后,I2C器件将构成多主多从的网状架构,即各个I2C主器件构成本申请描述的I2C网络,每个I2C主器件又各自管理着若干I2C从器件。
在图1的实施方式中,示出了9个I2C主器件,即I2C主器件1,I2C主器件2,I2C主器件3,I2C主器件4,I2C主器件5,I2C主器件6,I2C主器件7,I2C主器件8以及I2C主器件9,成3行3列的排布。在其他实施方式中K可以有其他的取值,例如实际应用中I2C网络中的I2C主器件可以有几十上百个甚至更多,根据需要进行设定即可。
此外需要说明的是,I2C网络中的K个I2C主器件所构成的连接结构可以根据需要进行设定和调整,例如设置为图1这样的二维结构,即在本发明的一种具体实施方式中,I2C网络中的K个I2C主器件为m×n的二维矩阵结构;m和n均为正整数,且m×n=K。采用二维矩阵结构的方案,结构上较为简单明了,每一行的各个I2C主器件依次通信连接,每一列的各个I2C主器件也依次通信连接,图1的实施方式便是3×3的二维矩阵结构。
又如,在本发明的一种具体实施方式中,I2C网络中的K个I2C主器件为由p层m×n的二维矩阵结构构成的三维结构。p,m和n均为正整数,且m×n×p=K。该种实施方式中,设置了若干层的二维矩阵结构,从而构成三维结构。在相邻层之间,属于平面位置上的I2C主器件通信连接,例如一种场合中,I2C网络中的27个I2C主器件为由3层3×3的二维矩阵结构构成的三维结构,每1层的9个I2C主器件均可以参照图1的结构,并且,第1层的9个I2C主器件分别与第2层的9个I2C主器件通信连接,第2层的9个I2C主器件分别与第3层的9个I2C主器件通信连接。
前述实施方式中描述了2种实际应用中较为常用,便于实施的I2C网络的结构,在其他实施方式中,I2C网络的结构可以为其他类型,可以根据实际需要进行设定和选取,并不影响本发明的实施。但是,每个I2C主器件均至少具有1个相邻的I2C主器件,以保障各个I2C主器件均接入了I2C网络中。此外,至少存在1个I2C主器件具有1个以上的相邻的I2C主器件,从而保障了本申请方案的新版本控制策略的快速扩散,当然,在实际应用中,I2C网络中的大多数I2C主器件,或者全部的I2C主器件,都会多个相邻的I2C主器件。
当任意1个I2C主器件接收到上层应用下发的新版本控制策略时,该I2C主器件便会利用新版本控制策略进行自身的控制策略的更新,并且在更新完成之后,利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新。
接收到上层应用下发的新版本控制策略的这一个I2C主器件更新完毕之后,与其相邻的各个I2C主器件均会进行更新,即实现了新版本控制策略的第一次扩散。之后,在I2C网络中,新版本控制策略会不断扩散,直至每一个I2C主器件都进行了自身的控制策略的更新。并且,每一个I2C主器件在更新完成之后,都会利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新,各个I2C主器件所管理的I2C从器件的数量可以根据需要进行设定和调整。
在本发明的一种具体实施方式中,任意1个I2C主器件中均存储了状态表,状态表中包括I2C主器件的编号,相邻的各个I2C主器件的编号,版本号,以及器件状态信息,任意1个I2C主器件均具体用于:
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号不一致,并且该相邻的I2C主器件的器件状态信息中的第二标志(M)为有效状态时,确定出该相邻的I2C主器件中存储有新版本控制策略和新版本控制策略的版本号;
当接收到上层应用下发的新版本控制策略和新版本控制策略的版本号时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用新版本控制策略进行自身的控制策略的更新;
在进行自身的控制策略的更新的过程中,将自身的器件状态信息中的第一标志(F)设置为有效状态;
在将自身的控制策略更新完成之后,将自身的器件状态信息中的第二标志(M)设置为有效状态,并将自身的器件状态信息中的第一标志、第三标志以及第四标志均设置为无效状态,并且利用新版本控制策略的版本号进行自身的状态表中的版本号的更新,并且利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新;
当检测出自身的状态表中的版本号与相邻的每1个I2C主器件的状态表中的版本号均一致,并且自身的器件状态信息中的第二标志或者至少1个相邻的I2C主器件的器件状态信息中的第二标志为有效状态时,将自身的器件状态信息中的第三标志(S)设置为有效状态,并且将自身的器件状态信息中的第一标志,第二标志以及第四标志均设置为无效状态;
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号一致,并且该相邻的I2C主器件的器件状态信息中的第一标志(F)为有效状态时,将自身的器件状态信息中的第四标志(I)设置为有效状态;
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号一致,并且该相邻的I2C主器件的器件状态信息中的第四标志(I)为有效状态时,将自身的器件状态信息中的第四标志(I)设置为有效状态。
便于理解仍然以图1的I2C网络进行说明。
可参阅表一,为一种具体场合中,图1中的I2C主器件1,I2C主器件2,I2C主器件3以及I2C主器件4中的状态表。
表一:
表一中。备注为I2C主器件1的这一行便是I2C主器件1中存储的状态表,同样的,I2C主器件2的这一行便是I2C主器件2中存储的状态表。
以I2C主器件1中存储的状态表为例,表一的实施方式中,I2C主器件1的编号为00000001。并且需要说明的是,各个I2C主器件的编号互不相同,以进行地址的区分。表一的实施方式中I2C主器件用8bit的数据表示,因此上限为256个,如果需要扩容,通过增加寄存器宽度即可实现。
对于图1的二维矩阵结构,1个I2C主器件最多有4个相邻的I2C主器件,因此表一的实施方式中,状态表中的相邻的各个I2C主器件的编号,具体包括:上侧的相邻的I2C主器件的编号,下侧的相邻的I2C主器件的编号,左侧的相邻的I2C主器件的编号以及右侧的相邻的I2C主器件的编号。可以理解的是,I2C网络为其他结构时,状态表中的相邻的各个I2C主器件的编号的具体内容可以相适应地调整。
对于图1中的I2C主器件1而言,由于上侧和左侧均没有相邻的I2C主器件,因此这两项内容设置为略,下侧的相邻的I2C主器件的编号为00000100,即为I2C主器件4的编号,右侧的相邻的I2C主器件的编号为00000010,即为I2C主器件2的编号。I2C主器件1的版本号为000000000001。
例如一种具体场合中,I2C主器件1接收到了上层应用下发的新版本控制策略和新版本控制策略的版本号。本申请描述的新版本控制策略,表示的是相较于I2C网络中的各个I2C主器件所使用的版本控制策略,将上层应用当前下发的版本控制策略视为是新版本的版本控制策略。
I2C主器件1接收到了上层应用下发的新版本控制策略和新版本控制策略的版本号,I2C主器件1便可以进行利用新版本控制策略进行自身的控制策略的更新。I2C主器件1在更新的过程中,会将自身的器件状态信息中的第一标志(F)设置为有效状态。
在表一的实施方式中,器件状态信息为1个5bit的编码,从左到右的第1个bit的编码对应的是第二标志,本申请称其为M标志,当该bit为1时,表示第二标志设置为有效状态,即为M态,反之,当该bit为0时,表示第二标志设置为无效状态。
从左到右的第2个bit的编码对应的是第五标志,本申请称其为E标志,当该bit为1时,表示第五标志设置为有效状态,即为E态,反之,当该bit为0时,表示第五标志设置为无效状态。
从左到右的第3个bit的编码对应的是第三标志,本申请称其为S标志,当该bit为1时,表示第三标志设置为有效状态,即为S态,反之,当该bit为0时,表示第三标志设置为无效状态。
从左到右的第4个bit的编码对应的是第四标志,本申请称其为I标志,当该bit为1时,表示第四标志设置为有效状态,即为I态,反之,当该bit为0时,表示第四标志设置为无效状态。
从左到右的第5个bit的编码对应的是第一标志,本申请称其为F标志,当该bit为1时,表示第一标志设置为有效状态,即为F态,反之,当该bit为0时,表示第一标志设置为无效状态。
如上文的描述,I2C主器件1在更新的过程中,会将自身的器件状态信息中的第一标志设置为有效状态,因此,I2C主器件1的器件状态信息变为00101。可以看出,第一标志的有效状态,表示的是I2C主器件当前正在进行控制策略的更新。
由于I2C主器件1正在更新,其器件状态信息变成了00101,因此,I2C主器件2和I2C主器件4在周期性地轮询过程中,便可以发现I2C主器件1的状态表中的版本号与自身的状态表中的版本号一致,并且I2C主器件1的器件状态信息中的第一标志(F)为有效状态,因此,I2C主器件2和I2C主器件4都可以确定出自身的版本号是旧的,因为I2C主器件1正在进行控制策略的更新,I2C主器件2和I2C主器件4便可以将各自的器件状态信息中的第四标志(I)设置为有效状态,即I2C主器件2和I2C主器件4的器件状态信息都变成了00110,二者都在等待I2C主器件1更新完毕。
由于I2C主器件2和I2C主器件4的器件状态信息都变成了00110,因此,I2C主器件3/5/7都可以检测出存在相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号一致,并且该相邻的I2C主器件的器件状态信息中的第四标志(I)为有效状态,因此,I2C主器件3/5/7都会将各自的器件状态信息中的第四标志(I)设置为有效状态,即I2C主器件3/5/7的器件状态信息都变成了00110。同理,与I2C主器件3/5/7相邻的与I2C主器件6/8,以及与I2C主器件6/8相邻的I2C主器件9也逐步进入I态,即器件状态信息变成00110。可以看出,第四标志(I)的有效状态,表示的是I2C主器件当前的控制策略是旧版,等待进行控制策略的更新。
当I2C主器件1更新完毕之后,I2C主器件1便可以更新自身的状态表中的版本号。并且,I2C主器件1将自身的器件状态信息中的第二标志(M)设置为有效状态,并将自身的器件状态信息中的第一标志、第三标志以及第四标志均设置为无效状态,即I2C主器件1更新完毕之后,器件状态信息变为了10000。可以看出,第二标志(M)的有效状态,表示的是I2C主器件当前的控制策略是新版。I2C主器件1更新完毕之后,便可以利用新版本控制策略对I2C主器件1所管理的各个I2C从器件进行控制策略的更新。
I2C主器件1更新完毕之后,I2C主器件2和I2C主器件4都可以检测出I2C主器件1的状态表中的版本号与自身的状态表中的版本号不一致,并且I2C主器件1的器件状态信息中的第二标志(M)为有效状态,因此,I2C主器件2和I2C主器件4可以确定出I2C主器件1中存储有新版本控制策略和新版本控制策略的版本号,并且I2C主器件1更新完毕了,I2C主器件2和I2C主器件4便可以利用新版本控制策略进行自身的控制策略的更新,即可以从I2C主器件1读取新版本控制策略进行更新。
I2C主器件2和I2C主器件4在更新时,器件状态信息中的第一标志(F)会设置为有效状态,因此,I2C主器件2和I2C主器件4的器件状态信息都从00110变成00111。与I2C主器件1一样,I2C主器件2和I2C主器件4更新完毕之后,器件状态信息会变成10000,表示I2C主器件2和I2C主器件4存储的是新版本的控制策略。
I2C主器件2和I2C主器件4更新完毕之后,I2C主器件3/5/7便会开始更新,同样的,I2C主器件3/5/7更新完毕之后,I2C主器件6/8便会开始更新,最后是I2C主器件9的更新。
此外,以I2C主器件1为例,当I2C主器件2和I2C主器件4更新完毕之后,I2C主器件1能够检测出自身的状态表中的版本号与相邻的每1个I2C主器件的状态表中的版本号均一致,即I2C主器件1的状态表中的版本号与I2C主器件2和I2C主器件4的状态表中的版本号均一致,且这3个I2C主器件中,至少存在1个I2C主器件的器件状态信息中的第二标志(M)为有效状态,说明I2C主器件1以及I2C主器件1相邻的各个I2C主器件都存储的是新版本控制策略,因此,I2C主器件1会将自身的器件状态信息中的第三标志(S)设置为有效状态,并且将自身的器件状态信息中的第一标志,第二标志以及第四标志均设置为无效状态,即器件状态信息回到了初始的00100。可以理解的是,当各个I2C主器件均更新完成之后,各个I2C主器件的器件状态信息均可以回到初始的00100的状态。可以看出,第三标志(S)的有效状态,表示的是I2C主器件和相邻的各个I2C主器件的控制策略的版本是一致的,且无需进行更新。
在本发明的一种具体实施方式中,任意1个I2C主器件中存储的状态表位于该I2C主器件的寄存器中,从而使得状态表可以被别的I2C主器件方便地获取,且上层应用也可以方便地访问该状态表,例如上层应用通过高速接口访问该状态表。
在本发明的一种具体实施方式中,任意1个I2C主器件的器件状态信息中还包括第五标志,任意1个I2C主器件均还用于:
当自身的器件状态信息中的第五标志为有效状态时,禁止自身进行控制策略的更新,且禁止相邻的I2C主器件获取自身的控制策略。
在前述的实施方式中,便状态信息中便设置有第五标志,即E态,当然前述实施方式的全过程中,都无需改变第五标志。
该种实施方式中,考虑到部分场合中,需要对特定的若干个I2C主器件进行特殊操作,因此,对于任意1个I2C主器件而言,当该I2C主器件中的第五标志为有效状态时,会禁止该I2C主器件进行控制策略的更新,且禁止相邻的I2C主器件获取该I2C主器件的控制策略,相当于是在控制策略更新的场景下,将该I2C主器件在I2C网络中进行摘除。
在实际应用中,通常可以由上层应用进行第五标志的设定和调整,即任意1个I2C主器件的器件状态信息中的第五标志均可以由上层应用进行状态控制,从而使得工作人员通过操作上层应用,进行任意1个I2C主器件的第五标志的人工设定。
在上述实施方式中,第一标志,第二标志,第三标志以及第四标志的数据大小均为1bit,这样的实施方式的优点是使得器件状态信息占用的存储空间较少。在其他实施方式中,器件状态信息的各个标志可以为其他形式,根据需要进行设定即可。
应用本发明实施例所提供的技术方案,I2C网络中包括K个I2C主器件,各个I2C主器件有各自管理的若干I2C从器件。由于每个I2C主器件均至少具有1个相邻的I2C主器件,任意相邻的两个I2C主器件之间通信连接,因此K个I2C主器件可以直接或者间接地通信连接。当任意1个I2C主器件接收到上层应用下发的新版本控制策略时,该I2C主器件可以利用新版本控制策略进行自身的控制策略的更新,并且在更新完成之后,利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新。同样的,当任意1个I2C主器件检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,也可以利用新版本控制策略进行自身的控制策略的更新,并且在更新完成之后,利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新。可以看出,当任意1个I2C主器件接收到上层应用下发的新版本控制策略之后,新版本控制策略就会在I2C网络中扩散,直至各个I2C主器件均完成控制策略的更新,并控制各自管理的I2C从器件进行控制策略的更新。相较于传统的逐个更新的方案,本申请的方案可以让新版本控制策略按照I2C网络的架构进行快速地扩散,提高了I2C控制策略的更新效率。
相应于上面的I2C网络的实施例,本发明实施例还提供了一种I2C网络的控制策略更新方法,可与上文相互对应参照。
参见图2所示,为本发明中一种I2C网络的控制策略更新方法的实施流程图,应用于如上述任一实施例中的I2C网络中的I2C主器件中,I2C网络的控制策略更新方法可以包括:
步骤S201:当接收到上层应用下发的新版本控制策略时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用新版本控制策略进行自身的控制策略的更新;
步骤S202:在自身的控制策略更新完成之后,利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新。
相应于上面的I2C网络及其控制策略更新方法的实施例,本发明实施例还提供了一种服务器,可以包括如上述任一实施例中的I2C网络。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (9)
1.一种I2C网络,其特征在于,包括K个I2C主器件,在所述I2C网络中,每个I2C主器件均至少具有1个相邻的I2C主器件,至少存在1个I2C主器件具有1个以上的相邻的I2C主器件,任意相邻的两个I2C主器件之间通信连接,K为不小于3的正整数,任意1个I2C主器件均用于:
当接收到上层应用下发的新版本控制策略时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用所述新版本控制策略进行自身的控制策略的更新,并且在更新完成之后,利用所述新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新;
任意1个I2C主器件中均存储了状态表,所述状态表中包括I2C主器件的编号,相邻的各个I2C主器件的编号,版本号,以及器件状态信息,任意1个I2C主器件均具体用于:
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号不一致,并且该相邻的I2C主器件的器件状态信息中的第二标志为有效状态时,确定出该相邻的I2C主器件中存储有新版本控制策略和新版本控制策略的版本号;
当接收到上层应用下发的新版本控制策略和新版本控制策略的版本号时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用所述新版本控制策略进行自身的控制策略的更新;
在进行自身的控制策略的更新的过程中,将自身的器件状态信息中的第一标志设置为有效状态;
在将自身的控制策略更新完成之后,将自身的器件状态信息中的第二标志设置为有效状态,并将自身的器件状态信息中的第一标志、第三标志以及第四标志均设置为无效状态,并且利用新版本控制策略的版本号进行自身的状态表中的版本号的更新,并且利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新;
当检测出自身的状态表中的版本号与相邻的每1个I2C主器件的状态表中的版本号均一致,并且自身的器件状态信息中的第二标志或者至少1个相邻的I2C主器件的器件状态信息中的第二标志为有效状态时,将自身的器件状态信息中的第三标志设置为有效状态,并且将自身的器件状态信息中的第一标志,第二标志以及第四标志均设置为无效状态;
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号一致,并且该相邻的I2C主器件的器件状态信息中的第一标志为有效状态时,将自身的器件状态信息中的第四标志设置为有效状态;
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号一致,并且该相邻的I2C主器件的器件状态信息中的第四标志为有效状态时,将自身的器件状态信息中的第四标志设置为有效状态。
2.根据权利要求1所述的I2C网络,其特征在于,任意1个I2C主器件中存储的状态表位于该I2C主器件的寄存器中。
3.根据权利要求1所述的I2C网络,其特征在于,任意1个I2C主器件的所述器件状态信息中还包括第五标志,任意1个I2C主器件均还用于:
当自身的器件状态信息中的第五标志为有效状态时,禁止自身进行控制策略的更新,且禁止相邻的I2C主器件获取自身的控制策略。
4.根据权利要求3所述的I2C网络,其特征在于,任意1个I2C主器件的所述器件状态信息中的第五标志均由上层应用进行状态控制。
5.根据权利要求1所述的I2C网络,其特征在于,所述第一标志,所述第二标志,所述第三标志以及所述第四标志的数据大小均为1bit。
6.根据权利要求1至5任一项所述的I2C网络,其特征在于,所述I2C网络中的K个I2C主器件为m×n的二维矩阵结构;m和n均为正整数,且m×n=K。
7.根据权利要求1至5任一项所述的I2C网络,其特征在于,所述I2C网络中的K个I2C主器件为由p层m×n的二维矩阵结构构成的三维结构;p,m和n均为正整数,且m×n×p=K。
8.一种I2C网络的控制策略更新方法,其特征在于,应用于如权利要求1至7任一项所述的I2C网络中的I2C主器件中,所述I2C网络的控制策略更新方法包括:
当接收到上层应用下发的新版本控制策略时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用所述新版本控制策略进行自身的控制策略的更新;
在自身的控制策略更新完成之后,利用所述新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新;
任意1个I2C主器件中均存储了状态表,所述状态表中包括I2C主器件的编号,相邻的各个I2C主器件的编号,版本号,以及器件状态信息,任意1个I2C主器件均具体用于:
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号不一致,并且该相邻的I2C主器件的器件状态信息中的第二标志为有效状态时,确定出该相邻的I2C主器件中存储有新版本控制策略和新版本控制策略的版本号;
当接收到上层应用下发的新版本控制策略和新版本控制策略的版本号时,或者当检测到与自身相邻的任意1个I2C主器件中存储有新版本控制策略时,利用所述新版本控制策略进行自身的控制策略的更新;
在进行自身的控制策略的更新的过程中,将自身的器件状态信息中的第一标志设置为有效状态;
在将自身的控制策略更新完成之后,将自身的器件状态信息中的第二标志设置为有效状态,并将自身的器件状态信息中的第一标志、第三标志以及第四标志均设置为无效状态,并且利用新版本控制策略的版本号进行自身的状态表中的版本号的更新,并且利用新版本控制策略对自身所管理的各个I2C从器件进行控制策略的更新;
当检测出自身的状态表中的版本号与相邻的每1个I2C主器件的状态表中的版本号均一致,并且自身的器件状态信息中的第二标志或者至少1个相邻的I2C主器件的器件状态信息中的第二标志为有效状态时,将自身的器件状态信息中的第三标志设置为有效状态,并且将自身的器件状态信息中的第一标志,第二标志以及第四标志均设置为无效状态;
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号一致,并且该相邻的I2C主器件的器件状态信息中的第一标志为有效状态时,将自身的器件状态信息中的第四标志设置为有效状态;
当检测出任意1个相邻的I2C主器件的状态表中的版本号与自身的状态表中的版本号一致,并且该相邻的I2C主器件的器件状态信息中的第四标志为有效状态时,将自身的器件状态信息中的第四标志设置为有效状态。
9.一种服务器,其特征在于,包括如权利要求1至7任一项所述的I2C网络。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111666938.3A CN114297125B (zh) | 2021-12-30 | 2021-12-30 | 一种服务器、i2c网络及其控制策略更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111666938.3A CN114297125B (zh) | 2021-12-30 | 2021-12-30 | 一种服务器、i2c网络及其控制策略更新方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114297125A CN114297125A (zh) | 2022-04-08 |
CN114297125B true CN114297125B (zh) | 2024-02-09 |
Family
ID=80974436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111666938.3A Active CN114297125B (zh) | 2021-12-30 | 2021-12-30 | 一种服务器、i2c网络及其控制策略更新方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114297125B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003092602A (ja) * | 2001-09-18 | 2003-03-28 | Fujitsu Ltd | ネットワーク装置 |
JP2011018112A (ja) * | 2009-07-07 | 2011-01-27 | Fujitsu Telecom Networks Ltd | ネットワーク管理システムおよびバージョン管理方法 |
CN209373581U (zh) * | 2019-03-14 | 2019-09-10 | 上海安浦鸣志自动化设备有限公司 | 一种多驱动器的更新装置 |
CN113609043A (zh) * | 2021-06-20 | 2021-11-05 | 山东云海国创云计算装备产业创新中心有限公司 | 一种i2c主机的数据传输方法、装置、设备及可读介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11301232B2 (en) * | 2019-05-29 | 2022-04-12 | Microsoft Technology Licensing, Llc | Update management service for enterprise computing environments |
-
2021
- 2021-12-30 CN CN202111666938.3A patent/CN114297125B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003092602A (ja) * | 2001-09-18 | 2003-03-28 | Fujitsu Ltd | ネットワーク装置 |
JP2011018112A (ja) * | 2009-07-07 | 2011-01-27 | Fujitsu Telecom Networks Ltd | ネットワーク管理システムおよびバージョン管理方法 |
CN209373581U (zh) * | 2019-03-14 | 2019-09-10 | 上海安浦鸣志自动化设备有限公司 | 一种多驱动器的更新装置 |
CN113609043A (zh) * | 2021-06-20 | 2021-11-05 | 山东云海国创云计算装备产业创新中心有限公司 | 一种i2c主机的数据传输方法、装置、设备及可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114297125A (zh) | 2022-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102660768B1 (ko) | Iot 프로비저닝 서비스 | |
US20180329968A1 (en) | Creation of modular applications with corresponding twins in the cloud | |
US8595428B2 (en) | Memory controller functionalities to support data swizzling | |
IL265941A (en) | Automatic delivery of iot devices | |
CN103621049A (zh) | 用于在多点网络中自动分配地址给设备的系统和方法 | |
US8407424B2 (en) | Data coherence method and apparatus for multi-node computer system | |
CN108881521B (zh) | 网络id配置方法、装置、电子设备及存储介质 | |
CN106909429A (zh) | 一种同步升级方法及装置 | |
CN106802939A (zh) | 一种解决数据冲突的方法和系统 | |
CN109451098A (zh) | Fpga加速卡mac地址配置方法、装置及加速卡 | |
CN109391548A (zh) | 表项迁移方法、装置及网络通信系统 | |
CN103336789A (zh) | 一种数据库系统的锁操作方法及设备 | |
CN114297125B (zh) | 一种服务器、i2c网络及其控制策略更新方法 | |
CN104239412B (zh) | 数据存储库中应用至存储库的数据映射及相关方法、系统和计算机可读介质 | |
CN103412838B (zh) | 一种扩展系统、通信方法、地址配置方法、设备及装置 | |
CN110837387A (zh) | 一种移动电源租借系统、自动营收系统及其更新方法 | |
CN107015883B (zh) | 一种动态数据备份方法及装置 | |
CN108846009B (zh) | 一种ceph中副本数据存储方法及装置 | |
CN108804568B (zh) | 一种Openstack中副本数据在ceph中存储方法及装置 | |
CN102904946A (zh) | 集群内节点管理方法和装置 | |
CN110188006B (zh) | 一种数据维护方法、装置及设备 | |
CN113961218A (zh) | 交换机远程批量升级方法、装置、设备及存储介质 | |
CN109819025B (zh) | 一种区块链扩链方法、系统及电子设备和存储介质 | |
CN108664417B (zh) | 一种目录更新方法及装置 | |
CN112860595A (zh) | Pci设备或pcie设备、数据存取方法及相关组件 |
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 |