文档介绍:国防科学技术大学
硕士学位论文
基于YH-SUPE的并行离散事件仿真组件调试技术研究
姓名:朱峰
申请学位级别:硕士
专业:计算机科学与技术
指导教师:姚益平
2010-11
国防科学技术大学研究生院硕士学位论文
摘要
组件调试作为组件开发过程中一种错误诊断手段,不仅对组件的开发效率影
响较大,而且对组件可靠性的提升起着至关重要的作用。由于目前国内外并行仿
真开发环境并没有提供直接面向并行离散事件仿真(PDES)组件的调试功能,致
使组件的调试代码往往需要手动编写、调试过程容易陷入仿真引擎的执行逻辑,
不便于调试人员集中对组件自身逻辑的检测。因此,研究面向 PDES 组件的调试
技术成为并行离散事件仿真建模组件化发展亟待解决的重要课题。
论文针对并行离散事件仿真建模组件化发展的需求,在综合分析并行仿真支
撑环境 YH-SUPE 特点的基础上,对基于 YH-SUPE 的 PDES 组件调试的关键技术
进行了深入分析和研究。主要工作和创新包括:
1) 现有的并行仿真开发环境没有提供直接面向 PDES 组件的调试功能,调试
代码往往需要手动编写。针对此问题,论文提出了一种基于 YH-SUPE 仿
真框架的组件调试代码自动生成技术,该技术通过提供可重用的调试辅助
组件,以端口互连的方式与被调试组件快速组装成仿真实体,然后将该实
体嵌入到设计的主函数模板中,从而实现组件模型的自动挂接,为 PDES
组件的调试提供了高效的手段。
2) 并行离散事件仿真组件之间的事件调度机制是由仿真引擎实现的,这样使
得仿真人员在调试过程中容易因断点、单步跟踪等调试操作而进入仿真引
擎的执行逻辑中,不便于集中对组件自身逻辑的检测。针对此问题,论文
提出了一种事件驱动的 PDES 组件调试方法,该方法通过对下一个最早发
生的事件进行追踪,并只在被跟踪的事件端口处理函数内发生调试中断,
从而隐藏了仿真引擎的执行逻辑,提高了组件的调试效率。
3) 不同节点上的仿真对象实例是并行执行的,这种并行执行方式往往会导致
前后两次执行过程中不同节点上事件处理顺序的不一致,进而造成组件执
行过程中错误重现的不确定性。针对此问题,论文提出了一种基于
YH-SUPE 持久机制的错误重现方法,该方法通过检查点技术恢复组件运
行时的状态,并按照 YH-SUPE 持久机制记录的事件顺序进行调度,从而
实现组件前后两次确定性地执行,为组件调试过程中错误的准确定位提供
了保证。
基于上述研究成果,设计并实现了基于 YH-SUPE 的面向 PDES 组件的可视化
调试框架,使用该框架能够导入基于 YH-SUPE 的模型组件,自动生成组件调试代
码,并能够高效地对组件运行过程进行追踪和调试。经测试表明,该框架具有直
第 1 页
国防科学技术大学研究生院硕士学位论文
观易用的操作界面,能够帮助用户准确、快速地定位组件运行过程中出现的错误,
可满足并行离散事件仿真组件高效调试的需求。
关键词:调试,并行离散事件仿真,组件,自动生成,事件驱动,错误重现
第 2 页
国防科学技术大学研究生院硕士学位论文
ABSTRACT
Component-oriented debugging technique is an effective approach for detecting
errors, which not only has great influence for developing the efficiency ponents,
but also has great significance for improving the reliability ponents. The current
developing environment for parallel simulation has not provided an individual
debugging function for ponent of PDES. Therefore, the debugging codes always
need to be hand-coding, and the executive process of the simulation engine is cared
about excessively, which does not facilitate to concentrate on the executive process for
ponents. Accordingly, a study