体系结构描述语言

目录导航

设计要求

ADL创立者希望ADL能够描述和表达系统体系结构的语言或概念模型。而软件工程工作者则期望ADL是描述和表示软件体系结构的计算机语言,供软件开发开发人员交流使用。

ADL部件和连接器要能够描述接口(配合连接器)、类型、语义、约束、进化和非功能特征。而在体系结构的配置方面,ADL需要能够说明可理解性、异构性(heterogeneity)、组合性、约束、细化、可追踪性、可伸缩性、进化、动态性和非功能特性。

特点

典型的ADL在充分继承和吸收传统程序设计语言的精确性和严格性特点的同时,还应该具有构造、抽象、重用、组合、异构和分析推理等各种能力和特性。其中:

(1)构造能力指的是ADL能够使用较小的独立体系结构元素来建造大型软件系统。

(2)抽象能力指的是ADL使得软件体系结构中的构件和连接件描述可以只关注它们的抽象特性,而不管其具体的实现细节。

(3)重用能力指的是ADL使得组成软件系统的构件、连接件甚至是软件体系结构都成为软件系统开发和设计的可重用部件。

(4)组合能力指的是ADL使得其描述的每一系统元素都有其自己的局部结构,这种描述局部结构的特点使得ADL支持软件系统的动态变化组合。

(5)异构能力指的ADL允许多个不同的体系结构描述关联存在。

(6)分析和推理能力指的是ADI。允许对其描述的体系结构进行多种不同的性能和功能上的多种推理分析。

分类

一、通常,ADL按其描述属性可分为如下三类。

①结构ADL,针对处理器及其互联的硬件单元。

②行为ADL,主要关注处理器指令集语义功能。

③混合ADL,兼有上述两者的属性,提供它们之间的交互描述。

二、根据ADL与编程语言的关系,也可以进行如下分类。

①标准语言:其优点是可扩展已有的工具以适应新框架特性,并且易于掌握;缺点是,不能很好地支持建模语言结构,损失了语言描述效率。

②专用语言:与标准语言相反,它针对系统建模与设计,保证了语言与模型能够很好地匹配;不足之处是,需要学习新的语法及其工具。

③前端语言:通过选择与模型匹配的语言描述,它可以转化为概念模型的标准语言,使用时要考虑转换机制产生的中间制品。

常见种类

目前,一些主流的ADL有如下三种。

1.UML/XMI

UML作为第三代建模语言,严格地定义了对象元模型的语义,并为对象结构、行为的捕获和通信提供了符号表示。UML 2.0对嵌入式系统和SoC提供了良好地支持,在每一级设计者都可以使用行为和结构描述,填补了设计规约和物理实现间的间隙。

使用XML描述参数化的体系结构模型能够很好地匹配目标系统,开发者可以针对自己的需求定制标记结构,得到便于理解的描述实例,让设计具有扩展性。现在已有很多开源应用程序支持XML及schema,使UML/XML成为规范的设计文档标准。

2.SystemC

SystemC设计语言(包括SpecC、ArchC、HardwareC此类描述语言)在学界和业界引起了极大的兴趣。由OSCI组织支持的SystemC已成为实际的可执行系统设计标准,其中SystemCTLM(Transaction Level ModeIing)工作组已经制定了互联抽象标准。SystemC的许多高级构架使其有可能成为名副其实的系统级描述语言。

3.xADL

xADL中的x表明各种专用ADL,种类繁多。它们更加注重针对处理器模型的描述,充分体现ASlP设计特色,LISA便是其中的典型代表。LISA提供了存储、资源、指令集、行为活动、时序、微构架等组件模型的描述信息,用于产生软件工具及其HDL综合逻辑表示。

相关百科
返回顶部
产品求购 求购