国产电站控制计算机内存校验方法优化

2022-01-05 18:22:04李万辉
仪器仪表用户 2021年12期
关键词:板卡计算机系统校验

李万辉

(中核核电运行管理有限公司,浙江 海盐 314300)

0 引言

电站控制计算机系统是重水堆核电站主回路控制系统,其采用典型计算机架构构成集中式控制系统。为提高控制可靠性,重水堆电站控制计算机系统采用双机冗余设置,其中主控机称为X计算机[1,2],而热备机则称为Y计算机,二者之间通过继电器执行整体或部分的控制转移,以实现电站控制计算机系统的冗余切换,确保机组的稳定运行。

重水堆电站控制计算机系统由加拿大CAE公司设计生产,因设计较早,元器件停产导致的设备断供问题日渐突出,且随着国际环境的复杂化,备件供应的可靠性问题已经开始影响电站控制计算机系统的运行。为解决上述问题,确保电站控制计算机系统的长期可靠运行,2018年3月启动,电站控制计算机系统的国产化工作正式启动。

电站控制计算机内存数据校验采用16位汉明码构建ECC(Error Check and Correct,下同)校验回路,可实现一位数据错误的自动纠错,对于出现的两位或更多位数据错误,则不能进行有效检验和纠正,仅向Processor发送内部中断“Parity Error”[1],使相应电站控制计算机重启或死机,对机组安全运行造成影响。梳理自投运以来,电站控制计算机系统历史缺陷,确认因内存数据校验错误而造成相应计算机系统重启或停机的故障至少3次。因此,有必要在电站控制计算机系统国产化工作中就内存数据校验方法进行优化。

1 优化方案

国产电站控制计算机系统研发技术方案采用FPGA等可编程芯片,以柔性化其硬件设计,消除原设计不足或隐患,摆脱对特定元器件的依赖,有助于提高国产器件的应用,达成相应设备的完全知识产权。相较于较早的单功能芯片、PAL芯片、PLD芯片等,FPGA具有更多更高处理能力的资源,可在兼容原系统接口的情况下对电站控制计算机内存数据校验进行优化加强,降低数据校验异常对电站控制计算机系统的影响。

1.1 方案思路

电站控制计算机系统主时钟为8MHz,国产电站控制计算机系统运行时钟为200MHz,因此电站控制计算机系统一个内存存取的操作,国产计算机系统可执行25次。因而在不改变控制功能的情况下,国产电站控制计算机系统足以执行更复杂的数据校验运算,由此考虑采用ECC校验及CRC16校验联合的方式作为国产电站控制计算机系统内存数据的校验方式,即首先通过ECC校验回路对写入或读取自内存的数据进行检查,当无数据错误或可由ECC校验回路自动纠错的一位数据错误时,CRC16校验纠错回路不工作;当待校验数据出现两位或以上数据错误时,ECC校验回路不能执行纠错功能,此时CR16C校验纠错回路开始执行对数据的校验和纠错工作;若CRC16校验纠错回路仍不能完成错误数据的校验和纠正,则发出相应的数据校验错误的信号,使得电站控制计算机重新启动。由上述,绘制优化方案的流程图如图1所示。

根据绘制的流程图,结合国产电站控制计算机的设计,着手对优化方案进行分析和构建。

1.2 优化方案分析和实现

1.2.1 优化方案分析

构建国产电站控制计算机内存数据校验优化方案前,首先对原电站控制计算机内存板卡中ECC校验回路进行分析。图2为电站控制计算机内存板卡的框图,其中红色框模块即构成ECC校验回路,其包括PARITY GEN模块、ERR CORRECT模块以及ECC STATUS模块。IB+[0…15]为内存板卡内部总线,MB-[0…22]为Memory总线。

以写入内存为例,简单分析一下电站控制计算机内存数据ECC校验流程。来自CPU或其他设备的待校验 数 据MB00-~MB15-经DATA XCVRS模 块 生 成 信号IB00+~IB15+并进入内存板卡内部总线IB+[0…15],IB00+~IB15+经PARITY GEN模块进行汉明校验,生成校验状态信号“PERR00~PERR05+”。校验后的数据经ERR CORRECT模块后,并再次送上内部总线IB,生成最终写入内存的数据“IB00+~IB15+”。同时,校验状态信号“PERR00~PERR05+”经ECC STATUS模块生成校验特征信息“EO00+~EO15+”(Error Syndrome),并经Memory IO Interface模块送入Processor板卡,存入Error Register,作为CPU运行检查的标志位信息之一。上述校验特征信息“EO00+~EO15+”中的“EB06+”定义为数据校验出现两位错误的标志位,即“ECC_DBE”信号(DBE即Double Bits Error)。

基于汉明校验能自动纠正一位数据错误,能发现全部两位数据错误但不能进行纠正,以及能发现大多数两位以上数据错误的特点。可知在电站控制计算机运行期间,当有数据(待校验数据)需要写入内存时,这些待校验数据在无错误或仅有一位数据错误的情况下,经该校验回路最终写入内存的是正确数据,此时电站控制计算机运行不受影响。若待校验数据在传输过程中出现两位或两位以上的错误,因ERR CORRECT模块不能实现多于一位数据错误的纠正,此时写入内存的数据就是错误的,若电站控制计算机仍然使用这些错误的数据,则会导致控制异常,这是电站控制计算机不应出现的情况。为避免出现这种情况,电站控制计算机执行重启操作,其重启信号来源即内部中断“Parity Error”,由数据校验特征码中“EO06+”信号(“ECC_DBE”信号)经Memory IO Interface模块后,在Processor板卡中产生。

电站控制计算机采用汉明校验结合内部中断的机制有效避免了出现控制异常的情况,但也引入了较多的内部中断,使得计算机本身运行受到一定影响,进而影响到机组的稳定运行。由此,从提升电站控制计算机运行稳定性的角度考虑,对原数据校验回路进行优化,优化重点在于对待校验数据进行复核校验并对两位数据错误进行纠正,对两位以上数据错误则认为硬件故障,要求电站控制计算机系统重启或停机。

从数据传输中数据错误的概率角度考虑,出现一位数据错误的概率要远高于出现两位甚至两位以上数据错误的概率,因此为保持电站控制计算机内存数据校验的高效性,仍选择将原ECC校验回路作为主数据校验回路,仅在ECC校验不能自动纠错的情况下才允许系统进行CRC16校验。如此设计,能确保电站控制计算机系统既能维持高效安全运行,又能减少原两位或两位以上数据错误需要重启的次数,提升系统运行的稳定性。同时,考虑到数据保真的重要性,新增CRC16校验回路必须和ECC校验回路同时接收数据,且因CRC16校验仅在ECC校验不能完成纠错的情况下才能启动CRC16校验,故需要考虑在CRC16校验回路中增加数据暂存环节。若CRC校验需启动,则暂存的待校验数据输出至CRC16校验回路进行校验;CRC16校验不需启动,则暂存的待校验数据被后续数据覆盖。

由上述即可确定完整的优化方案,该方案结构框图如图3所示。在该结构框图中,ECC Logic为电站计算机系统内存板卡采用的ECC校验回路,圆角方框内为优化方案新增逻辑部分,其中新增CRC16校验纠错回路与原电站控制计算机ECC校验回路并接,使得两个数据校验回路能同时接收待校验数据。新增仲裁回路(Judge Module),用于选择最终输出ECC校验数据还是CRC16校验数据。将原电站控制计算机ECC校验回路作为主数据校验回路,切断其送往Processor板卡触发“Parity Error”内部中断的“ECC_DBE”信号通路,转而将之作为新增CRC16校验纠错回路的使能信号和仲裁回路的选择信号;新增CRC16校验纠错回路中CRC16校验码添加模块CRC_ADDER和数据暂存模块CRC_RAM,用于为接收到的待校验数据添加校验码,并暂存添加校验码后的数据。

优化方案的详细工作流程如图1所示,即当电站控制计算机系统需要对内存进行数据读取/写入时,相应数据同时送入ECC校验回路和CRC16校验纠错回路。此时,因ECC校验回路始终导通,待校验数据总是能够被其直接处理,而CRC16校验纠错部分(CRC_Verification Correct)受ECC校验回路的校验状态信息“ECC_DBE”信号控制,因此其校验码添加回路(CRC_Adder)在收到待校验数据添加校验码并存入数据暂存区(CRC_RAM)后,不能直接进行校验纠错,而是等待ECC校验回路的校验状态信息“ECC_DBE”信号。若ECC校验无误或仅有一位数据错误时,其校验状态信息“ECC_DBE”信号无效,校验后的数据(ECC_DATA)经仲裁回路输出作为最终数据;若ECC校验出现两位或两位以上错误时,其校验状态信息ECC_DBE信号有效,CRC校验纠错回路开始工作。对于两位数据错误,CRC16校验纠错回路直接纠正,纠错后的数据(CRC_DATA)经仲裁模式输出作为最终数据;对于超过两位数据错误的情况,CRC校验纠错回路将不能进行纠错,而是产生“Data Error”信号,该信号将替代原内存校验中的ECC_DBE信号,作为国产电站控制计算机内部中断信号“Parity Error”信号的产生源。需要特别说明的是,标准CRC16校验回路仅能校验而不能纠错,优化方案采用标准CRC16校验回路和分段增距汉明码相结合的CRC16校验纠错回路。

1.2.2 优化方案的实现

国产电站控制计算机采用可编程器件如FPGA、CPLD等进行设计,Verilog作为硬件编程语言,这样既可以规避进口器件的限制,实现完全知识产权的国有化,又可以柔性化设计,精细调整和规整电站控制计算机系统重要信号,消除原设计隐患,提升国产电站控制计算机系统运行可靠性。

可编程器件,特别是FPGA等,当前应用越来越广泛,芯片制造商和用户也提供越来越多标准化开源编码和数据库,方便用户使用。就国产电站计算机内存数据校验优化方案使用的编码而言,ECC校验、CRC16校验以及汉明码校验纠错等均有开源编码,且基于篇幅限制,这里不再编列,有兴趣的读者可从网上查询。

将优化方案编码整合、编译、仿真和精调后,可得到新增回路部分的等效电路图如图4所示。

2 国产电站控制计算机内存数据校验优化方案的验证

基于运行安全考量,新设计的国产电站控制计算机必须经过严格苛刻的测试、认证和长期试运行考验,国产电站计算机内部板卡属于国产化设计的一部分,也必须同国产电站控制计算机一起进行测试和考验。国产电站控制计算机测试包括长期可靠性测试和特殊工况测试。长期可靠性测试即配置两套国产电站控制计算机(计算机X和计算机Y),两者均连接至一台现场设备模拟机。现场设备模拟机根据历史日志模拟现场系统或设备的运行状态信息(模拟量输入AI和数字量输入DI)并送入国产电站控制计算机X和电站控制计算机Y中,国产电站控制计算机系统根据上述模拟信号执行控制程序,输出相应的控制信号(模拟量输出AO和数字量输出DO)。现场模拟机记录国产电站控制计算机的控制输出信号,并与历史实际运行状态进行比较,以检验国产电站控制计算机的控制功能和效果。长期可靠性测试将不间断进行1年半至2年时间,以此验证国产电站控制计算机系统长期运行的可靠性。特殊工况测试即现场模拟机模拟远超正常工况的现场设备运行状态(如主泵振动高、幅度大、变化快等),此时检查验证国产电站控制计算机系统的合理响应,如模拟要求停运异常状态的泵、降功率,甚至触发机组停堆停机操作等。

为验证国产电站控制计算机系统内存数据校验优化方案的可靠性和稳定性,特别准备两种不同配置的国产电站控制计算机内存板卡,即不执行优化方案的内存板卡(I型)和执行优化方案的内存板卡(II型)。将I型内存板卡安装于国产电站控制计算机X中,II型内存板卡安装于国产电站控制计算机Y中,二者接受相同的现场模拟机信号,执行相同的工作,记录并比对二者运行情况和控制差异,以验证上述优化方案的可行性和可靠性。

按照计划,国产电站控制计算机系统测试阶段从2021年5月1日开始执行,2022年12月31截至,验收标准为至少半年时间内国产电站控制计算机X和Y运行平稳,无停机和重启事件发生。因II型内存板卡安装在国产电站控制计算机Y中,故上述内存数据校验优化方案测试时间窗口和验收标准将与国产电站控制计算机测试窗口和验收标准一致。国产电站控制计算机自2021年5月30日开始执行调试和长期可靠性测试,至今未见异常情况,这也意味着优化后的II型内存板卡至目前运行情况良好。

后续在国产电站控制计算机测试无异常的情况下,2023年正式走设计变更流程,将优化方案正式列入新设计中;测试异常则利用FPGA技术的特点,对优化方案进行编程优化调整,后续再执行相应设计变更。

3 结束语

电站控制计算机系统是重水堆电站主回路的控制核心,确保其设备的平稳性和备件供应的可靠性是确保电站长期稳定运行的必要条件,因此在当前国际环境下,摆脱对国外供货商的依赖,解决“卡脖子”问题的工作是迫在眉睫的,对电站控制计算机系统进行国产化是目前唯一的出路,而优化原设计,提升国产设备的可靠性更是该项工作的重中之重,不但利于后期机组的长期稳定可靠运行,也对后续其他设备国产化工作起到十分积极的促进作用。

猜你喜欢
板卡计算机系统校验
IBM推出可与人类“辩论”的计算机系统
英语文摘(2019年3期)2019-04-25 06:05:32
基于PCI9054的多总线通信板卡的研制
测控技术(2018年3期)2018-11-25 09:45:46
基于FPGA的多通道模拟量采集/输出PCI板卡的研制
测控技术(2018年12期)2018-11-25 09:37:42
炉温均匀性校验在铸锻企业的应用
分布处理计算机系统研究
一种基于光纤数据传输的多板卡软件程序烧写技术
MIMD 并行计算机系统结构与定量分析
大型电动机高阻抗差动保护稳定校验研究
电测与仪表(2015年1期)2015-04-09 12:03:02
基于加窗插值FFT的PMU校验方法
锅炉安全阀在线校验不确定度评定