基于序列触发拍照的火工品时序测试装置的制作方法

文档序号:12717047阅读:180来源:国知局
基于序列触发拍照的火工品时序测试装置的制作方法
本发明涉及导弹与运载火箭控制系统设备设计,特别涉及基于序列触发拍照的火工品时序测试装置。
背景技术
:以下对本发明的相关技术背景进行说明,但这些说明并不一定构成本发明的现有技术。火工品是一种小型化的敏感的引爆能源,在常规武器弹药、战略导弹、核武器及航空航天系统等军事工程中广泛应用。火工品引爆控制,一般通过继电器开关或其他开关控制电源接通并施加在火工品回路上。火工品时序一般指导弹武器、运载火箭在发射、飞行过程中需要依次引爆的火工品的控制顺序。火工品时序控制在导弹与运载火箭系统中拥有举足轻重的作用,影响飞行成败,所以,在导弹与运载火箭射前测试控制以及飞行过程中,需要对火工品及其控制电路进行测试,前者用以快速准确的确定火工品通路是否满足发射要求,后者主要用于飞行数据分析。火工品控制时序一般为具有特定时间次序、脉宽(如100ms、200ms)开关量,其主要被测试信息为时序的开始时间、结束时间及时序宽度。一般的检测方式是通过预处理电路检测出开关量信号(一般为方波信号),后对方波信号进行时间信息检测。传统检测方式是弹(箭)上先实现信号预处理,后送地面测试系统设备进行测试。地面的测试方式是:先通过地面数传控制模块扫描(一次选通一路时序)弹上预处理结果,如果有信号,则将该信号选通送至地面测时测频模块,进而完成时序的开始时间、结束时间及宽度的测量。传统测试方法的主要不足是:⑴测试功能的实现依附的弹(箭)、地设备多且体积大,随着火工品时序路数的增加,系统扩展复杂;⑵测试并行度不高,通过扫描、选取测试,一次只能测一路,测试效率低、实时性不高;⑶由于测试系统弹(箭)、地长线连接、构成复杂,通过周期扫描采样的频率不高,测试精度不高,约50ms左右。技术实现要素:本发明的目的在于提出基于序列触发拍照的火工品时序测试装置,能够直接集成在弹上设备中,体积小、测试快、精度高、易扩展,可有效提高导弹与运载火箭火工品时序的测试性能。本发明基于序列触发拍照的火工品时序测试装置,包括:端口输入滤波模块、端口拍照采样模块、比较控制逻辑模块、寄存器模块、计时器模块、FIFO写逻辑模块、FIFO存储器模块、时钟分频模块和读写控制模块;其中,读写控制模块接收外界输入的操作指令;时钟分频模块根据外部的操作指令将输入时钟Clk_In分频成至少两个时钟;所述至少两个时钟包括Scan_Clk和Sys_Clk,Scan_Clk输出至端口输入滤波模块,Sys_Clk输出至火工品时序测试装置的除端口输入滤波模块之外的其他模块;端口输入滤波模块将各个时序测量端口的时序滤波后输出至端口拍照采样模块,端口拍照采样模块并行获取所述时序测量端口的当前端口状态并发送至比较控制逻辑模块;比较控制逻辑模块接收到所述时序测量端口的当前端口状态后,查询寄存器模块中寄存的所述时序测量端口的上次端口状态;若所述时序测量端口的当前端口状态与上次端口状态不同,生成锁存信号,将所述锁存信号以及所述时序测量端口的当前端口状态发送至FIFO写逻辑模块;FIFO写逻辑模块接收到所述锁存信号后,锁存计时器模块的计时器数值,将所述计时器数值和所述当前端口状态写入FIFO存储器模块,并用所述火工品时序测量端口的当前端口状态更新寄存器模块中寄存的所述上次端口状态。优选地,时钟分频模块采用计数分频;Clk_In、Scan_Clk和Sys_Clk的时钟相位相同。优选地,端口输入滤波模块采用计时滤波法;若所述时序测量端口的当前端口状态与上次端口状态不同,控制模块启动基于Scan_Clk的滤波计数器:滤波计数器的初始值为0;当滤波计数器的计数值未达到滤波设定值时,端口输入滤波模块滤除所述时序测量端口的端口状态变化;当滤波计数器的计数值达到滤波设定值时,端口输入滤波模块输出所述时序测量端口的当前端口状态。优选地,计时器模块以Sys_Clk为计时器时钟源;计时器模块的计时位宽M满足如下关系:式中,L为计时长度,单位为h;Tshort为Sys_Clk的计时周期,单位为μs;表示向上取整函数。优选地,所述至少两个时钟进一步包括:Syn_Clk_In,且Syn_Clk_In的计时周期大于Sys_Clk的计时周期;计时器模块包括两个计时器,其中一个以Syn_Clk_In为计时器时钟源,用于高位字节粗计时,另一个以Sys_Clk为计时器时钟源,用于低位字节精计时;Syn_Clk_In和Sys_Clk的初始计时值为0;当Syn_Clk_In有效计时沿未到时,由Sys_Clk时钟进行低位精计时,当Syn_Clk_In有效计时沿到达时,低位字节精计时值清0,高位字节粗计时值加1。优选地,计时器模块的计时位宽M满足如下关系:M=M1+M2式中,L为计时长度,单位为h;M1为Syn_Clk_In的计时器位宽,M2为Sys_Clk的计时器位宽;Tlong为Syn_Clk_In的周期,单位为s;Tshort为Sys_Clk的周期,单位为μs;Δ1为Syn_Clk_In的计时余量,单位为s;Δ2为Sys_Clk的计时余量,单位为μs;表示向上取整函数。优选地,FIFO写逻辑模块包括:位宽变换单元和FIFO写控制器;位宽变换单元接收到所述锁存信号后,锁存计时器模块的计时器数值,根据FIFO存储器模块的存储位宽将所有时序测量端口对应的所述计时器数值和所述当前端口状态拼接成y个字节,并将所述y个字节发送至FIFO写控制器;其中,y为正整数,每个字节的位宽与FIFO存储器模块的存储位宽相等;FIFO写控制器将接收的所述y个字节写入FIFO存储器模块,并用所述火工品时序测量端口的当前端口状态更新寄存器模块中寄存的所述上次端口状态。优选地,位宽变换单元进一步用于:当(N+M)不是Q的整数倍时,在拼接前进行高位补0,使(N+M)是Q的整数倍;其中,N为时序路数,M为计时器模块的计时位宽,Q为FIFO存储器模块的存储位宽。优选地,FIFO写控制器包括一个Moore型FIFO写状态机和一个(N+M)位移位缓冲寄存器。根据本发明基于序列触发拍照的火工品时序测试装置,通过端口输入滤波模块、端口拍照采样模块和比较控制逻辑模块并行监测火工品时序测量端口的状态变化,若时序测量端口的当前端口状态与上次端口状态相同,则继续端口监测;否则,锁存计时器模块的计时器数值,将计时器数值和当前端口状态写入FIFO存储器模块,并用火工品时序测量端口的当前端口状态更新寄存器模块中寄存的上次端口状态;通过时钟分频模块调整时序测量端口的时钟频率、通过端口输入滤波模块进行滤波补偿,可以任意调整调整火工品时序时间测量装置的测量精度;通过调整计时器模块的计时位宽,可以实现系统预期的计时长度要求。本发明的火工品时序测试装置体积小、测试快、精度高、易扩展,能够直接集成在弹上设备中。附图说明通过以下参照附图而提供的具体实施方式部分,本发明的特征和优点将变得更加容易理解,在附图中:图1是本发明优选实施例中火工品时序测试装置的结构示意图;图2是本发明优选实施例中FIFO写控制器的状态转移示意图。具体实施方式下面参照附图对本发明的示例性实施方式进行详细描述。对示例性实施方式的描述仅仅是出于示范目的,而绝不是对本发明及其应用或用法的限制。如图1所示,本发明基于序列触发拍照的火工品时序测试装置,包括:端口输入滤波模块、端口拍照采样模块、比较控制逻辑模块、寄存器模块、计时器模块、FIFO写逻辑模块、FIFO存储器模块、时钟分频模块和读写控制模块;其中,读写控制模块接收外界输入的操作指令;时钟分频模块根据外部的操作指令将输入时钟Clk_In分频成至少两个时钟;该至少两个时钟包括Scan_Clk和Sys_Clk,Scan_Clk输出至端口输入滤波模块,Sys_Clk输出至除端口输入滤波模块之外的其他模块;端口输入滤波模块将各个时序测量端口的时序滤波后输出至端口拍照采样模块,端口拍照采样模块并行获取所述时序测量端口的当前端口状态并发送至比较控制逻辑模块;比较控制逻辑模块接收到所述时序测量端口的当前端口状态后,查询寄存器模块中寄存的所述时序测量端口的上次端口状态,如图1中的P_Data0;若所述时序测量端口的当前端口状态P_Data1与上次端口状态不同,生成锁存信号,将所述锁存信号以及所述时序测量端口的当前端口状态发送至FIFO写逻辑模块;FIFO写逻辑模块接收到所述锁存信号后,锁存计时器模块的计时器数值,如图1中的T_Data,将所述计时器数值和所述当前端口状态写入FIFO存储器模块,并用所述火工品时序测量端口的当前端口状态更新寄存器模块中寄存的所述上次端口状态。本发明可以并行监测多个火工品时序测量端口的状态变化,时序路数可以根据所需消耗的寄存器资源、时钟资源和组合逻辑资源总需求进行选择。为了提高火工品时序测试装置的测量稳定性和可靠性,在设置时序路数时,可以使火工品时序测试装置留有一定的资料余量,例如留有至少20%的资料余量。时钟分频模块可以采用计数分频方式。例如,采用减一计数器,由上位机通过读写控制模块改写该计数器值,实现对输入时钟Clk_In的多路分频,形成供火工品时序测试装置内部各功能模块使用的同相位、不同频率的时钟。通过时钟分频模块调整时序测量端口的时钟频率,可以任意调整调整火工品时序测试装置的测量精度。Sys_Clk频率越高,测量精度越高,但是过大的频率不仅会增加装置的资源消耗,还会影响数据读取的稳定性。因此,在满足系统测试精度和数据读取速度的要求下,可以尽量选择频率低的可靠晶振:①在测试精度方面:设Sys_Clk时钟周期为T1,如要求时序测试精度不低于0.5ms,则测试数据生成时间(即“计时器模块”计时时钟周期T1,加上“计时器模块”时间锁定周期(含锁定前的比较判断时间)(n×T1),加上写FIFO时间(m×T1))应小于0.5ms,即T1+n×T1+m×T1=(1+n+m)×T1小于0.5ms,本例中n取2,m取20,故T1小于0.5/23ms,即频率高于46kHz;②在数据存取速度方面:如要求火工品测试数据写入时间(本例中,写入一个字节进入FIFO需要2个T1周期)略高于系统读取该数据(即读取FIFO数据)时间、系统取存测试数据的时间为4us,则2×T1小于4us,则T1小于2us。综合①、②,并留有一定余量,可以选择1MHz有源晶振,即T1为1us。Scan_Clk的周期越小,火工品时序测试装置的测试分辨力越高,但是周期越小,装置的资源消耗越高,数据读取的稳定性也会降低。应根据时序测试分辨力要求,确定Scan_Clk的周期。例如,若要求时序测试分辨力不小于10us,则Scan_Clk周期应小于10us。Clk_In周期应不大于min{Sys_Clk周期,Scan_Clk周期,其他时钟周期},考虑减少逻辑资源消耗、元器件统一选型及器件成熟度等要求,Clk_In周期可以设定Clk_In、Scan_Clk和Sys_Clk的时钟周期相同,例如都设置为1us,即选用1MHz的有源晶振作为可编程逻辑器件的外部时钟输入。在一些实施例中,端口输入滤波模块采用计时滤波法。若时序测量端口的当前端口状态与上次端口状态不同,控制模块启动基于Scan_Clk的滤波计数器:滤波计数器的初始值为0;当滤波计数器的计数值未达到滤波设定值时,端口输入滤波模块滤除所述时序测量端口的端口状态变化;当滤波计数器的计数值达到滤波设定值时,端口输入滤波模块输出时序测量端口的当前端口状态。例如,滤波计数器的计时位宽为8,初始值为0,计时器时钟为Scan_Clk(周期为T1),可实现[0,(28-1)×T1]范围内时长的滤波,本例选定滤波时间长度为127us(对应计数值为127))。在Scan_Clk的每个采样周期下,采用异或判定法,当发现端口状态(与“上一次(初始)端口状态”比,下同)变化时,启动滤波计数器,当计数器值达到127时,确认端口状态变化,并输出该端口状态;如果计数器值未达到127时,端口状态变化消失,则滤除该变化,并维持原输出状态。计时器模块可以仅以Sys_Clk为计时器时钟源。通过调整Sys_Clk的计时周期,可以任意调整计时器模块的计时精度;通过调整Sys_Clk的计时位宽,可以实现系统预期的计时长度要求。计时器模块的计时位宽M满足如下关系:式中,L为计时长度,单位为h;Tshort为Sys_Clk的计时周期,单位为μs;表示向上取整函数。本发明中,时钟分频模块形成的所述至少两个时钟可以进一步包括:Syn_Clk_In,且Syn_Clk_In的计时周期大于Sys_Clk的计时周期。计时器模块包括两个计时器,其中一个以Syn_Clk_In为计时器时钟源,用于高位字节粗计时,另一个以Sys_Clk为计时器时钟源,用于低位字节精计时。Syn_Clk_In和Sys_Clk的初始计时值为0;当Syn_Clk_In有效计时沿未到时,由Sys_Clk时钟进行低位精计时,当Syn_Clk_In有效计时沿到达时,低位字节精计时值清0,高位字节粗计时值加1。以Syn_Clk_In进行高位字节粗计时、以Sys_Clk进行低位字节精计时,通过调整Syn_Clk_In和Sys_Clk的计时周期,可以任意调整计时器模块的计时精度;通过调整Syn_Clk_In和Sys_Clk的计时位宽,可以实现系统预期的计时长度要求。优选地,计时器模块的计时位宽M满足如下关系:M=M1+M2式中,L为计时长度,单位为h;M1为Syn_Clk_In的计时器位宽,M2为Sys_Clk的计时器位宽;Tlong为Syn_Clk_In的周期,单位为s;Tshort为Sys_Clk的周期,单位为μs;Δ1为Syn_Clk_In的计时余量,单位为s;Δ2为Sys_Clk的计时余量,单位为μs;表示向上取整函数。在图1示出的优选实施例中,FIFO写逻辑模块包括:位宽变换单元和FIFO写控制器;位宽变换单元接收到锁存信号后,锁存计时器模块的计时器数值,根据FIFO存储器模块的存储位宽Q将所有时序测量端口对应的计时器数值和当前端口状态拼接成y个字节,并将所述y个字节发送至FIFO写控制器;其中,y为正整数,每个字节的位宽与FIFO存储器模块的存储位宽Q相等;FIFO写控制器将接收的所述y个字节写入FIFO存储器模块,并用火工品时序测量端口的当前端口状态更新寄存器模块中寄存的上次端口状态。例如,当N+M=72、存储位宽为8时,将所有时序测量端口对应的计时器数值和当前端口状态的每8位为一组作为一个字节,拼接成9个字节,从低位到高位每个字节依次记为Byte0、Byte1、……、Byte8),拼接完成后发送至FIFO写控制器。当(N+M)不是Q的整数倍时,无法按照上述进行数据拼接。基于此,位宽变换单元可以进一步用于:当(N+M)不是Q的整数倍时,在拼接前进行高位补0,使(N+M)是Q的整数倍;其中,N为时序路数,M为计时器模块的计时位宽。例如,当N+M=70、存储位宽为8时,在高位补充2位“0”,拼接成72位,每8位为一组作为一个字节,可形成9个字节,从低位到高位每个字节依次记为Byte0、Byte1、……、Byte8),拼接完成后发送至FIFO写控制器。FIFO写控制器可以包括一个Moore型FIFO写状态机和一个(N+M)位移位缓冲寄存器。图2示出了本发明优选实施例中FIFO写控制器的状态转移示意图,其中,FIFO写控制器包括一个Moore型FIFO写状态机和一个72位移位缓冲寄存器。Moore型FIFO写状态机,分为19个状态,具体说明如下:ST0—上电复位(Rst_In)后初始状态;当ready信号无效时,表明数据无效,置(其中Wr_En比Lock晚半个时钟周期输出,下同):当ready信号有效时,置:ST1——置如下状态(未列出的信号保持上一状态,下同):ST2——置如下状态:ST3——置如下状态:ST4——置如下状态:ST5——置如下状态:ST6——置如下状态:ST7——置如下状态:ST8——置如下状态:ST9——置如下状态:ST10——置如下状态:ST11——置如下状态:ST12——置如下状态:ST13——置如下状态:ST14——置如下状态:ST15——置如下状态:ST16——置如下状态:ST17——置如下状态:序号信号名称信号状态备注1)Wr_En无效FIFO写控制信号2)Scan_En有效端口拍照采样使能信号3)next_stateST0下一状态ST_Other——置如下状态:当Lock信号有效时,72位移位缓冲寄存器锁定位宽变换单元输出的数据,锁定数据中的当前端口状态数据“P_Data1”部分同时送出作为上次端口状态,供比较控制逻辑模块查询。当Shift_En有效时,进行移位:Byte0→Byte1→Byte2→Byte3→Byte4→Byte5→Byte6→Byte7→Byte8→Byte0。若可编程器件资源充分,可以在火工品实时序测试装置内部调用通用FIFO的IP或按FIFO工作原理自行设计FIFO存储器,此方案可以提高设计的集成度,但对可编程器件资源要求较高,设计复杂度也较高。当然,也可以采用外扩FIFO存储器芯片,设计简单,对可编程器件资源要求低。在本发明火工品时序测试装置的技术上,本领域技术人员可以根据实际需求扩展其他逻辑,如图1所示,本发明对此不做详细说明。虽然参照示例性实施方式对本发明进行了描述,但是应当理解,本发明并不局限于文中详细描述和示出的具体实施方式,在不偏离权利要求书所限定的范围的情况下,本领域技术人员可以对所述示例性实施方式做出各种改变。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1