傳統軟件開發方法的局限性
軟件變龐大,開發方式發生變化
汽車軟件日趨龐大,傳統軟件開發無法支撐。例如,支持燃油經濟性改進的發動機控制、精細控制和廢氣法規逐年要求更高的性能和更高的效率。為了實現它,代碼大小正在加速增加。注意力集中在基于模型的開發上,而不是傳統的軟件開發,因為它需要減少開發人力,提高重用性和開發準確性。
基于模型的開發
基于模型的開發是對開發目標進行數學建模,對模型進行重復模擬,是一種制作控制和系統的方法。它在汽車開發軟件中迅速普及。
在基于模型的開發中,可以立即驗證設計的模型,可以防止出現問題的開發回溯。
在基于模型的開發中,模擬控制和工廠建模的模型。對模型進行仿真稱為在環仿真 (MILS) 中的模型。在設計之初,可以通過 MILS 驗證系統。
在驗證該模型時,確認使用從模型生成的代碼的仿真結果與對模型的仿真結果相同,確認生成的代碼是正確的。此測試稱為背靠背測試。
在MCU等處理器上執行生成的代碼,模型與處理器協同仿真,可以驗證算法。工廠模型和處理器的協同仿真稱為處理器在環仿真 (PILS)。
如何在處理器上輕松執行模型生成的代碼?
即使引入基于模型的開發,從制作的模型生成代碼,做Back-to-Back測試,手動工作需要大量時間來構建代碼,在MCU上執行它,設置調試器和協同仿真。 并且即使構建環境,也不容易確認行為和分析性能。
Embedded Target for RH850 Multicore 可以通過與 Mathworks 發布的 Embedded Coder? 通信生成可以在 MCU 上運行的代碼,構建代碼并將其下載到調試器,連接模型和調試器,可以通過 co 進行 PILS -模擬。
RH850 多核的嵌入式目標是什么?
是在RH850上搭建PILS環境的開發工具。Embedded Target for RH850 Multicore具有以下功能,可以自動構建環境。
- 自動生成瑞薩集成開發環境 CS+(*1) 的 RH850 項目文件。
- Embedded Coder 從 Simulink ? 模型生成代碼。
- 將源代碼文件添加到 CS+ 項目文件中。
- 設置構建工具
- 設置調試工具
- 執行調試工具
- 連接 Simulink 和調試工具(支持周期精確模擬器(*2)或評估板)
連接好 Simulink 和調試器后,就可以通過 Simulink 仿真與 MCU 做 PILS。確認 PILS 的結果和 MILS 的結果在 Back-to-Back 測試中相同。
單核 PILS 和分析模塊性能
Embedded Target for RH850 Multicore 可以通過使用周期精確仿真器或評估板來分析模型中子系統塊單元的性能。這是其他公司沒有的嵌入式目標RH850獨有的功能。
首先,將模型轉換為塊的分析性能。使用專用 GUI 選擇測量目標塊,然后轉換模型。
從轉換后的模型生成代碼,用于分析塊的性能。可以通過執行 PILS 來分析塊的性能。可以通過圖表直觀地確認每個塊性能的結果
這個解釋是針對單核的,但最新的幾乎 RH850 是多核的,因此軟件也需要支持多核。
在使用多核的情況下,如果在單核上執行的軟件沒有更改為執行它,性能不會提高,因為行為與單核相同。為了通過有效地執行多核來提高性能,需要對軟件進行并行處理。并行化將在下一章中描述。
如何在多核 MCU 上輕松執行模型生成的代碼?
要在多核上執行軟件,需要將軟件并行化,以便多核可以同時執行軟件。軟件并行化后,需要為多核添加同步處理才能以正確的順序執行,同時需要為多核添加排除控制,使其不訪問公共資源。考慮到這些,很難將軟件并行化。
盡管執行難以并行的軟件,但由于同步處理和排除控制的開銷很大,可能無法獲得預期的性能。
在 RH850 多核嵌入式目標上,通過并行化模型并從并行化模型生成代碼,可以生成可在多核上執行的代碼。
并行多核模型
可以通過塊的分析性能的結果來獲得塊的執行時間。根據信息考慮塊的核心分配。
核心分配是使用專用 GUI 為每個塊分配核心,然后轉換模型。
通過這種分配,可以將模型轉換為多核。
將綠色和藍色塊分配給不同的核心
多核 PILS 的背靠背測試
可以通過生成的代碼對多核 MCU 進行 PILS。可以通過比較 PILS 的結果和 MILS 的結果來進行 Back-to-Back 測試。
多核分析性能和驗證優化的多核并行化
可以像在單核上一樣分析多核上的塊性能。可以通過圖表直觀地確認每個塊性能的結果。
為了縮短與上圖結果相比的總執行時間,重復考慮多核 PILS 的驗證,考慮優化的多核分配。
解釋同時支持單核和多核的基于模型的開發。瑞薩電子繼續維護基于模型的開發環境。
Embedded Target for RH850 Multicore + Multirate,是更高版本的 Embedded Target for RH850 Multicore 支持具有一定控制速率的模型(在基于模型的開發中稱為多速率模型)。
審核編輯:郭婷
-
mcu
+關注
關注
146文章
17019瀏覽量
350373 -
瑞薩電子
+關注
關注
37文章
2842瀏覽量
72149 -
GUI
+關注
關注
3文章
650瀏覽量
39553
發布評論請先 登錄
相關推薦
評論