一种双星型系统中主备主控盘倒换方法

文档序号:7693458阅读:141来源:国知局

专利名称::一种双星型系统中主备主控盘倒换方法
技术领域
:本发明涉及主备盘倒换的方法,具体涉及一种双星型系统中主/备主控盘倒换的方法。
背景技术
:在现代电信级的通信设备中,往往要求设备具有很高的可靠性。设备的内部架构通常是典型的星型结构,也就是有一块主控盘实现数据交换和控制功能,其它业务接口盘通过背板信号与之相连。由于设备的端口密度非常高,所以一旦主控盘出现故障,将会导致大量的用户受到影响。为防止可能出现的这种情况,通常在设备中采用安装两块主控盘的双星型结构,如图1所示。两盘之一处于主用状态,也称为主态,另一盘处于备用状态,也称为备态。双星型系统中的主/备倒换机制分为两个部分第一部分,初始主/备状态的判定机制;第二部分,运行过程中的主/备状态倒换机制。初始状态判定机制实现设备初始上电时两块主控盘如何确定自身的工作状态,即两者之中那块盘处于主用状态、那块处于备用状态;在设备运行过程中,一旦发生主控盘工作异常的情况,由倒换机制完成两盘主/备状态的倒换。第一部分的初始主/备状态的判定机制要实现以下几个目标首先,在两个盘同时上电的正常情况下,位于主槽位的盘会进入主态,而位于备槽位的盘会进入备态。其次,在两个盘一先一后上电的情况下,不论处于哪个槽位,总是先上电的盘会进入主态,后上电的盘会进入备态,且不会对前者的状态造成影响。最后,在设备中只插入一块盘的情况下,该盘进入主态。第二部分的主/备状态倒换机制在设备运行过程中,要在以下几种情况下实现主/备状态的倒换第一种情况,网管对处于主态的主控盘下达强制倒换命令;第二种情况,处于主态的主控盘被复位;处于主态的主控盘被拔走。已经公开的现有技术包括了一些控制盘主备状态倒换的方法。例如,2003年3月26日公开的号码为CN1405985、发明名称为"主备倒换控制电路及实现方法"的专利申请中就提出了一种主备倒换的实现方法。该技术方案采用的控制电路包括CPU接口、并/串转换、命令处理电路、状态处理电路和定时发生电路。其工作原理是CPU接口接收CPU系统发的命令字,并转发给并/串处理电路,并/串转换和命令处理电路接收和处理CPU系统发送的命令字,同时,发送握手信号给另一单板的状态比较电路,发送主/备用字给本板的状态比较电路,状态比较电路比较握手信号与主/备用字,并根据比较结果控制定时比较电路动作,生成倒换控制信号。该现有技术的主备倒换方法存在着以下问题第一-主/备主控盘间的倒换需要软件参与控制,反应速度慢;第二对主/备主控盘当前状态的判断存在着冒险,可能会导致两块主控盘同时处于主态;第三需要软件定时发送主/备用字给本板的状态比较电路,占用系统资源。
发明内容本发明目的在于提供一种双星型系统中主备主控盘倒换方法。本发明的技术方案采用在CoreA、CoreB主控盘间设置4根倒换控制信号的硬件连线,信号分别定义为CoreA在位、CoreA主/备状态、CoreB在位、CoreB主/备状态,结合主控盘CoreA、CoreB上所设计的复杂可编程逻辑器件(CPLD)内部的逻辑电路实现倒换的控制,所述CPLD逻辑电路由D触发器、数据选择器MUX和与非门组成。本发明提供的一种双星形系统中主备主控盘倒换方法,包括第一种情况,当仅有主控盘CoreA盘插入相应槽位,而没有另一个盘CoreB时,设备上电后,信号B1为1,信号A2为1,所以信号A1输出为0,该盘CoreA处于主用状态;第二种情况,当仅有主控盘CoreB插入相应槽位,而没有另一个盘CoreA时,设备上电后,信号A1为1,信号B2为1,所以B1输出为0,盘CoreB处于主用状态;第三种情况,主控盘CoreA、CoreB盘都插入各自槽位;如果盘CoreA先上电,结果如同第一种情况,即盘CoreA处于主用状态而盘CoreB处于备用状态;如果盘CoreB先上电,结果如同第二种情况,即盘CoreA处于备用状态而盘CoreB处于主用状态;如果两盘CoreA、CoreB同时上电,在应用程序未设置信号A2、B2逻辑值之前,信号A2、B2均为默认值0,此瞬间信号A1、Bl均输出逻辑值l;盘CoreB的槽位信号CTRLB控制数据选择器MUX将D触发器旁路,盘CoreB上输出的信号Bl的值取决于MUX另一个输入端引入的信号Al的值,在应用程序将信号A2、B2均置位逻辑值1后,盘CoreA上的与非门由于两输入端引入的逻辑值都为1,则将信号Al先设置为0,即主控盘CoreA处于主态,而另一个主控盘CoreB仍处于备态;第四种情况,当两个主控盘CoreA、CoreB盘同时在位时,网管下达强制倒换命令,当网管强制设置盘CoreA为主用状态时,应用程序根据指令只需将B2置为0;反之网管强制设置盘CoreB为主用状态时,应用程序将A2置为0;第五种情况,盘CoreA、CoreB同时在位,对处于主用状态的盘CoreA复位,CPLD电路在复位时将在位信号清零,信号A2对应的寄存器被复位清零,导致信号Al输出1,信号Bl输出0,盘CoreA由主用状态转为备态,而盘CoreB由备用状态转为主态;第六种情况,盘CoreA、CoreB同时在位,拔出处于主态的盘CoreA,其结果如同第二种情况,即盘CoreB由备用转为主用状态。如上所述方法,其中,Al为代表主控盘CoreA的主/备状态的信号,A2为代表主控盘CoreA在位的信号,Bl为代表主控盘CoreB的主/备状态的信号,B2为代表主控盘CoreB在位的信号;Al、A2为主控盘CoreA输出到另一个主控盘CoreB的信号;Bl、B2为主控盘CoreB输出到主控盘CoreA的信号;其中的信号A2、B2都仅仅是由一个主控盘提供给另一个主控盘读取的状态信号。如上所述方法,其中,信号A1或B1被上拉到高电平时,其信号逻辑值为0,分别表示主控盘CoreA或主控盘CoreB处于主用状态;反之,信号Al或Bl下降到低电平时,其信号逻辑值为1,分别表示主控盘CoreA或主控盘CoreB处于备用状态;信号A2、B2为各自盘上CPLD内部寄存器的输出,所述A2、B2处于高电平,则其信号逻辑值为0,代表该盘不在位,反之A2、B2处于低电平,其信号逻辑值为1,代表该盘在位,而且A2、B2两信号的默认逻辑值为0;位于各自插槽上的主控盘CoreA、CoreB上电后,其上运行的应用程序自动将在位信号A2、B2的逻辑值置为1,以表明两盘均在位并且已正常工作,可以参与倒换。如上所述方法,其中,槽位信号CTRLA、CTRLB分别是由背板通过插槽端子提供给主控盘CoreA和主控盘CoreB的槽位信号,此信号用于分别控制各自主控盘上数据选择器MUX的输出;A槽位提供的槽位信号CTRLA控制该槽位上的主控盘CoreA的数据选择器MUX输出D触发器的Q端输出信号,B槽位提供的槽位信号CTRLB控制该槽位上的主控盘CoreB的数据选择器MUX将D触发器旁路,使设备初始上电后,主控盘CoreA处于主用状态,主控盘CoreB处于备用状态。本发明的技术效果主要体现在下面几方面第一,提高了主备盘倒换控制信号线对的效率,由于次方法使用两对信号线,其中一对信号线参与主备倒换控制,另一对信号线用于表示盘正常在位状态,避免双线对控制方式中的竞争冒险现象;第二,在设备插入两块主控盘并同时上电时,无需采用软件延时的方法来确定那个处于主状态,而由槽位信息信号CTRLA/B来确定,具有更高的可靠性。本发明的方法由于采用单纯硬件控制而无需软件参与,提高了倒换速度和可靠性。图1为采用本发明方法的主备主控盘倒换方法的双星型系统架构示意图;图2为采用本发明方法设置两块主控盘之间控制信号的示意图;图3为采用本发明方法的主控盘上CPLD内部的逻辑电路示意图。具体实施方式下面结合附图对本发明进行详细说明。图2是采用本发明方法设置的主控盘CoreA与主控盘CoreB之间用于对两盘主/备状态进行倒换的控制信号Al为代表主控盘CoreA的主/备状态的信号,A2为代表主控盘CoreA在位的信号,Bl为代表主控盘CoreB的主/备状态的信号,B2为代表主控盘CoreB在位的信号。如图2所示,Al、A2为主控盘CoreA输出到另一个主控盘CoreB的信号;Bl、B2为主控盘CoreB输出到主控盘CoreA的信号。其中,信号A2、B2都仅仅是由一个主控盘提供给另一个主控盘读取的状态信号。图3是采用本发明方法的主控盘CoreA、CoreB上所设置的复杂可编程逻辑器件CPLD内部的逻辑电路示意图。每个主控盘上用于倒换控制的CPLD逻辑电路由D触发器、数据选择器MUX和与非门组成。如同图3所示,两个主控盘CoreA和CoreB硬件结构相同,以盘CoreA为例,本盘的在位信号Bl传输给D触发器的输入D端和数据选择器MUX的一个输入端,D触发器的输出Q端传输给数据选择器MUX的另一个输入端,本盘的槽位信号CTRLA传输给数据选择器MUX的控制端,控制MUX从两路输入端信号中选择其中的一个输出给与非门的一个输入端,该与非门的另一个输入端被输入了来自另外主控盘CoreB的在位信号B2,与非门将两输入端信号进行运算后的输出信号即为本盘CoreA的主备状态信号。盘CoreB的结构与盘CoreA完全相同,区别仅仅在于如下所述的槽位信号不同而导致的两盘数据选择器MUX所选择输出的信号不同。下面对各路信号进行详细描述。信号A1或B1被上拉到高电平时,其信号逻辑值为0,分别表示主控盘CoreA或主控盘CoreB处于主用状态;反之,信号A1或B1下降到低电平时,其信号逻辑值为l,分别表示主控盘CoreA或主控盘CoreB处于备用状态。信号A2、B2为各自盘上CPLD内部寄存器的输出,所述A2、B2处于高电平,则其信号逻辑值为0,代表该盘不在位,反之A2、B2处于低电平,其信号逻辑值为l,代表该盘在位,而且A2、B2两信号的默认逻辑值为0。信号CTRLA、CTRLB分别是由背板通过插槽端子提供给主控盘CoreA和主控盘CoreB的槽位信号,此信号用于分别控制各自主控盘上数据选择器MUX的输出。A槽位提供的槽位信号CTRLA控制该槽位上的主控盘CoreA的数据选择器MUX输出D触发器的Q端输出信号,B槽位提供的槽位信号CTRLB控制该槽位上的主控盘CoreB的数据选择器MUX将D触发器旁路,由此确定在设备初始上电后,主控盘CoreA处于主用状态,主控盘CoreB处于备用状态。需要说明的是,位于各自插槽上的主控盘CoreA、CoreB上电后,其上运行的应用程序自动将在位信号A2、B2的逻辑值置为l,以表明两盘均在位并且已正常工作,可以参与倒换。表1为两主控盘CoreA、CoreB之间主/备倒换控制信号Al、Bl、A2、B2的逻辑信号真值表。磁B盘<table>tableseeoriginaldocumentpage8</column></row><table>表l下面结合表1详细描述图3所示电路执行本发明方法的工作过程第一种情况,当仅有主控盘CoreA盘插入相应槽位,而没有另一个盘CoreB时,设备上电后,信号Bl为1,信号A2为1,所以信号Al输出为0,该盘CoreA处于主用状态。第二种情况,当仅有主控盘CoreB插入相应槽位,而没有另一个盘CoreA时,设备上电后,信号Al为1,信号B2为1,所以Bl输出为0,盘CoreB处于主用状态。第三种情况,主控盘CoreA、CoreB盘都插入各自槽位。如果盘CoreA先上电,结果如同第一种情况,即盘CoreA处于主用状态而盘CoreB处于备用状态;如果盘CoreB先上电,结果如同第二种情况,即盘CoreA处于备用状态而盘CoreB处于主用状态。如果两盘CoreA、CoreB同时上电,在应用程序未设置信号A2、B2逻辑值之前,信号A2、B2均为默认值0,此瞬间信号A1、Bl均输出逻辑值l。参照图3,因为盘CoreB的槽位信号CTRLB控制数据选择器MUX将D触发器旁路,因此盘CoreB上输出的信号Bl的值取决于MUX另一个输入端引入的信号Al的值,由此在应用程序将信号A2、B2均置位逻辑值1后,盘CoreA上的与非门由于两输入端引入的逻辑值都为1,则将信号Al先设置为0,即主控盘CoreA处于主态,而另一个主控盘CoreB仍处于备态。第四种情况,当两个主控盘CoreA、CoreB盘同时在位时,网管下达强制倒换命令,当网管强制设置盘CoreA为主用状态时,应用程序根据指令只需将B2置为0即可,反之网管强制设置盘CoreB为主用状态时,应用程序将A2置为0即可。第五种情况,盘CoreA、CoreB同时在位,对处于主用状态的盘CoreA复位,由于采用本发明方法的CPLD电路被设计为在复位时将在位信号清零,因此信号A2对应的寄存器被复位清零,由此导致信号Al输出1,信号Bl输出0,即盘CoreA由主用状态转为备态,而盘CoreB由备用状态转为主态。第六种情况,盘CoreA、CoreB同时在位,拔出处于主态的盘CoreA,其结果如同第二种情况,即盘CoreB由备用转为主用状态。应当注意,凡不脱离本发明思想的任何改进的方法都属于本发明的保护范围,本发明具体保护范围由权利要求书限定。权利要求1.一种双星型系统中主备主控盘倒换方法,包括第一种情况,当仅有主控盘CoreA盘插入相应槽位,而没有另一个盘CoreB时,设备上电后,信号B1为1,信号A2为1,所以信号A1输出为0,该盘CoreA处于主用状态;第二种情况,当仅有主控盘CoreB插入相应槽位,而没有另一个盘CoreA时,设备上电后,信号A1为1,信号B2为1,所以B1输出为0,盘CoreB处于主用状态;第三种情况,主控盘CoreA、CoreB盘都插入各自槽位;如果盘CoreA先上电,结果如同第一种情况,即盘CoreA处于主用状态而盘CoreB处于备用状态;如果盘CoreB先上电,结果如同第二种情况,即盘CoreA处于备用状态而盘CoreB处于主用状态;如果两盘CoreA、CoreB同时上电,在应用程序未设置信号A2、B2逻辑值之前,信号A2、B2均为默认值0,此瞬间信号A1、B1均输出逻辑值1;盘CoreB的槽位信号CTRLB控制数据选择器MUX将D触发器旁路,盘CoreB上输出的信号B1的值取决于MUX另一个输入端引入的信号A1的值,在应用程序将信号A2、B2均置位逻辑值1后,盘CoreA上的与非门由于两输入端引入的逻辑值都为1,则将信号A1先设置为0,即主控盘CoreA处于主态,而另一个主控盘CoreB仍处于备态;第四种情况,当两个主控盘CoreA、CoreB盘同时在位时,网管下达强制倒换命令,当网管强制设置盘CoreA为主用状态时,应用程序根据指令只需将B2置为0;反之网管强制设置盘CoreB为主用状态时,应用程序将A2置为0;第五种情况,盘CoreA、CoreB同时在位,对处于主用状态的盘CoreA复位,CPLD电路在复位时将在位信号清零,信号A2对应的寄存器被复位清零,导致信号A1输出1,信号B1输出0,盘CoreA由主用状态转为备态,而盘CoreB由备用状态转为主态;第六种情况,盘CoreA、CoreB同时在位,拔出处于主态的盘CoreA,其结果如同第二种情况,即盘CoreB由备用转为主用状态。2、根据权利要求1所述的方法,其特征在于Al为代表主控盘CoreA的主/备状态的信号,A2为代表主控盘CoreA在位的信号,Bl为代表主控盘CoreB的主/备状态的信号,B2为代表主控盘CoreB在位的信号;Al、A2为主控盘CoreA输出到另一个主控盘CoreB的信号;Bl、B2为主控盘CoreB输出到主控盘CoreA的信号;其中的信号A2、B2都仅仅是由一个主控盘提供给另一个主控盘读取的状态信号。3、根据权利要求2所述的方法,其特征在于信号Al或B1被上拉到高电平时,其信号逻辑值为0,分别表示主控盘CoreA或主控盘CoreB处于主用状态;反之,信号Al或Bl下降到低电平时,其信号逻辑值为1,分别表示主控盘CoreA或主控盘CoreB处于备用状态;信号A2、B2为各自盘上CPLD内部寄存器的输出,所述A2、B2处于高电平,则其信号逻辑值为0,代表该盘不在位,反之A2、B2处于低电平,其信号逻辑值为l,代表该盘在位,而且A2、B2两信号的默认逻辑值为0;位于各自插槽上的主控盘CoreA、CoreB上电后,其上运行的应用程序自动将在位信号A2、B2的逻辑值置为1,以表明两盘均在位并且已正常工作,可以参与倒换。4、根据权利要求1所述的方法,其特征在于槽位信号CTRLA、CTRLB分别是由背板通过插槽端子提供给主控盘CoreA和主控盘CoreB的槽位信号,此信号用于分别控制各自主控盘上数据选择器MUX的输出;A槽位提供的槽位信号CTRLA控制该槽位上的主控盘CoreA的数据选择器MUX输出D触发器的Q端输出信号,B槽位提供的槽位信号CTRLB控制该槽位上的主控盘CoreB的数据选择器MUX将D触发器旁路,使设备初始上电后,主控盘CoreA处于主用状态,主控盘CoreB处于备用状态。全文摘要本发明涉及一种双星型系统中主备主控盘倒换方法,该方法采用在主控盘CoreA、CoreB间设置4根倒换控制信号的硬件连线,信号分别定义为CoreA在位、CoreA主/备状态、CoreB在位、CoreB主/备状态,结合主控盘CoreA、CoreB上所设计的复杂可编程逻辑器件(CPLD)内部的逻辑电路实现倒换的控制,所述CPLD逻辑电路由D触发器、数据选择器MUX和与非门组成。本发明方法可提高主备盘倒换控制信号线对的效率;由于采用单纯硬件控制而无需软件参与,可提高倒换速度和可靠性。文档编号H04B1/74GK101252372SQ20081010366公开日2008年8月27日申请日期2008年4月10日优先权日2008年4月10日发明者吴海波,安俊峰,阳王申请人:烽火通信科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1