CN113765828B - 一种交换机及其cpld的升级系统和方法 - Google Patents
一种交换机及其cpld的升级系统和方法 Download PDFInfo
- Publication number
- CN113765828B CN113765828B CN202110929349.3A CN202110929349A CN113765828B CN 113765828 B CN113765828 B CN 113765828B CN 202110929349 A CN202110929349 A CN 202110929349A CN 113765828 B CN113765828 B CN 113765828B
- Authority
- CN
- China
- Prior art keywords
- channel
- controller
- switching circuit
- cpld
- upgrade
- 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
- 238000000034 method Methods 0.000 title claims abstract description 25
- 238000004891 communication Methods 0.000 claims abstract description 28
- 230000015556 catabolic process Effects 0.000 abstract description 8
- 230000002159 abnormal effect Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Telephonic Communication Services (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种CPLD的升级系统,包括:第一升级触发装置;第二升级触发装置;通道控制电路,用于实现切换电路的第一通道和第二通道的互锁导通;切换电路,用于在切换电路的第一通道导通时,利用切换电路的第一通道实现第一升级触发装置和CPLD的通信连接,以使第一升级触发装置对CPLD进行升级;在切换电路的第二通道导通时,利用切换电路的第二通道实现第二升级触发装置和CPLD的通信连接,以使第二升级触发装置对CPLD进行升级。应用本申请的方案,可以实现CPLD的升级并且有效地避免出现CPLD的版本错乱,系统崩溃的问题。本申请还公开了一种交换机以及一种CPLD的升级方法,具有相应技术效果。
Description
技术领域
本发明涉及通信设备技术领域,特别是涉及一种交换机及其CPLD的升级系统和方法。
背景技术
目前,各大互联网厂商会结合各自的业务诉求,对数据中心交换机产品进行定制化开发。互联网厂商会制定产品硬件设计规格,由网络设备供应商提供硬件和底层驱动,交换芯片厂商提供SAI(Switch Abstraction Interface,交换机抽象接口),在此基础上互联网厂商可以自主完成上层操作系统的开发,这种类型的交换机产品也被称为白盒交换机。互联网厂商在制定白盒交换机的产品硬件架构时,通常会出于提升产品可靠性考量加入BMC((Baseboard Manager Controller,基板管理控制器)芯片,实现系统监控任务卸载,固件、逻辑版本升级,减轻CPU(Central Processing Unit,中央处理器)任务负担,提升交换机产品可靠性。但是,这样的白盒交换机有时候会出现CPLD(Complex Programmable LogicDevice,复杂可编程逻辑器件)的版本错乱,系统崩溃的异常情况。
综上所述,如何有效地避免出现CPLD的版本错乱,系统崩溃的异常情况,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种交换机及其CPLD的升级系统和方法,以有效地避免出现CPLD的版本错乱,系统崩溃的异常情况。
为解决上述技术问题,本发明提供如下技术方案:
一种CPLD的升级系统,包括:
第一升级触发装置;
第二升级触发装置;
分别与所述第一升级触发装置,所述第二升级触发装置以及切换电路连接的通道控制电路,用于在待命状态下检测到所述第一升级触发装置输出的第一控制信号时,控制所述切换电路的第一通道导通且禁止所述切换电路的第二通道导通,直至未检测出所述第一控制信号;在待命状态下检测到所述第二升级触发装置输出的第二控制信号时,控制所述切换电路的第二通道导通且禁止所述切换电路的第一通道导通,直至未检测出所述第二控制信号;其中,所述待命状态表示所述通道控制电路未检测出所述第一控制信号并且也未检测出所述第二控制信号;
与所述第一升级触发装置和所述第二升级触发装置均连接的所述切换电路,用于在所述切换电路的第一通道导通时,利用所述切换电路的第一通道实现所述第一升级触发装置和CPLD的通信连接,以使所述第一升级触发装置对所述CPLD进行升级;在所述切换电路的第二通道导通时,利用所述切换电路的第二通道实现所述第二升级触发装置和所述CPLD的通信连接,以使所述第二升级触发装置对所述CPLD进行升级。
优选的,所述第一升级触发装置为CPU,所述第二升级触发装置为BMC。
优选的,所述第一控制信号和所述第二控制信号均为PWM信号。
优选的,所述通道控制电路包括第一控制器,第二控制器,第一非门,第二非门,第一电阻以及第二电阻:
所述第一控制器的第一通道的输入端和输出端分别与所述第一升级触发装置和所述第二控制器的第一通道的输入端连接,所述第二控制器的第一通道的输出端分别与所述切换电路的第一控制端和所述第一非门的输入端连接;所述第一控制器的第二通道的输入端和输出端分别与所述第二升级触发装置和所述第二控制器的第二通道的输入端连接,所述第二控制器的第二通道的输出端分别与所述切换电路的第二控制端和所述第二非门的输入端连接;所述第一非门的输出端分别与所述第一电阻的第一端以及所述第一控制器的第二控制端连接;所述第二非门的输出端分别与所述第二电阻的第一端以及所述第一控制器的第一控制端连接,所述第一电阻的第二端和所述第二电阻的第二端均接地;
当所述第一控制器的第一控制端为默认的第一电平状态时,所述第一控制器的第一通道导通,当所述第一控制器的第一控制端为第二电平状态时,所述第一控制器的第一通道关断;当所述第一控制器的第二控制端为默认的第一电平状态时,所述第一控制器的第二通道导通,当所述第一控制器的第二控制端为第二电平状态时,所述第一控制器的第二通道关断;
当所述第二控制器的第一通道的输入端接收到PWM信号时,所述第二控制器的第一通道的输出端为第一电平状态,当所述第二控制器的第一通道的输入端未接收到PWM信号时,所述第二控制器的第一通道的输出端为默认的第二电平状态;当所述第二控制器的第二通道的输入端接收到PWM信号时,所述第二控制器的第二通道的输出端为第一电平状态,当所述第二控制器的第二通道的输入端未接收到PWM信号时,所述第二控制器的第二通道的输出端为默认的第二电平状态。
优选的,所述第一电平状态为低电平状态,所述第二电平状态为高电平状态。
优选的,所述切换电路与所述第一升级触发装置的JTAG接口连接,并且与所述第二升级触发装置的JTAG接口连接。
优选的,所述切换电路与N个CPLD环形通信连接,以进行N个CPLD中的任意一个CPLD的升级,N为大于1的正整数。
一种交换机,包括如上述任一项所述的CPLD的升级系统。
一种CPLD的升级方法,应用于如上述任一项所述的CPLD的升级系统中,包括:
通道控制电路在待命状态下检测到所述第一升级触发装置输出的第一控制信号时,控制所述切换电路的第一通道导通且禁止所述切换电路的第二通道导通,直至未检测出所述第一控制信号,以在所述切换电路的第一通道导通时,利用所述切换电路的第一通道实现所述第一升级触发装置和CPLD的通信连接,以使所述第一升级触发装置对所述CPLD进行升级;
所述通道控制电路在待命状态下检测到所述第二升级触发装置输出的第二控制信号时,控制所述切换电路的第二通道导通且禁止所述切换电路的第一通道导通,直至未检测出所述第二控制信号,以在所述切换电路的第二通道导通时,利用所述切换电路的第二通道实现所述第二升级触发装置和所述CPLD的通信连接,以使所述第二升级触发装置对所述CPLD进行升级;
其中,所述待命状态表示所述通道控制电路未检测出所述第一控制信号并且也未检测出所述第二控制信号。
优选的,所述第一升级触发装置为CPU,所述第二升级触发装置为BMC。
申请人考虑到,在目前一些白盒交换机中,由于CPU和BMC同时存在,并且CPU和BMC均能够进行CPLD的在线升级,从而可以避免CPU或BMC异常时无法升级CPLD,即起到了冗余的功能,但是,这样的设计会使得在部分场合中,如果CPU和BMC的其中之一执行CPLD的在线升级,在此过程中,另一方也进行升级操作,就容易导致两方均升级失败,严重时会导致出现CPLD的版本错乱,系统崩溃的异常情况。
因此,本申请的方案中,设置了分别与第一升级触发装置,第二升级触发装置以及切换电路连接的通道控制电路,以及与第一升级触发装置和第二升级触发装置均连接的切换电路。通道控制电路在待命状态下检测到第一升级触发装置输出的第一控制信号时,控制切换电路的第一通道导通且禁止切换电路的第二通道导通,直至未检测出第一控制信号;而通道控制电路在待命状态下检测到第二升级触发装置输出的第二控制信号时,控制切换电路的第二通道导通且禁止切换电路的第一通道导通,直至未检测出第二控制信号;待命状态表示通道控制电路未检测出第一控制信号并且也未检测出第二控制信号。也就是说,通过通道控制电路,实现了切换电路的第一通道和第二通道的互锁。在切换电路的第一通道导通时,便可以利用切换电路的第一通道实现第一升级触发装置和CPLD的通信连接,以使第一升级触发装置对CPLD进行升级;相应的,在切换电路的第二通道导通时,便可以利用切换电路的第二通道实现第二升级触发装置和CPLD的通信连接,以使第二升级触发装置对CPLD进行升级。因此可以看出,在第一升级触发装置对CPLD进行升级的过程中,可以禁止第二升级触发装置对CPLD进行升级,在第二升级触发装置对CPLD进行升级的过程中,可以禁止第一升级触发装置对CPLD进行升级,从而不会出现第一升级触发装置和第二升级触发装置均与CPLD通信,同时对CPLD进行在线升级的情况,也就可以避免出现CPLD的版本错乱,系统崩溃的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中一种CPLD的升级系统的结构示意图;
图2为本发明一种具体实施方式中的CPLD的升级系统的结构示意图;
图3为本发明一种具体实施方式在中切换电路与N个CPLD环形通信连接的结构示意图;
图4为本发明中一种CPLD的升级方法的实施流程图。
具体实施方式
本发明的核心是提供一种CPLD的升级系统,可以避免出现CPLD的版本错乱,系统崩溃的问题。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明中一种CPLD的升级系统的结构示意图,该CPLD的升级系统可以包括:
第一升级触发装置10;
第二升级触发装置20;
分别与第一升级触发装置10,第二升级触发装置20以及切换电路40连接的通道控制电路30,用于在待命状态下检测到第一升级触发装置10输出的第一控制信号时,控制切换电路40的第一通道导通且禁止切换电路40的第二通道导通,直至未检测出第一控制信号;在待命状态下检测到第二升级触发装置20输出的第二控制信号时,控制切换电路40的第二通道导通且禁止切换电路40的第一通道导通,直至未检测出第二控制信号;其中,待命状态表示通道控制电路30未检测出第一控制信号并且也未检测出第二控制信号;
与第一升级触发装置10和第二升级触发装置20均连接的切换电路40,用于在切换电路40的第一通道导通时,利用切换电路40的第一通道实现第一升级触发装置10和CPLD的通信连接,以使第一升级触发装置10对CPLD进行升级;在切换电路40的第二通道导通时,利用切换电路40的第二通道实现第二升级触发装置20和CPLD的通信连接,以使第二升级触发装置20对CPLD进行升级。
具体的,本申请描述的CPLD通常为交换机中的CPLD,因此,第一升级触发装置10和第二升级触发装置20通常可以具体为CPU和BMC,本申请的后文中,便以第一升级触发装置10为CPU,第二升级触发装置20为BMC为例进行说明,本申请的图2中也是采用的该种实施方式。
当然,在其他场合中,当存在两个装置均可以对CPLD进行升级时,也可以采用本申请的方案来避免升级异常的情况出现,即第一升级触发装置10和第二升级触发装置20在其他场合中可以是其他类型的器件。
切换电路40与第一升级触发装置10和第二升级触发装置20均连接,切换电路40具有2个通道,均可以由通道控制电路30进行通断控制。在切换电路40的第一通道导通时,可以利用切换电路40的第一通道实现第一升级触发装置10和CPLD的通信连接,此时,第一升级触发装置10便可以对CPLD进行升级。
同样的,在切换电路40的第二通道导通时,可以利用切换电路40的第二通道实现第二升级触发装置20和CPLD的通信连接,此时,第二升级触发装置20便可以对CPLD进行升级。
而如果CPU和BMC的其中之一执行CPLD的在线升级,在升级的过程中,如果另一方也进行升级操作,即,如果CPU和BMC同时对CPLD在线升级,便容易导致两方均升级失败,严重时会导致出现CPLD的版本错乱,系统崩溃的异常情况。因此,本申请通过通道控制电路30实现了切换电路40的第一通道和第二通道的互锁。
本申请用待命状态表示通道控制电路30未检测出第一控制信号并且也未检测出第二控制信号,也就是说,通道控制电路30为待命状态时,第一升级触发装置10和第二升级触发装置20均不需要与CPLD进行通信。因此,当通道控制电路30为待命状态时,切换电路40的第一通道和第二通道均不导通。
通道控制电路30在待命状态下检测到第一升级触发装置10输出的第一控制信号时,说明此时的第一升级触发装置10需要与CPLD进行通信,实现CPLD的升级,因此,通道控制电路30会控制切换电路40的第一通道导通且禁止切换电路40的第二通道导通,直至未检测出第一控制信号。可以看出,将第一升级触发装置10与CPLD通信连接之后,只要第一控制信号持续存在,即使通道控制电路30检测到了第二控制信号,也不会将切换电路40的第二通道导通,也就使得此时只能由第一升级触发装置10对CPLD进行在线升级,第二升级触发装置20并不会与CPLD通信连接。当然,在未检测出第一控制信号之后,说明第一升级触发装置10已经完成了对CPLD的升级,此时无需与CPLD通信,通道控制电路30可以恢复为待命状态。此外可以理解的是,除了进行CPLD的升级之外,第一升级触发装置10需要与CPLD通信时,同样需要持续输出第一控制信号,以维持持续切换电路40的第一通道导通。
同样的,通道控制电路30在待命状态下检测到第二升级触发装置20输出的第二控制信号时,说明此时的第二升级触发装置20需要与CPLD进行通信,实现CPLD的升级,因此,通道控制电路30会控制切换电路40的第二通道导通且禁止切换电路40的第一通道导通,直至未检测出第二控制信号。可以看出,将第二升级触发装置20与CPLD通信连接之后,只要第二控制信号持续存在,即使通道控制电路30检测到了第一控制信号,也不会将切换电路40的第一通道导通,也就使得此时只能由第二升级触发装置20对CPLD进行在线升级,第一升级触发装置10并不会与CPLD通信连接。当然,在未检测出第二控制信号之后,说明第二升级触发装置20已经完成了对CPLD的升级,此时无需与CPLD通信,通道控制电路30可以恢复为待命状态。
第一控制信号和第二控制信号的具体形式可以根据实际需要进行设定和调整,例如设置为简单的高电平信号或者低电平信号。
而在本发明的一种具体实施方式中,第一控制信号和第二控制信号均为PWM信号。
该种实施方式中,考虑到如果将第一控制信号和第二控制信号设置为简单的高电平信号或者低电平信号,容易受到干扰等因素的影响,而将第一控制信号和第二控制信号均设定为PWM信号,可以有效地避免干扰。并且,当第一升级触发装置10正常工作时,能够在需要输出PWM信号时,输出正确的PWM信号,而如果第一升级触发装置10出现了故障,通常便无法稳定地输出PWM信号,也就是说,第一控制信号选取为PWM信号,能起到有效地反映出第一升级触发装置10是否故障的作用,当通道控制电路30在待命状态下检测到第一升级触发装置10输出的PWM信号时,说明第一升级触发装置10未发生故障,有利于保障本申请方案的可靠性。同样的,第二控制信号选取为PWM信号,也能够起到有效地反映出第二升级触发装置20是否故障的效果。
在本发明的一种具体实施方式中,通道控制电路30可以包括第一控制器31,第二控制器32,第一非门G1,第二非门G2,第一电阻R1以及第二电阻R2:
第一控制器31的第一通道的输入端和输出端分别与第一升级触发装置10和第二控制器32的第一通道的输入端连接,第二控制器32的第一通道的输出端分别与切换电路40的第一控制端和第一非门G1的输入端连接;第一控制器31的第二通道的输入端和输出端分别与第二升级触发装置20和第二控制器32的第二通道的输入端连接,第二控制器32的第二通道的输出端分别与切换电路40的第二控制端和第二非门G2的输入端连接;第一非门G1的输出端分别与第一电阻R1的第一端以及第一控制器31的第二控制端连接;第二非门G2的输出端分别与第二电阻R2的第一端以及第一控制器31的第一控制端连接,第一电阻R1的第二端和第二电阻R2的第二端均接地;
当第一控制器31的第一控制端为默认的第一电平状态时,第一控制器31的第一通道导通,当第一控制器31的第一控制端为第二电平状态时,第一控制器31的第一通道关断;当第一控制器31的第二控制端为默认的第一电平状态时,第一控制器31的第二通道导通,当第一控制器31的第二控制端为第二电平状态时,第一控制器31的第二通道关断;
当第二控制器32的第一通道的输入端接收到PWM信号时,第二控制器32的第一通道的输出端为第一电平状态,当第二控制器32的第一通道的输入端未接收到PWM信号时,第二控制器32的第一通道的输出端为默认的第二电平状态;当第二控制器32的第二通道的输入端接收到PWM信号时,第二控制器32的第二通道的输出端为第一电平状态,当第二控制器32的第二通道的输入端未接收到PWM信号时,第二控制器32的第二通道的输出端为默认的第二电平状态。
该种实施方式中,通过第一控制器31,第二控制器32,第一非门G1,第二非门G2,第一电阻R1以及第二电阻R2实现了通道控制电路30,结构简单,易于实施。
第一控制器31的第一控制端作为第一控制器31的第一通道的使能端,第一控制器31的第二控制端作为第一控制器31的第二通道的使能端,在实际应用中,考虑到第一控制器31通常可以选取为低电平使能的控制器,因此,第一电平状态为低电平状态,第二电平状态为高电平状态,下文以此为例进行说明。
当第一控制器31的第一控制端为低电平时,第一控制器31的第一通道导通,当第一控制器31的第二控制端为低电平时,第一控制器31的第二通道导通。
例如,通道控制电路30在待命状态下检测到了第一升级触发装置10输出的第一控制信号,即图2中的第一控制器31在待命状态下,A1引脚检测到了CPU输出的PWM信号,说明此时的CPU需要与CPLD进行通信,实现CPLD的升级。此时,第一控制器31的第一控制端为默认的低电平,第一控制器31的第一通道导通,即第一控制器31的OE1引脚为默认的低电平,第一控制器31的第一通道导通,由于输入至A1引脚的是PWM信号,因此此时第一控制器31的OA1引脚便会输出PWM信号。当第二控制器32的第一通道的输入端接收到PWM信号时,即图2中的第二控制器32的B1引脚接收到第一控制器31的OA1引脚输出的PWM信号时,第二控制器32的第一通道的输出端OB1便会是低电平状态,使得切换电路40的第一通道导通。第二控制器32的第一通道的输出端OB1输出的低电平经过第一非门G1变为高电平,使得第一控制器31的OE2引脚为高电平,此时,即使第一控制器31的A2引脚检测到了BMC输出的PWM信号,由于第一控制器31的OE2引脚为高电平,第一控制器31的第二通道也是关断的,即第一控制器31的OA2引脚无法输出PWM信号至B2引脚,也就使得第二控制器32的B2引脚不会接收到PWM信号,因此第二控制器32的第二通道的输出端OB2为默认的高电平状态,使得切换电路40的第二通道不导通。
可以看出,在CPU实现CPLD的升级的过程中,第二控制器32的第一通道的输出端OB1为低电平状态。第二控制器32的第二通道的输出端OB2为高电平状态,使得切换电路40的第一通道导通并且切换电路40的第二通道不导通,避免了CPU和BMC同时对CPLD进行升级的情况发生。
前述例子是以通道控制电路30在待命状态下检测到了第一升级触发装置10输出的第一控制信号为例,即以第一控制器31在待命状态下的A1引脚检测到了CPU输出的PWM信号为例进行说明,通道控制电路30在待命状态下检测到了第二升级触发装置20输出的第二控制信号与此同理,也能够避免CPU和BMC同时对CPLD进行升级的情况发生,此处不再重复说明。
在实际应用中,考虑到目前进行CPLD的升级时,通常是基于JTAG接口,因此,在本发明的一种具体实施方式中,切换电路40与第一升级触发装置10的JTAG接口连接,并且与第二升级触发装置20的JTAG接口连接。本申请的图2中便是采用的该种实施方式,有利于方便本申请的实施。
进一步的,在本发明的一种具体实施方式中,考虑到需要升级的CPLD通常为多个,对于每一个CPLD,均可以配置对应的通道控制电路30和切换电路40,。但是这样的实施方式对于第一升级触发装置10和第二升级触发装置20的引脚数量要求较高,因此,在本发明的一种具体实施方式中,切换电路40与N个CPLD环形通信连接,以进行N个CPLD中的任意一个CPLD的升级,N为大于1的正整数。
该种实施方式中,由于切换电路40与N个CPLD环形通信连接,因此,即使增大N的取值,也不会增加对于第一升级触发装置10和第二升级触发装置20的引脚占用,提高了本申请方案的灵活性和应用范围,本申请的图3的实施方式中,便示出了切换电路40与N个CPLD环形通信连接的结构示意图。
申请人考虑到,在目前一些白盒交换机中,由于CPU和BMC同时存在,并且CPU和BMC均能够进行CPLD的在线升级,从而可以避免CPU或BMC异常时无法升级CPLD,即起到了冗余的功能,但是,这样的设计会使得在部分场合中,如果CPU和BMC的其中之一执行CPLD的在线升级,在此过程中,另一方也进行升级操作,就容易导致两方均升级失败,严重时会导致出现CPLD的版本错乱,系统崩溃的异常情况。
因此,本申请的方案中,设置了分别与第一升级触发装置10,第二升级触发装置20以及切换电路40连接的通道控制电路30,以及与第一升级触发装置10和第二升级触发装置20均连接的切换电路40。通道控制电路30在待命状态下检测到第一升级触发装置10输出的第一控制信号时,控制切换电路40的第一通道导通且禁止切换电路40的第二通道导通,直至未检测出第一控制信号;而通道控制电路30在待命状态下检测到第二升级触发装置20输出的第二控制信号时,控制切换电路40的第二通道导通且禁止切换电路40的第一通道导通,直至未检测出第二控制信号;待命状态表示通道控制电路30未检测出第一控制信号并且也未检测出第二控制信号。也就是说,通过通道控制电路30,实现了切换电路40的第一通道和第二通道的互锁。在切换电路40的第一通道导通时,便可以利用切换电路40的第一通道实现第一升级触发装置10和CPLD的通信连接,以使第一升级触发装置10对CPLD进行升级;相应的,在切换电路40的第二通道导通时,便可以利用切换电路40的第二通道实现第二升级触发装置20和CPLD的通信连接,以使第二升级触发装置20对CPLD进行升级。因此可以看出,在第一升级触发装置10对CPLD进行升级的过程中,可以禁止第二升级触发装置20对CPLD进行升级,在第二升级触发装置20对CPLD进行升级的过程中,可以禁止第一升级触发装置10对CPLD进行升级,从而不会出现第一升级触发装置10和第二升级触发装置20均与CPLD通信,同时对CPLD进行在线升级的情况,也就可以避免出现CPLD的版本错乱,系统崩溃的问题。
相应于上面的CPLD的升级系统的实施例,本发明实施例还提供了一种交换机,可以包括上述任一实施例中的CPLD的升级系统,该交换机通常可以为白盒交换机。
相应于上面的CPLD的升级系统的实施例,本发明实施例还提供了一种CPLD的升级方法,可以应用于上述任一实施例中的CPLD的升级系统中,包括:
步骤S101:通道控制电路在待命状态下检测到第一升级触发装置输出的第一控制信号时,控制切换电路的第一通道导通且禁止切换电路的第二通道导通,直至未检测出第一控制信号,以在切换电路的第一通道导通时,利用切换电路的第一通道实现第一升级触发装置和CPLD的通信连接,以使第一升级触发装置对CPLD进行升级;
步骤S102:通道控制电路在待命状态下检测到第二升级触发装置输出的第二控制信号时,控制切换电路的第二通道导通且禁止切换电路的第一通道导通,直至未检测出第二控制信号,以在切换电路的第二通道导通时,利用切换电路的第二通道实现第二升级触发装置和CPLD的通信连接,以使第二升级触发装置对CPLD进行升级;
其中,待命状态表示通道控制电路未检测出第一控制信号并且也未检测出第二控制信号。
在本发明的一种具体实施方式中,第一升级触发装置为CPU,第二升级触发装置为BMC。
在本发明的一种具体实施方式中,第一控制信号和第二控制信号均为PWM信号。
在本发明的一种具体实施方式中,通道控制电路包括第一控制器,第二控制器,第一非门,第二非门,第一电阻以及第二电阻:
第一控制器的第一通道的输入端和输出端分别与第一升级触发装置和第二控制器的第一通道的输入端连接,第二控制器的第一通道的输出端分别与切换电路的第一控制端和第一非门的输入端连接;第一控制器的第二通道的输入端和输出端分别与第二升级触发装置和第二控制器的第二通道的输入端连接,第二控制器的第二通道的输出端分别与切换电路的第二控制端和第二非门的输入端连接;第一非门的输出端分别与第一电阻的第一端以及第一控制器的第二控制端连接;第二非门的输出端分别与第二电阻的第一端以及第一控制器的第一控制端连接,第一电阻的第二端和第二电阻的第二端均接地;
当第一控制器的第一控制端为默认的第一电平状态时,第一控制器的第一通道导通,当第一控制器的第一控制端为第二电平状态时,第一控制器的第一通道关断;当第一控制器的第二控制端为默认的第一电平状态时,第一控制器的第二通道导通,当第一控制器的第二控制端为第二电平状态时,第一控制器的第二通道关断;
当第二控制器的第一通道的输入端接收到PWM信号时,第二控制器的第一通道的输出端为第一电平状态,当第二控制器的第一通道的输入端未接收到PWM信号时,第二控制器的第一通道的输出端为默认的第二电平状态;当第二控制器的第二通道的输入端接收到PWM信号时,第二控制器的第二通道的输出端为第一电平状态,当第二控制器的第二通道的输入端未接收到PWM信号时,第二控制器的第二通道的输出端为默认的第二电平状态。
在本发明的一种具体实施方式中,第一电平状态为低电平状态,第二电平状态为高电平状态。
在本发明的一种具体实施方式中,切换电路与第一升级触发装置的JTAG接口连接,并且与第二升级触发装置的JTAG接口连接。
在本发明的一种具体实施方式中,切换电路与N个CPLD环形通信连接,以进行N个CPLD中的任意一个CPLD的升级,N为大于1的正整数。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (9)
1.一种CPLD的升级系统,其特征在于,包括:
第一升级触发装置;
第二升级触发装置;
分别与所述第一升级触发装置,所述第二升级触发装置以及切换电路连接的通道控制电路,用于在待命状态下检测到所述第一升级触发装置输出的第一控制信号时,控制所述切换电路的第一通道导通且禁止所述切换电路的第二通道导通,直至未检测出所述第一控制信号;在待命状态下检测到所述第二升级触发装置输出的第二控制信号时,控制所述切换电路的第二通道导通且禁止所述切换电路的第一通道导通,直至未检测出所述第二控制信号;其中,所述待命状态表示所述通道控制电路未检测出所述第一控制信号并且也未检测出所述第二控制信号;
与所述第一升级触发装置和所述第二升级触发装置均连接的所述切换电路,用于在所述切换电路的第一通道导通时,利用所述切换电路的第一通道实现所述第一升级触发装置和CPLD的通信连接,以使所述第一升级触发装置对所述CPLD进行升级;在所述切换电路的第二通道导通时,利用所述切换电路的第二通道实现所述第二升级触发装置和所述CPLD的通信连接,以使所述第二升级触发装置对所述CPLD进行升级;
其中,所述通道控制电路控制所述切换电路的第一通道导通的过程中,只要所述第一控制信号持续存在,所述通道控制电路便会禁止所述切换电路的第二通道导通;
所述通道控制电路控制所述切换电路的第二通道导通的过程中,只要所述第二控制信号持续存在,所述通道控制电路便会禁止所述切换电路的第一通道导通。
2.根据权利要求1所述的CPLD的升级系统,其特征在于,所述第一升级触发装置为CPU,所述第二升级触发装置为BMC。
3.根据权利要求1所述的CPLD的升级系统,其特征在于,所述第一控制信号和所述第二控制信号均为PWM信号。
4.根据权利要求3所述的CPLD的升级系统,其特征在于,所述通道控制电路包括第一控制器,第二控制器,第一非门,第二非门,第一电阻以及第二电阻:
所述第一控制器的第一通道的输入端和输出端分别与所述第一升级触发装置和所述第二控制器的第一通道的输入端连接,所述第二控制器的第一通道的输出端分别与所述切换电路的第一控制端和所述第一非门的输入端连接;所述第一控制器的第二通道的输入端和输出端分别与所述第二升级触发装置和所述第二控制器的第二通道的输入端连接,所述第二控制器的第二通道的输出端分别与所述切换电路的第二控制端和所述第二非门的输入端连接;所述第一非门的输出端分别与所述第一电阻的第一端以及所述第一控制器的第二控制端连接;所述第二非门的输出端分别与所述第二电阻的第一端以及所述第一控制器的第一控制端连接,所述第一电阻的第二端和所述第二电阻的第二端均接地;
当所述第一控制器的第一控制端为默认的第一电平状态时,所述第一控制器的第一通道导通,当所述第一控制器的第一控制端为第二电平状态时,所述第一控制器的第一通道关断;当所述第一控制器的第二控制端为默认的第一电平状态时,所述第一控制器的第二通道导通,当所述第一控制器的第二控制端为第二电平状态时,所述第一控制器的第二通道关断;
当所述第二控制器的第一通道的输入端接收到PWM信号时,所述第二控制器的第一通道的输出端为第一电平状态,当所述第二控制器的第一通道的输入端未接收到PWM信号时,所述第二控制器的第一通道的输出端为默认的第二电平状态;当所述第二控制器的第二通道的输入端接收到PWM信号时,所述第二控制器的第二通道的输出端为第一电平状态,当所述第二控制器的第二通道的输入端未接收到PWM信号时,所述第二控制器的第二通道的输出端为默认的第二电平状态。
5.根据权利要求4所述的CPLD的升级系统,其特征在于,所述第一电平状态为低电平状态,所述第二电平状态为高电平状态。
6.根据权利要求1所述的CPLD的升级系统,其特征在于,所述切换电路与所述第一升级触发装置的JTAG接口连接,并且与所述第二升级触发装置的JTAG接口连接。
7.根据权利要求1所述的CPLD的升级系统,其特征在于,所述切换电路与N个CPLD环形通信连接,以进行N个CPLD中的任意一个CPLD的升级,N为大于1的正整数。
8.一种交换机,其特征在于,包括如权利要求1至7任一项所述的CPLD的升级系统。
9.一种CPLD的升级方法,其特征在于,应用于如权利要求1至7任一项所述的CPLD的升级系统中,包括:
通道控制电路在待命状态下检测到所述第一升级触发装置输出的第一控制信号时,控制所述切换电路的第一通道导通且禁止所述切换电路的第二通道导通,直至未检测出所述第一控制信号,以在所述切换电路的第一通道导通时,利用所述切换电路的第一通道实现所述第一升级触发装置和CPLD的通信连接,以使所述第一升级触发装置对所述CPLD进行升级;
所述通道控制电路在待命状态下检测到所述第二升级触发装置输出的第二控制信号时,控制所述切换电路的第二通道导通且禁止所述切换电路的第一通道导通,直至未检测出所述第二控制信号,以在所述切换电路的第二通道导通时,利用所述切换电路的第二通道实现所述第二升级触发装置和所述CPLD的通信连接,以使所述第二升级触发装置对所述CPLD进行升级;
其中,所述待命状态表示所述通道控制电路未检测出所述第一控制信号并且也未检测出所述第二控制信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110929349.3A CN113765828B (zh) | 2021-08-13 | 2021-08-13 | 一种交换机及其cpld的升级系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110929349.3A CN113765828B (zh) | 2021-08-13 | 2021-08-13 | 一种交换机及其cpld的升级系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113765828A CN113765828A (zh) | 2021-12-07 |
CN113765828B true CN113765828B (zh) | 2023-07-21 |
Family
ID=78789272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110929349.3A Active CN113765828B (zh) | 2021-08-13 | 2021-08-13 | 一种交换机及其cpld的升级系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113765828B (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708567B (zh) * | 2016-12-06 | 2020-07-31 | 英业达科技有限公司 | 固件更新方法及系统 |
CN111176703A (zh) * | 2019-12-27 | 2020-05-19 | 山东英信计算机技术有限公司 | 一种带内固件升级方法、装置及计算机系统和存储介质 |
CN112363867B (zh) * | 2020-11-05 | 2023-04-07 | 浪潮电子信息产业股份有限公司 | 一种双bios切换系统 |
CN112860298A (zh) * | 2021-02-22 | 2021-05-28 | 西安超越申泰信息科技有限公司 | 一种远程bios升级实现方法及系统 |
-
2021
- 2021-08-13 CN CN202110929349.3A patent/CN113765828B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113765828A (zh) | 2021-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11262745B2 (en) | Method for operating a redundant automation system to increase availability of the automation system | |
US20070294572A1 (en) | Adaptive sas phy configuration | |
WO2008051665A2 (en) | Adaptive sas phy configuration | |
EP2466800A2 (en) | Electronic patch apparatus, network system, and operating method in a network system | |
US20200192827A1 (en) | Rate adjustment method and device for usb data transfer, device and storage medium | |
CN109254777B (zh) | 基于软件通信体系结构的多通道多波形部署方法 | |
CN101547053A (zh) | 时钟切换方法与时钟产生装置 | |
CN113765828B (zh) | 一种交换机及其cpld的升级系统和方法 | |
US20100325448A1 (en) | Device Incorporating Data Communication Function | |
JPH025657A (ja) | 交換機 | |
US7960862B2 (en) | Method and system for high-reliability power switching | |
CN112034774A (zh) | 一种热冗余控制方法 | |
US9323305B2 (en) | Power supply unit with configurable output rails | |
CN112631667B (zh) | 一种服务器升级系统 | |
US10157053B2 (en) | Modified federation architecture with reduced update time | |
CN112667428A (zh) | Bmc故障处理电路、方法、装置、电子设备及存储介质 | |
CN115098324A (zh) | 硬盘维护方法、装置、设备和存储介质 | |
US11157274B2 (en) | Architecture with micro-controller and high-speed active cables | |
CN109149389B (zh) | 接地变自动切换方法及装置 | |
CN113866541A (zh) | 直流换流阀功率模块的过压保护试验方法、装置及设备 | |
CN102193850A (zh) | 一种多主机板服务器的时间更新系统 | |
CN113110258B (zh) | 一种控制系统及控制装置的冗余切换方法 | |
CN111158961B (zh) | 一种线缆冗余装置及线缆冗余方法 | |
JP2019165273A (ja) | 通信システム、通信装置、通信装置のテスト制御方法、及び通信装置のテスト制御プログラム | |
CN104715786A (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 |