CN106569858A - 一种配置文件的更新方法以及电路板 - Google Patents
一种配置文件的更新方法以及电路板 Download PDFInfo
- Publication number
- CN106569858A CN106569858A CN201610970220.6A CN201610970220A CN106569858A CN 106569858 A CN106569858 A CN 106569858A CN 201610970220 A CN201610970220 A CN 201610970220A CN 106569858 A CN106569858 A CN 106569858A
- Authority
- CN
- China
- Prior art keywords
- configuration file
- logical device
- renewal
- business
- run
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明提供一种配置文件的更新方法以及电路板。该方法包括:处理器在第一逻辑器件以原配置文件维持业务正常运行时,获取更新的配置文件并将更新的配置文件存储于SPI Flash中;控制第二逻辑器件以原配置文件维持业务正常运行,当确定第一逻辑器件加载更新的配置文件成功并以更新的配置文件维持业务正常运行时,控制第二逻辑器件停止以原配置文件维持业务正常运行,并从SPI Flash中加载更新的配置文件。通过这种方式,实现了电路板在加载更新的配置文件的同时业务不中断的目的,解决了现有技术中通信设备在更新配置文件的过程中业务中断的技术问题。
Description
技术领域
本发明涉及电子技术领域,尤其涉及一种配置文件的更新方法以及电路板。
背景技术
现有技术的通信设备功能越来越强大,为了满足用户多样性的需求,通信设备需要不断更新自身的逻辑器件的配置文件来满足日益复杂化的业务。例如机架式交换机通常使用现场可编程门阵列(英文:Field Programmable Gate Array,简称:FPGA)中加载配置文件实现相关的逻辑运算与通信接口功能。这种FPGA器件具有高密度、低功耗、高速、高可靠性等优点。但是,FPGA器件是基于静态存储(Static Random Access Memory,简称:SRAM)工艺即SRAM工艺,具有断电后配置文件丢失的特点,FPGA器件在上电期间需要读取配置文件,才能正常工作。
FPGA器件在上电后也可被触发再一次读取配置文件,例如当通信设备中配置文件更新时,可触发FPGA器件再一次读取更新的配置文件。在FPGA器件再一次读取更新的配置文件并完成配置的过程中需要相应的时间,时间的长度根据配置文件的复杂程度而定,在此时间段内FPGA器件引脚处于三态输入状态,失去相应的逻辑输出输入功能,引脚的逻辑状态不确定必然导致电路板自身或者相邻板电路板之间的业务中断。现有技术中通常使用锁存器件来锁住FPGA引脚的逻辑状态,以保证配置文件更新的时候引脚的逻辑保持在某一状态,依次来避免电路板自身或者相邻板电路板之间的业务中断。
本发明发明人发现现有技术存在如下缺陷:
由于配置文件日益复杂,FPGA器件加载时间较长,锁住引脚的逻辑状态也会使得电路板自身或者相邻板电路板之间的业务中断,甚至还有可能带来错误的逻辑。
发明内容
本发明提供一种配置文件的更新方法以及电路板,用以解决现有技术中通信设备在更新配置文件的过程中业务中断的技术问题。
第一方面,本发明实施例提供一种配置文件的更新方法,所述方法应用于一电路板中,所述电路板包括处理器、与所述处理器连接的第一逻辑器件、与所述处理器连接的第二逻辑器件,所述方法包括:所述处理器在所述第一逻辑器件以原配置文件维持业务正常运行时,获取更新的配置文件并将所述更新的配置文件存储于SPI Flash中;
所述处理器控制所述第二逻辑器件以所述原配置文件维持所述业务正常运行,并保存以所述原配置文件维持所述业务时的数据信息;
所述处理器控制所述第一逻辑器件停止以所述原配置文件维持所述业务正常运行并从所述SPI Flash中加载所述更新的配置文件;并控制所述第一逻辑器件获取所述第二逻辑器件在以所述原配置文件维持所述业务正常运行时的数据信息;
控制所述第一逻辑器件以所述更新的配置文件继续处理所述数据信息以维持所述业务正常运行;
当确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行时,控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并从所述SPI Flash中加载所述更新的配置文件。
可选的,所述处理器在所述第一逻辑器件以原配置文件维持业务正常运行时,获取更新的配置文件并将所述更新的配置文件存储于SPI Flash中,包括:
所述处理器通过远程网络获取到所述更新的原配置文件,并将所述更新的配置文件存储到所述SPI Flash中,控制所述第一逻辑器件和所述第二逻辑器件从所述SPI Flash中加载同样的配置文件。
可选的,所述控制所述第一逻辑器件和所述第二逻辑器件从所述SPI Flash中加载同样的配置文件,包括:
所述处理器通过总线扩展器GPIO控制所述第一逻辑器件以及所述第二逻辑器件的引脚电平,控制所述第一逻辑器件和所述第二逻辑器件从所述SPI Flash中加载同样的配置文件。
可选的,所述第一逻辑器件与所述第二逻辑器件连接,所述确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行,包括:
当所述处理器获取所述第一逻辑器件反馈的表征所述第一逻辑器件加载所述更新的配置文件成功的信号时,控制所述第一逻辑器件以所述更新的配置文件维持所述业务正常运行;同时所述处理器控制所述第一逻辑器件向所述第二逻辑器件发送第一提示信息以确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行,所述第一提示信息用以提示所述第二逻辑器件准备加载所述更新的配置文件。
可选的,所述第一逻辑器件与所述第二逻辑器件连接,所述控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并从所述SPI Flash中加载所述更新的配置文件,包括:
当所述处理器获取到表征所述第二逻辑器件准备好加载所述更新的配置文件的信号时,控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并加载所述更新的配置文件。
本发明第二方面提供一种电路板,包括:处理器、与所述处理器连接的第一逻辑器件、与所述处理器连接的第二逻辑器件;其中,所述处理器用于:
在所述第一逻辑器件以原配置文件维持业务正常运行时,获取更新的配置文件并将所述更新的配置文件存储于所述SPI Flash中;
控制所述第二逻辑器件以所述原配置文件维持所述业务正常运行,并保存以原配置文件维持业务时的数据信息;
控制所述第一逻辑器件停止以所述原配置文件维持所述业务正常运行并从所述SPI Flash中加载所述更新的配置文件;并控制所述第一逻辑器件获取所述第二逻辑器件在以所述原配置文件维持所述业务正常运行时的数据信息;控制所述第一逻辑器件以所述更新的配置文件继续处理所述数据信息以维持所述业务正常运行;
当确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行时,控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并从所述SPI Flash中加载所述更新的配置文件。
可选的,所述处理器具体用于:
通过远程网络获取到所述更新的配置文件,并将所述更新的配置文件存储到所述SPI Flash中,控制所述第一逻辑器件和所述第二逻辑器件从所述SPI Flash中加载同样的配置文件。
可选的,所述处理器具体用于:
通过总线扩展器GPIO控制所述第一逻辑器件以及所述第二逻辑器件的引脚电平,控制所述第一逻辑器件和所述第二逻辑器件从所述SPI Flash中加载同样的配置文件。
可选的,所述处理器具体用于:
获取所述第一逻辑器件反馈的表征所述第一逻辑器件加载所述更新的配置文件成功的信号;
当获取到所述表征所述第一逻辑器件加载所述更新的配置文件成功的信号时,控制所述第一逻辑器件以所述更新的配置文件维持所述业务正常运行;同时控制所述第一逻辑器件向所述第二逻辑器件发送第一提示信息以确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行,所述第一提示信息用以提示所述第二逻辑器件准备加载所述更新的配置文件。
可选的,所述处理器具体用于:
获取表征所述第二逻辑器件准备好加载所述更新的配置文件的信号;
当获取到所述表征所述第二逻辑器件准备好加载所述更新的配置文件的信号时,控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并加载所述更新的配置文件。
本发明实施例中的技术方案具有如下有益效果:
本发明中实施例的技术方案中,电路板包括处理器、与所述处理器连接的第一逻辑器件、与所述处理器连接的第二逻辑器件。处理器在第一逻辑器件以原配置文件维持业务正常运行时,获取更新的配置文件并将所述更新的配置文件存储于SPI Flash中。处理器控制第二逻辑器件以所述原配置文件维持所述业务正常运行,并保存以所述原配置文件维持所述业务时的数据信息。处理器控制所述第一逻辑器件停止以所述原配置文件维持所述业务正常运行并加载所述更新的配置文件。然后控制所述第一逻辑器件获取所述第二逻辑器件在以所述原配置文件维持所述业务正常运行时的数据信息,并控制所述第一逻辑器件以所述更新的配置文件继续处理所述数据信息以维持所述业务正常运行。然后控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并从所述SPI Flash中加载所述更新的配置文件。通过这种方法,当第二逻辑器件以原配置文件维持业务正常运行时,第一逻辑器件可以加载更新的配置文件,当第一逻辑器件以更新的配置文件维持业务正常运行时,第二逻辑器件可以加载更新的配置文件,实现了电路板在加载更新的配置文件的同时业务不中断的目的,解决现有技术中通信设备在加载新的配置文件过程中业务中断的技术问题。
附图说明
图1为本发明一实施例中的一种电路板的结构图;
图2为本发明一实施例中的一种配置文件的更新方法的流程图;
图3为本发明一实施例中的一种交换机主板的结构图;
图4为本发明一实施例中的一种通信设备的结构图。
具体实施方式
本发明提供一种配置文件的更新方法以及电路板,用以解决现有技术中通信设备在更新配置文件的过程中业务中断的技术问题。
通常情况下,设计人员可以使用硬件编程语言例如C语言,JAVA、C++等,编译生成配置文件,并通过下载器或者烧片等的方式把配置文件加载到某一个逻辑器件中,当该逻辑器件加载配置文件后,即可实现设计人员设计的功能。例如电子设备可以加载配置文件中的设备驱动程序,通过该设备驱动程序运行电子设备中的某些功能,例如加载配置文件中的显卡驱动程序,那么就通过该显卡驱动程序运行电子设备的显卡。因此,配置文件可以支撑电子设备中程序的正常运行。再例如,当电子设备中的某一个程序出现故障,可以通过加载新的配置文件的方式解决该故障,或者通过加载新的配置文件来升级电子设备中的某一个应用程序的版本。
现有技术中,一般通信设备的电路板中只有一个逻辑器件来维持某一个业务的正常运行,在该逻辑器件的配置文件更新的过程中,必须中断与外界的通信即必须中断业务,当更新完成之后再重新执行业务。例如,通信设备是以太网交换机等网络设备的话,通常一个交换机会与多个业务板例如网路电话、网络相机等设备连通,当交换机中电路板由于配置文件更新而导致与业务板之间的通信中断的话,会影响用户的使用。如果该通信设备是处于骨干位置的通信设备时,例如数据中心,服务器中心使用的核心交换机,临时的业务中断会引起大面积的网络瘫痪。
为了解决上述技术问题,本发明实施例中的技术方案总体思路如下:
本发明中实施例的技术方案中,在电路板上设置两个逻辑器件,两个逻辑器件可以互为备用的逻辑器件。具体的,当获取到更新的配置文件时,控制两个逻辑器件中的其中一个逻辑器件来加载更新的配置文件,控制另一个逻辑器件以原来的配置文件运行业务。当其中一个逻辑器件加载新的配置文件成功之后,控制该逻辑器件以更新的配置文件维持业务正常运行,同时控制另一个逻辑器件停止以原配置文件维持业务,并加载更新的配置文件。通过这样的方式,实现通信设备电路板中配置文件更新的过程中业务不中断的目的。
为了更好的了解上述技术方案,下面通过附图以及具体实施例对本发明技术方案进行详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本发明技术方案的详细的说明,而不是对本发明技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。
请参考图1所示,为本发明第一方面提供的一种电路板的结构图。由图1中可以看出,该电路板包括:处理器3、与处理器3连接的第一逻辑器件1、与处理器3连接的第二逻辑器件2。其中,处理器3,用于获取更新的配置文件。第一逻辑器件1和第二逻辑器件2均可以维持同一业务正常运行。第一逻辑器件1和第二逻辑器件2可以互为备用的关系,具体的,例如在第一逻辑器件1故障时,可以切换第二逻辑器件2继续维持第一逻辑器件1原本维持的业务正常运行。具体的,在要对第一逻辑器件1和第二逻辑器件2的配置文件进行更新时,处理器3可以控制第二逻辑器件2以原配置文件维持业务正常运行,并且控制第一逻辑器件1停止以原配置文件维持所述业务正常运行并加载更新的配置文件。
可选的,处理器3可以是通用的中央处理器(CPU)或特定应用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC),可以是一个或多个用于控制程序执行的集成电路,可以是使用现场可编程门阵列(英文:Field Programmable GateArray,简称:FPGA)开发的硬件电路,可以是基带处理器。
可选的,第一逻辑器件1、第二逻辑器件2可以是现场可编程门阵列(英文:FieldProgrammable Gate Array,简称:FPGA)。
可选的,第一逻辑器件1、第二逻辑器件2还可以是其它类型的逻辑器件,例如复杂可编程门阵列(英文:Complex Programmable Logic Device,简称:CPLD)。
可选的,电路板可以应用于例如以太网交换机、路由器、集线器和其它网络通信设备中。
接下来请参考图2所示,图2为本发明第二方面提供的一种配置文件的更新方法的流程图。该方法可以应用于上述的电路板或者类似的电路板中。该方法包括:
步骤101:处理器3在第一逻辑器件1以原配置文件维持业务正常运行时,获取更新的配置文件并将更新的配置文件存储于SPI Flash中。
步骤102:处理器3控制第二逻辑器件2以原配置文件维持业务正常运行,并保存以原配置文件维持业务时的数据信息。
步骤103:处理器3控制第一逻辑器件1停止以原配置文件维持业务正常运行并从SPI Flash中加载更新的配置文件;并控制第一逻辑器件1获取第二逻辑器件2在以原配置文件维持业务正常运行时的数据信息,控制第一逻辑器件1以更新的配置文件继续处理数据信息以维持业务正常运行。
步骤104:当确定第一逻辑器件1加载更新的配置文件成功并以更新的配置文件维持业务正常运行时,控制第二逻辑器件2停止以原配置文件维持业务正常运行,并从SPIFlash中加载所述更新的配置文件。
请同时参考图3所示,为本发明实施例提供的一种电路板的实例结构图。在本实施例中,电路板为交换机中的主板,其中处理器3为图3中的CPU、第一逻辑器件1和第二逻辑器件2均是FPGA。第一逻辑器件1为图3中的主FPGA,第二逻辑器件2为图3中的从FPGA。
进一步,主板还可以连接有业务板,主板与业务板的连接方式请参考图3所示。主板通过逻辑器件例如图3中的FPGA与业务版建立联系,并通过FPGA响应每个业务板的业务。
可选的,如图3所示,主FPGA和从FPGA与业务板之间可以通过选择器建立连接。可以设置两个的选择器分别用来逻辑信号的输入和逻辑信号的输出。也可以只设置一个的选择器同时进行逻辑信号的输入和输出。
在步骤101中,处理器3获取更新的配置文件的方式可以是:通过远程网络获取到更新的原配置文件,并将更新的配置文件存储到所述SPI Flash中,控制第一逻辑器件1和第二逻辑器件2从SPI Flash中加载同样的配置文件。
请参考图3理解,CPU可以通过自带SPI接口与SPI Flash连接,当然也可以是通过模拟信号方式与SPI Flash连接。CPU通过远程网络获取到更新的原配置文件,然后将更新的配置文件存储到SPI Flash中。通过这样的方式,主FPGA和从FPGA可以从SPI Flash中加载同样的配置文件。
可选的,电路板还可以包括选通电路,用于连接第一逻辑器件1与SPI Flash,或用于连接第二逻辑器件2与SPI Flash,具体的,第一逻辑器件1和第二逻辑器件2从SPI Flash中加载同样的配置文件的方式可以是:处理器3通过总线扩展器(英文:General PurposeInput Output,简称:GPIO)控制第一逻辑器件1以及第二逻辑器件2的引脚电平,控制第一逻辑器件1和第二逻辑器件2从SPI Flash中加载同样的配置文件。
举例来说,请继续参考图3理解,首先CPU可以通过总线扩展器GPIO控制主、从FPGA的PROG_B引脚都为低电平,当PROG_B引脚为低,主、从FPGA将初始化内部的存储器。之后,CPU可以通过GPIO0控制主FPGA的PROG_B的引脚置高电平后,同时,CPU通过GPIO1配置选通电路接通通路0,这时主FPGA就可以从SPI Flash中读取配置文件。之后,CPU可以通过CPIO3控制从FPGA的PROG_B的引脚置高电平后,同时,CPU通过GPIO2配置选通电路接通通路1,这时从FPGA就可以从SPI Flash中读取配置文件。
然后执行步骤102,即处理器3控制第二逻辑器件2以原配置文件维持业务正常运行,并保存以原配置文件维持业务时的数据信息。这里第二逻辑器件2保存以原配置文件维持业务时的数据信息的目的是为了实现第二逻辑器件1和第二逻辑器件2在整个过程中数据同步。
之后执行步骤103,处理器3控制第一逻辑器件1停止以原配置文件维持业务正常运行并从SPI Flash中加载更新的配置文件。这样做的目的是为了不影响通信设备与外界的通信,即不影响通信设备中电路板维持业务正常运行,可以控制其中一个处于维持业务正常运行状态,另一个处于更新配置文件的状态。然后处理器3控制第一逻辑器件1获取第二逻辑器件2在以原配置文件维持业务正常运行时的数据信息,并控制第一逻辑器件1以更新的配置文件继续处理数据信息以维持业务正常运行。
需要注意的是,在第一逻辑器件1开始以新的配置文件维持业务的过程中,为了保证电路板处理业务的数据信息的连续性,第一逻辑器件1可以获取第二逻辑器件2以原配置文件维持业务时的数据信息,然后第一逻辑器件1以更新的配置文件处理所述数据信息使得业务不中断。
举例来说,如图3所示,主FPGA可以通过Rx_clk引脚和Rx引脚一起配合获取从FPGA以原配置文件维持业务时的数据信息,例如温度、各个业务板的电压值、状态值等等,这些参数在电路板响应业务板的过程中是随时变化的。假设图3中的主板是办公室的交换机的主板,由于办公室的工作状态随时变化进而导致交换机获取的办公室的参数值例如电压值、运行速率、频率等是变化的,所以交换机随时监控、并响应着这些变化的参数,这些变化的参数被实时记录在从FPGA中。如果这时候主FPGA不知道这些参数的变化而直接以新的配置文件维持业务的话,那么办公室业务将会受到影响。因此,在主FPGA开始以新的配置文件维持业务的过程中,需要实时的获取从FPGA以原配置文件维持业务时的数据信息,使得主FPGA和从FPGA实现数据同步。
可选的,可以在第一逻辑器件1和第二逻辑器件2之间设置一时钟,其目的是保证第一逻辑器件1和第二逻辑器件2之间相位同步,使得第一逻辑器件1和第二逻辑器件2之间数据信息传输过程中以时钟产生的时钟信号为参考,保证时钟信号和所有数据信息相对相位关系的一致性。时钟具体结构请参考图3所示。例如图3中从FPGA可以通过Rx_clk引脚和Rx引脚按照时钟同步协议同时获取由主FPGA的Tx_clk引脚和Tx引脚发送的数据信息。
可选的,第一逻辑器件1和第二逻辑器件2之间的数据同步周期可以根据实际情况而定,例如可以设定周期为30ns。
之后执行步骤104,即当确定第一逻辑器件1加载更新的配置文件成功并以更新的配置文件维持业务正常运行时,控制第二逻辑器件2停止以原配置文件维业务正常运行,并从SPI Flash中加载更新的配置文件。对应到图3中,即控制从FPGA停止以原配置文件维持业务正常运行并从SPI Flash加载更新的配置文件。具体的加载方式,与步骤101中的加载配置文件的方式类似,为了说明书简洁,在此不作赘述。
可选的,步骤104中,确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行的方式可以是:当处理器3获取第一逻辑器件1反馈的表征第一逻辑器件1加载更新的配置文件成功的信号时,控制第一逻辑器件1以更新的配置文件维持业务正常运行;同时处理器3控制第一逻辑器件1向第二逻辑器件2发送第一提示信息以确定第一逻辑器件1加载更新的配置文件成功并以更新的配置文件维持业务正常运行,第一提示信息用以提示第二逻辑器件2准备加载更新的配置文件。
可选的,在第一逻辑器件1加载更新的配置文件的过程中可以向处理器3反馈信号,该信号可以包括,加载成功、加载失败、加载卡顿等信息,用以提示处理器3第一逻辑器件1加载更新的配置文件的进度。
可选的,当第一逻辑器件1加载更新的配置文件成功后,可以向第二逻辑器件2发送一提示信息,所述提示信息一方面可以确定第一逻辑器件1加载更新的配置文件成功并以更新的配置文件维持业务正常运行,另一方面可以用于提示第二逻辑器件2做好停止维持业务并加载更新后的配置文件的准备。同时,当第二逻辑器件2做好准备后,可以反馈另一提示信息告知第一逻辑器件1已做好更新的配置文件维持业务的准备。通过这样的方式提高第一逻辑器件1和第二逻辑器件2之间状态切换的准确性。
继续以图3为例,在主FPGA加载更新的配置文件的过程中可以向CPU反馈信号,该信号可以包括,加载成功、加载失败、加载卡顿等信息,用以提示CPU主FPGA加载更新的配置文件的进度。同时,主FPGA加载更新的配置文件成功之后,可以通过Mater_Out引脚向从FPGA发送一提示信息,告知从FPGA做好停止维持业务并加载更新后的配置文件的准备。当从FPGA做好准备后,可以通过Mater_in引脚向主FPGA在发送一提示信息,告知主FPGA它已经做好准备。
当确定第一逻辑器件1加载更新的配置文件成功之后,控制第一逻辑器件1以更新的配置文件维持业务正常运行。对应到图3中,当主FPGA加载更新的配置文件成功之后,CPU控制主FPGA以更新的配置文件维持业务正常运行。
当控制第一逻辑器件1以更新的配置文件维持业务正常运行时,控制第二逻辑器件2停止以原配置文件维持业务正常运行,并加载更新的配置文件。具体的实现方式可以是,当处理器3获取到表征第二逻辑器件2准备好加载更新的配置文件的信号时,控制第二逻辑器件2停止以原配置文件维持业务正常运行,并加载更新的配置文件。
举例来说,如图3所示,当从FPGA做好加载更新的配置文件的准备时,可以向CPU发送一反馈信号,当处理器3接收到该反馈信号时,控制从FPGA停止以原配置文件维持业务正常运行,并加载更新的配置文件。
可选的,本发明实施例提供了两个逻辑器件的情况,当然,逻辑器件的个数也可以是大于两个,如果是大于两个的话,例如3个,其配置文件更新方式与上述方式类似,具体的逻辑器件的数量,本领域技术人员可根据实际需求而定,本发明不作具体的限定。
举例来说,假如电路板中原配置文件的版本、功能、运行速度等都比较低级,为了使电路板的功能、运行速度等加强,可以通过编程语言将功能更多、速度更快的逻辑信号编译生成新的配置文件,并将新的配置文件更新到电路板中,那么电路板就可以通过新的配置文件运行业务,实现更多功能并且运行速度更快。
当然,如果想要再次更新配置文件的话,可以重复开始执行步骤101,即获取新的配置文件,然后以上述描述的方式实现电路板中配置文件的再次更新。
通过以上的描述,在本发明实施例中的技术方案中,在电路板上设置两个逻辑器件,当获取到新的配置文件时,控制两个逻辑器件中的其中一个逻辑器件来加载新的配置文件,控制另一个逻辑器件以原来的配置文件运行业务。当其中一个逻辑器件加载新的配置文件成功之后,控制该逻辑器件以新的配置文件维持业务正常运行,同时控制另一个逻辑器件停止以原配置文件维持业务,并加载新的配置文件。通过这样的方式,实现电子设备电路板中配置文件更新的过程中业务不中断的目的。
本发明第二方面提供一种通信设备,请参考图4所示,为本发明实施例提供的一种通信设备的结构图。该通信设备包括,
壳体301;
电路板302,设置于壳体301内,其中电路板302可以是本发明第一方面及第二方面中所描述的电路板。
可选的,上述通信设备可以是以太网交换机、路由器、集线器和其它网络通信设备。
由于本发明第二方面提供的通信设备是在与本发明第一方面提供的配置文件更新方法的相同构思下提出的,因此前述图1-3实施例中的配置文件更新方法的各种变化方式和具体实施例同样适用于本实施例的通信设备,通过前述对配置文件更新方法的详细描述,本领域技术人员可以清楚的指导本实施例中通信设备的实施过程,所以为了说明书的简洁,在此不再详述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种配置文件的更新方法,应用于一电路板中,其特征在于,所述电路板包括处理器、与所述处理器连接的第一逻辑器件、与所述处理器连接的第二逻辑器件,所述方法包括:所述处理器在所述第一逻辑器件以原配置文件维持业务正常运行时,获取更新的配置文件并将所述更新的配置文件存储于SPIFlash中;
所述处理器控制所述第二逻辑器件以所述原配置文件维持所述业务正常运行,并保存以所述原配置文件维持所述业务时的数据信息;
所述处理器控制所述第一逻辑器件停止以所述原配置文件维持所述业务正常运行并从所述SPI Flash中加载所述更新的配置文件;并控制所述第一逻辑器件获取所述第二逻辑器件在以所述原配置文件维持所述业务正常运行时的数据信息;控制所述第一逻辑器件以所述更新的配置文件继续处理所述数据信息以维持所述业务正常运行;
当确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行时,控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并从所述SPI Flash中加载所述更新的配置文件。
2.如权利要求1所述的方法,其特征在于,所述处理器在所述第一逻辑器件以原配置文件维持业务正常运行时,获取更新的配置文件并将所述更新的配置文件存储于SPI Flash中,包括:
所述处理器通过远程网络获取到所述更新的原配置文件,并将所述更新的配置文件存储到所述SPI Flash中,控制所述第一逻辑器件和所述第二逻辑器件从所述SPI Flash中加载同样的配置文件。
3.如权利要求2所述的方法,其特征在于,所述控制所述第一逻辑器件和所述第二逻辑器件从所述SPI Flash中加载同样的配置文件,包括:
所述处理器通过总线扩展器GPIO控制所述第一逻辑器件以及所述第二逻辑器件的引脚电平,控制所述第一逻辑器件和所述第二逻辑器件从所述SPIFlash中加载同样的配置文件。
4.如权利要求1所述的方法,其特征在于,所述第一逻辑器件与所述第二逻辑器件连接,所述确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行,包括:
当所述处理器获取所述第一逻辑器件反馈的表征所述第一逻辑器件加载所述更新的配置文件成功的信号时,控制所述第一逻辑器件以所述更新的配置文件维持所述业务正常运行;同时所述处理器控制所述第一逻辑器件向所述第二逻辑器件发送第一提示信息以确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行,所述第一提示信息用以提示所述第二逻辑器件准备加载所述更新的配置文件。
5.如权利要求1所述的方法,其特征在于,所述第一逻辑器件与所述第二逻辑器件连接,所述控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并从所述SPI Flash中加载所述更新的配置文件,包括:
当所述处理器获取到表征所述第二逻辑器件准备好加载所述更新的配置文件的信号时,控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并加载所述更新的配置文件。
6.一种电路板,其特征在于,包括:处理器、与所述处理器连接的第一逻辑器件、与所述处理器连接的第二逻辑器件;其中,所述处理器用于:
在所述第一逻辑器件以原配置文件维持业务正常运行时,获取更新的配置文件并将所述更新的配置文件存储于所述SPI Flash中;
控制所述第二逻辑器件以所述原配置文件维持所述业务正常运行,并保存以原配置文件维持业务时的数据信息;
控制所述第一逻辑器件停止以所述原配置文件维持所述业务正常运行并从所述SPIFlash中加载所述更新的配置文件;并控制所述第一逻辑器件获取所述第二逻辑器件在以所述原配置文件维持所述业务正常运行时的数据信息;控制所述第一逻辑器件以所述更新的配置文件继续处理所述数据信息以维持所述业务正常运行;
当确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行时,控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并从所述SPI Flash中加载所述更新的配置文件。
7.如权利要求6所述的电路板,其特征在于,所述处理器具体用于:
通过远程网络获取到所述更新的配置文件,并将所述更新的配置文件存储到所述SPIFlash中,控制所述第一逻辑器件和所述第二逻辑器件从所述SPIFlash中加载同样的配置文件。
8.如权利要求7所述的电路板,其特征在于,所述处理器具体用于:
通过总线扩展器GPIO控制所述第一逻辑器件以及所述第二逻辑器件的引脚电平,控制所述第一逻辑器件和所述第二逻辑器件从所述SPI Flash中加载同样的配置文件。
9.如权利要求6所述的电路板,其特征在于,所述处理器具体用于:
获取所述第一逻辑器件反馈的表征所述第一逻辑器件加载所述更新的配置文件成功的信号;
当获取到所述表征所述第一逻辑器件加载所述更新的配置文件成功的信号时,控制所述第一逻辑器件以所述更新的配置文件维持所述业务正常运行;同时控制所述第一逻辑器件向所述第二逻辑器件发送第一提示信息以确定所述第一逻辑器件加载所述更新的配置文件成功并以所述更新的配置文件维持所述业务正常运行,所述第一提示信息用以提示所述第二逻辑器件准备加载所述更新的配置文件。
10.如权利要求6所述的电路板,其特征在于,所述处理器具体用于:
获取表征所述第二逻辑器件准备好加载所述更新的配置文件的信号;
当获取到所述表征所述第二逻辑器件准备好加载所述更新的配置文件的信号时,控制所述第二逻辑器件停止以所述原配置文件维持所述业务正常运行,并加载所述更新的配置文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610970220.6A CN106569858B (zh) | 2016-10-31 | 2016-10-31 | 一种配置文件的更新方法以及电路板 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610970220.6A CN106569858B (zh) | 2016-10-31 | 2016-10-31 | 一种配置文件的更新方法以及电路板 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106569858A true CN106569858A (zh) | 2017-04-19 |
CN106569858B CN106569858B (zh) | 2019-08-20 |
Family
ID=58541517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610970220.6A Active CN106569858B (zh) | 2016-10-31 | 2016-10-31 | 一种配置文件的更新方法以及电路板 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106569858B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110888834A (zh) * | 2019-11-06 | 2020-03-17 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 一种pcie设备中fpga功能动态重构的方法及系统 |
CN111694503A (zh) * | 2019-03-14 | 2020-09-22 | 成都易联智通信息技术有限公司 | 一种基于SPI Flash存储器的自定义文件系统 |
CN113157635A (zh) * | 2019-09-25 | 2021-07-23 | 支付宝(杭州)信息技术有限公司 | 在fpga上实现高效合约调用的方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101673101A (zh) * | 2009-09-27 | 2010-03-17 | 电子科技大学 | 一种在线编程的fpga可重构装置 |
US7685380B1 (en) * | 2005-06-29 | 2010-03-23 | Xilinx, Inc. | Method for using configuration memory for data storage and read operations |
CN101853171A (zh) * | 2010-05-24 | 2010-10-06 | 福建星网锐捷网络有限公司 | 一种复杂可编程逻辑器件的在线升级方法及装置 |
CN102968316A (zh) * | 2012-11-02 | 2013-03-13 | 杭州迪普科技有限公司 | 一种网络设备及配置文件的加载方法 |
CN202838306U (zh) * | 2012-09-06 | 2013-03-27 | 北京雪迪龙科技股份有限公司 | 一种基于微处理器的fpga配置系统 |
CN105808290A (zh) * | 2016-03-02 | 2016-07-27 | 中国科学院自动化研究所 | 用于多fpga整机系统的远程动态更新系统和方法 |
-
2016
- 2016-10-31 CN CN201610970220.6A patent/CN106569858B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7685380B1 (en) * | 2005-06-29 | 2010-03-23 | Xilinx, Inc. | Method for using configuration memory for data storage and read operations |
CN101673101A (zh) * | 2009-09-27 | 2010-03-17 | 电子科技大学 | 一种在线编程的fpga可重构装置 |
CN101853171A (zh) * | 2010-05-24 | 2010-10-06 | 福建星网锐捷网络有限公司 | 一种复杂可编程逻辑器件的在线升级方法及装置 |
CN202838306U (zh) * | 2012-09-06 | 2013-03-27 | 北京雪迪龙科技股份有限公司 | 一种基于微处理器的fpga配置系统 |
CN102968316A (zh) * | 2012-11-02 | 2013-03-13 | 杭州迪普科技有限公司 | 一种网络设备及配置文件的加载方法 |
CN105808290A (zh) * | 2016-03-02 | 2016-07-27 | 中国科学院自动化研究所 | 用于多fpga整机系统的远程动态更新系统和方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111694503A (zh) * | 2019-03-14 | 2020-09-22 | 成都易联智通信息技术有限公司 | 一种基于SPI Flash存储器的自定义文件系统 |
CN113157635A (zh) * | 2019-09-25 | 2021-07-23 | 支付宝(杭州)信息技术有限公司 | 在fpga上实现高效合约调用的方法及装置 |
CN113157635B (zh) * | 2019-09-25 | 2024-01-05 | 支付宝(杭州)信息技术有限公司 | 在fpga上实现合约调用的方法及装置 |
CN110888834A (zh) * | 2019-11-06 | 2020-03-17 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 一种pcie设备中fpga功能动态重构的方法及系统 |
CN110888834B (zh) * | 2019-11-06 | 2022-05-31 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | 一种pcie设备中fpga功能动态重构的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106569858B (zh) | 2019-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9235408B2 (en) | Non-disruptive software updates for servers processing network traffic | |
CN103631633B (zh) | 虚拟机全系统在线迁移方法、装置与系统 | |
CN106301876B (zh) | 物理机升级方法、业务迁移方法及装置 | |
CN107659518A (zh) | 支持多路和/或多模式的网络架构上NVMe装置的系统和方法 | |
CN101478446B (zh) | 网络设备版本加载方法、装置和系统 | |
CN104615455B (zh) | 一种atca架构的ipmc程序远程升级方法及装置 | |
CN105717997B (zh) | 计算元件装拆系统及计算元件装拆方法 | |
CN103220342B (zh) | 一种移动终端设备群组远程同步更新程序的方法 | |
CN106569858A (zh) | 一种配置文件的更新方法以及电路板 | |
CN103634375A (zh) | 扩容集群节点的方法、装置及设备 | |
CN103166765B (zh) | 一种PoE功率门限切换方法和设备 | |
CN108270733A (zh) | 一种管理智能设备的方法及系统 | |
CN105471994A (zh) | 一种控制方法及装置 | |
CN112948063A (zh) | 云平台的创建方法、装置、云平台以及云平台实现系统 | |
CN114650223A (zh) | 一种Kubernetes集群的网络配置方法、装置及电子设备 | |
CN103092735A (zh) | 节点状态更新方法 | |
CN108551395A (zh) | 通信设备升级方法、通信设备及计算机存储介质 | |
CN110286852A (zh) | 双控构架分布式存储系统、数据读取方法、装置和存储介质 | |
CN108345496A (zh) | 一种运行应用程序的方法及装置 | |
CN111078463A (zh) | 数据备份的方法、装置和系统 | |
CN104219061B (zh) | 请求功耗状态变化的方法及装置 | |
CN108900441A (zh) | 网络切换方法、第一电子设备及可读存储介质 | |
US11758391B2 (en) | User equipment (UE) identification in a wireless communication network | |
CN103442033A (zh) | 一种运行状态信息的同步方法和设备 | |
CN111459510A (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 |