新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 數(shù)字信號處理(DSP )系統(tǒng)測試和調(diào)試1

數(shù)字信號處理(DSP )系統(tǒng)測試和調(diào)試1

作者: 時間:2008-07-19 來源:網(wǎng)絡(luò) 收藏

  在開發(fā)領(lǐng)域,最關(guān)鍵但也是最無法預(yù)料的階段是階段。在的過程中有很多要素都舉足輕重,而其中最重要的則是時間。設(shè)置和所需的時間對于軟件的上市時間以及是否滿足客戶期望都有著巨大的影響,同時還影響著一個在市場取得成功的優(yōu)秀產(chǎn)品的銷售業(yè)績。一個應(yīng)用的必須經(jīng)過一個由構(gòu)建、加載、調(diào)試/調(diào)諧到更改等多個階段構(gòu)成的過程,如圖1 所示。


                圖1:和調(diào)試。我們的目的是要將這一的次數(shù)以及在每個部分花費

  嵌入式實時系統(tǒng)的調(diào)試既是一門藝術(shù),又是一門科學(xué)。用于調(diào)試和這些系統(tǒng)的工具和技術(shù)對于在調(diào)試、集成和階段上所需時間的長度有著重要影響。對運行中的系統(tǒng)越了解,我們就能越快發(fā)現(xiàn)并修正缺陷。

  要了解系統(tǒng)有一個最傳統(tǒng)也是最簡單的方法,即在軟件中的某些點添加消息,以便輸出有關(guān)系統(tǒng)狀態(tài)的信息。這些消息可以是輸出到顯示器的“打印”指令,也可以通過LED 或者LED 組閃爍的形式來系統(tǒng)狀態(tài)和健康度。每個功能或任務(wù)都可以通過輸出一個狀態(tài)信息來開始指示是系統(tǒng)將之安排到程序中的某個點。如果系統(tǒng)在某個點出現(xiàn)故障,對于這一輸出信息的診斷就可以幫助工程師了解到系統(tǒng)最后一次正常狀態(tài)點的所在,從而確認(rèn)問題所在。當(dāng)然,這種方式會導(dǎo)致系統(tǒng)過載,進(jìn)而影響系統(tǒng)性能。因此,工程師必須在完系統(tǒng)后清除這些數(shù)據(jù)并在銷售之前對系統(tǒng)重新驗證,或者將系統(tǒng)和系統(tǒng)中測得的代碼一起銷售。他們必須確保所工程師可以利用更先進(jìn)的調(diào)試方法來減少集成和階段的時間。其中一個方法就是利用“調(diào)試監(jiān)視器(debug monitor)”。調(diào)試監(jiān)視器是一種嵌入到目標(biāo)應(yīng)用或集成到微控制器或DSP 內(nèi)核的相對較小的代碼,通過一個串行接口和主機進(jìn)行通信。調(diào)試監(jiān)視器可以下載代碼、讀寫DSP 存儲器和計數(shù)器、設(shè)置簡單和復(fù)雜的斷點、單步執(zhí)行程序并繪制源代碼概圖。

  另一種名為ROM 仿真器(ROM emulator)的調(diào)試監(jiān)視器則常被用于帶有基于ROM的軟件程序的系統(tǒng)中。ROM 仿真器是一個用來代替目標(biāo)系統(tǒng)ROM 設(shè)備的插件。這一插件和主機相連(通過串行、并行、以太網(wǎng)等連接方式),讓工程師可以縮短調(diào)試過程的時間。工程師不需要在每次軟件迭代時都通過ROM 編程程序?qū)OM 設(shè)備進(jìn)行重新編程,而是可以將這個代碼下載到ROM 仿真器的快速RAM 上。

  接著,系統(tǒng)就會以代碼脫離ROM 設(shè)備運行的狀態(tài)運行。

  調(diào)試監(jiān)視器和ROM 監(jiān)視器對嵌入式系統(tǒng)調(diào)試階段無疑能帶來很大的益處,但是,隨著嵌入式處理器變得越來越快,而且系統(tǒng)不斷轉(zhuǎn)向單片系統(tǒng)方案,處理器的透明度就形成了更大的挑戰(zhàn),要求更加尖端的調(diào)試方案。

  集成和調(diào)試復(fù)雜的數(shù)碼系統(tǒng)也需要簡短而復(fù)雜的調(diào)試工具,如邏輯分析儀等。系統(tǒng)集成商可以通過邏輯分析儀來捕捉數(shù)字信號,并以位、字節(jié)和文字格式顯示出來,還能分析以下設(shè)備的活動:

數(shù)字計數(shù)器
復(fù)雜狀態(tài)機
緩沖器和FIFO
系統(tǒng)總線

  另外,邏輯分析儀還可以分析FPGA、ASIC 和標(biāo)準(zhǔn)單元執(zhí)行等其它片上系統(tǒng)功能。它不需要太大的學(xué)習(xí)曲線,但要求較高的初始投資(取決于對于它的能力的要求以及需要什么樣的時鐘率)。系統(tǒng)集成商可以在邏輯分析儀中采取觸發(fā)機制,來將數(shù)據(jù)捕捉到大型緩沖器中。這種數(shù)據(jù)可以是預(yù)觸發(fā)數(shù)據(jù)或后觸發(fā)數(shù)據(jù),也可以是二者的結(jié)合體。數(shù)據(jù)軌道可以被保存并打印出來,數(shù)據(jù)也可以通過各種不同方式進(jìn)行過濾。

  應(yīng)用邏輯分析儀的一個主要缺點在于,它雖然可以用來進(jìn)行軟件調(diào)試,本身卻是復(fù)雜的硬件調(diào)試工具。對邏輯分析儀的運用是否成功,取決于系統(tǒng)集成商對于硬件的了解程度,因為這一工具是基于硬件調(diào)試的,而且需要通過復(fù)雜的設(shè)置和配置才能獲得正確的信息以進(jìn)行調(diào)試。

  邏輯分析儀的另一個缺點,則是信號的可見性。邏輯分析儀需要連接到DSP 設(shè)備的管腳上,才能深入了解系統(tǒng),而這會受到DSP 管腳的類型的限制。隨著DSP設(shè)備被越來越多地集成到片上系統(tǒng)中,設(shè)備內(nèi)部的運行情況的可視性也不斷減弱。

  日益降低的可視性
  1988 年,由于設(shè)計時間壓力的增大,而且嵌入式設(shè)備上有了用于片上仿真的新空間,嵌入式系統(tǒng)行業(yè)經(jīng)歷了一場從傳統(tǒng)的在線仿真到掃描式仿真的變革。目前業(yè)界普遍認(rèn)為掃描式仿真(即JTAG)要好于更古老而且更昂貴的“在線仿真”(即ICE 技術(shù))。

  DSP 在調(diào)試上的問題
  
  有數(shù)個源自業(yè)界的因素在不斷改變著DSP 系統(tǒng)的開發(fā):

  系統(tǒng)級集成;由于應(yīng)用復(fù)雜性的增加和片上系統(tǒng)面積的縮小,系統(tǒng)元件的可視性也降低了。(圖2)嵌入式系統(tǒng)總線會帶來測量上的難題,而系統(tǒng)總線過寬則會導(dǎo)致系統(tǒng)帶寬問題。在這些情況下要控制程序是很難的。


               圖2:系統(tǒng)級集成導(dǎo)致系統(tǒng)可視性降低

  為了保持可視性,DSP 廠商采取了多項措施:

  片上測量( On-chip instrumentation):由于系統(tǒng)集成度越來越高,工程師無法了解到設(shè)備的工作情況(圖3)。工程師于是把總線監(jiān)視邏輯分析儀功能加到片上邏輯中,比如,通過觸發(fā)邏輯來他們想要了解的事件、整理線索并導(dǎo)出邏輯,以便可以瀏覽事件,并使DSP 內(nèi)核上每個管腳輸出的帶寬都最大化。調(diào)試控制則是通過1 個仿真器來進(jìn)行的,可以進(jìn)行信息抽取。


           圖3 日益降低的可視性要求先進(jìn)的片上調(diào)試邏輯

  片外數(shù)據(jù)采集:一旦數(shù)據(jù)被從DSP 內(nèi)核中導(dǎo)出,就必須被以適當(dāng)?shù)姆绞酱鎯?、處理、過濾并格式化,以使測試工程師能夠準(zhǔn)確地理解這些數(shù)據(jù)。

  數(shù)據(jù)可視性:DSP 的集成能力包括能夠很輕易以不同的配置瀏覽數(shù)據(jù)。圖4 展示了整個關(guān)系鏈。其中邏輯分析儀的功能已經(jīng)被集成到片上,控制和測量數(shù)據(jù)采集主要通過仿真控制器來進(jìn)行,而數(shù)據(jù)則顯示在主機上的一個可視容器中。這樣一來,恰當(dāng)?shù)嘏渲孟到y(tǒng),在正確的時間采集正確的數(shù)據(jù)以恰當(dāng)?shù)匕l(fā)現(xiàn)問題,就成了主要挑戰(zhàn)。


            圖4:DSP 工具被用來顯示抽取自DSP 的調(diào)試數(shù)據(jù)

  應(yīng)用空間差異:DSP 應(yīng)用越來越多,給DSP 測試和集成工程師帶來了困難。應(yīng)用不同,調(diào)試的成本就不同:DSP 基站應(yīng)用要求高帶寬高頻率調(diào)試。

  VoIP 應(yīng)用要求較高的MIPS 密度,并需要每塊板上有多個同類處理器。
  手機和其它無線應(yīng)用則需要不同類的多處理器以及極高的系統(tǒng)級集成。
  汽車DSP 應(yīng)用只需低成本的調(diào)試方案,其中DSP 芯片管腳非常重要。
  用戶開發(fā)環(huán)境;DSP 開發(fā)商的開發(fā)環(huán)境在改變,而DSP 調(diào)試技術(shù)也在改進(jìn),以適應(yīng)這些新的開發(fā)環(huán)境。DSP 工程師正在將調(diào)試平臺從臺式電腦系統(tǒng)向筆記本電腦系統(tǒng)過渡,以便能帶到現(xiàn)場在客戶的場所下進(jìn)行調(diào)試。便攜式遠(yuǎn)程應(yīng)用要求便攜式DSP 調(diào)試環(huán)境。

  時鐘率不斷升高:隨著DSP 內(nèi)核時鐘速率的升高,調(diào)試所需的數(shù)據(jù)量也不斷擴大。
  實際上,這個數(shù)據(jù)量是直接和DSP 內(nèi)核時鐘率成比例的。工程師需要增加DSP管腳,并擴大每個管腳的數(shù)據(jù)量,以確保能夠了解到設(shè)備的運行情況。

  各種級別的DSP 調(diào)試在集成過程中提供了各種作用。用戶的體驗使之能夠盡快地提高生產(chǎn)力?;镜恼{(diào)試讓DSP 開發(fā)人員可以配置好應(yīng)用并使之運行,實時捕捉高帶寬數(shù)據(jù)等高端調(diào)試讓開發(fā)人員能使應(yīng)用實時運行,而基本調(diào)整則幫助開發(fā)人員調(diào)整代碼大小和性能。

  片上和片外仿真的結(jié)合則能帶來很多好處。實時執(zhí)行控制可以帶來移動、運行、斷點(程序計數(shù)器)和數(shù)據(jù)觀察點等標(biāo)準(zhǔn)功能。更高端的事件觸發(fā)可帶來設(shè)備可視性,并控制程序員模式。實時數(shù)據(jù)采集可通過調(diào)節(jié)一個穩(wěn)定的程序來提供算法的實時可視性。而追蹤功能則讓工程師可以在整個調(diào)試不穩(wěn)定程序過程中實時了解程序裝況。

  本系列的第二章將討論JTAG (IEEE 1149.1)邊界掃描技術(shù)的工作原理,并詳細(xì)說明了與JTAG 端口相關(guān)的10 個測試管腳和測試過程。

  注:在線仿真技術(shù)以一種作用類似于或者說“仿真”原始設(shè)備的設(shè)備來取代目標(biāo)處理器,但帶有額外的管腳來使總線等設(shè)備上的內(nèi)部結(jié)構(gòu)可以被看到。ICE 模塊可允許完全接入處理器的程序員模式。這些設(shè)備也允許硬件斷點、執(zhí)行控制、跟蹤等調(diào)試功能。



關(guān)鍵詞: 調(diào)試 軟件 周期 集成 測試

評論


相關(guān)推薦

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

關(guān)閉