核仪控设备接口自适应方法研究
2022-11-24李珏颖韩文兴原艳南
李珏颖,韩文兴,杨 诚,李 昂,原艳南
(中国核动力研究设计院核反应堆系统设计技术重点实验室,四川 成都 610213)
0 引言
在核反应堆领域,由于其特殊的核安全级需求,对仪控设备的性能及可靠性要求极为严格[1]。虽然近年来新建反应堆大多开始普及应用全数字化仪控设备,但在役核反应堆模拟仪控系统的数字化改造依然存在安全和运维等方面的难题,短时间内难以完全更新[2]。由于现有设备设计时的技术条件限制,其设计大多采用定制化非标形式,因而存在不同装置、卡件间未采用统一的设计规则,平台化、通用化程度不高,以及卡件功能及接口多样的问题。因此,在供货及维保测试中难以构建一致的测试标准,现有设备依然较为依赖人工使用专用工具进行测试,自动化程度较低。
自动化测试系统(automatic test system,ATS)已经成为电子行业提升测试效率的重要手段,逐步由专用系统向通用系统转变,可实现开放系统的可扩展测试[3]。但由于模拟化核仪控设备存在卡件功能及接口多样、接口定义各不相同、信号种类复杂多样的问题,在进行集成设计时难度较大。现有核仪控ATS设备大多使用测试主机外接信号接口机箱的方式[4]。测试主机一般基于面向仪器系统的外设组件互连标准(peripheral component interconect,extemsions for instrumentation,PXI)、紧凑型外设组件互连标准(compact peripheral conponent interconnect,CPCI)等标准硬件平台构建[5-6],集成输入/输出(input/output,I/O)多种信号通道。其接口机箱预留所有卡件的接口[7],对不同信号进行隔离、滤波等调理操作[8]。最终呈现的ATS设备通常组件数量众多、体积较大,难以满足现场测试的便携性要求。
为解决核仪控ATS设备小型化困难的问题,本文设计了1种基于总线式开关矩阵阵列的接口自适应方法,将传统体积巨大的测试接口机箱压缩至板卡级,实现了核仪控自适应测试设备的高度集成化和小型化。
1 便携式核仪控ATS设备介绍
便携式核仪控ATS设备组成如图1所示。
图1 便携式核仪控ATS设备组成
便携式核仪控ATS设备采用一体化设计。所有模块部件均集成在1个便携式机箱内部。设备由人机交互、逻辑控制、自适应接口等功能模块组成。人机交互模块采用嵌入式工业平板,通过触摸屏实现测试逻辑控制、人员操作及测试反馈等功能;逻辑控制模块采用现场可编程门阵列(field programmable gate array,FPGA)嵌入式控制器实现信号源、信号检测电路、阵列选择等功能的控制;自适应接口采用接口匹配矩阵实现不同板卡接口的自动识别和逻辑适配。
人机交互模块、逻辑控制模块等功能模块已具有成熟技术,集成度较高。自适应接口与具体待测试的卡件定义紧密相关。而模拟化核仪控设备卡件I/O接口需要矩阵阵列节点数较多,与外设组件互连标准(peripheral component interconnect,PCI)、CPCI等标准矩阵阵列兼容性较差,通常需大量板卡才能实现功能。因此,测试卡件匹配接口的小型化已成为便携式核仪控ATS设备集成设计的最大瓶颈。
2 总线式开关阵列设计
接口匹配开关阵列通常通过行列交叉的方式进行信号排列,由交叉点实现任意行与任意列之间的信号切换[9-10]。交叉排列方式分别以测试信号I/O接口与信号源/检测通道为横、纵坐标,通过在每个交叉点设置开关形成开关矩阵阵列。当某个开关导通时,该开关在矩阵阵列中所对应的信号及接口导通,实现该信号的I/O功能。
交叉排列方式的开关矩阵阵列控制逻辑简单明了,只需要单个开关即可实现一路具体信号通路的导通。
交叉排列开关阵列如图2所示。
图2 交叉排列开关阵列
开关阵列的开关数量由待测板卡的信号I/O接口数量与测试功能所需的信号源通道数量共同决定。在开关全覆盖情况下,任一I/O接口都需要与任一信号源通道通过开关相接。因此,交叉阵列排布开关总数量P1如式(1)所示。
P1=i×j
(1)
式中:i为I/O接口M的数量;j为信号通道N的数量。
当系统测试规模不大时,交叉排列的开关阵列已能满足大部分测试需求。但当测试规模较大、接口数量较多时,这种排布所需开关会达到惊人的数量级。
对测试逻辑进行具体分析可知,测试设备整体的测试内容是由所有卡件内部功能模块共同汇集而成。进行任意单一测试功能时,只会使用开关阵列中的部分相关信号功能,而开关阵列中的其他信号通路则处于闲置状态。
根据这一特点,本文设计了1种总线式的阵列排布方法,在开关阵列的排布时引入新的变量,即总线L。L的定义为在进行任意具体测试功能时所需的最大信号通路数量。
总线式开关阵列如图3所示。
图3 总线式开关阵列
在总线式排布设计中,I/O接口与信号源并不直接连接,而是分别通过开关挂载在总线上。测试开始时,根据具体项目定义所需若干总线的功能,将所需的信号接口与信号源分别与总线接通,实现具体信号的输入或输出。通过对不同卡件测试需求及测试功能的定制化分解,可将各待测卡件测试逻辑流程分解为串行进行的多个测试项。单个测试项仅包含1个独立的、定义单一的测试内容,使用时仅需对其所需的几个信号通道进行配置,从而控制卡件测试时所需的信号通道数量。而矩阵中的总线数量L与系统中最复杂、测试功能最多的1个测试项同时所需的信号通道数量一致。因此,在全覆盖的情况下,阵列开关数量P2如式(2)所示。
P2=(i+j)×k
(2)
比较式(1)和式(2)可知,在测试工作时同时占用的信号总线L的数量k与i和j相差不多的情况下,总线式阵列排布并不占优势。当i和j数量大量增加,与k存在较大差距时,交叉式排布所需开关数量P1将急剧增加,而总线式排布所需开关数量P2则受限于k,增长明显较少。总线数量与接口数量和信号源数量的差距越大,优势越明显。
以本设计为例,卡件连接器接口数量为160芯、各类卡件所需信号输出通道及检测通道合计42路,则采用交叉式阵列排布所需的开关总数将高达6 720个。而通过对具体测试功能的分解细化可知,不同输入卡件与输出卡件、模拟接口卡件与数字接口卡件各自所需的信号通路均可以复用总线,因此得到测试所需的最大总线数量为9个,采用总线式阵列排布所需的开关总数仅需1 818个,开关数量较交叉式排布减少72.9%。
3 自适应接口设计
3.1 电子开关矩阵组合
在进行可切换开关矩阵设计时,继电器和电子开关均能实现信号切换功能。在早期,由于电子开关通道阻抗较大、承载电压较低[11],对开关矩阵的通过性能影响较大,因此继电器阵列在设计中应用更多。随着技术的进步,电子开关的性能瓶颈已逐渐突破,其在体积、响应速度、使用寿命等方面相较继电器优势更加明显,设计中的应用也逐渐增多。元器件性能对比如表1所示。
表1 元器件性能对比
本设计选用MAXIM公司MAX46xx系列四通道SPST型互补金属氧化物半导体(complementary metal oxide semiconductor,CMOS)模拟开关。该型开关通道阻抗低至1.25 Ω,避免了普通开关高阻抗带来的通道压降、信号衰减等问题。MAX46xx承载电压高达44 V,开关连续工作电流达200 mA,具有常开、常闭等多种开关型号,能够满足绝大部分测试信号的使用性能要求。
对于测试中所需的高电压、大电流等少量特殊信号,开关矩阵单独选用大电流继电器进行功能实现。通过大量电子开关加少量继电器的开关矩阵组合形式,开关矩阵在保证功能性的同时实现了高速、小体积的矩阵设计。
3.2 级联锁存驱动设计
在开关矩阵的控制功能上,使用独立I/O接口控制不同开关虽然可以实现矩阵状态的灵活配置,但动辄上千个开关的矩阵阵列极度耗费主控芯片的I/O接口资源,无论从选型还是成本上均不建议使用。本设计中,采用MAX7301通过级联式锁存驱动方式实现了I/O接口的扩展。
MAX7301使用标准的4线制串行外设接口(serial peripheral interface,SPI)总线或集成电路(inter-integrated circuit,I2C)总线可实现最多28路的I/O接口扩展,支持推挽式逻辑输出、施密特逻辑输入或带内部上拉的施密特逻辑输入。设计采用菊花链拓扑连接形式实现芯片的级联。主控芯片通过一路SPI总线的数据接口连接MAX7301的DIN端口实现控制信号的写入,再将MAX7301的DOUT端口接入下一块芯片的DIN端口。通过这种级联方式,当输入状态信息超过第一块芯片的28个状态时,状态信息将直接传递写入第二块芯片的对应引脚。SPI总线就可直接串行给出多个芯片的I/O接口状态数据,通过高低位控制不同芯片的输出状态。
以此类推,设计可实现多至16片芯片的级联。各芯片采用同一个SCLK时钟信号,保证配置信息读写操作的同步性。CS片选信号独立,可实现单个芯片的配置。仅片选单一芯片时,该芯片单独执行写操作,其余芯片接收空指令。在片选多块芯片时,写操作通过级联端口依次传递,实现多块芯片的同步配置。MAX7301的级联如图4所示。
图4 MAX7301的级联
本文设计通过将设备控制逻辑划分为不同的功能分区,使功能一致、控制同步、相关性高的开关控制逻辑放在同一分区中。FPGA使用1路SPI总线实现1个功能分区的控制。FPGA采用级联的锁存信号驱动方式,通过FPGA的5个I/O接口设置为SPI总线接口,即可控制2片MAX7301实现56个通用I/O接口的扩展,最终FPGA通过不到50个I/O引脚实现了近2 000个开关的独立扩展控制,减少了FPGA芯片90%以上的引脚资源消耗。
3.3 检测目标特征识别设计
要实现同一接口适配不同待测卡件的功能,接口矩阵需根据不同卡件的接口定义进行实时配置。而现有核仪控设备卡件由于设计过程中的独立性,在供电引脚上没有统一标准。因此,如果使用了错误的接口配置,可能会导致卡件的严重损坏。
由于卡件对信号互联采用了冗余设计,部分连接器端点存在A/B面引脚并联同一信号的情况。因此,可将连接器并联引脚的位号作为板卡的特征点进行检测。通过开关矩阵的控制,将对应位号的A引脚与DO通道连接,B引脚与AI通道连接。若AI通道检测到对应DO输出的电压,则该点位特征值为1;否则,特征值为0。通过多个特征点的共同判断,即可确定板卡唯一的特征值,从而实现板卡类型的自动识别,避免插错插件、选错程序等失误。部分卡件特征值如表2所示。例如,特征值10100仅唯一代表卡件B。
表2 部分卡件特征值
当检测到板卡插入设备时,开关矩阵切换不同的总线接口,对设定的所有特征点通道进行循环检测,从而得到当前板卡的特征值;再将检测的特征值与预设的卡件特征值进行比较,就可唯一确认当前板卡的具体类型,从而达到自动识别的目的。
卡件接口自动识别流程如图5所示。核仪控ATS设备通过卡件插槽内置的接近开关判断当前是否有卡件插入测试接口。当开关触发时,代表有卡件插入插槽,开关矩阵按特征值识别的要求进行置位。自动识别功能按所有特征点位进行循环检测。当检测值与具体某型卡件的设定值一致时,识别为某型卡件。同时,在人机界面中显示识别结果,由用户进行最终确认。当确认结果一致时,软件直接调用对应开关矩阵的配置,开启具体测试程序。当用户确认与自动识别结果不一致时,软件报错提示用户再进行确认。如卡件特征值循环检测结果与预置特征值均不相符,则程序超时退出,由软件报错提醒用户确认卡件是否存在异常。
图5 卡件接口自动识别流程图
4 测试设备实现
目前,业界可实现的高密度PXI开关矩阵模块可在160 mm×100 mm大小的单张3U板卡上实现256个开关点。若采用交叉式排列方式,配置16×12的组合模式,则至少需要40张板卡才能实现本设计所需的160×42路开关规模。通过本设计中总线式开关阵列排布方式,也需要至少13张板卡才能实现9路总线配置下的1 818个开关矩阵规模。故在核仪控ATS设备中,需单独配置1台标准14槽3U机箱作为接口适配机箱。机箱尺寸一般不少于482.6 mm×257.8 mm×177 mm。因此,测试设备的小型化基本无从谈起。
本文设计采用的开关矩阵在单张板卡上排列了230个4通道开关,实现了920个开关点,采用2张接口板卡叠放排布的方式, 仅需200 mm×230 mm×40 mm的空间即可满足接口设计所需。将接口板卡与FPGA控制模块、触摸屏等模块共同集成设计,最终实现便携式测试设备尺寸为340 mm×300 mm×120 mm,与1台加固笔记本类似。
5 结论
本文设计了1种基于总线式接口矩阵的接口自适应方法,通过总线式开关排布、电子开关组合矩阵、级联锁存驱动设计等手段,大大减少了匹配接口设备的体积;同时,采用目标特征识别的方案,实现了不同卡件的自动识别,提升了自适应接口的安全性和可靠性。该方法解决了自动测试设备接口匹配模块的集成化和小型化难题,实现了便携式核仪控ATS设备设计。