一种核电厂仪控系统启动装置和方法与流程

文档序号:12123340阅读:309来源:国知局
一种核电厂仪控系统启动装置和方法与流程

本发明属于核电厂安全级仪控系统的技术领域,尤其涉及一种核电厂仪控系统启动装置和方法。



背景技术:

计算机泄密事件的发生,使得人们对信息安全越来越重视,而计算机系统在启动过程中,以下技术特征直接关系计算机系统的安全性:

1、基本输入输出系统(Basic Input Output System,简称BIOS),为固化在计算机主板上的一个只读内存(Read-Only Memory,简称ROM)芯片内,它保存着计算机最重要的基本输入输出的程序、开机自检程序和系统自引导程序、菜单程序;其主要功能是为计算机提供最底层的、最直接的硬件设置、控制和访问。

2、统一的可扩展固定接口(Unified Extensible Firmware Interface,简称UEFI),是详细描述类型接口的标准,属于标准规范定义的一种固件验证方法,规范描述了平台固件如何管理安全证书、固件验证,以及固件和操作系统之间的接口,目的是防止恶意软件的侵入。

3、Boot Loader(引导程序,又称引导加载程序),是嵌入式系统在操作系统内核运行之前运行,可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好运行环境的一段程序。

如图1中的现有技术,公开了一种具有主用和备用引导程序的系统及启动方法,其中系统包括处理器,存储主用引导程序的主用存储器和存储备用引导程序的备用存储器,与处理器、主用存储器和备用存储器连接的逻辑控制器;系统启动时,该逻辑控制器选择从主用存储器或备用存储器执行引导程序。并且上电后,系统从主用存储器中读取主引导程序进行加载;然后系统判断是否加载成功,如是,则结束流程,否则重启设备,系统从备用存储器中读取备份引导程序进行加载。

发明人在实现本发明的过程中,发现上述现有技术采用两片分别存储主备引导序的存储器,通过逻辑控制器来选择所要启动的引导程序,在一定程度上提高了引导程序正常启动的可靠性,但是安全性考虑仍有不足;而在核电领域中,对系统的安全级别要求更高,所以这些不足会带来安全性方面的风险。



技术实现要素:

为了解决现有技术中的计算机系统在引导程序启动过程中存在的安全性不足问题,本发明提供一种能够更加安全启动核电厂仪控系统的核电厂仪控系统启动装置和方法。

为了实现上述目的,本发明提供的技术方案包括:

一方面,提供一种核电厂仪控系统启动装置,其特征在于,所述装置包括:

引导程序存储单元,设置成存储有所述核电厂仪控系统的引导程序;

启动控制单元,通过数据线和地址线与所述引导程序存储单元连接;启动控制单元设置有控制所述核电厂仪控系统启动运行的启动控制器和与所述启动控制器连接的校验电路;

其中,所述引导程序存储单元内至少一个预定地址还设置成存储引导程序校验码,所述校验电路读取到所述引导程序后,根据所述校验电路内部的逻辑运算模块计算当前引导程序对应的第一校验码;所述启动控制器根据引导程序存储单元内的引导程序校验码与所述校验电路计算得到的第一校验码是否一致,判断所述引导程序是否被修改。

采用本发明提供的上述技术方案,通过校验电路可以检测引导程序是否被恶意修改,而且通过硬件校验电路,能有效提高系统中引导程序校验的速度,缩短启动时间。

优选地,所述引导程序存储单元内至少另一个预定地址还设置成存储操作系统软件内核校验码,并且所述校验电路读取到所述操作系统软件内核程序后,根据所述校验电路内部的逻辑运算模块计算当前所述操作系统软件内核程序对应的第二校验码,所述启动控制器根据引导程序存储单元内的操作系统软件内核校验码与所述校验电路计算得到的第二校验码是否一致,判断所述操作系统软件内核程序是否被修改。

通过对操作系统内核的检测,可以进一步确保整个核电厂仪控系统中关键程序的安全性。

优选地,引导程序存储单元设置有主用引导程序存储区域和备用引导程序存储区域;并且所述备用引导程序存储区域的地址与所述主用引导程序存储区域的地址之间对应的偏移地址为预先分配的固定地址。

优选地,所述启动控制单元还设置有检测所述主用引导程序和/或备用引导程序是否异常的自诊断和错误安全检测电路;当所述自诊断和错误安全检测电路检测到所述主用引导程序出错,且所述备用引导程序正常时,所述启动控制单元将所述核电厂仪控系统使用所述备用引导程序继续启动。

采用本发明提供的上述进一步优选的技术方案,启动控制单元能自由选择主备引导程序,且提供可配置功能,允许配置备用引导程序的偏移地址,提高的系统的灵活性,同时节省分别存储在不同存储器上的空间和成本。

优选地,所述装置还包括与所述启动控制单元连接的处理器,并且所述引导程序能够对所述处理器和所述引导程序存储单元进行自诊断。

优选地,所述装置还包括与所述启动控制单元连接的处理器,所述启动控制单元还设置有看门狗电路和处理器复位电路,当所述引导程序存储单元内引导程序被检测出现不能继续运行的错误时,且所述看门狗电路达到预定时间后,通过所述处理器复位电路将处理器设置为持续复位状态,使处理器停止运行。

优选地,所述启动控制单元还设置有显示单元,所述显示单元在所述引导程序发生错误时,显示所述错误对应的代码。

优选地,所述装置还与所述启动控制单元连接的处理器,所述启动控制单元还设置有看门狗电路和处理器复位电路,当所述引导程序存储单元内引导程序发生不可预知的错误导致程序跑飞,且所述看门狗电路达到预定时间后,通过所述处理器复位电路将处理器设置为持续复位状态,使所述处理器停止运行。因此,通过采用看门口电路对系统错误的监控,能够在引导系统崩溃(本领域技术人员亦称跑飞)的情况下,避免系统反复重启或进入其他未确定状态而造成误操作,提高系统的稳定性。

采用本发明提供的上述进一步优选的技术方案,通过完善的自诊断和故障安全检测设计,可以更好地保证系统的安全性和错误行为可预见性。

另一方面,本发明还提供一种核电厂仪控系统启动方法,其特征在于,所述方法包括:

启动控制单元从引导程序存储单元中读取引导程序;

启动控制单元中的校验电路读取到所述引导程序后,根据所述校验电路内部的逻辑运算模块计算当前引导程序对应的第一校验码;

启动控制单元中启动控制器根据引导程序存储单元内的引导程序校验码与所述校验电路计算得到的第一校验码是否一致,判断所述引导程序是否被修改。

优选地,所述方法还包括:启动控制单元从引导程序存储单元中读取引导程序过程中,所述校验电路还读取到所述操作系统软件内核程序,并且根据所述校验电路内部的逻辑运算模块计算当前所述操作系统软件内核程序对应的第二校验码,所述启动控制器根据引导程序存储单元内的操作系统软件内核校验码与所述校验电路计算得到的第二校验码是否一致,判断所述操作系统软件内核程序是否被修改。

优选地,所述引导程序存储单元设置有主用引导程序存储区域和备用引导程序存储区域,所述启动控制单元还设置有检测所述主用引导程序和/或备用引导程序是否异常的自诊断和错误安全检测电路;当所述自诊断和错误安全检测电路检测到所述主用程序启动出现错误时,所述自诊断和错误安全检测电路继续校验备用引导程序是否完整;如果所述备用引导程序完整,所述启动控制单元中的启动控制器使用所述备用引导程序继续对所述核电厂仪控系统实现启动引导。

优选地,所述方法还包括:将所述备用引导程序存储区域的地址与所述主用引导程序存储区域的地址之间对应的偏移地址为预先分配的固定地址。

优选地,所述方法还包括:对与所述启动控制单元连接的处理器和/或所述引导程序存储单元进行自诊断。

优选地,所述方法还包括:当所述引导程序存储单元内引导程序发生不可预知错误导致程序跑飞,通过所述启动控制单元内的看门狗电路判断错误时间是否达到预定时间;如果是,通过所述处理器复位电路将处理器设置为持续复位状态,使处理器停止运行。这样可以使所述仪控系统处于确定的安全状态。

优选地,所述方法还包括:当所述引导程序发生错误时,显示所述错误对应的代码。

采用本发明提供的上述启动方法,同样可以通过校验电路检测引导程序和/或操作系统内核是否被恶意修改,而且通过硬件校验电路,能有效提高系统中引导程序校验的速度,缩短启动时间。而且进一步地,能够在引导系统崩溃(本领域技术人员亦称跑飞)的情况下,避免系统反复重启或进入其他未确定状态而造成误操作,提高系统的稳定性;启动控制单元能自由选择主备引导程序,且提供可配置功能,允许配置备用引导程序的偏移地址,提高的系统的灵活性,同时节省分别存储在不同存储器上的空间和成本;通过完善的自诊断和故障安全检测设计,可以更好地保证系统的安全性和错误行为可预见性。

发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书变得显而易见,或者通过实施本发明的技术方案而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构和/或流程来实现和获得。

附图说明

图1为现有技术中的一种具有主用和备用引导程序的系统的结构框图;

图2为本发明实施例一提供的一种核电厂仪控系统启动装置的结构框图;

图3为本发明实施例一提供的一种核电厂仪控系统启动方法的流程图;

图4为本发明实施例二提供的一种核电厂仪控系统启动装置的结构框图;

图5为本发明实施例二提供的一种核电厂仪控系统启动方法的流程图;

图6为本发明实施例三提供的一种核电厂仪控系统启动装置的结构框图;

图7为本发明实施例三提供的一种核电厂仪控系统启动方法的流程图。

具体实施方式

以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,这些具体的说明只是让本领域普通技术人员更加容易、清晰理解本发明,而非对本发明的限定性解释;并且只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。

另外,在附图的流程图示出的步骤可以在诸如一组控制器可执行指令的控制系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。还需要说明的是,为了表述方便,在本发明会将核电厂仪控系统简称为“系统”,将核电厂仪控系统启动装置简称为“装置”。

下面通过附图和具体实施例,对本发明的技术方案进行详细描述:

实施例一

如图2所示,本实施例提供的一种核电厂仪控系统启动装置包括:

引导程序存储单元20,设置成存储有核电厂仪控系统的引导程序201,优选地,引导程序存储单元20为Flash内存(又名闪存),由于Flash内存是一种长寿命的非易失性的存储器,而且在断电情况下仍能保持所存储的数据信息,这样可以使得引导程序得到有效保存;

启动控制单元21,通过数据线和地址线与引导程序存储单元20连接;启动控制单元21设置有控制核电厂仪控系统启动运行的启动控制器211和与启动控制器连接的校验电路212(也可以称为CRC硬件校验电路);本发明的装置还包括处理器22,启动控制单元21还通过数据线和地址线与处理器22连接;优选地,启动控制单元21为CPLD(全称Complex Programmable Logic Device,复杂可编程逻辑器件),并且该CPLD内还划分有多个子电路模块,例如启动控制器211、校验电路212,在后续的实施例或者进一步优选方案中还可以设置有其他子电路模块,这样可以通过CPLD来实现启动控制单元21快速的控制和运算功能;

其中,引导程序存储单元20的至少一个预定地址设置成存储引导程序校验码202,即验证码202可以为一种或者多种类型的密码组合构成,当验证码202为一种类型的密码时,可以分配一个地址存储该密码,当验证码202为多种密码组合时,可以分配多个不同的地址分别存储不同的密码,也可以在同一地址中同时存储这些密码;校验电路212读取到引导程序201后,根据校验电路212内部的逻辑运算模块计算当前引导程序对应的校验码;启动控制器211根据引导程序存储单元20内的引导程序校验码202与校验电路计算得到的校验码是否一致,判断引导程序201是否被修改;即如果一致,则引导程序201没有被修改,如果不一致,则引导程序201被修改。

采用本实施例提供的上述技术方案,通过校验电路212可以检测引导程序201是否被恶意修改,而且通过硬件校验电路,能有效提高系统中引导程序校验的速度,缩短启动时间。

如图2所示,引导程序存储单元20的至少另一个预定地址设置成存储操作系统软件内核校验码203,即验证码203也可以为一种或者多种类型的密码组合构成,当验证码203为一种类型的密码时,可以分配一个地址存储该密码,当验证码203为多种密码组合时,可以分配多个不同的地址分别存储不同的密码,也可以在同一地址中同时存储这些密码;并且校验电路212读取到操作系统软件内核程序后,根据校验电路212内部的逻辑运算模块计算当前操作系统软件内核程序对应的校验码,启动控制器根据引导程序存储单元内的操作系统软件内核校验码与校验电路计算得到的校验码是否一致,判断操作系统软件内核程序是否被修改。其中,操作系统可以设置成存储在引导程序存储单元20内,也可以设置成存储在不同于引导程序存储单元20的存储单元内;而本实施例中的操作系统可以是VxWorks,也可以是QNX或者自开发嵌入式操作系统等。通过对操作系统内核的检测,可以进一步确保整个核电厂仪控系统中关键程序的安全性。

另一方面,如图3所示,本实施例还提供一种核电厂仪控系统启动方法,该方法包括:

S301、读取引导程序:启动控制单元21从引导程序存储单元20中读取引导程序201;

S302、计算当前引导程序201对应的验证码:启动控制单元21中的校验电路212读取到引导程序201后,根据校验电路212内部的逻辑运算模块计算当前引导程序201对应的校验码;

S303、判断引用程序存储单元内引导程序校验码与计算得到的校验码是否一致:启动控制单元21中启动控制器201根据引导程序存储单元20内的引导程序校验码202与校验电路计算得到的校验码是否一致,判断引导程序是否被修改;如果不一致,执行步骤S304;如果一致,执行步骤S305;

S304、判定结果为当前引导程序被修改,提示用户,并阻止核电厂仪控系统继续启动;

S305、判定结果为当前引导程序未被修改,继续执行步骤S306;

S306、核电厂仪控系统启动装置继续启动。

优选地,上述方法还包括:启动控制单元21从引导程序存储单元20中读取引导程序201的过程中,校验电路212还读取到操作系统软件内核程序,并且根据校验电路212内部的逻辑运算模块计算当前操作系统软件内核程序对应的校验码,启动控制器201根据引导程序存储单元20内的操作系统软件内核校验码203与校验电路计算得到的校验码是否一致,判断操作系统软件内核程序是否被修改。

采用本实施例提供的上述启动方法,同样可以通过校验电路212检测引导程序和/或操作系统内核是否被恶意修改,而且通过硬件校验电路212能有效提高系统中引导程序校验的速度,缩短启动时间。

实施例二

实施例二在实施例一的基础上进一步对引导程序存储单元和启动控制单元进行优化,并且相同的单元/电路模块表示相同的含义,在本实施例的描述中不再重复解释。

如图4所示,本实施例提供的引导程序存储单元40中分别存储有主用引导程序401和备用引导程序402,即引导程序存储单元40设置有主用引导程序存储区域和备用引导程序存储区域;并且备用引导程序存储区域的地址与主用引导程序存储区域的地址之间对应的偏移地址为预先分配的固定地址,例如主用引导程序存储区域的地址为0xFF000100,那么备用引导程序存储区域的地址可以根据用户自己定义,设置成自动加上预定的偏移值;而引导程序校验码402和操作系统软件内核校验码403也可以按照与主用引导程序存储区域的地址之间对应的偏移地址为预先分配的固定地址。

优选地,启动控制单元41还设置有检测主用引导程序和/或备用引导程序是否异常的检查电路412;当检测电路412检测到主用引导程序401出错,且备用引导程序402正常时,启动控制单元41会自动根据预先定义的偏移地址计算出存放备用引导程序402的固定地址,并经数据线和地址线访问备用引导程序402以继续启动。

因此,启动控制单元41能自由选择主备引导程序,且提供可配置功能,允许配置备用引导程序的偏移地址,提高的系统的灵活性,同时节省分别存储在不同存储器上的空间和成本,即主用引导程序401和备用引导程序402可以存储在同一Flash内存中。

优选地,核电厂仪控系统启动装置还包括与启动控制单元41连接的处理器42,并且引导程序能够对处理器42和引导程序存储单元40进行自诊断。

优选地,启动控制单元41还设置有显示单元414,显示单元414在引导程序运行启动或者过程中发生错误时,显示错误对应的代码。进一步优选地,显示单元414通过点阵指示,一旦系统发生异常,则在点阵上显示错误码。

采用本实施例提供的上述进一步优选的技术方案,通过完善的自诊断和故障安全检测设计,可以更好地保证系统核电厂仪控系统的安全性和错误行为可预见性。

下面结合图5对本实施例提供的启动方法进行详细说明:

S501、读取引导程序:启动控制单元41从引导程序存储单元40中读取主用引导程序401;

S502、计算当前引导程序401对应的验证码:启动控制单元41中的校验电路412读取到主用引导程序401和/或备用引导程序402后,根据校验电路412内部的逻辑运算模块计算当前引导程序401对应的校验码;其中,可以设置成主用引导程序401和备用引导程序402采用相同的验证码,也可以采用不同的验证;系统启动时,还可以选择同时对主用引导程序401和备用引导程序402进行校验,或者分开对主用引导程序401、备用引导程序402进行校验;

S503、判断引用程序存储单元40内引导程序校验码403与计算得到的校验码是否一致:启动控制单元41中启动控制器401根据引导程序存储单元40内的引导程序校验码402与校验电路计算得到的校验码是否一致,判断引导程序是否被修改;如果不一致,执行步骤S504;如果一致,执行步骤S505;

S504、判定结果为当前引导程序被修改,提示用户,并阻止核电厂仪控系统继续启动;

S505、判定结果为当前引导程序未被修改,继续执行步骤S506;

S506、核电厂仪控系统启动装置继续启动,并执行步骤S507;

S507、判断主用引导程序是否出错,如果没有,执行步骤S508,如果有,执行步骤S509;

S508、判断主用引导程序的引导是否完成,如果是,执行步骤S513,否则,返回步骤S506;

S509、显示主用引导程序出错,并执行步骤S510;

S510、判断备用引导程序是否出错;如果没有,执行步骤S512,如果有,执行步骤S511;

S511、系统使用备用引导程序继续启动;

S512、显示备用引导程序出错;

S513、系统启动完成。

需要说明的是,步骤S503和S507中,还可以同时先对主用引导程序是否安全和/或存在错误(异常或者故障)进行判断,然后切换到备用引导程序时,对备用引导程序是否安全和/或存在错误(异常或者故障)进行判断;而不仅仅限于图5中的先后顺序。

优选地,该方法还包括:对启动控制单元41连接的处理器42和/或引导程序存储单元40进行自诊断。

实施例三

本实施例在上述实施例的基础上还增加了看门口电路615,并且相同的单元/电路模块表示相同的含义,在本实施例的描述中不再重复解释。

如图6所示,本实施例提供的核电厂仪控系统启动装置在上述实施例基础上,还包括与启动控制单元61连接的处理器62,启动控制单元61还设置有看门狗电路615和处理器复位电路(未示出),当引导程序存储单元60内引导程序被检测出现不能继续运行的错误时,且看门狗电路615达到预定时间后,通过处理器复位电路将处理器设置为持续复位状态,使处理器停止运行。

通过采用看门口电路对系统错误的监控,能够在引导系统崩溃(本领域技术人员亦称跑飞)的情况下,避免系统反复重启或进入其他未确定状态而造成误操作,提高系统的稳定性。

本实施例提供的核电厂仪控系统启动方法在上述实施例基础上,还包括:当引导程序存储单元60内引导程序被检测出现不能继续运行的错误的情况下,通过启动控制单元60内的看门狗电路615判断错误时间是否达到预定时间;如果是,通过处理器复位电路将处理器设置为持续复位状态,使处理器停止运行。

下面结合图7,对本实施例提供的核电厂仪控系统启动方法进行详细说明,该方法包括包括:

S701、核电厂仪控系统启动装置准备启动引导;

S702、看门狗电路上电,并检测核电厂仪控系统各个模块异常的时间是否达到预定值,并执行S703和S706;

S703、诊断处理器是否异常,并执行S704和S706;

S704、诊断内存是否异常,并执行S705和S706;

S705、关闭未使用到的硬件设备,并执行S706和S708;

S706、判断上述步骤的执行过程是否出现错误;如果是,执行步骤S707,如果不是,执行步骤S708;

S707、显示上述步骤中出现的错误,然后执行步骤S708;

S708,核电厂仪控系统启动装置准备启动完成。

采用上述技术方案,能够在引导系统崩溃(本领域技术人员亦称跑飞)的情况下,避免系统反复重启或进入其他未确定状态而造成误操作,提高系统的稳定性。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

最后需要说明的是,上述说明仅是本发明的最佳实施例而已,并非对本发明做任何形式上的限制。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围内,都可利用上述揭示的做法和技术内容对本发明技术方案做出许多可能的变动和简单的替换等,这些都属于本发明技术方案保护的范围。

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