主权项 |
一种基于模型的嵌入式系统流延时属性测试方法,其特征在于步骤如下:步骤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的实例模型设计约束时,得到流延时属性测试结果正确的结论;当上述条件成立时,证明流延时符合模型设计需求;当上述各条件有任何一项不满足,得到流延时属性测试结果错误的结论,证明流延时不符合模型设计需求;至此获得全部测试结果。 |