一种背板I2C总线死锁的消除方法、系统及电子设备技术方案

技术编号:12872658 阅读:354 留言:0更新日期:2016-02-17 10:28
本发明专利技术提供一种背板I2C总线死锁的消除方法,包括以下步骤:接收主备板的切换命令;根据所述切换命令监测所述I2C总线是否处于空闲状态;若是,则执行切换命令,将主板转换成备板,将备板转换成主板;若否,则发送抢占信号,根据所述抢占信号继续监测所述I2C总线是否处于空闲状态;若是,则执行切换命令,将主板转换成备板,将备板转换成主板,若否,则返回发送包含有低电平数据位的抢占信号以继续监测所述I2C总线。本发明专利技术从根源上消除主备切换时的背板I2C总线死锁的条件,现有的技术是发生死锁后再采取补救措施,且不会导致其它板卡功能和业务的暂时中断。

【技术实现步骤摘要】

本专利技术属于电子
,涉及一种死锁的消除方法及系统,特别是涉及一种背板I2C总线死锁的消除方法、系统及电子设备
技术介绍
在带有主备双主控板系统中,有些板卡上面有一些I2C器件,比如温度传感器件,风扇转速控制器件等,板卡上没有CPU管理这些I2C器件,主控板的CPU通过背板管理这些板卡上的I2C器件。主控板和这些板卡的I2C接口要支持热插拔功能。在主备切换时,背板I2C总线的控制权会由原来的主用主控板切换到新的主用主控板上,在某种特定的条件下,主控板上的CPU无法通过背板访问其它板卡的I2C总线,出现背板I2C总线出现死锁的问题。现有背板出现死锁的解决方案为:系统主备切换时,背板I2C总线死锁发生在某种特定的条件下,概率比较低,当CHJ无法通过背板访问其它板卡的I2C器件时,CPU会通过背板的硬件复位连线,复位其它板卡,来恢复I2C总线的正常通信。而现有技术在I2C总线死锁后,需要主控板复位其它板卡,会导致板卡的功能和业务暂时中断。因此,如何提供一种背板I2C总线死锁的消除方法、系统及电子设备,以解决现有技术中在I2C总线死锁后,需要主控板复位其它板卡,会导致板卡的功能和业务暂时中断等缺陷,实已成为本领域从业者亟待解决的技术问题。。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种背板I2C总线死锁的消除方法、系统及电子设备,用于解决现有技术中I2C总线死锁后,需要主控板复位其它板卡,会导致板卡的功能和业务暂时中断的问题。为实现上述目的及其他相关目的,本专利技术一方面提供一种背板I2C总线死锁的消除方法,所述背板I2C总线死锁的消除方法包括以下步骤:接收主备板的切换命令;根据所述切换命令监测所述I2C总线是否处于空闲状态;若是,则执行切换命令,将主板转换成备板,将备板转换成主板;若否,则执行下一步骤;发送抢占信号;根据所述抢占信号继续监测所述I2C总线是否处于空闲状态;若是,则执行切换命令,将主板转换成备板,将备板转换成主板,若否,则返回发送包含有低电平数据位的抢占信号以继续监测所述I2C总线。于本专利技术的一实施例中,所述抢占信号中包含低电平数据信号。于本专利技术的一实施例中,在发送包含有低电平数据位的抢占信号的步骤之后,所述背板I2C总线死锁的消除方法还包括:将所述抢占信号与通过I2C总线连接在背板上的I2C器件输出的数据信号进行比较以判断两信号是否一致,若是,则所述I2C器件继续占用I2C总线,不执行切换命令;若否,则所述I2C器件释放所占用的I2C总线,执行切换命令。于本专利技术的一实施例中,将所述抢占信号与通过I2C总线连接在背板上的I2C器件输出的数据信号进行比较是指判断通过I2C总线连接在背板上的I2C器件输出的数据信号是否为低电平数据信号。于本专利技术的一实施例中,所述背板I2C总线死锁的消除方法还包括:发送主备板的切换命令。本专利技术另一方面还提供一种背板I2C总线死锁的消除系统,所述背板I2C总线死锁的消除系统包括:控制模块,用于接收主备板的切换命令;第一监测模块,与所述控制模块连接,用于根据所述切换命令监测所述I2C总线是否处于空闲状态;若是,则调用所述控制模块以执行切换命令,将主板转换成备板,将备板转换成主板的执行模块;若否,则调用发送抢占信号的信号发送模块;第二监测模块,与所述第一监测模块和信号发送模块连接,用于根据所述抢占信号继续监测所述I2C总线是否处于空闲状态;若是,则调用所述控制模块以执行切换命令,将主板转换成备板,将备板转换成主板,若否,则调用所述发送模块继续发送包含有低电平数据位的抢占信号以继续监测所述I2C总线。于本专利技术的一实施例中,所述背板I2C总线死锁的消除系统还包括与所述第二监测模块连接的比较模块,所述比较模块用于将所述抢占信号与通过I2C总线连接在背板上的I2C器件输出的数据信号进行比较以判断两信号是否一致。于本专利技术的一实施例中,所述比较模块将所述抢占信号与通过I2C总线连接在背板上的I2C器件输出的数据信号进行比较是指所述比较模块判断通过I2C总线连接在背板上的I2C器件输出的数据信号是否为低电平数据信号。于本专利技术的一实施例中,所述背板I2C总线死锁的消除系统还包括用于发送主备板的切换命令的中央处理模块。本专利技术又一方面还提供一种电子设备,所述电子设备包括:背板,所述背板包括主板和备板;其中,所述主板和备板都包括:中央处理器,用于发送主备板的切换命令;可编程逻辑器件,与所述中央处理器通过I2C总线连接,用于接收主备板的切换命令,根据所述切换命令监测所述I2C总线是否处于空闲状态;若是,则执行切换命令,将主板转换成备板,将备板转换成主板;若否,则发送抢占信号。驱动器,与所述中央处理器和可编程逻辑器件通过I2C总线连接,用于根据所述抢占信号继续监测所述I2C总线是否处于空闲状态;若是,则通过所述可编程逻辑器件执行切换命令,将主板转换成备板,将备板转换成主板,若否,则令所述可编程逻辑器件发送包含有低电平数据位的抢占信号以继续监测所述I2C总线。于本专利技术的一实施例中,所述电子设备还包括板卡,所述板卡上插有I2C器件,所述I2C器件用于将所述抢占信号与自身输出的数据信号进行比较以判断两信号是否一致。如上所述,本专利技术的背板I2C总线死锁的消除方法、系统及电子设备,具有以下有益效果:第一,从根源上消除主备切换时的背板I2C总线死锁的条件,现有的技术是发生死锁后再采取补救措施。第二,不会导致其它板卡功能和业务的暂时中断,对整个系统没有任何不良影响。【附图说明】图1显示为本专利技术背板I2C总线死锁的消除方法于一实施例中的流程示意图。图2显示为本专利技术背板I2C总线死锁的消除系统于一实施例中的原理结构示意图。图3显示为本专利技术电子设备于一实施例中的电路结构示意图。元件标号说明1电子设备10背板I2C总线死锁的消除系统101 中央处理模块102控制模块103第一监测模块104 信号发送模块105第二监测模块106比较模块11背板12板卡111主板112备板201中央处理器202可编程逻辑器件203驱动器1211况器件S1 ?S7 步骤【具体实施方式】以下通过特定的具体实例说明本专利技术的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本专利技术的其他优点与功效。本专利技术还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本专利技术的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本专利技术的基本构想,遂图式中仅显示与本专利技术中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。本专利技术所述的背板I2C总线死锁的消除方法、系统及电子设备的专利技术原理如下:将CPLD接入主控板的I2C总线中,在CPLD接收到来自CPU的主备切换命令后,先监测I2C总线状态,如果I2C总线是空闲状态,CPLD就执行CPU的主备切换指令,否则,CPLD发出抢主操作,迫使正在使用I2C总线的器件,退出操作,释放总线,CPLD在消除了背板I2C总线死锁条件后本文档来自技高网...

【技术保护点】
一种背板I2C总线死锁的消除方法,其特征在于,所述背板I2C总线死锁的消除方法包括以下步骤:接收主备板的切换命令;根据所述切换命令监测所述I2C总线是否处于空闲状态;若是,则执行切换命令,将主板转换成备板,将备板转换成主板;若否,则执行下一步骤;发送抢占信号;根据所述抢占信号继续监测所述I2C总线是否处于空闲状态;若是,则执行切换命令,将主板转换成备板,将备板转换成主板,若否,则返回发送包含有低电平数据位的抢占信号以继续监测所述I2C总线。

【技术特征摘要】

【专利技术属性】
技术研发人员:王亦鸾
申请(专利权)人:上海斐讯数据通信技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1