與之相對(duì)應(yīng)的挑戰(zhàn)也接踵而至:伴隨著功能的豐富與拓展,嵌入式軟件規(guī)模逐漸擴(kuò)大,但因其偏向私域、定制化的特點(diǎn),導(dǎo)致嵌入式軟件的開發(fā)缺乏統(tǒng)一規(guī)范,很大概率存在一定缺陷。一旦涉及航空航天、汽車等安全關(guān)鍵領(lǐng)域,這些可能存在的缺陷就會(huì)對(duì)人身、財(cái)產(chǎn)安全方面帶來(lái)極大威脅。
為什么嵌入式軟件相較普通應(yīng)用軟件更易存在缺陷?
最根本的原因是,嵌入式軟件需要依賴真實(shí)硬件才能運(yùn)行,那么在軟件開發(fā)初期,硬件資源未生產(chǎn)調(diào)試完成之前,軟件開發(fā)處于盲盒狀態(tài),極大地增加了軟件開發(fā)的不確定性。可以說(shuō),在嵌入式軟件開發(fā)的初期階段,不具備調(diào)試的條件。
要解決這一問(wèn)題并不難,時(shí)至今日,仿真已在眾多領(lǐng)域得到了廣泛應(yīng)用,對(duì)嵌入式軟件而言也是如此,甚至更為有利,因?yàn)閷?shí)物調(diào)試對(duì)嵌入式軟件而言的風(fēng)險(xiǎn)實(shí)在太高:
1. 燒錄風(fēng)險(xiǎn):在硬件資源比較充裕的情況下,嵌入式軟件的功能開發(fā)與驗(yàn)證需要不斷重復(fù)完成燒錄調(diào)試,而燒錄本身具有一定的風(fēng)險(xiǎn)性和不確定性。燒錄失敗可能導(dǎo)致集成在板卡上的存儲(chǔ)設(shè)備失效。由于獨(dú)立更換存儲(chǔ)設(shè)備的成本較高,最終結(jié)果往往是板卡整體報(bào)廢,甚至?xí)?dǎo)致設(shè)備的損壞,帶來(lái)不必要的財(cái)產(chǎn)損失。
2. 環(huán)境風(fēng)險(xiǎn):嵌入式軟件的實(shí)物調(diào)試依賴硬件環(huán)境,因此外界環(huán)境的影響,如靜電、水等不確定因素很可能會(huì)引起硬件損壞,導(dǎo)致調(diào)試工作無(wú)法順利進(jìn)行,進(jìn)而影響工期與交付、上市時(shí)間。
3. 場(chǎng)景限制:嵌入式軟件的調(diào)試存在特定場(chǎng)景無(wú)法驗(yàn)證的問(wèn)題,如太空射線導(dǎo)致的設(shè)備失靈。根據(jù)國(guó)內(nèi)外對(duì)航天故障的統(tǒng)計(jì)結(jié)果,40%左右的故障源自太空輻射:1993年8月21日,美國(guó)五顆衛(wèi)星同時(shí)失效,原因是使用的同一批定時(shí)器芯片均因宇宙射線輻照而失效;1994年,我國(guó)發(fā)射的“風(fēng)云二號(hào)”氣象衛(wèi)星的失控也是由于一塊超大規(guī)模集成電路(Very Large Scale Integration, VLSI)芯片受到空間輻射影響而失效。
由此可見,對(duì)于嵌入式軟件而言,仿真不光能夠?qū)崿F(xiàn)測(cè)試“左移”,還能有效規(guī)避上述風(fēng)險(xiǎn),將問(wèn)題扼殺在初期階段,保證嵌入式軟件不受場(chǎng)景限制地完成開發(fā)與調(diào)試。這種優(yōu)勢(shì)對(duì)于當(dāng)前電動(dòng)化、智能化、網(wǎng)聯(lián)化的全球汽車發(fā)展方向而言無(wú)疑更為契合。
當(dāng)前汽車行業(yè)對(duì)仿真的應(yīng)用主要集中在對(duì)汽車ECU,也就是“行車大腦”的虛擬仿真。下文將介紹應(yīng)用于汽車ECU的基于天目全數(shù)字實(shí)時(shí)仿真軟件SkyEye的TRACE32調(diào)試,SkyEye負(fù)責(zé)提供汽車虛擬ECU的搭建平臺(tái),結(jié)合TRACE32即可實(shí)現(xiàn)嵌入式仿真調(diào)試。
*SkyEye:天目全數(shù)字實(shí)時(shí)仿真軟件SkyEye是一款國(guó)內(nèi)自主研發(fā)、自主可控的嵌入式仿真軟件,支持多種處理器架構(gòu),如 ARM、DSP、PowerPC、SPARC、X86、MIPS、Tricore等。同時(shí)支持多種國(guó)產(chǎn)操作系統(tǒng)的調(diào)試運(yùn)行,如天脈、銳華、翼輝、RT-Thread等,支持Linux系統(tǒng)、Android系統(tǒng)調(diào)試運(yùn)行。
*TRACE32:嵌入式系統(tǒng)調(diào)試工具,主要用于對(duì)微處理器、微控制器和數(shù)字信號(hào)處理器(DSP)等嵌入式系統(tǒng)進(jìn)行調(diào)試和分析,提供了代碼調(diào)試、系統(tǒng)狀態(tài)監(jiān)控、性能分析、系統(tǒng)控制、多核調(diào)試等多種功能。
??
▲基于SkyEye的TRACE32調(diào)試架構(gòu)圖
?
功能:
SkyEye與TRACE32結(jié)合可實(shí)現(xiàn)多種高安全高可靠的嵌入式軟件研發(fā)目的,通常包含以下幾種:
-
嵌入式軟件開發(fā):SkyEye用于仿真硬件,TRACE32用于代碼調(diào)試和驗(yàn)證。通過(guò)單步執(zhí)行、斷點(diǎn)設(shè)置、變量監(jiān)視等功能,開發(fā)人員可以快速定位代碼中的問(wèn)題,確保軟件的正確性和穩(wěn)定性。
-
仿真硬件調(diào)試和驗(yàn)證:通過(guò)查看寄存器狀態(tài)、觀察信號(hào)波形等,開發(fā)人員可以分析硬件的工作狀態(tài)和問(wèn)題,并及時(shí)進(jìn)行修復(fù)和優(yōu)化。
-
性能分析和優(yōu)化:支持跟蹤程序的執(zhí)行路徑、記錄函數(shù)調(diào)用時(shí)間等,幫助開發(fā)人員分析程序的性能瓶頸并進(jìn)行優(yōu)化,提高系統(tǒng)的響應(yīng)速度和效率。
-
多核系統(tǒng)調(diào)試:SkyEye支持多核嵌入式系統(tǒng),TRACE32調(diào)試器可以同時(shí)調(diào)試多個(gè)核心的代碼和狀態(tài),幫助開發(fā)人員理解多核系統(tǒng)的協(xié)同工作和通信機(jī)制,確保系統(tǒng)的穩(wěn)定性和可靠性。
-
系統(tǒng)集成測(cè)試:幫助開發(fā)人員在集成測(cè)試階段進(jìn)行系統(tǒng)級(jí)調(diào)試和驗(yàn)證。通過(guò)模擬外部環(huán)境、仿真外部設(shè)備等功能,開發(fā)人員可以模擬各種場(chǎng)景下的系統(tǒng)行為,并驗(yàn)證系統(tǒng)的功能和性能。
?
優(yōu)勢(shì):
SkyEye與TRACE32的結(jié)合具有下列優(yōu)勢(shì):
-
系統(tǒng)結(jié)構(gòu)簡(jiǎn)單:TRACE32與SkyEye都是功能獨(dú)立的軟件,包含豐富的接口設(shè)計(jì),通過(guò)簡(jiǎn)單的配置即可實(shí)現(xiàn)兩款軟件的協(xié)同工作,一個(gè)頁(yè)面即可完成軟件對(duì)接配置。
?
?
-
功能易于操作:TRACE32作為上位機(jī)軟件,SkyEye作為下位機(jī)仿真軟件,通過(guò)配置連通后,在TRACE32中可對(duì)SkyEye仿真環(huán)境進(jìn)行調(diào)試,調(diào)試過(guò)程可視化,操作簡(jiǎn)單。
?
-
結(jié)果響應(yīng)及時(shí):SkyEye虛擬ECU可實(shí)現(xiàn)真實(shí)ECU的1:1仿真,通過(guò)TRACE32可快速查看結(jié)果,使仿真調(diào)試工作不會(huì)感知到虛擬設(shè)備的存在,達(dá)到與真實(shí)ECU一樣的處理結(jié)果。
-
集成測(cè)試便捷:SkyEye支持多種處理器仿真,可通過(guò)TRACE32同時(shí)調(diào)試不同的仿真設(shè)備,構(gòu)建起集成測(cè)試環(huán)境,實(shí)現(xiàn)聯(lián)合測(cè)試效果。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-849099.html
總結(jié)
SkyEye虛擬ECU與TRACE32的完美結(jié)合能夠?yàn)槠嚨劝踩P(guān)鍵領(lǐng)域的用戶有效降低軟件研發(fā)成本,并為增效、保質(zhì)量保駕護(hù)航。可以大膽預(yù)測(cè),該方案具備為用戶至少節(jié)省35%調(diào)試時(shí)間、減少50%測(cè)試成本、縮短66%產(chǎn)品上市時(shí)間的能力。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-849099.html
?到了這里,關(guān)于虛擬ECU:基于SkyEye的TRACE32嵌入式調(diào)試的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!