天天看點

《資訊實體融合系統(CPS)設計、模組化與仿真——基于 Ptolemy II 平台》——1.2 域和計算模型

本節書摘來自華章出版社《資訊實體融合系統(cps)設計、模組化與仿真——基于 ptolemy ii 平台》一書中的第1章,第1.2節,作者:[美]愛德華·阿什福德·李(edward ashford lee),更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視

ptolemy ii中的語義域(semantic domain),通常稱為域(domain),它定義了設計中兩個元件互動的“實體定律”。它為元件之間的并發執行以及兩個元件之間的通信(如前文所述)提供了管理規則。這種規則的集合稱為計算模型(model of computation,moc)。在本書中,從技術上看盡管域是計算模型的實作,但術語“計算模型”和“域”是可替換的。計算模型是一個抽象模型,然而域是模型在軟體上的具體實作。

模型規則分為三類。第一類規則指定了元件的構成要素,在本書中,一個元件一般是一個角色(actor),在下文中将給予更精确地定義。第二類規則指定執行和并發機制:角色調用是按序的?同時的?還是非确定性的?第三類規則指定通信機制:角色之間怎樣交換資料?

本書中讨論的每一個計算模型都有很多可能的變體,這些變體中很多已經在其他的模組化工具中實作了。本書把重點放在ptolemy ii中實作的計算模型,以及那些具有易讀且書寫良好的語義模型上。為了進一步闡述,我們也提供了其他一些有用的、還未在ptolemy ii中實作但已在其他工具中實作的計算模型的簡要說明和索引。

為了支援異構系統的設計,ptolemy ii域之間可以互動操作。這要求語義域之間有一定程度的協定。但是,當不同的工具被分别獨立設計再組合到一起時,這種協定幾乎是不存在的。ptolemy ii中域之間互動的法則在多篇論文中有所描述(eker et al.,2003;lee et al.,2003;goderis et al.,2009;lee,2010b;tripakis et al.,2013)。本書重點在于域的互操作性的實踐環節,而不是理論。

使用統一的、一緻的軟體系統使我們可以專注于域的互動操作,而不必過多擔心不同工具內建過程帶來的不相容性問題。比如說,ptolemy ii的類型系統(type system)(它定義了可以被各種計算元件所使用的資料類型)被所有的域、狀态機符号以及表達式語言(expression language)所共享。域有能力推測和驗證資料類型是否恰當;這個功能可以在異構模型中的多個域之間無縫地工作。同樣,語義中包含時間概念的域共享一個通用的時間表達方式以及一個(多樣)時間模型。ptolemy ii中的域均可使用相同的圖形編輯器,且均使用xml(可擴充标記語言架構)檔案是存儲設計。該協定消除了異構模型組合中存在的很多實際障礙。這允許我們集中精力關注異構內建帶來的好處——最重要的是,即便設計是異構的,我們也能夠選擇與問題最比對的域。