发明名称 一种基于模型的嵌入式系统流延时属性测试方法
摘要 本发明涉及一种基于模型的嵌入式系统流延时属性测试方法,其特征在于:基于SystemC硬件描述语言搭建AADL模型仿真测试平台,将AADL模型转换为测试平台可执行的系统实例,并对流中的构件序列和端口序列进行抽象和映射,将AADL模型中的流转换为C++描述的测试模型,在系统实例仿真执行的过程中完成对AADL流延时属性的测试,并对测试结果进行分析与评估。能够在模型的设计阶段动态测试AADL模型的流延时属性,并根据测试结果迭代构造和精化设计模型,以便尽早发现设计模型中存在的问题,提高AADL模型设计初期的开发效率。
申请公布号 CN102073585A 申请公布日期 2011.05.25
申请号 CN201010564678.4 申请日期 2010.11.25
申请人 西北工业大学 发明人 董云卫;朱宇峰;马春燕;张凡;张云峰
分类号 G06F11/36(2006.01)I 主分类号 G06F11/36(2006.01)I
代理机构 西北工业大学专利中心 61204 代理人 王鲜凯
主权项 一种基于模型的嵌入式系统流延时属性测试方法,其特征在于步骤如下:步骤1:利用Eclipse平台的OSTAE工具对需要评估的AADL系统进行实例化操作,得到AADL实例模型;步骤2:将步骤1中的AADL实例模型转换为基于SystemC描述的实例模型,转换方法如下:将AADL软件构件转换为C++格式的用户代码;将AADL硬件构件转换为SystemC格式的硬件实例;将AADL系统构件转换为C++描述的操作系统对象实例;将步骤1中AADL实例模型中的流转换为C++格式的测试模型,转换方法如下:将流中的各AADL构件转换为C++格式的实例;将流中的各端口转换为C++格式的端口实例;将流中的各链接、路径转换为C++格式的流路径实例;步骤3:将步骤2中的用户代码、硬件实例和操作系统对象实例组合成为可执行的系统实例,组合方法如下:将用户代码用SystemC可识别的快速线程标准函数封装成为线程,添加至操作系统对象实例的线程管理结构中;将操作系统对象实例的线程管理结构中的线程作为硬件实例中的CPU实例的运行线程;将硬件实例中的总线实例的端口与其他硬件实例的端口相连接;将CPU实例与总线实例设为主动实例,其他与其相连的硬件实例设为从动实例,使前者够调用后者的功能;步骤4:将步骤2中的C++格式描述的测试模型的端口实例的调用方法,添加至端口所属的步骤3中的系统实例的构件实例中;步骤5:用SystemC提供的仿真函数驱动步骤3中得到的系统实例和步骤2中得到的测试模型,并在系统实例和测试模型运行的过程中对各构件端口的通信时间进行监测和记录;步骤6:在步骤5的仿真运行过程结束后,将步骤5中监测和记录的各构件端口的通信时间赋值给构件实例的通信时间数据结构,求得构件实例输出数据与输入数据时间的差值,将差值赋值给表示延时的数据结构,并按照步骤2中的测试模型中的计算公式计算各层级流延时的值;步骤7:当步骤2中测试模型的各层级流的构件序列符合步骤1中的实例模型的描述时,检查测试模型中构件间通信两端的端口实例;当通信端两端口为相同类型,且连接顺序为输入端口与输出端口的搭配情况时,检查测试模型中各层级流的流延时值;当各层级流的流延时值按照步骤1的实例模型中的信息流的顺序形成单调时序,并且无不符合步骤1的实例模型设计约束时,得到流延时属性测试结果正确的结论;当上述条件成立时,证明流延时符合模型设计需求;当上述各条件有任何一项不满足,得到流延时属性测试结果错误的结论,证明流延时不符合模型设计需求;至此获得全部测试结果。
地址 710072 陕西省西安市友谊西路127号