当前位置: 首页 > 专利查询>刘学专利>正文

一种基于事件库的仿真器仿真方法、系统、设备及介质技术方案

技术编号:37354722 阅读:36 留言:0更新日期:2023-04-27 07:05
本发明专利技术提出了一种基于事件库的仿真器仿真方法、系统、设备及介质,涉及仿真领域。该方法包括:响应于仿真启动信号启动相应模块的仿真进程;将接收的不同进程的事件插入到二叉树事件库;基于时间轮步进处理,依次遍历二叉树事件库,查询节点事件情况;基于查询结果取出对应的节点事件,分析该节点事件,解析出对应的源事件实例和目的端事件实例,并根据预置解析协议,更新事件实例属性;基于目的端事件实例,将该节点事件发送至事件实例中进行处理,得到对应的事件执行情况信息;打印步进时间、事件名称、事件列表和事件执行情况信息。其通过对仿真处理流程进行优化,可以实现仿真器的时钟精确级需求,以及便于对其进行时序分析和调整。调整。调整。

【技术实现步骤摘要】
一种基于事件库的仿真器仿真方法、系统、设备及介质


[0001]本专利技术涉及仿真领域,具体而言,涉及一种基于事件库的仿真器仿真方法、系统、设备及介质。

技术介绍

[0002]仿真器(Emulator)可以仿真并且调试一个包括一个或多个模块的逻辑系统设计。仿真器具有以某一系统复现另一系统的功能,其与计算机模拟系统(Computer Simulation)的区别在于,仿真器致力于模仿系统的外在表现、行为,而不是模拟系统的抽象模型。
[0003]在现有技术中,仿真器存在着不能支持信号量、消息传递以及任务延迟等各种同步事件,并且还不能扩展其它类型的同步事件和一致性问题,无法实现对目标模块的时序分析,不能根据实际系统的精度要求方便地调整仿真的时间精度等问题。

技术实现思路

[0004]本专利技术的目的在于提供一种基于事件库的仿真器仿真方法、系统、设备及介质,其通过事件库和时间轮完成了时钟精确级实现需求,能够支持信号量、消息传递以及任务延迟等各种同步事件,并且还可方便地扩展其它类型的同步事件和一致性问题,通过获取模型仿真的执行序列信息,可以实现对目标模块的时序分析,并可根据实际系统的精度要求方便地调整仿真的时间精度,并通过行为级仿真可以实现硬件中各层次的同步与异步,保证计算顺序正确,实现了同步。
[0005]本专利技术的实施例是这样实现的:
[0006]第一方面,本申请实施例提供一种基于事件库的仿真器仿真方法,包括以下步骤:
[0007]响应于仿真启动信号启动相应模块的仿真进程;接收不同进程的事件,并将该事件插入到二叉树事件库;基于时间轮步进处理,依次遍历二叉树事件库,查询节点事件情况,得到对应的查询结果;基于查询结果取出对应的节点事件,分析该节点事件,解析出对应的源事件实例和目的端事件实例,并根据预置解析协议,更新事件实例属性;基于目的端事件实例,将该节点事件发送至事件实例中进行处理,得到对应的事件执行情况信息;打印步进时间、事件名称、事件列表和事件执行情况信息。
[0008]在本专利技术的一些实施例中,上述响应于仿真启动信号启动相应模块的仿真进程步骤中的相应模块为仿真器中的与仿真启动信号相关的仿真模块,其中,多个仿真模块中的任一仿真模块均包括一个事件链表进行维护,且只有相连的仿真模块或节点的事件链表能够相互交互与共享处理。
[0009]在本专利技术的一些实施例中,上述仿真模块之间的时钟信号的实现包括:基于产生的预置周期的时钟信号作为基准时钟和通讯延迟时钟。
[0010]在本专利技术的一些实施例中,上述仿真模块的任一端口在执行每个操作事件过程前,将对相应的执行序列进行初始化处理,并将顺序执行的函数指针在对应的队列中进行
相应的处理,同时在对应的执行模块中的指针中进行表示当前需要执行的函数的指针在队列中的位置。
[0011]在本专利技术的一些实施例中,上述仿真模块基于事务级建模方法进行建模。
[0012]在本专利技术的一些实施例中,上述事务级建模方法包括:将仿真模块的功能与仿真模块之间的通讯分开建模,仿真模块之间的通讯用事务进行表示,接口采用不含管脚细节的TF方式,功能采用TF方式。
[0013]第二方面,本申请实施例提供一种基于事件库的仿真器仿真系统,其包括:
[0014]进程启动模块,用于响应于仿真启动信号启动相应模块的仿真进程;事件接收模块,用于接收不同进程的事件,并将该事件插入到二叉树事件库;事件查询模块,用于基于时间轮步进处理,依次遍历二叉树事件库,查询节点事件情况,得到对应的查询结果;节点解析模块,用于基于查询结果取出对应的节点事件,分析该节点事件,解析出对应的源事件实例和目的端事件实例,并根据预置解析协议,更新事件实例属性;事件执行模块,用于基于目的端事件实例,将该节点事件发送至事件实例中进行处理,得到对应的事件执行情况信息;打印处理模块,用于打印步进时间、事件名称、事件列表和事件执行情况信息。
[0015]第三方面,本申请实施例提供一种电子设备,其包括存储器,用于存储一个或多个程序;处理器。当上述一个或多个程序被上述处理器执行时,实现如上述第一方面中任一项上述的方法。
[0016]第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面中任一项上述的方法。
[0017]相对于现有技术,本专利技术的实施例至少具有如下优点或有益效果:
[0018]本专利技术的实施例提出了一种基于事件库的仿真器仿真方法,针对仿真器的仿真处理过程进行处理流程优化,其通过将事件库与时间轮进行结合处理,能够用以满足仿真器时钟精确级的实现需求,且能够支持信号量、消息传递以及任务延迟等各种同步事件,并且还可方便地扩展其它类型的同步事件和一致性问题。通过获取模型仿真的执行序列信息,可以实现对目标模块的时序分析,并可根据实际系统的精度要求方便地调整仿真的时间精度,并通过行为级仿真可以实现硬件中各层次的同步与异步,保证计算顺序正确,实现了同步。
附图说明
[0019]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0020]图1为本专利技术一种基于事件库的仿真器仿真方法一实施例的流程图;
[0021]图2为本专利技术一实施例的处理流程示意图;
[0022]图3为本专利技术一实施例中基于事务级建模方法进行建模时的仿真模块之间的结构示意图;
[0023]图4为本专利技术一实施例的事件状态关系示意图;
[0024]图5为本专利技术一种基于事件库的仿真器仿真系统一实施例的结构框图;
[0025]图6为本专利技术实施例提供的一种电子设备的结构框图。
[0026]图标:1、进程启动模块;2、事件接收模块;3、事件查询模块;4、节点解析模块;5、事件执行模块;6、打印处理模块;7、处理器;8、存储器;9、数据总线。
具体实施方式
[0027]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
[0028]下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的各个实施例及实施例中的各个特征可以相互组合。
[0029]实施例1
[0030]请参阅图1

2,本申请实施例提供了一种基于事件库的仿真器仿真方法,其通过事件库和时间轮完成了时钟精确级实现需求,能够支持信号量、消息传递以及任务延迟等各种同步事件,并且还可方便地扩展其它类型的同步事件和一致性问题,通过获取模型仿真的执行序列信息,可以实现对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于事件库的仿真器仿真方法,其特征在于,包括以下步骤:响应于仿真启动信号启动相应模块的仿真进程;接收不同进程的事件,并将该事件插入到二叉树事件库;基于时间轮步进处理,依次遍历二叉树事件库,查询节点事件情况,得到对应的查询结果;基于查询结果取出对应的节点事件,分析该节点事件,解析出对应的源事件实例和目的端事件实例,并根据预置解析协议,更新事件实例属性;基于目的端事件实例,将该节点事件发送至事件实例中进行处理,得到对应的事件执行情况信息;打印步进时间、事件名称、事件列表和事件执行情况信息。2.如权利要求1所述的一种基于事件库的仿真器仿真方法,其特征在于,所述响应于仿真启动信号启动相应模块的仿真进程步骤中的相应模块为仿真器中的与仿真启动信号相关的仿真模块,其中,多个仿真模块中的任一仿真模块均包括一个事件链表进行维护,且只有相连的仿真模块或节点的事件链表能够相互交互与共享处理。3.如权利要求2所述的一种基于事件库的仿真器仿真方法,其特征在于,所述仿真模块之间的时钟信号的实现包括:基于产生的预置周期的时钟信号作为基准时钟和通讯延迟时钟。4.如权利要求2所述的一种基于事件库的仿真器仿真方法,其特征在于,所述仿真模块的任一端口在执行每个操作事件过程前,将对相应的执行序列进行初始化处理,并将顺序执行的函数指针在对应的队列中进行相应的处理,同时在对应的执行模块中的指针中进行表示当前需要执行的函数的指针在队列中的位置。5.如权利要求2所述的一种基于事件库的仿真器仿真方法,其特征在于,所述仿真模块...

【专利技术属性】
技术研发人员:刘学
申请(专利权)人:刘学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1