複製鏈接
請複製以下鏈接發送給好友

體系結構描述語言

鎖定
體系結構描述語言(Architecture Description Language,ADL)是一種能夠建立軟件系統概念化體系結構的語言。ADL能夠刻畫體系結構的具體語法和概念框架。 [1] 
中文名
體系結構描述語言
外文名
Architecture Description Language
所屬學科
計算機科學
縮    寫
ADL
定    義
建立系統概念化體系結構的語言
特    點
構造、抽象、重用等

體系結構描述語言設計要求

ADL創立者希望ADL能夠描述和表達系統體系結構的語言或概念模型。而軟件工程工作者則期望ADL是描述和表示軟件體系結構的計算機語言,供軟件開發開發人員交流使用。
ADL部件和連接器要能夠描述接口(配合連接器)、類型、語義、約束、進化和非功能特徵。而在體系結構的配置方面,ADL需要能夠説明可理解性、異構性(heterogeneity)、組合性、約束、細化、可追蹤性、可伸縮性、進化、動態性和非功能特性。 [1] 

體系結構描述語言特點

典型的ADL在充分繼承和吸收傳統程序設計語言的精確性和嚴格性特點的同時,還應該具有構造、抽象、重用、組合、異構和分析推理等各種能力和特性。其中:
(1)構造能力指的是ADL能夠使用較小的獨立體系結構元素來建造大型軟件系統。
(2)抽象能力指的是ADL使得軟件體系結構中的構件和連接件描述可以只關注它們的抽象特性,而不管其具體的實現細節。
(3)重用能力指的是ADL使得組成軟件系統的構件、連接件甚至是軟件體系結構都成為軟件系統開發和設計的可重用部件。
(4)組合能力指的是ADL使得其描述的每一系統元素都有其自己的局部結構,這種描述局部結構的特點使得ADL支持軟件系統的動態變化組合。
(5)異構能力指的ADL允許多個不同的體系結構描述關聯存在。
(6)分析和推理能力指的是ADI。允許對其描述的體系結構進行多種不同的性能和功能上的多種推理分析。 [2] 

體系結構描述語言分類

一、通常,ADL按其描述屬性可分為如下三類。
①結構ADL,針對處理器及其互聯的硬件單元。
②行為ADL,主要關注處理器指令集語義功能。
③混合ADL,兼有上述兩者的屬性,提供它們之間的交互描述。
二、根據ADL與編程語言的關係,也可以進行如下分類。
①標準語言:其優點是可擴展已有的工具以適應新框架特性,並且易於掌握;缺點是,不能很好地支持建模語言結構,損失了語言描述效率。
②專用語言:與標準語言相反,它針對系統建模與設計,保證了語言與模型能夠很好地匹配;不足之處是,需要學習新的語法及其工具。
③前端語言:通過選擇與模型匹配的語言描述,它可以轉化為概念模型的標準語言,使用時要考慮轉換機制產生的中間製品。 [3] 

體系結構描述語言常見種類

一些主流的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綜合邏輯表示。 [3] 
參考資料
  • 1.    王安生編著.軟件工程化:清華大學出版社,2014.04
  • 2.    張友生編著.清華大學出版社:軟件體系結構原理、方法與實踐 第2版,2014.01
  • 3.    朱勇著.可執行ASIP設計規約:西南交通大學出版社,2014.01