新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 詳述軟件開發(fā)中模擬器與仿真器的區(qū)別

詳述軟件開發(fā)中模擬器與仿真器的區(qū)別

作者: 時(shí)間:2008-05-05 來源:網(wǎng)絡(luò) 收藏
領(lǐng)先的芯片制造工藝可在單個(gè)數(shù)字信號(hào)處理器(DSP)上集成數(shù)億個(gè)晶體管,并能以數(shù)百兆赫茲的頻率運(yùn)行。但是,由這些集成度與速度實(shí)現(xiàn)的極高性能付出了在可視化與存取方面的代價(jià)。具有更高集成度及大容量片上高速緩存的更大更快的DSP使得開發(fā)人員在操作期間很難看見芯片內(nèi)部所發(fā)生的事情,也難于控制測(cè)試所需的輸入。當(dāng)今許多應(yīng)用的代碼量已增加到數(shù)十萬行。實(shí)際上,某些開發(fā)人員的代碼如今已達(dá)到了上百萬行。通過再次注重提高開發(fā)流程的效率,重新使用業(yè)經(jīng)驗(yàn)證的軟件模塊與算法,及提高應(yīng)用性能以充分利用處理器,開發(fā)團(tuán)隊(duì)正致力于加快產(chǎn)品的上市進(jìn)程。在代碼的直觀示圖與訪問方面的欠缺,使系統(tǒng)調(diào)試的常規(guī)做法變得更為艱難,從而影響了開發(fā)速度,增加了產(chǎn)品在推向市場(chǎng)前的資源成本。實(shí)際上,研究表明,如果在設(shè)計(jì)流程中未能及時(shí)發(fā)現(xiàn)故障與瓶頸,則會(huì)使隔離與修復(fù)工作變得更為困難且代價(jià)更加昂貴,并進(jìn)而成為產(chǎn)品錯(cuò)失關(guān)鍵市場(chǎng)窗口的主要原因。

均可為開發(fā)人員提供代碼與系統(tǒng)性能更佳的可視化,即便是最先進(jìn)的DSP與微處理器。

模擬與仿真

在基于DSP的開發(fā)設(shè)計(jì)中,模擬與仿真的作用很容易使人混淆,因?yàn)榇致钥磥?,它們?zhí)行的功能非常相似。從最簡(jiǎn)單的方面講,模擬與仿真的主要在于模擬完全是在軟件中完成的,而仿真則是在硬件中進(jìn)行。但是如果要更深入探究的話,每種工具的唯一特性與強(qiáng)大的優(yōu)勢(shì)是非常明顯的。兩者之間取長(zhǎng)補(bǔ)短,共同提供了它們無法單獨(dú)擁有的優(yōu)勢(shì)。

從傳統(tǒng)意義上講,模擬是在設(shè)計(jì)的最初階段開始進(jìn)行,這期間設(shè)計(jì)人員會(huì)借助它來對(duì)初始代碼進(jìn)行評(píng)估。開發(fā)人員需在設(shè)計(jì)進(jìn)程的初期階段--一般在獲得硬件前的幾個(gè)月--使用對(duì)復(fù)雜的多核系統(tǒng)進(jìn)行建模。這使得在無需原型器件的情況下對(duì)各種設(shè)計(jì)配置進(jìn)行評(píng)估成為可能。此外,當(dāng)設(shè)計(jì)人員運(yùn)行核心代碼并對(duì)之進(jìn)行不同的更改時(shí),軟件模擬可以采集到大量的調(diào)試數(shù)據(jù)。通過模擬會(huì)影響代碼效果的DSP及所有外設(shè)的性能,軟件模擬有可能確定最有效的應(yīng)用設(shè)計(jì)。

然而,以往的緩慢速度使之無法得到廣泛的應(yīng)用。為了提高效率,必須加快模擬器的速度,才能實(shí)現(xiàn)針對(duì)復(fù)雜DSP應(yīng)用所需的大量數(shù)據(jù)采集。由于模擬器速度緩慢,設(shè)計(jì)人員往往在開發(fā)周期的后期階段當(dāng)獲得硬件原型后才進(jìn)行調(diào)試與分析--這樣的過程會(huì)造成巨大的時(shí)間與成本的浪費(fèi)。隨著快速模擬技術(shù)與數(shù)據(jù)采集工具的推出,開發(fā)人員僅需幾分鐘便可采集大量數(shù)據(jù),而非先前或同類競(jìng)爭(zhēng)模擬器所需要的數(shù)小時(shí)。模擬器在設(shè)計(jì)與調(diào)試過程中是一種非常重要的工具,因?yàn)樗軌蚍磸?fù)地運(yùn)行相同的模擬過程,而基于硬件的評(píng)估會(huì)因中斷等外部事件所導(dǎo)致的變化而無法實(shí)現(xiàn)這一過程。此外,模擬器還具有高度的靈活性,可獨(dú)立對(duì)CPU進(jìn)行深入分析,或可用于對(duì)整個(gè)系統(tǒng)進(jìn)行建模。模擬器可輕松地進(jìn)行配置,能夠與各種存儲(chǔ)器及外設(shè)相集成。由于設(shè)計(jì)人員正在對(duì)硬件進(jìn)行建模,因而他們實(shí)際上可以將更多的東西構(gòu)建到模型中去,使之可提取更多的數(shù)據(jù)來支持高級(jí)分析功能。

仿真功能的深入研究

那么何處需要仿真呢?仿真使開發(fā)人員可了解不同軟硬件模型間的實(shí)時(shí)交互作用。它還可以將實(shí)現(xiàn)真實(shí)世界的激勵(lì)連接到外設(shè)上,來啟動(dòng)系統(tǒng)行為的調(diào)試。開發(fā)人員在開發(fā)后期階段可獲得真實(shí)數(shù)據(jù)時(shí)使用。通過確定應(yīng)用程序在硬件上實(shí)際運(yùn)行性能,可驗(yàn)證模擬器測(cè)試過的設(shè)計(jì)。驗(yàn)證仿真器獲得的這些信息可以幫助設(shè)計(jì)人員再次采用模擬器來進(jìn)一步優(yōu)化硬件性能。

時(shí)鐘速度、數(shù)據(jù)速率以及器件復(fù)雜性不斷加速的發(fā)展也推動(dòng)著仿真器的向前發(fā)展。先進(jìn)的仿真技術(shù)如實(shí)時(shí)數(shù)據(jù)交換使您可在不影響運(yùn)行的情況下獲得系統(tǒng)運(yùn)行的直觀視圖。通過RTDX數(shù)據(jù)鏈接,TI基于JTAG掃描技術(shù)的PCI總線仿真器XDS560助于減少當(dāng)處理器速度增加以及外設(shè)、數(shù)據(jù)總線和其它系統(tǒng)組件被嵌入到器件中時(shí)所出現(xiàn)的“可見性降低”問題,這種問題的出現(xiàn)會(huì)導(dǎo)致幾乎無法查看芯片中程序執(zhí)行的實(shí)時(shí)行為,或無法發(fā)現(xiàn)用以訪問數(shù)據(jù)的測(cè)試點(diǎn)。仿真器可在不改變器件性能的情況下,在主機(jī)開發(fā)平臺(tái)與目標(biāo)處理器間進(jìn)行數(shù)據(jù)傳輸、下載代碼和觀察復(fù)雜序列事件,所有這些都使得評(píng)估系統(tǒng)未來開發(fā)完成后實(shí)地運(yùn)行的性能成為可能。

全面集成的測(cè)試工具

模擬不是仿真與真實(shí)硬件的替代品。這兩種技術(shù)可互相補(bǔ)充,并可在設(shè)計(jì)流程中結(jié)合使用。DSP模擬與仿真功能能以足夠快的速度、利用足夠豐富的數(shù)據(jù)以及足夠高的簡(jiǎn)易性共同模擬"虛擬原型",并驗(yàn)證最終硬件,以便將基于DSP的系統(tǒng)開發(fā)提升到一個(gè)新的水平,節(jié)省巨大的成本并顯著地縮短開發(fā)時(shí)間。

事實(shí)上,模擬器與仿真器的功能在設(shè)計(jì)過程中的特定階段將會(huì)進(jìn)行混合。下圖說明模擬與仿真在設(shè)計(jì)周期的某些階段應(yīng)該一起使用,共同執(zhí)行特定任務(wù),以實(shí)現(xiàn)更佳的總體設(shè)計(jì)目標(biāo)。


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉