一种仿真平台数字量通用输出方法与流程

文档序号:14923634发布日期:2018-07-13 08:21

本发明涉及一种仿真平台数字量通用输出方法,属于信号仿真技术领域。



背景技术:

嵌入式系统有特定的硬件运行环境,因此其软件研发过程中的调试、测试与硬件时序关系较大,需依托仿真平台。传统的仿真平台针对真实目标系统及其应用场景定制开发,为专用测试设备,针对性强。但是,面对软件研制周期普遍缩短,敏捷开发软件增多的现状,传统的仿真平台逐渐暴露出如下问题:

(1)传统的仿真平台的硬件设计方案通用性差。其涉及不同开发方,采用的技术方案不同,各类硬件板卡的功能和接口标准也各不相同,导致不同项目的仿真平台难以复用。

(2)传统的仿真平台研制周期长、成本高。每个新研项目的仿真平台都需要经历“设计——生产——调试——使用”四个过程,较难满足软件研制周期普遍缩短,敏捷开发软件增多的应用需求。

(3)传统的仿真平台可维护性差。一般情况下,星载嵌入式软件在轨运行周期为5至8年,有的甚至更长;这段时间内,平台开发人员的流动会增加历史研制资料管理不到位的风险,导致新的开发人员较难对仿真平台进行快速有效维护。

(4)传统的仿真平台很难实现配套仿真软件的通用化。不同项目仿真平台的硬件及板载FPGA逻辑存在差异,直接影响到配套仿真软件的通用化构建。

如何提供一种仿真平台数字量通用输出方法,是本领域亟待解决的技术问题。



技术实现要素:

本发明解决的技术问题是:克服现有技术的不足,提供了一种仿真平台数字量通用输出方法,能够实现高低电平输出、正负单脉冲输出、有限个数脉冲输出和连续脉冲输出,满足多种数字量信号产生需求。

本发明的技术解决方案是:

提供一种仿真平台数字量通用输出方法,包括如下步骤:

(1)设置触发的延时时间、高脉冲宽度、低脉冲宽度、脉冲个数、电平状态及发送模式;

(2)读取延时时间,如果延时时间大于0,则延时设置的延时时间后进入步骤(3),如果延时时间不大于0,则直接进入步骤(3);

(3)读取发送模式,当发送模式为0时,进入步骤(4),当发送模式为1时进入步骤(5);

(4)读取高脉冲宽度,当高脉冲宽度为0时,读取电平状态,如果电平状态为0,则输出持续低电平信号,如果电平状态为1,则输出持续高电平信号;当高脉冲宽度大于0时,读取电平状态,如果电平状态为0,则输出单个负脉冲信号,进入步骤(6),如果电平状态为1,则输出单个正脉冲信号,进入步骤(6);

(5)读取高脉冲宽度,当高脉冲宽度为0时,进入步骤(6),当高脉冲宽度大于0时,读取脉冲个数N,如果脉冲个数大于0,根据设定的高脉冲宽度和低脉冲宽度,输出一个周期的脉冲信号,并将输出脉冲次数Cnt的值+1,比较Cnt与N的值,当Cnt<N时,返回步骤(3);如果Cnt≥N时,将Cnt清零,进入步骤(6);当脉冲个数等于0时,根据设定的高脉冲宽度和低脉冲宽度,输出一个周期的脉冲信号,并将输出脉冲次数Cnt的值+1,返回步骤(3);

(6)结束流程。

优选的,步骤(1)还包括设置通道数量,分别设置各通道触发的延时时间、高脉冲宽度、低脉冲宽度、脉冲个数、电平状态及发送模式。

优选的,步骤(1)中还包括设置为外部信号同步触发还是使能触发,若需要外部信号同步触发,设置同步信号上升沿触发或下降沿触发。

本发明与现有技术相比的优点在于:

(1)本发明的数字量通用输出方法,实现了仿真平台中数字量输出信号的统一描述,克服了传统仿真平台通用性差、研制周期长、成本高的缺陷,具有规范性、复用性强,研制周期短、成本低的优点。

(2)本发明通过FPGA逻辑模块实现了丰富的数字量输出信号类型,克服了传统仿真平台在专用仿真软件中处理数字量输出实时性差、交互接口多的缺陷,具有操作简单、实时性强的优点。

(3)本发明通过配置优化设置,解决了配套仿真软件的通用化问题,使用过程中,只需配置参数,就可覆盖仿真平台中输出各类数字量信号的要求,具有可靠性、可维护性高的特点。

(4)本发明的数字量通用输出方法能够提供高低电平输出、正负单脉冲输出、有限个数脉冲输出和连续脉冲输出,能够模拟各类数字信号,可广泛应用于各种仿真平台,提供仿真信号输出。

附图说明

图1为本发明一种仿真平台数字量通用输出方法数据流示意图;

图2为本发明一种仿真平台数字量通用输出方法工作状态机示意图;

图3为本发明一种仿真平台数字量通用输出方法原理流程图;

图4为本发明一种仿真平台数字量通用输出方法信号时序图;

具体实施方式

本发明针对现有技术的不足,提出一种仿真平台数字量通用输出方法,可以通过配置参数,完成仿真平台输出各种类型数字量信号,具有操作简单、实时性强、可靠性、可维护性高的特点,并实现了不同项目仿真平台之间的通用化,缩短了仿真平台的研制周期、降低了研制成本,保障星载嵌入式软件在轨稳定运行。

如图1所示为一种仿真平台数字量通用输出方法的数据流示意图,RAM区的数据由地面仿真软件通过A口进行读写操作,再由B口将数据传送至数字量输出模块,数字量输出模块依据配置参数信息进行数字量信号输出。

如图2所示为一种仿真平台数字量通用输出方法的工作状态机示意图,对于RAM的B口操作使用状态机机制,循环将基础信息写入本模块,也循环进行各通道参数的读取配置。

如图3所示为一种仿真平台数字量通用输出方法的原理流程图,本发明具体方案包括初始化设置,设置发送模式、脉冲宽度、脉冲个数、电平状态以及信号触发的延时时间参数,设置是否需要外部信号同步,设置同步信号触发状态。判断发送使能或同步信号有效,等待相应延时时间后依据参数配置信息产生相应的高低电平输出、正负单脉冲输出、有限个数脉冲输出和连续脉冲输出。

本发明能够在一个状态机中实现高低电平输出、正负单脉冲输出、有限个数脉冲输出和连续脉冲输出,其特征在于包括如下步骤:

(1)初始化设置:设置通道数量,该设置表示通用数字量输出模块需要处理的输出信号通道数量,取值为1~96,最多96个,每个通道分别进行输出;并分别设置各通道信号触发的延时时间、高脉冲宽度、低脉冲宽度、脉冲个数、电平状态及发送模式。

设置是否需要外部信号同步,若需要,设置同步信号触发状态(上升沿触发或下降沿触发)。

若设置电平模式(发送模式为0,高脉冲宽度为0),不需要外部信号同步输出时,直接设置输出电平高低状态即可;需要外部信号同步时,检测同步信号及其延时设置,达到检测条件有效,进行延时计数操作,计数结束,进行电平状态输出;

(2)读取延时时间,如果延时时间大于0,则延时设置的延时时间后进入步骤(3),如果延时时间不大于0,则直接进入步骤(3);

(3)读取发送模式,当发送模式为0时,为单脉冲模式或电平输出模式,进入步骤(4),当发送模式为1时,为连续多个脉冲或无限个脉冲输出模式,进入步骤(5);

(4)读取高脉冲宽度,当高脉冲宽度为0时,读取电平状态,如果电平状态为0,则输出持续低电平信号,如果电平状态为1,则输出持续高电平信号;当高脉冲宽度大于0时,读取电平状态,如果电平状态为0,则输出单个负脉冲信号,进入步骤(6),如果电平状态为1,则输出单个正脉冲信号,进入步骤(6);

(5)读取高脉冲宽度,当高脉冲宽度为0时,进入步骤(6),当高脉冲宽度大于0时,读取脉冲个数N,如果脉冲个数大于0,根据设定的高脉冲宽度和低脉冲宽度,输出一个周期的脉冲信号,并将输出脉冲次数Cnt的值+1,比较Cnt与N的值,当Cnt<N时,返回步骤(3);如果Cnt≥N时,将Cnt清零,进入步骤(6);当脉冲个数等于0时,根据设定的高脉冲宽度和低脉冲宽度,输出一个周期的脉冲信号,并将输出脉冲次数Cnt的值+1,返回步骤(3);

脉冲的生成可以根据高脉冲宽度设置值,进行高电平状态输出,进行宽度计数,计数结束后,切回低电平状态,继续根据低脉冲宽度设置值,进行宽度计数,计数结束后,对输出脉冲个数进行计数。

(6)结束流程。

持续低电平信号和持续高电平信号用于模拟仿真平台组件的工作状态;所述单个负脉冲信号和单个正脉冲信号用于模拟仿真平台输出的指令信号,连续脉冲用于模拟仿真平台组件工作的速率、加速度、时钟频率等信号。实现了仿真平台所需各类数字信号的输出。

本发明通过获取设置参数的组合逻辑,定义输出数字量信号类型描述。如表1所示,输出电平状态,需设置发送模式为0,高脉冲宽度为0,依据电平状态寄存器取值输出对应高/低电平信号;输出单脉冲状态,需设置发送模式为0,高脉冲宽度大于0,依据电平状态寄存器及高脉冲宽度取值输出相应宽度的高脉冲信号或低脉冲信号;输出连续脉冲状态,需设置发送模式为1,高/低脉冲宽度大于0,脉冲个数为0,依据高/低脉冲宽度寄存器取值输出相应宽度的连续脉冲信号;输出有限个数脉冲状态,需设置发送模式为1,高/低脉冲宽度大于0,脉冲个数大于0,依据高/低脉冲宽度寄存器取值输出相应宽度的指定个数脉冲信号。

表1物理层协议设置描述

本发明中定义了数字量信号输出时序描述,包含触发信号描述和延时时间描述。触发信号有输出使能信号和外部同步信号两种,其中,输出使能寄存器中写1即产生输出使能信号,外部同步信号触发需描述使用信号的上升沿或者下降沿触发方式。判断触发信号有效,进行延时计数操作,计数结束,输出相应数字量信号,如图4所示。

本发明中定义了数字量信号参数更新时序描述,在数字量信号发送过程中进行配置参数更新,如图1所示,数据先写入RAM区的A口,待下一次检测发送模式寄存器后,如图3所示,统一将数据搬至对应寄存器,再依据寄存器值输出相应信号。

综上所述,本方法为了便于数字量输出方法的继承和复用,通过配置参数,可覆盖星载仿真平台中对数字量的输出需求。下面结合具体实施例对本方法进行详细描述说明:

采用本方法针对1路数字量输出信号进行处理,其中地面仿真系统运行周期为128ms,内部晶振为50M赫兹,计数器宽度当量为20ns,其具体描述包括:

1、表1中高低电平即时使能触发设置描述

数字量输出信号要求:仿真周期起始时刻输出高电平信号。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为0,等待周期数寄存器为0,高脉冲宽度寄存器为0,电平状态寄存器为1,输出使能寄存器为1。

2、表1中高低电平延时使能触发设置描述

数字量输出信号要求:仿真周期起始时刻10ms后输出高电平信号。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为0,等待周期数寄存器为500,高脉冲宽度寄存器为0,电平状态寄存器为1,输出使能寄存器为1。

3、表1中高低电平即时同步信号触发设置描述

数字量输出信号要求:同步信号上升沿时输出高电平信号。

数字量输出信号描述为:先后置发送模式寄存器为0,等待周期数寄存器为0,高脉冲宽度寄存器为0,电平状态寄存器为1,同步信号寄存器为1。

4、表1中高低电平延时同步信号触发设置描述

数字量输出信号要求:同步信号下降沿20ms后输出低电平信号。

数字量输出信号描述为:先后置发送模式寄存器为0,等待周期数寄存器为1000,高脉冲宽度寄存器为0,电平状态寄存器为0,同步信号寄存器为0。

5、表1中单脉冲即时使能触发设置描述

数字量输出信号要求:仿真周期起始时刻输出80ms高脉冲信号。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为0,等待周期数寄存器为0,高脉冲宽度寄存器为4000,电平状态寄存器为1,输出使能寄存器为1。

6、表1中单脉冲延时使能触发设置描述

数字量输出信号要求:仿真周期起始时刻10ms后输出80ms高脉冲信号。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为0,等待周期数寄存器为500,高脉冲宽度寄存器为4000,电平状态寄存器为1,输出使能寄存器为1。

7、表1中单脉冲即时同步信号触发设置描述

数字量输出信号要求:同步信号上升沿时输出80ms高脉冲信号。

数字量输出信号描述为:先后置发送模式寄存器为0,等待周期数寄存器为0,高脉冲宽度寄存器为4000,电平状态寄存器为1,同步信号寄存器为1。

8、表1中单脉冲延时同步信号触发设置描述

数字量输出信号要求:同步信号下降沿20ms后输出80ms高脉冲信号。

数字量输出信号描述为:先后置发送模式寄存器为0,等待周期数寄存器为1000,高脉冲宽度寄存器为4000,电平状态寄存器为1,同步信号寄存器为0。

9、表1中连续脉冲即时使能触发设置描述

数字量输出信号要求:仿真周期起始时刻输出高/低电平均为10ms的连续脉冲。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为1,等待周期数寄存器为0,高脉冲宽度寄存器为500,低脉冲宽度寄存器为500,脉冲个数寄存器为0,输出使能寄存器为1。

10、表1中连续脉冲延时使能触发设置描述

数字量输出信号要求:仿真周期起始时刻10ms后输出高/低电平均为10ms的连续脉冲。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为1,等待周期数寄存器为500,高脉冲宽度寄存器为500,低脉冲宽度寄存器为500,脉冲个数寄存器为0,输出使能寄存器为1。

11、表1中连续脉冲即时同步信号触发设置描述

数字量输出信号要求:同步信号上升沿输出高/低电平均为10ms的连续脉冲。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为1,等待周期数寄存器为0,高脉冲宽度寄存器为500,低脉冲宽度寄存器为500,脉冲个数寄存器为0,同步信号寄存器为1。

12、表1中连续脉冲延时同步信号触发设置描述

数字量输出信号要求:同步信号上升沿10ms后输出高/低电平均为10ms的连续脉冲。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为1,等待周期数寄存器为500,高脉冲宽度寄存器为500,低脉冲宽度寄存器为500,脉冲个数寄存器为0,同步信号寄存器为1。

13、表1中有限个数脉冲即时使能触发设置描述

数字量输出信号要求:仿真周期起始时刻输出高/低电平均为10ms的脉冲10个。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为1,等待周期数寄存器为0,高脉冲宽度寄存器为500,低脉冲宽度寄存器为500,脉冲个数寄存器为10,输出使能寄存器为1。

14、表1中有限个数脉冲延时使能触发设置描述

数字量输出信号要求:仿真周期起始时刻10ms后输出高/低电平均为10ms的脉冲10个。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为1,等待周期数寄存器为500,高脉冲宽度寄存器为500,低脉冲宽度寄存器为500,脉冲个数寄存器为10,输出使能寄存器为1。

15、表1中有限个数脉冲即时同步信号触发设置描述

数字量输出信号要求:同步信号上升沿输出高/低电平均为10ms的脉冲10个。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为1,等待周期数寄存器为0,高脉冲宽度寄存器为500,低脉冲宽度寄存器为500,脉冲个数寄存器为10,同步信号寄存器为1。

16、表1中有限个数脉冲延时同步信号触发设置描述

数字量输出信号要求:同步信号上升沿10ms后输出高/低电平均为10ms的脉冲10个。

数字量输出信号描述为:仿真周期起始时刻先后置发送模式寄存器为1,等待周期数寄存器为500,高脉冲宽度寄存器为500,低脉冲宽度寄存器为500,脉冲个数寄存器为10,同步信号寄存器为1。

本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。

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