本發(fā)明涉及需求工程,更具體的說是涉及一種基于vhdl的復雜嵌入式系統(tǒng)軟件需求半自動仿真方法及系統(tǒng)。
背景技術:
1、隨著嵌入式系統(tǒng)的發(fā)展,系統(tǒng)的規(guī)模和復雜性呈指數(shù)級增長。這些系統(tǒng)涉及多個組件、網(wǎng)絡通信、并行處理、實時響應等復雜特性。傳統(tǒng)的需求驗證方法無法有效應對這種復雜性,因此需要仿真方法來提供更全面和準確的驗證。
2、復雜嵌入式系統(tǒng)的開發(fā)過程中,需求錯誤或遺漏可能導致嚴重的后果,如系統(tǒng)故障、功能不完備、性能問題等,這些問題的修復成本往往非常高昂。通過在需求階段進行仿真驗證,可以及早發(fā)現(xiàn)和解決問題,降低開發(fā)過程中的風險和成本。同時,復雜嵌入式系統(tǒng)的開發(fā)也是一個持續(xù)迭代和改進的過程。在需求規(guī)約中可能存在模糊或不完善的部分,需要通過仿真方法來驗證和完善。通過不斷的仿真驗證和改進,可以逐步提高需求規(guī)約的質量和系統(tǒng)的可靠性。
3、因此,如何提供一種針對復雜嵌入式系統(tǒng)的需求仿真方法是本領域技術人員亟需解決的技術問題。
技術實現(xiàn)思路
1、有鑒于此,本發(fā)明提供了一種基于vhdl的復雜嵌入式系統(tǒng)軟件需求半自動仿真方法及系統(tǒng),解決了背景技術存在的問題。
2、為了實現(xiàn)上述目的,本發(fā)明提供如下技術方案:
3、一種基于vhdl的復雜嵌入式系統(tǒng)軟件需求半自動仿真方法,包括以下步驟:
4、預定義特定領域的設備模型,所述設備模型為人工構建的設備vhdl模型;
5、根據(jù)軟件需求規(guī)約中的原子控制器需求,生成原子控制器vhdl模型并由人工對其中的計算組件進行補充完善;
6、根據(jù)軟件需求規(guī)約中的原子控制器需求,生成數(shù)據(jù)存儲vhdl模型;
7、根據(jù)軟件需求規(guī)約中的組合控制器需求,生成組合控制器vhdl模型;
8、在組合系統(tǒng)階段,將生成的原子控制器vhdl模型、設備vhdl模型、數(shù)據(jù)存儲vhdl模型以及組合控制器vhdl模型進行組合,得到完整的系統(tǒng)模型;
9、在執(zhí)行驗證性質階段,使用vhdl驗證工具vivado對完整的系統(tǒng)模型進行性質驗證。
10、可選的,生成原子控制器vhdl模型并由人工對計算組件進行補充完善,具體包括以下步驟:
11、遍歷軟件需求規(guī)約中的原子控制器需求,得到原子控制器需求所涉及的原子控制器、計算組件、設備名稱和數(shù)據(jù)存儲名稱;
12、根據(jù)原子控制器需求的原子控制器名稱和計算組件名稱,生成原子控制器vhdl模型的模型結構;
13、根據(jù)原子控制器需求涉及的設備名稱及對設備的調用信號、數(shù)據(jù)存儲名稱及對數(shù)據(jù)存儲的調用信號和計算組件名稱及對計算組件的調用信號,生成原子控制器vhdl模型的實體端口聲明;
14、基于原子控制器需求與組合控制器需求的關系,生成原子控制器vhdl模型的初始狀態(tài)和結束狀態(tài),結合原子控制器需求對設備、數(shù)據(jù)存儲和計算組件的調用信號順序,生成原子控制器狀態(tài)機進程;
15、根據(jù)原子控制器需求中的共享現(xiàn)象描述,生成原子控制器vhdl模型中使用的信號和變量;
16、人工對生成的原子控制器vhdl模型中的計算組件進行補充完善。
17、可選的,生成數(shù)據(jù)存儲vhdl模型,具體為:
18、根據(jù)原子控制器需求涉及的數(shù)據(jù)存儲名稱及對數(shù)據(jù)存儲的調用信號,生成數(shù)據(jù)存儲vhdl模型的實體端口聲明。
19、可選的,生成組合控制器vhdl模型,具體包括以下步驟:
20、根據(jù)組合控制器需求的組合控制器名稱,生成組合控制器vhdl模型的實體端口聲明;
21、根據(jù)組合控制器需求的組合控制器名稱及其關系,生成組合控制器vhdl模型的狀態(tài);
22、根據(jù)組合控制器需求中對組合控制器的時間約束,生成對應狀態(tài)間的遷移條件。
23、可選的,得到完整的系統(tǒng)模型,具體包括以下步驟:
24、根據(jù)組合控制器需求的組合控制器名稱及其關系,生成系統(tǒng)結構樹,自底向上遍歷結構樹將組合控制器vhdl模型和原子控制器vhdl模型進行組合;
25、根據(jù)原子控制器需求涉及的數(shù)據(jù)存儲名稱及對數(shù)據(jù)存儲的調用信號,將上一步組合得到的模型和數(shù)據(jù)存儲vhdl模型進行組合;
26、根據(jù)原子控制器需求涉及的設備名稱及對設備的調用信號,將上一步組合得到的模型和設備vhdl模型進行組合得到完整的系統(tǒng)模型。
27、可選的,在執(zhí)行驗證性質階段,待驗證的性質類型及vivado可驗證的性質具體包括:
28、數(shù)據(jù)流正確性:驗證系統(tǒng)在處理數(shù)據(jù)時是否滿足軟件需求規(guī)約中定義的數(shù)據(jù)正確性要求;
29、控制流正確性:驗證系統(tǒng)是否按照軟件需求規(guī)約的功能進行操作;
30、時間約束可滿足性:對于存在時間約束的復雜嵌入式系統(tǒng),驗證在規(guī)定的時間內(nèi)是否完成相應的動作。
31、可選的,時間約束可滿足性的驗證包括以下三種主要類型:
32、1)檢測在具體時刻t0,進入狀態(tài)x:a<>x?imply?t==t0;
33、2)任務t為周期任務,其周期為p,假設時鐘t專門記錄任務執(zhí)行時間,檢測其是否滿足周期:a<>t.init?imply?t==p;其中,t.init表示處于t時間自動機模型init狀態(tài)節(jié)點;
34、3)檢測狀態(tài)x維持的時間區(qū)間是否在[t1,t2]:a<>x?imply?t>=t1&&t<=t2。
35、一種基于vhdl的復雜嵌入式系統(tǒng)軟件需求半自動仿真系統(tǒng),包括:設備預定義模塊、原子控制器生成模塊、數(shù)據(jù)存儲生成模塊、組合控制器生成模塊、系統(tǒng)組合模塊和性質驗證模塊;
36、所述設備預定義模塊,用于預定義特定領域的設備模型,所述設備模型為人工構建的設備vhdl模型;
37、所述原子控制器生成模塊,用于根據(jù)軟件需求規(guī)約中的原子控制器需求,生成原子控制器vhdl模型并由人工對計算組件進行補充完善;
38、所述數(shù)據(jù)存儲生成模塊,用于根據(jù)軟件需求規(guī)約中的原子控制器需求,生成數(shù)據(jù)存儲vhdl模型;
39、所述組合控制器生成模塊,用于根據(jù)軟件需求規(guī)約中的組合控制器需求,生成組合控制器vhdl模型;
40、所述系統(tǒng)組合模塊,用于將生成的原子控制器vhdl模型、設備vhdl模型、數(shù)據(jù)存儲vhdl模型以及組合控制器vhdl模型進行組合,得到完整的系統(tǒng)模型;
41、所述性質驗證模塊,通過使用vhdl驗證工具vivado對完整的系統(tǒng)模型進行性質驗證。
42、經(jīng)由上述的技術方案可知,與現(xiàn)有技術相比,本發(fā)明提供了一種基于vhdl的復雜嵌入式系統(tǒng)軟件需求半自動仿真方法及系統(tǒng),通過將生成的原子控制器vhdl模型、設備vhdl模型、數(shù)據(jù)存儲vhdl模型以及組合控制器vhdl模型進行組合,得到完整的系統(tǒng)模型,可以實現(xiàn)仿真模型半自動化生成的過程,然后通過調用vivado軟件進行性質驗證,從而實現(xiàn)需求仿真模型半自動化生成及性質驗證。