Simics工具如何實(shí)現(xiàn)模擬特定硬件設(shè)計(jì)并用軟件完成測試
不久前召開的2013年風(fēng)河(Wind River)中國開發(fā)者大會重點(diǎn)探討并展現(xiàn)了物聯(lián)網(wǎng)領(lǐng)域的主要趨勢、挑戰(zhàn)和機(jī)會,會上還著重介紹了風(fēng)河Simics全系統(tǒng)軟件模擬工具。風(fēng)河調(diào)試工具及生命周期解決方案副總裁Michel Genard在接受本刊記者采訪時(shí)表示,Simics是一個全系統(tǒng)軟件模擬工具,可供軟件開發(fā)者模擬硬件,并可模擬任何規(guī)模和復(fù)雜度的電子系統(tǒng),可以幫助工程師突破傳統(tǒng)的產(chǎn)品開發(fā)和測試流程。
本文引用地址:http://m.butianyuan.cn/article/201610/308066.htmSimics工具的產(chǎn)生
Michel Genard介紹說,近年來,由于電子系統(tǒng)日益復(fù)雜且對系統(tǒng)間的互換要求不斷提高,例如,有些電子系統(tǒng)大多使用異構(gòu)多處理器和多核處理器來運(yùn)行多個軟件棧和操作系統(tǒng),有時(shí)這些系統(tǒng)還會作為大型系統(tǒng)的一部分,通過總線、背板、局域網(wǎng)或因特網(wǎng)進(jìn)行互聯(lián)。而傳統(tǒng)的開發(fā)工具和流程在面對這些系統(tǒng)的調(diào)試、集成和測試時(shí)就顯得力不從心。風(fēng)河根據(jù)市場需求開發(fā)的Simics全系統(tǒng)軟件模擬工具可幫助開發(fā)人員從根本上提高系統(tǒng)開發(fā)、調(diào)試和測試的效率,從而大大改善包括產(chǎn)品上市時(shí)間、成本、產(chǎn)品質(zhì)量在內(nèi)的一些重要的業(yè)務(wù)指標(biāo)。
Simics工具實(shí)現(xiàn)的功能
Michel Genard向記者詳細(xì)介紹了Simics工具的功能,Simics工具優(yōu)勢主要體現(xiàn)在:一是可模擬完整的系統(tǒng)。風(fēng)河Simics可為軟件開發(fā)人員把整個目標(biāo)硬件平臺模擬出來。無論該硬件是一個獨(dú)立的處理器,還是一個大型的、復(fù)雜的、互聯(lián)的、多個電子系統(tǒng),均可通過一個虛擬平臺把目標(biāo)硬件的各種功能操作模擬完成,使得未經(jīng)修改的目標(biāo)軟件(BSP、固件、實(shí)際操作系統(tǒng)、中間件和應(yīng)用程序)能完全按它在真實(shí)硬件平臺上運(yùn)行的方式在虛擬的平臺上運(yùn)行,開發(fā)者不必?fù)?dān)心模擬部分和實(shí)際部分有什么誤差(圖1)。
圖1:Simics與單元測試。
二是能加快產(chǎn)品開發(fā)速度。Simics模擬工具可完成電路板設(shè)計(jì)、系統(tǒng)集成、系統(tǒng)測試等環(huán)節(jié),在實(shí)體硬件之前就可開始工作。Simics還支持協(xié)同平臺開發(fā),讓所有開發(fā)人員能夠共享整個虛擬系統(tǒng)和它的狀態(tài),從而提高效率并加快軟件的開發(fā)和測試。
三是優(yōu)化系統(tǒng)開發(fā)。傳統(tǒng)的開發(fā)工具只能解決單個參考板上的故障,要在多個參考板組成的系統(tǒng)中查找錯誤就會變得非常復(fù)雜。例如,使用傳統(tǒng)調(diào)試工具停止運(yùn)行某塊參考板時(shí),系統(tǒng)中的其他參考板仍然會繼續(xù)執(zhí)行任務(wù),這樣就讓實(shí)現(xiàn)故障隔離幾乎成為不可能的事情。Simics可讓工程師們同時(shí)操作、查看和控制系統(tǒng)中所有的參考板。任何正向、逆向的單步執(zhí)行都可應(yīng)用于整個系統(tǒng)而非某一部分,還可以先創(chuàng)建整個系統(tǒng)的檢查點(diǎn)或快照再共享給其他開發(fā)人員,這樣整個設(shè)計(jì)團(tuán)隊(duì)都可以看到整個系統(tǒng)的狀態(tài),從而繼續(xù)無斷點(diǎn)執(zhí)行原有操作。Simics虛擬平臺比實(shí)體硬件更易于設(shè)置和管理,且可以通過復(fù)制部分系統(tǒng)來測試擴(kuò)展性。Simics甚至可以模擬幾百個參考板和處理器組成的系統(tǒng),在上面運(yùn)行所有的目標(biāo)軟件。
四是攻克全系統(tǒng)目標(biāo)硬件管理和系統(tǒng)集成系統(tǒng)的開發(fā)、調(diào)試、集成和測試過程中面臨的最大困難,即缺少目標(biāo)硬件。以往設(shè)計(jì)工程師都是使用一些替代方案,例如使用評估板或基于PC主機(jī)的開發(fā)。有了Simics之后,整個開發(fā)團(tuán)隊(duì)都能獲得一個虛擬的目標(biāo)硬件系統(tǒng),而且是一個完整的系統(tǒng),使每個開發(fā)人員都能基于整個系統(tǒng)對設(shè)計(jì)方案進(jìn)行修改與開發(fā)。Simics虛擬平臺還能幫助他們實(shí)現(xiàn)多種組件配置,這一功能在兼容性測試和客戶的特定條件測試中至關(guān)重要。同時(shí),Simics對整個產(chǎn)品生命周期都能提供支持,從系統(tǒng)定義到后期產(chǎn)品維護(hù)。五是Simics工具可支持多種目標(biāo)架構(gòu)。Michel Genard強(qiáng)調(diào),Simics工具不是僅為某一家開發(fā)的,而是面向和支持整個市場,例如支持Power、Intel、ARM、MIPS、TI等等。
應(yīng)用案例
Michel Genard舉了一個在衛(wèi)星系統(tǒng)使用的案例,出現(xiàn)的問題是,太空中老化的衛(wèi)星系統(tǒng)需要用軟件補(bǔ)丁來彌補(bǔ)硬件缺陷,而在地面上很難創(chuàng)建修補(bǔ)用的軟件補(bǔ)丁,因?yàn)槿鄙賹?shí)際硬件。而采用Simics工具的解決方案可仿真系統(tǒng)硬件,并模擬硬件的退化程序來測試軟件。在上傳補(bǔ)丁之前,能夠在地面上用仿真平臺進(jìn)行完整的測試(單元測試和系統(tǒng)測試)。Michel Genard表示,Simics工具已在眾多客戶和應(yīng)用領(lǐng)域得到廣泛應(yīng)用,根據(jù)客戶的反饋,使用Simics工具后,調(diào)試時(shí)間可節(jié)省35%,運(yùn)行成本可減少50%,產(chǎn)品上市時(shí)間可縮短66%。
評論