论文部分内容阅读
随着微电子技术和超大规模集成电路的高速发展,嵌入式系统的规模越来越大,硬件部分的异构程度和软件部分的功能复杂程度都达到了历史最高点。在更高的设计复杂度和更短的面市时间压力下,提高抽象层次,采用软硬件协同设计方法,进行系统级设计已成为解决问题的有效途径。模型驱动构架(MDA)是目前软件工程领域内重要的战略方向,它以若干的标准定义了一个软件开发框架。UML模型是MDA中的核心任务,整个开发过程以系统的建模行为为驱动。比较MDA与嵌入式系统软硬件协同设计方法可以发现,它们在任务和目标上非常一致,如系统软硬件无关的统一建模,系统综合和验证等等。嵌入式系统的设计方法一直和软件开发方法保持相对的距离,本文尝试在嵌入式系统设计中融合先进的软件工程成果,促进嵌入式系统设计方法的新发展。 本文的重点是基于UML的嵌入式系统系统级设计方法研究。主要围绕模型驱动构架(MDA),研究嵌入式系统的平台无关模型(PIM),平台相关模型(PSM),模型转换方法,以及模型验证等方面。论文主要进行了以下四个方面的工作: 1) 以UML2.0版本的最终草案为依据,对UML和采用面向对象技术的实时嵌入式系统建模进行了介绍。提出以MDA为主要框架的嵌入式系统设计新流程,该流程的主要特点是:以UML模型为系统的主要设计模型,分别包括平台无关和平台相关两种不同抽象层次的模型,从而有效分离系统功能和实现描述;系统综合通过自动化的模型变换来实现,因此能够提高开发效率,支持设计空间的快速搜索。 2) SystemC语言通过扩展C++类库来提供对系统硬件结构的描述能力,且支持从寄存器级到系统级等不同的抽象层次,是目前重要的嵌入式系统级设计语言之一。本文采用它作为系统实现的目标平台语言,一方面用来对系统目标平台的特定软硬件结构进行描述,另一方面用来表示系统综合后的系统实现。扩展的UMLforSystemC语言是MDA中平台相关建模的基础,也是实现自动化模型变换的(系统综合)的重要形式化基础。在进行模型映射规则分析后,本文提供了自动的模型变换实现。 3) UML可视化建模的运用为良好的设计奠定了基础,然而UML模型仍然缺乏细节的行为描述能力,阻碍了UML可执行模型的创建。本文首先以UML的子集为基础,然后结合自定义的模型动作语言(action language,AL)。模型动作语言包含了普通可执行语言的特点,并增加了对模型元素的操作能力和嵌入式系统的并发特征,为UML模型提供了细节的行为描述手段,从而支持系统平台无关的完整模型描述。本文提供了动作语言的词法和语法分析,并基于模板变换实现了动