本申請涉及車輛技術,尤其涉及一種基于autosar架構下基礎軟件層的生成方法、裝置及設備。
背景技術:
1、隨著汽車電子技術的快速發展,汽車軟件架構(autosar)已成為行業標準。autosar架構采用了一種分層的設計方法,將汽車電子系統的功能和軟件組件劃分為不同的層次。autosar架構的主要分層:應用層,運行時環境層,基礎軟件層和硬件抽象層。
2、其中,基礎軟件層是autosar架構的核心部分,提供了一系列通用的功能和服務,為上層應用程序和下層硬件提供接口和抽象。然而,目前基礎軟件層的生成過程仍需要用戶手動配置和編程,配置過程繁瑣且容易出錯。
技術實現思路
1、本申請提供一種基于autosar架構下基礎軟件層的生成方法、裝置及設備,用以解決autosar架構的基礎軟件層需要手動編程得到,效率低的問題。
2、第一方面,本申請提供一種基于autosar架構下基礎軟件的生成方法,所述方法包括:
3、獲取硬件拓撲圖和軟件信號矩陣表,所述硬件拓撲圖用于表示硬件模塊之間的連接關系,所述軟件信號矩陣表用于表示硬件模塊之間通信協議的信號參數;
4、根據所述硬件拓撲圖和所述軟件信號矩陣表生成基礎軟件層bsw的配置文件;
5、根據所述配置文件得到bsw的源代碼,所述bsw的源代碼包括bsw代碼,運行時環境模板和應用軟件模板,所述bsw代碼是用于提供功能服務和接口的代碼,所述運行時環境模板是用于描述應用軟件與基礎軟件之間接口的代碼,所述應用軟件模板是用于描述應用軟件結構和邏輯的代碼;
6、根據所述bsw代碼、所述運行時環境模板和所述應用軟件模板編譯生成可執行文件。
7、可選的,所述獲取硬件拓撲圖,包括:
8、響應于用戶在圖形交互界面中的繪制連接關系的操作,根據所述用戶繪制的圖例的連接關系生成所述硬件拓撲圖。
9、可選的,所述硬件拓撲圖中每個圖例對應一個軟件開發工具包sdk。
10、可選的,所述根據所述硬件拓撲圖和所述軟件信號矩陣表生成基礎軟件層bsw的配置文件,包括:
11、根據所述軟件信號矩陣表的信號名稱,將所述軟件信號矩陣表加載到所述硬件拓撲圖中所述信號名稱對應的位置,得到配置軟件屬性的硬件拓撲圖;
12、根據所述配置軟件屬性的硬件拓撲圖,通過配置工具生成所述bsw的配置文件。
13、可選的,所述方法還包括:
14、對所述bsw的源代碼進行靜態代碼測試,所述靜態代碼測試用于識別所述bsw的源代碼是否存在缺陷;
15、若識別到所述bsw的源代碼中存在缺陷,根據預設的優化算法庫中的優化算法對所述bsw的源代碼或者所述配置文件進行優化,所述優化算法庫中包括以下優化算法中的至少一種:算法優化、語法優化、數據結構優化。
16、可選的,所述方法還包括:
17、基于所述信號矩陣表生成信號矩陣測試用例;
18、將所述可執行文件導入到虛擬機中運行;
19、在所述虛擬機中調用所述信號矩陣測試用例進行信號交互測試,得到信號交互測試結果;
20、若所述信號交互測試結果與期望結果相同,則保存所述可執行文件;
21、若所述信號交互測試結果與期望結果不相同,則校驗所述配置文件,并根據校驗后的配置文件重新生成可執行文件。
22、可選的,所述方法還包括:
23、響應于用戶對所述硬件拓撲圖中任一圖例的參數編輯操作,獲取被編輯的圖例標識和編輯參數;
24、根據所述編輯參數修改所述圖例標識對應的sdk的參數。
25、第二方面,本申請還提供一種基于autosar架構下基礎軟件的生成裝置,所述裝置包括:
26、用戶界面組件模塊,用于獲取硬件拓撲圖和軟件信號矩陣表,所述硬件拓撲圖用于表示硬件模塊之間的連接關系,所述軟件信號矩陣表用于表示硬件模塊之間通信協議的信號參數;
27、配置文件轉換模塊,用于根據所述硬件拓撲圖和所述軟件信號矩陣表生成基礎軟件層bsw的配置文件;
28、標準代碼生成模塊,用于根據所述配置文件得到所述bsw的源代碼,所述源代碼包括bsw代碼,運行時環境模板和應用軟件模板,所述bsw代碼是用于提供功能服務和接口的代碼,所述運行時環境模板是用于描述應用軟件與基礎軟件之間接口的代碼,所述應用軟件模板是用于描述應用軟件結構和邏輯的代碼;
29、編譯模塊,用于根據所述bsw代碼、所述運行時環境模板和所述應用軟件模板編譯生成可執行文件。
30、第三方面,本申請還提供一種電子設備,包括:處理器,以及與所述處理器通信連接的存儲器;
31、所述存儲器存儲計算機執行指令;
32、所述處理器執行所述存儲器存儲的計算機執行指令,以實現如第一方面任一項所述的基于autosar架構下基礎軟件的生成方法。
33、第四方面,本申請還提供一種計算機可讀存儲介質,所述計算機可讀存儲介質中存儲有計算機執行指令,所述計算機執行指令被處理器執行時用于實現如第一方面任一項所述的基于autosar架構下基礎軟件的生成方法。
34、本申請提供的基于autosar架構下基礎軟件層的生成方法、裝置及設備,該方法包括:獲取硬件拓撲圖和軟件信號矩陣表,硬件拓撲圖用于表示硬件模塊之間的連接關系,軟件信號矩陣表用于表示硬件模塊之間通信協議的信號參數;根據硬件拓撲圖和軟件信號矩陣表生成基礎軟件層bsw的配置文件;根據配置文件得到bsw的源代碼,bsw的源代碼包括bsw代碼,運行時環境模板和應用軟件模板,bsw代碼是用于提供功能服務和接口的代碼,運行時環境模板是用于描述應用軟件與基礎軟件之間接口的代碼,應用軟件模板是用于描述應用軟件結構和邏輯的代碼;根據bsw代碼、運行時環境模板和應用軟件模板編譯生成可執行文件。通過本方法自動化生成bsw配置和代碼,減少了手動配置和編程的工作量,提高了開發效率。
1.一種基于autosar架構下基礎軟件的生成方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述獲取硬件拓撲圖,包括:
3.根據權利要求2所述的方法,其特征在于,所述硬件拓撲圖中每個圖例對應一個軟件開發工具包sdk。
4.根據權利要求1至3任一項所述的方法,其特征在于,所述根據所述硬件拓撲圖和所述軟件信號矩陣表生成基礎軟件層bsw的配置文件,包括:
5.根據權利要求1至3任一項所述的方法,其特征在于,所述方法還包括:
6.根據權利要求1至3任一項所述的方法,其特征在于,所述方法還包括:
7.根據權利要求3所述的方法,其特征在于,所述方法還包括:
8.一種基于autosar架構下基礎軟件的生成裝置,其特征在于,所述裝置包括:
9.一種電子設備,其特征在于,所述電子設備包括:處理器,以及與所述處理器通信連接的存儲器;
10.一種計算機可讀存儲介質,其特征在于,所述計算機可讀存儲介質中存儲有計算機執行指令,所述計算機執行指令被處理器執行時用于實現如權利要求1至7任一項所述的基于autosar架構下基礎軟件的生成方法。