定義 Rational Rhapsody 實作區塊 (RIMB) 狀態圖及其執行

您可以使用狀態圖來說明 IBM® Rational® Rhapsody® 實作區塊 (RIMB) 的行為。

關於這項作業

在執行時期環境管理的模式中,到達 AUTOSAR 接收端埠的資料元素會轉換為觸發的作業。當資料元素到達時,執行時期環境 (RTE) 會呼叫直接觸發狀態圖上轉移的對應作用中作業。佇列作業由執行時期環境在 AUTOSAR 資料元素層次完成。在此模式中,只有源自 AUTOSAR 資料元素到達的觸發作業可以觸發狀態圖上的轉移。

Rational Rhapsody 管理的模式中,到達 AUTOSAR 接收端埠的資料元素會轉換為 Rational Rhapsody 事件。當資料元素到達時,會呼叫作用中作業,其將對應的事件排入 Rational Rhapsody 實作區塊的事件佇列。Rational Rhapsody 實作區塊的 doExecute 指令會執行並將事件逐個分派到狀態圖中,這是模仿一般 Rational Rhapsody 機制。此模式涉及雙重佇列作業:由執行時期環境和 Rational Rhapsody 進行

在執行時期環境管理的模式中定義 Rational Rhapsody 實作區塊 (RIMB) 的狀態圖

程序

  1. 對於 Rational Rhapsody 實作區塊接收端埠 p 上的每個屬性 x(其達到會觸發轉移),定義名為 evP_x 的觸發作業。
  2. x 的存取模式設定為明確區塊處理明確非區塊處理(即隱含)。存取模式將具有一般 C 類型,而非 Rational Rhapsody 事件。
  3. 建立將觸發的作業用作轉移觸發程式的狀態圖。
  4. 對於每個這種 p.x,您可以定義作用中作業,以用作 p.x 的分派器。 作用中作業的實作是要呼叫 receiveAndHandleData_p_x()。此步驟對於執行時期環境管理的模式和 Rational Rhapsody 管理的模式是相同的。差異是 Rational Rhapsody 針對 receiveAndHandleData_p_x() 產生的程式碼。
  5. 將狀態圖的所有分派器設定為受保護,以確保分派器互斥。

Rational Rhapsody 管理的模式中定義 Rational Rhapsody 實作區塊 (RIMB) 的狀態圖

程序

  1. 建立使用 Rational Rhapsody 事件作為轉移觸發程式的狀態圖。
  2. 使用那些事件來確定 Rational Rhapsody 實作區塊接收端介面類型埠上屬性的類型。如果 AUTOSAR 資料元素 x 到達接收端埠 p 是觸發事件 ev 的方式,請在輸入 pevRational Rhapsody 實作區塊接收端介面上輸入 x。與在前面一組步驟中說明的觸發作業對照,ev 是狀態圖上事件的名稱,不是結合 px 而建立的名稱。將 ev 連結至 p.x 透過輸入 xev 實現。
  3. 對於每個這種 p.x,可以定義作用中作業,以用作 p.x 的佇列器。 作用中作業的實作是要呼叫 receiveAndHandleEvent_p_x()。此步驟對於執行時期環境管理的模式和 Rational Rhapsody 管理的模式是相同的。差異是 Rational Rhapsody 針對 receiveAndHandleEvent_p_x() 產生的程式碼。

回饋