<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 詳述軟件開(kāi)發(fā)中模擬器與仿真器的區別

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

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

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

模擬與仿真

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

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

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

仿真功能的深入研究

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

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

全面集成的測試工具

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

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


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>