自從微處理器面世以來就有了嵌入式系統(tǒng)設(shè)計?,F(xiàn)代嵌入式系統(tǒng)與以往不同的地方在于,極端的運算要求需要使用多個CPU和DSP內(nèi)核、數(shù)十甚至上百個外設(shè)和硬件加速模塊,以及多級存儲器結(jié)構(gòu),并且所有這些都要通過復(fù)雜的多級總線和交叉總線相連。同時,嵌入式系統(tǒng)的軟件規(guī)模也在呈指數(shù)上升。
提高嵌入式設(shè)計質(zhì)量和產(chǎn)能的一個方法,就是采用虛擬系統(tǒng)原型(VSP)。VSP是一種周期、寄存器和時序都十分精確的系統(tǒng)級快速軟件仿真模型。“編輯-編譯-執(zhí)行-調(diào)試”周期的時間與在實際硬件中相當。一旦確定了最優(yōu)架構(gòu),勝人一籌的VSP就能成為系統(tǒng)的可操作規(guī)范(黃金版參考設(shè)計)。硬件設(shè)計成員立即就能開始具體的硬件設(shè)計,而軟件開發(fā)人員也可以利用VSP連接和開發(fā)剩余的系統(tǒng)軟件。
以下是給那些準備采用這種極具建設(shè)性的設(shè)計方法的工程師所提供的一些建議。
應(yīng)該盡早使用VSP量化架構(gòu)性能。多處理器架構(gòu)要求重點關(guān)注總線和存儲器系統(tǒng)架構(gòu)。全面測試有助于確定總線架構(gòu)的瓶頸。如果不解決瓶頸問題,那么可能會引起資源沖突,甚至導致系統(tǒng)癱瘓和進程處于“饑餓”狀態(tài)。
測試候選架構(gòu)性能,并與實際或具有代表性的應(yīng)用軟件進行對比。這種方法可以避免不確定因素以及與估計方法有關(guān)的錯誤,并且更容易構(gòu)建。
使用VSP來捕捉以可執(zhí)行規(guī)范形式表示的意圖,從而推進實現(xiàn)和驗證。在明確描述系統(tǒng)操作方面,一個全面開發(fā)的VSP要比書面規(guī)范更加高效。
使用周期精確模型。這種描述會帶來更少的限制:它們可以用于時序重要的高度反應(yīng)系統(tǒng),并可以與實現(xiàn)驗證結(jié)合使用。
在整個設(shè)計過程中對VSP進行維護,當發(fā)生以實現(xiàn)為主導的架構(gòu)調(diào)整時,對VSP進行更新和重新發(fā)布。VSP可以用于調(diào)試在實際系統(tǒng)生成很長時間后發(fā)生的系統(tǒng)問題。
將VSP用于軟件開發(fā)。具有足夠性能的VSP不僅可以用于早期的設(shè)備驅(qū)動創(chuàng)建,也能用于中間件和最終應(yīng)用的開發(fā)。提前開發(fā)和測試應(yīng)用軟件可以在實現(xiàn)完成前就發(fā)現(xiàn)缺陷,從而節(jié)省開發(fā)成本。
不應(yīng)該在開始軟件開發(fā)和系統(tǒng)級測試之前等待硬件開發(fā)。與傳統(tǒng)基于硬件原型的設(shè)計方法相比,VSP可以幫助用戶提前一年開始軟件的開發(fā)。
等待最終應(yīng)用開發(fā)完成后開始應(yīng)用層性能測試。對具有代表性的應(yīng)用進行測試總比什么都不做好。
盡可能發(fā)掘功能唯一模型的作用。功能唯一的模型不能精確地處理總線時序和處理器運行的異常情況??偩€帶寬會影響程序訪問對系統(tǒng)性能有重要影響的指令和數(shù)據(jù)資源。
繼續(xù)更適合實現(xiàn)而不是仿真的建模實踐。把重點放在最重要的方面。例如,考慮用于描述可綜合RTL描述的建模類型。因為其主要目的是綜合,因此不需要用很多復(fù)雜冗長的描述來如實地反映周期精確功能。過多的描述反而會降低仿真的速度。
使用由快速功能性模型和慢但精確的模型組成的混合建模方法。當設(shè)計要經(jīng)歷多個工程更改時(會花費相當多時間和資源),要使多個模型在功能上保持同步。另外,慢但精確的模型缺乏足夠的速度進行關(guān)鍵時序的全面測試。兩種模型分開使用的解決方案更簡單也更具建設(shè)性。
對不充足的性能感到滿足。速度當然是越快越好,但是同時要注意軟件開發(fā)會要求性能達到數(shù)十Mips。通常,必須使用數(shù)十億的時鐘才能充分開發(fā)軟件。
編輯:jq
-
處理器
+關(guān)注
關(guān)注
68文章
20282瀏覽量
253115 -
嵌入式
+關(guān)注
關(guān)注
5202文章
20516瀏覽量
335225 -
寄存器
+關(guān)注
關(guān)注
31文章
5611瀏覽量
130143
發(fā)布評論請先 登錄
QNX Hypervisor 8.0 for Safety嵌入式虛擬化平臺正式發(fā)布
知識分享-嵌入式系統(tǒng)可靠性模型
什么是嵌入式應(yīng)用開發(fā)?
嵌入式系統(tǒng)應(yīng)用熱門的原因主要有幾個方面
從小白到大牛:Linux嵌入式系統(tǒng)開發(fā)的完整指南
系統(tǒng)嵌入式的學習路線
什么是嵌入式操作系統(tǒng)?
ARM嵌入式這樣學
嵌入式系統(tǒng)的定義和應(yīng)用領(lǐng)域
嵌入式實時操作系統(tǒng)的特點
入行嵌入式應(yīng)該怎么準備?
Linux嵌入式和單片機嵌入式的區(qū)別?
運行在嵌入式系統(tǒng)上的emApps
淺述虛擬系統(tǒng)原型簡化嵌入式多內(nèi)核設(shè)計
評論