一种电子设备及电子设备控制方法与流程

文档序号:12596241阅读:153来源:国知局
一种电子设备及电子设备控制方法与流程

本发明涉及电子技术领域,尤其涉及一种电子设备及电子设备控制方法。



背景技术:

随着现代半导体工艺技术突飞猛进,中央处理器(英文全称:Central Processing Unit,英文简称:CPU)得到了非常广泛的应用,特别在通信类设备中,CPU被用于承担电子设备的管理、控制、数据报文转发等处理任务。在实际使用中,在启动CPU的初始化过程中,CPU需要通过加载指定的启动程序如基本输入输出系统(英文全称:Basic Input/Output System,英文简称:BIOS)程序来实现CPU的初始化。

现有技术中通常将启动程序存储在串行外围设备接口(英文全称:

serial peripheral interface,英文简称:SPI)闪存(英文全称:EEPROMMemory Flash,英文简称:Flash)中,同时为了保证不会因为SPI-FLASH出现故障导致CPU读取启动程序失败从而使CPU无法启动,通常为CPU配置两个存储有相同启动程序的SPI-FLASH,并且由复杂可编程逻辑器件(英文全称:Complex Programmable Logic Device,英文简称:CPLD)控制把上述两个SPI-FLASH中的一个SPI-FLASH连接至CPU,当上述两个SPI-FLASH中的一个SPI-FLASH出现故障时,CPLD自动控制把上述两个SPI-FLASH中的另一个SPI-FLASH连接至CPU,使CPU能够读取启动程序并成功启动。

虽然上述方案可以在一个SPI-FLASH出现故障时使CPU能够成功读取启动程序,但由于在实际使用中,CPLD常常还用于承担其所在单板上的其它板级管理/控制功能,因此CPLD自身具有代码升级更新的需求,而对CPLD进行代码升级更新需要在CPU已启动前提下进行,同时当CPLD进行代码升级或更新时,CPLD的逻辑会失效,使SPI-FLASH至CPU之间的连接中断。因此若CPLD的代码升级或更新失败,或者升级或更新过程中出现其它严重故障,例如断电,或CPU程序挂死等,当CPU再次启动,此时CPLD逻辑失效,使SPI-FLASH与CPU连接断开,从而导致CPU无法正常启动,需将CPU相关的电子设备返厂进行人工CPLD升级,从而降低了CPU所在电子设备的可靠性,提高了CPU所在电子设备的维护成本。



技术实现要素:

本申请提供一种电子设备及电子设备控制方法,能够在CPLD进行升级或更新时使CPU从正常工作的存储模块中读取启动程序。

第一方面,本发明的实施例提供了一种电子设备,包括:中央处理器CPU、第一存储模块、第二存储模块、复杂可编程逻辑器件CPLD以及切换模块;CPU,被配置当CPU上一次读取启动程序的存储模块为第一存储模块时,在CPLD进行升级前向切换模块发送第一切换信息;当CPU上一次读取启动程序的存储模块为第二存储模块时,在CPLD进行升级前向切换模块发送第二切换信息;切换模块,被配置为当接收到第一切换信息时,将第一存储模块与CPU导通并将第一存储模块与CPLD断开;当接收到第二切换信息时,将第二存储模块与CPU导通并将第二存储模块与CPLD断开。

第二方面,本发明的实施例提供了一种电子设备控制方法,用于控制第一方面的实施例中提供的电子设备,包括:中央处理器CPU确定CPU上一次读取启动程序的存储模块;当CPU上一次读取启动程序的存储模块为第一存储模块时,CPU在复杂可编程逻辑器件CPLD进行升级前向切换模块发送第一切换信息;当CPU上一次读取启动程序的存储模块为第二存储模块时,CPU在CPLD进行升级前向切换模块发送第二切换信息;当切换模块接收到第一切换信息时,切换模块将第一存储模块与CPU导通并将第一存储模块与CPLD断开;当切换模块接收到第二切换信息时,切换模块将第二存储模块与CPU导通并将第二存储模块与CPLD断开。

本发明的实施例提供的一种电子设备及电子设备控制方法,包括

CPU、第一存储模块、第二存储模块、CPLD以及切换模块,并通过将CPU配置为在对CPLD进行升级前,确定CPU前一次启动读取启动程序的存储模块,并向切换模块发送相应的切换信息,使切换模块在接到相应的切换信息后将该正常工作的存储模块与CPU导通,并且将将该正常工作的存储模块与CPLD断开,从而使CPU能够在CPLD升级或更新时能够从正常工作的存储模块中读取启动程序,并不受到CPLD的干扰,从而在CPLD升级失败后CPU再次启动时,避免因CPU无法从存储模块中读取启动程序而造成电子设备无法启动的问题,因此本发明的实施例提供的电子设备提高了电子设备的可靠性,降低了电子设备的维护成本。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的实施例所提供的一种电子设备的示意性结构图;

图2为本发明的另一实施例所提供的一种电子设备的示意性结构图;

图3为本发明的另一实施例所提供的一种电子设备的示意性结构图;

图4为本发明的实施例所提供的一种电子设备控制方法的示意性流程图;

图5为本发明的另一实施例所提供的一种电子设备控制方法的示意性流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了便于清楚描述本发明实施例的技术方案,在本发明的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分,本领域技术人员可以理解“第一”、“第二”等字样并不是在对数量和执行次序进行限定。

由于中央处理器(英文全称:Central Processing Unit,英文简称:CPU)在电子设备中有着广泛应用,且承担着设备管理、控制、数据报文处理等重要功能,被称为电子设备的“心脏”,因此需要提高电子设备中CPU的运行可靠性。

本发明的实施例针对电子设备中为CPU配备由复杂可编程逻辑器件(英文全称:Complex Programmable Logic Device,英文简称:CPLD)管理且互为备份的存储有启动程序的双存储模块时,可能由于CPLD的升级或更新导致CPU启动失败的问题,提出了一种电子设备,能够使电子设备中的CPU在CPLD升级或更新时能够从存储模块中读取启动程序,从而正常启动,降低因CPLD升级或更新而导致CPU无法启动的风险。

如附图1所示,本发明的实施例提供了一种电子设备100,包括:

中央处理器CPU101、第一存储模块102、第二存储模块103、复杂可编程逻辑器件CPLD104以及切换模块105;

其中,CPU 101与CPLD 104连接,CPLD 104通过切换模块105分别与第一存储模块102以及第二存储模块103连接,切换模块105还与CPU连接101,第一存储模块102与第二存储模块103均存储有用于启动CPU 101的启动程序;

具体的,第一存储模块102与第二存储模块103可以串行外围设备接口(英文全称:serial peripheral interface,英文简称:SPI)闪存(英文全称:EEPROM Memory Flash,英文简称:Flash),也可以为硬盘或其他存储芯片,只要能够在第一存储模块102与第二存储模块103存储用于动CPU 101的启动程序,并且CPU 101能够从第一存储模块102与第二存储模块103中读取该启动程序即可。启动程序可以为引导(英文全称:boot)程序。CPLD 104通过切换模块105分别与第一存储模块102以及第二存储模块103连接,并且CPU 101与CPLD 104连接,指CPLD 104可以通过切换模块105将CPU 101与第一存储模块102或第二存储模块103导通,从而使CPU101能够从第一存储模块102或第二存储模块103中读取启动程序。

CPU 101,被配置当CPU 101上一次读取启动程序的存储模块为第一存储模块102时,在CPLD 104进行升级前向切换模块105发送第一切换信息;当CPU101上一次读取启动程序的存储模块为第二存储模块103时,在CPLD104进行升级前向切换模块105发送第二切换信息;

具体的,CPU 101可以在确定需要对CPLD 104进行升级或更新时,确定自身上次一启动时读取启动程序的来源,即确定自身上一次启动时从第一存储模块102还是从第二存储模块103中读取启动程序,从而确定当前电子设备100中能够正常工作的存储模块,当CPU 101再次需要读取启动程序时,能够重该正常工作的存储模块成功读取启动程序。

示例性的,CPU 101获得CPLD升级命令或收到用于升级或更新CPLD 104的升级数据包后,确定需要对CPLD 104进行升级或更新,因此CPU 101查看自身上一次启动成功时读取启动程序的存储模块,当CPU 101上一次启动成功时读取启动程序的存储模块为第一存储模块102时,在CPLD 104进行升级前向切换模块105发送第一切换信息;当CPU101上一次读取启动程序的存储模块为第二存储模块103时,在CPLD104进行升级前向切换模块105发送第二切换信息。

切换模块105,被配置为当接收到第一切换信息时,将第一存储模块102与CPU 101导通并将第一存储模块102与CPLD 104断开;

当接收到第二切换信息时,将第二存储模块103与CPU101导通并将第二存储模块103与CPLD 104断开。

具体的,在切换模块105收到CPU 101发送第一切换信息时,确定CPLD104进行即将升级,并且当前状态下该电子设备100中能够读取启动程序的存储模块确定为第一存储模块102,为了避免CPLD 104升级时报或升级过程中出现掉电而导致CPLD 104无法工作,进而导致CPU 101无法通过CPLD从第一存储模块102或第二存储模块103中读取启动程序,切换模块将第一存储模块102与CPU 101导通并将第一存储模块102与CPLD 104断开,从而使CPU 101在CPLD 104升级的过程中能够直接从当前状态下能够正常读取启动程序的第一存储模块102成功读取启动程序,从而使CPU能够正常启动。

在切换模块105收到CPU 101发送第二切换信息时,确定CPLD 104进行即将升级,并且当前状态下该电子设备100中能够读取启动程序的存储模块确定为第二存储模块103,为了避免CPLD 104升级时报或升级过程中出现掉电而导致CPLD 104无法工作,进而导致CPU 101无法通过CPLD从第二存储模块103或第一存储模块102中读取启动程序,切换模块将第二存储模块103与CPU 101导通并将第二存储模块103与CPLD 104断开,从而使CPU 101在CPLD 104升级的过程中能够直接从当前状态下能够正常读取启动程序的第二存储模块103成功读取启动程序,从而使CPU能够正常启动。

本发明的实施例提供的一种电子设备,包括CPU、第一存储模块、第二存储模块、CPLD以及切换模块,并通过将CPU配置为在对CPLD进行升级前,确定CPU前一次启动读取启动程序的存储模块,并向切换模块发送相应的切换信息,使切换模块在接到相应的切换信息后将该正常工作的存储模块与CPU导通,并且将将该正常工作的存储模块与CPLD断开,从而使CPU能够在CPLD升级或更新时能够从正常工作的存储模块中读取启动程序,并不受到CPLD的干扰,从而在CPLD升级失败后CPU再次启动时,避免因CPU无法从存储模块中读取启动程序而造成电子设备无法启动的问题,因此本发明的实施例提供的电子设备提高了电子设备的可靠性,降低了电子设备的维护成本。

进一步的,CPU 101还被配置为当CPLD 104升级成功时,向切换模块105发送第三切换信息;

切换模块105,还被配置为当接收到第三切换信息时,将第一存储模块102以及第二存储模块103分别与CPLD104导通,并将第一存储模块102以及第二存储模块103与CPU101断开。

具体的,当CPU 101确定CPLD104升级成功时,向切换模块105发送第三切换信息,即CPU 101确定CPLD104能够根据需求将CPU 101与第一存储模块102或第二存储模块103导通,使CPU 101能够从第一存储模块102或第二存储模块103导通中读取启动数据时,向切换模块105发送第三切换信息。

当切换模块105接收到第三切换信息时,确认CPLD104能够履行其自身的职责时,将第一存储模块102以及第二存储模块103分别与

CPLD104导通,从而使CPLD104能够根据需求将CPU 101与第一存储模块102或第二存储模块103导通,使CPU 101能够从第一存储模块102或第二存储模块103导通中读取启动程序,并将第一存储模块102以及第二存储模块103与CPU101断开,避免CPLD104对第一存储模块102或第二存储模块103的管理因CPU 101直接从第一存储模块102或第二存储模块103读取启动程序而受到影响,从而在CPLD104升级成功后避免因与CPU 101导通的第一存储模块102或第二存储模块103出现故障而造成电子设备无法启动的问题,从而提高电子设备的可靠性。

更进一步的,切换模块105还被配置为当电子设备再次启动时,获取切换模块105前一次接收到的切换信息;当切换模块105前一次接收到的切换信息为第一切换信息时,将第一存储模块102与CPU 101导通并将第一存储模块102与CPLD104断开;当切换模块105前一次接收到的切换信息为第二切换信息时,将第二存储模块103与CPU 101导通并将第二存储模块103与CPLD 104断开;当切换模块前一次接收到的切换信息为第三切换信息时,将第一存储模块102以及第二存储模块103分别与CPLD 104导通,并将第一存储模块102以及第二存储模块103与CPU 101断开。

具体的,当电子设备100再次启动时,切换模块105获取其前一次接收到的切换信息,以确定在电子设备100上一次关闭前电子设备100中CPLD 104的工作状态。

当切换模块105前一次接收到的切换信息为第一切换信息时,说明CPLD 104即将升级或正在升级中,并且CPU 101上一次正常读取启动程序的存储模块为第一存储模块102,因此切换模块105将第一存储模块102与CPU 101导通并将第一存储模块102与CPLD104断开,若第一存储模块102与CPU 101已处于导通状态并且第一存储模块102与CPLD104已处于断开状态,则维持当前状态不变。从而保证CPU 101在启动时能够成功从第二存储模块103中读取启动程序。

当切换模块105前一次接收到的切换信息为第二切换信息时,说明CPLD 104即将升级或正在升级中,并且CPU 101上一次正常读取启动程序的存储模块为第二存储模块103,因此切换模块105将第二存储模块103与CPU 101导通并将第二存储模块103与CPLD104断开,若第二存储模块103与CPU 101已处于导通状态并且第二存储模块103与CPLD104已处于断开状态,则维持当前状态不变。从而保证CPU 101在启动时能够成功从第二存储模块103中读取启动程序。

当切换模块105前一次接收到的切换信息为第三切换信息时,说明CPLD 104已升级完毕或并不会进行升级,因此切换模块105,将第一存储模块102以及第二存储模块103分别与CPLD 104导通,并将第一存储模块102以及第二存储模块103与CPU 101断开,若第一存储模块102以及第二存储模块103分别与CPU 101已处于导通状态并且第一存储模块102以及第二存储模块103与CPLD104已处于断开状态,则维持当前状态不变。从而保证CPLD 104能够对第一存储模块102以及第二存储模块103进行管理,即在CPU 101启动时,CPLD 104能够根据需求将第一存储模块102或第二存储模块103与CPU 101导通,使CPU 101在启动时能够成功从第一存储模块102或第二存储模块103中读取启动程序。

具体的,如附图2所示,切换模块包括分压单元115与开关单元125,分压单元115分别与CPU 101以及开关单元125连接,开关单元125分别与第一存储模块102、第二存储模块103、CPLD104以及CPU 101连接;

分压单元115,被配置为当收到第一切换信息时向开关单元125发送第一电压信号,当收到第二切换信息向开关单元125发送第二电压信号;

开关单元125,被配置为当接收到第一电压信号时,将第一存储模块102与CPU 101导通,将第一存储模块102与CPLD断开;

当接收到第二电压信号时,将第二存储模块103与CPU 101导通,将第二存储模块103与CPLD 104断开。

具体的,如附图3所示,本发明的实施例提供了一种电子设备,包括:中央处理器CPU101、第一存储模块102、第二存储模块103、复杂可编程逻辑器件CPLD 104、第一电阻R1、第二电阻R2、电位器135以及开关单元125;

其中,CPU 101的MISO端与CPLD 104的E5端连接,CPU 101的CS#端与CPLD 104的E6端连接,CPU 101的Boot-sel端与CPLD 104的E7端连接,CPU 101的RST#端与CPLD 104的E8端连接,CPU 101的CLK端分别与第一存储模块102的B1端以及第二存储模块103的C1端连接,CPU 101的MOSI端分别与第一存储模块102的B2端以及第二存储模块103的C2端连接,CPU 101的I2C端与电位器135的控制端W5连接,R1的第一端连接电源VCC,R1的第二端连接电位器135的第一端W1,R2的第一端连接电源VCC,R2的第二端连接电位器135的第二端W2,电位器135的第一端W1连接开关单元125的第一端S1,电位器135的第二端W2连接开关单元125的第二端S2,电位器135的第三端W3与电位器135的第四端W4接地GND,第一存储模块102的D1端连接开关单元的S3端,第一存储模块102的CS#1端连接开关单元的S4端,第二存储模块103的D2端连接开关单元的S5端,第二存储模块103的CS#2端连接开关单元的S6端,开关单元125的S7端连接CPU 101的MISO端,开关单元125的S8端连接CPU 101的CS#端,开关单元125的S9端连接CPLD 104的E1端,开关单元125的S10端连接CPLD 104的E2端,开关单元125的S11端连接CPLD 104的E3端,开关单元125的S12端连接CPLD 104的E4端。

其中,CPU 101的CLK端向第一存储模块102的B1端以及第二存储模块102的C1端发送时钟信号,CPU 101的MOSI端向第一存储模块102的B2端以及第二存储模块102的C2端发送数据信号,CPU 101从MISO端接收存储模块所发送的数据信号,该数据信号可以为启动程序,CPU 101从CS#端发送片选信号,接收到该片选信号的存储模块作为有效的启动源,能够从该存储模块中读取启动程序。

当电位器135的控制端W5接收到CPU 101从I2C端发送的第一切换信息时,将电位器135的第一端W1与电位器135的第三端W3间的电阻调整为第一阻值,将电位器135的第二端与电位器135的第四端W4间的电阻调整为第二阻值,使电位器135的第一端W1向开关单元125的第一端S1输出第一电压、电位器135的第二端W2向开关单元125的第二端S2输出第二电压,其中第一电阻R1与第二电阻R2的阻值相同,第一阻值小于第二阻值,因此第一电压小于第二电压;

当电位器135的控制端接收到第二切换信息时,将电位器135的第一端W1与电位器135的第三端W3间的电阻调整为第二阻值,将电位器135的第二端W2与电位器135的第四端W4间的电阻调整为第一阻值,使电位器135的第一端W1向开关单元125的第一端S1输出第二电压、电位器135的第二端W2向开关单元125的第二端S2输出第一电压。

当开关单元125的第一端S1的电压为第一电压且开关单元125的第二端S2的电压为第二电压时,开关单元125将开关单元125的S3端与开关单元125的S7端、将开关单元125的S4端与开关单元125的S8端导通,同时将开关单元125的S3端与开关单元125的S9端断开、将开关单元125的S4端与开关单元125的S10端断开,从而将第一存储模块102的D1端与CPU 101的MISO端导通、并将第一存储模块102的CS#1端与CPU 101的CS#端导通,从而使CPU 101能够通过CS#端向第一存储模块102的CS#1端输出片选信号,并通过CPU 101的MISO端从第一存储模块102的D1端读取启动程序。

当开关单元125的第一端S1的电压为第二电压且开关单元125的第二端S2的电压为第一电压时,开关单元125将开关单元125的S5端与开关单元125的S7端、将开关单元125的S6端与开关单元125的S8端导通,同时将开关单元125的S5端与开关单元125的S11端断开、将开关单元125的S6端与开关单元125的S12端断开,从而将第二存储模块103的D2端与CPU 101的MISO端导通、并将第二存储模块103的CS#2端与CPU 101的CS#端导通,从而使CPU 101能够通过CS#端向第二存储模块103的CS#2端输出片选信号,并通过CPU 101的MISO端从第二存储模块103的D2端读取启动程序。

更进一步的,当切换模块105接收到第三切换信息时,将电位器135的第一端W1与电位器135的第三端W3间的电阻调整为第一阻值,将电位器135的第二端W2与电位器135的第四端W4间的电阻调整为第一阻值,使电位器135的第一端W1向开关单元125的第一端S1输出第二电压、电位器135的第二端W2向开关单元125的第二端S2输出第二电压。

当开关单元125的第一端S1的电压为第二电压且开关单元125的第二端S2的电压也为第二电压时,开关单元125将开关单元125的S3端与开关单元125的S9端、将开关单元125的S4端与开关单元125的S9端导通,开关单元125将开关单元125的S5端与开关单元125的S11端、将开关单元125的S6端与开关单元125的S12端导通,同时将开关单元125的S3端与开关单元125的S7端断开、将开关单元125的S4端与开关单元125的S8端断开、将开关单元125的S5端与开关单元125的S7端断开、将开关单元125的S6端与开关单元125的S8端断开,从而将第二存储模块103的D2端与CPU 101的MISO端断开、将第二存储模块103的CS#2端与CPU 101的CS#端断开,从而将第一存储模块102的D1端与CPU 101的MISO端断开、将第一存储模块102的CS#1端与CPU 101的CS#端断开,从而使CPLD 104对第一存储模块102以及第二存储模块103进行管理,从而使CPLD104能够根据需求使CPU 101能够从第一存储模块102或第二存储模块103导通中读取启动程序,并将第一存储模块102以及第二存储模块103与CPU101断开,避免CPLD104对第一存储模块102或第二存储模块103的管理因CPU 101直接从第一存储模块102或第二存储模块103读取启动程序而受到影响,从而在CPLD104升级成功后避免因与CPU 101导通的第一存储模块102或第二存储模块103出现故障而造成电子设备无法启动的问题,从而提高电子设备的可靠性。

优选的,可以将第一阻值与第二阻值调整为远大于第一电阻以及第二电阻的阻值。将第一电阻与第二电阻的阻值均设定为2KΩ,将第一阻值设定为100KΩ,将第二阻值设定为0KΩ。

如附图4所示,本发明的实施例提供了一种电子设备控制方法,应用于上述实施例中提供的如附图1所示的电子设备,包括:

201、中央处理器CPU确定CPU上一次读取启动程序的存储模块;

202、当CPU上一次读取启动程序的存储模块为第一存储模块时,CPU在复杂可编程逻辑器件CPLD进行升级前向切换模块发送第一切换信息;

203、当CPU上一次读取启动程序的存储模块为第二存储模块时,CPU在CPLD进行升级前向切换模块发送第二切换信息;

具体的,第一存储模块102与第二存储模块103可以串行外围设备接口(英文全称:serial peripheral interface,英文简称:SPI)闪存(英文全称:EEPROM Memory Flash,英文简称:Flash),也可以为硬盘或其他存储芯片,只要能够在第一存储模块102与第二存储模块103存储用于动CPU 101的启动程序,并且CPU 101能够从第一存储模块102与第二存储模块103中读取该启动程序即可。启动程序可以为引导(英文全称:boot)程序。CPLD 104通过切换模块105分别与第一存储模块102以及第二存储模块103连接,并且CPU 101与CPLD 104连接,指CPLD 104可以通过切换模块105将CPU 101与第一存储模块102或第二存储模块103导通,从而使CPU101能够从第一存储模块102或第二存储模块103中读取启动程序。

具体的,CPU 101可以在确定需要对CPLD 104进行升级或更新时,确定自身上次一启动时读取启动程序的来源,即确定自身上一次启动时从第一存储模块102还是从第二存储模块103中读取启动程序,从而确定当前电子设备100中能够正常工作的存储模块,当CPU 101再次需要读取启动程序时,能够重该正常工作的存储模块成功读取启动程序。

示例性的,CPU 101获得CPLD升级命令或收到用于升级或更新CPLD 104的升级数据包后,确定需要对CPLD 104进行升级或更新,因此CPU 101查看自身上一次启动成功时读取启动程序的存储模块,当CPU 101上一次启动成功时读取启动程序的存储模块为第一存储模块102时,在CPLD 104进行升级前向切换模块105发送第一切换信息;当CPU101上一次读取启动程序的存储模块为第二存储模块103时,在CPLD104进行升级前向切换模块105发送第二切换信息。

204、当切换模块接收到第一切换信息时,切换模块将第一存储模块与CPU导通并将第一存储模块与CPLD断开;

205、当切换模块接收到第二切换信息时,切换模块将第二存储模块与CPU导通并将第二存储模块与CPLD断开。

具体的,在切换模块105收到CPU 101发送第一切换信息时,确定CPLD104进行即将升级,并且当前状态下该电子设备100中能够读取启动程序的存储模块确定为第一存储模块102,为了避免CPLD 104升级时报或升级过程中出现掉电而导致CPLD 104无法工作,进而导致CPU 101无法通过CPLD从第一存储模块102或第二存储模块103中读取启动程序,切换模块将第一存储模块102与CPU 101导通并将第一存储模块102与CPLD 104断开,从而使CPU 101在CPLD 104升级的过程中能够直接从当前状态下能够正常读取启动程序的第一存储模块102成功读取启动程序,从而使CPU能够正常启动。

在切换模块105收到CPU 101发送第二切换信息时,确定CPLD104进行即将升级,并且当前状态下该电子设备100中能够读取启动程序的存储模块确定为第二存储模块103,为了避免CPLD 104升级时报或升级过程中出现掉电而导致CPLD 104无法工作,进而导致CPU 101无法通过CPLD从第二存储模块103或第一存储模块102中读取启动程序,切换模块将第二存储模块103与CPU 101导通并将第二存储模块103与CPLD104断开,从而使CPU 101在CPLD 104升级的过程中能够直接从当前状态下能够正常读取启动程序的第二存储模块103成功读取启动程序,从而使CPU能够正常启动。

本发明的实施例提供的一种电子设备控制方法,并通过在对CPLD进行升级前,确定CPU前一次启动读取启动程序的存储模块,并向切换模块发送相应的切换信息,使切换模块在接到相应的切换信息后将该正常工作的存储模块与CPU导通,并且将将该正常工作的存储模块与CPLD断开,从而使CPU能够在CPLD升级或更新时能够从正常工作的存储模块中读取启动程序,并不受到CPLD的干扰,从而在CPLD升级失败后CPU再次启动时,避免因CPU无法从存储模块中读取启动程序而造成电子设备无法启动的问题,因此本发明的实施例提供的电子设备提高了电子设备的可靠性,降低了电子设备的维护成本。

进一步的,如附图5所示,本发明的实施例提供的电子设备控制方法还包括:

206、当CPLD升级成功时,向切换模块发送第三切换信息;

207、当切换模块接收到第三切换信息时,将第一存储模块以及第二存储模块分别与CPLD导通,并将第一存储模块以及第二存储模块与CPU断开。

具体的,当CPU 101确定CPLD104升级成功时,向切换模块105发送第三切换信息,即CPU 101确定CPLD104能够根据需求将CPU 101与第一存储模块102或第二存储模块103导通,使CPU 101能够从第一存储模块102或第二存储模块103导通中读取启动数据时,向切换模块105发送第三切换信息。

当切换模块105接收到第三切换信息时,确认CPLD104能够履行其自身的职责时,将第一存储模块102以及第二存储模块103分别与CPLD104导通,从而使CPLD104能够根据需求将CPU 101与第一存储模块102或第二存储模块103导通,使CPU 101能够从第一存储模块102或第二存储模块103导通中读取启动程序,并将第一存储模块102以及第二存储模块103与CPU101断开,避免CPLD104对第一存储模块102或第二存储模块103的管理因CPU 101直接从第一存储模块102或第二存储模块103读取启动程序而受到影响,从而在CPLD104升级成功后避免因与CPU 101导通的第一存储模块102或第二存储模块103出现故障而造成电子设备无法启动的问题,从而提高电子设备的可靠性。

进一步的,如附图5所示,本发明的实施例提供的电子设备控制方法还包括:

208、当电子设备再次启动时,切换模块获取切换模块前一次接收到的切换信息;

209、当切换模块前一次接收到的切换信息为第一切换信息时,将第一存储模块与CPU导通并将第一存储模块与CPLD断开;

210、当切换模块前一次接收到的切换信息为第二切换信息时,将第二存储模块与CPU导通并将第二存储模块与CPLD断开;

211、当切换模块前一次接收到的切换信息为第三切换信息时,将第一存储模块以及第二存储模块分别与CPLD导通,并将第一存储模块以及第二存储模块与CPU断开。

具体的,当电子设备100再次启动时,切换模块105获取其前一次接收到的切换信息,以确定在电子设备100上一次关闭前电子设备100中CPLD 104的工作状态。

当切换模块105前一次接收到的切换信息为第一切换信息时,说明CPLD 104即将升级或正在升级中,并且CPU 101上一次正常读取启动程序的存储模块为第一存储模块102,因此切换模块105将第一存储模块102与CPU 101导通并将第一存储模块102与CPLD104断开,若第一存储模块102与CPU 101已处于导通状态并且第一存储模块102与CPLD104已处于断开状态,则维持当前状态不变。从而保证CPU 101在启动时能够成功从第二存储模块103中读取启动程序。

当切换模块105前一次接收到的切换信息为第二切换信息时,说明CPLD 104即将升级或正在升级中,并且CPU 101上一次正常读取启动程序的存储模块为第二存储模块103,因此切换模块105将第二存储模块103与CPU 101导通并将第二存储模块103与CPLD104断开,若第二存储模块103与CPU 101已处于导通状态并且第二存储模块103与CPLD104已处于断开状态,则维持当前状态不变。从而保证CPU 101在启动时能够成功从第二存储模块103中读取启动程序。

当切换模块105前一次接收到的切换信息为第三切换信息时,说明CPLD 104已升级完毕或并不会进行升级,因此切换模块105,将第一存储模块102以及第二存储模块103分别与CPLD 104导通,并将第一存储模块102以及第二存储模块103与CPU 101断开,若第一存储模块102以及第二存储模块103分别与CPU 101已处于导通状态并且第一存储模块102以及第二存储模块103与CPLD104已处于断开状态,则维持当前状态不变。从而保证CPLD 104能够对第一存储模块102以及第二存储模块103进行管理,即在CPU 101启动时,CPLD 104能够根据需求将第一存储模块102或第二存储模块103与CPU 101导通,使CPU 101在启动时能够成功从第一存储模块102或第二存储模块103中读取启动程序。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括随机存储器(英文全称:Random Access Memory,英文简称:RAM)、只读存储器(英文全称:Read Only Memory,英文简称:ROM)、电可擦可编程只读存储器(英文全称:Electrically Erasable Programmable Read Only Memory,英文简称:EEPROM)、只读光盘(英文全称:Compact Disc Read Only Memory,英文简称:CD-ROM)或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户专线(英文全称:Digital Subscriber Line,英文简称:DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在计算机可读介质的定义中。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,当以软件方式实现本发明时,可以将用于执行上述方法的指令或代码存储在计算机可读介质中或通过计算机可读介质进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、电可擦可编程只读存储器(全称:electrically erasable programmable read-only memory,简称:EEPROM)、光盘、磁盘或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1