資料介紹
嵌入式DSP系統(tǒng)傳統(tǒng)設計流程通常由概念到算法及算法到產(chǎn)品兩個階段構(gòu)成,通常這兩個階段互相獨立且由不同設計小組完成。
傳統(tǒng)的設計流程里要用手工在兩個階段之間進行轉(zhuǎn)換與銜接,這樣容易出現(xiàn)錯誤而推遲產(chǎn)品的上市時間。本文介紹一種集成工具可以使設計與驗證測試更加自動化,且具有更高效率,可減少產(chǎn)品缺陷。
過去幾年以來,產(chǎn)品與系統(tǒng)在軟件方面的功能不斷增強,高強度實時要求越來越多。對設計工程師而言,為與競爭對手展開競賽,爭取更快將新產(chǎn)品投向市場,高效系統(tǒng)開發(fā)方法成為重中之重,對開發(fā)數(shù)字信號處理器算法的工程師而言尤為如此。此外,產(chǎn)品開發(fā)周期和生命周期不斷縮短等因素,也促使工程師和設計經(jīng)理對開發(fā)方法和軟件工具進程進行全面重新評估。
產(chǎn)品漏洞會導致市場份額迅速下降,如果公司犧牲質(zhì)量,那么其聲譽會馬上受到影響。產(chǎn)品工程師在實施由研發(fā)工程師設計的算法時,會遇到很多難題,其中之一就是將系統(tǒng)參數(shù)、測試向量以及其它數(shù)據(jù)從基于主機PC概念的開發(fā)工具用手工方式轉(zhuǎn)向基于目標硬件的DSP代碼開發(fā)工具。這種手工轉(zhuǎn)化常常會造成錯誤,要在確認和測試中才能被發(fā)現(xiàn),從而導致開發(fā)時間延長。市場調(diào)查顯示,客戶產(chǎn)品開發(fā)中常常有50%以上的時間是用于產(chǎn)品集成與測試。在這個階段,省時的工具對產(chǎn)品功能可靠性、上市時間以及能否最終取得成功都有很大的影響。
在今天市場環(huán)境下,要將工程師的開發(fā)流程從概念發(fā)展至算法并最終推出產(chǎn)品,傳統(tǒng)的產(chǎn)品開發(fā)流程已顯得力不從心,新開發(fā)流程需要廣泛的工具集成,保證數(shù)據(jù)以及其它信息能夠動態(tài)共享以實現(xiàn)更高的工作效率。
傳統(tǒng)DSP開發(fā)流程
嵌入式DSP系統(tǒng)傳統(tǒng)設計流程通常包括兩個主要階段,即概念到算法階段(由研發(fā)小組實施,其中包括算法開發(fā)與系統(tǒng)設計)以及算法到產(chǎn)品階段(由產(chǎn)品開發(fā)小組實施,該階段包括實際產(chǎn)品實現(xiàn)、目標編程和測試),如圖1所示。
由于上面兩個階段常常是彼此獨立的,并由不同的設計小組完成,而各小組的目標可能不一致,因此這種結(jié)構(gòu)內(nèi)部會有一些問題。此外,設計小組使用的工具還可能彼此不兼容,不能夠整合在一起。
在多數(shù)情況下,研發(fā)工程師使用數(shù)字計算環(huán)境,可充分發(fā)揮算法開發(fā)、分析以及各種科學、數(shù)學或工程應用可視化功能。研發(fā)工程師常常以M或C代碼創(chuàng)建算法,也可以為其算法創(chuàng)建測試向量(通常是文本或二進制格式的數(shù)據(jù)文件)。他們隨后會在主機PC上運行算法進行模擬,以便分析并使算法響應可視化,目標是確保算法不僅能夠獨立于特定的平臺進行工作,還能獨立于任何物理存儲器、速度或?qū)崟r限制工作。當他們希望將設計轉(zhuǎn)給產(chǎn)品開發(fā)小組時,他們將提交書面規(guī)范或?qū)嶋H的C或M代碼,并請開發(fā)小組就具體的DSP目標實施算法。
在產(chǎn)品開發(fā)方面,大多數(shù)DSP工作小組都使用集成開發(fā)環(huán)境(IDE),小組的目標是使用書面的規(guī)范實施算法、測試算法,并在最終產(chǎn)品中進行確認,以保證其滿足系統(tǒng)的實時、速度、功率及內(nèi)存等限制條件。產(chǎn)品開發(fā)小組常常依靠手工方法從事上述任務,因為直接根據(jù)規(guī)范或算法測試向量進行產(chǎn)品測試通常沒有便捷路徑可循。在遇到復雜系統(tǒng)時,手動轉(zhuǎn)換和確認會延緩產(chǎn)品開發(fā),影響產(chǎn)品的成功。
產(chǎn)品工程師為防止出現(xiàn)前后脫節(jié)而采取一些手工方法包括:
1. 手工復制并粘貼M文件測試向量(如100個值的陣列)至IDE的C代碼(或匯編)文件中。但是工程師必須注意,應復制所有數(shù)據(jù)不能遺漏,還必須添加正確的語法以保證兼容性(如逗號、方括號、圓括號等);
2. 使用典型IDE中的“載入數(shù)據(jù)”命令手工從PC硬盤向DSP存儲器載入整個數(shù)據(jù)文件。工程師必須注意應以人工方式或通過腳本(需要編寫并調(diào)試)對數(shù)據(jù)進行重新格式化,以保證文件格式和隨后的語法能夠匹配;
3. 可使用IDE的文件I/O功能(如fscanf()功能)以便以自動方式像上面第二種方法一樣載入文件,但是有關(guān)文件格式與語法類型的問題仍然存在。傳統(tǒng)文件I/O帶來的另一大主要問題在于,工程師必須在DSP本身上面運行龐大而低效的C庫,這將導致代碼膨脹,不僅浪費內(nèi)存,還會拖慢DSP的速度,使其喪失實時工作性能;
4. 利用外部硬件生成信號作為系統(tǒng)的輸入(如音樂或正弦波),以觀察系統(tǒng)是否能夠?qū)崟r響應。與前面所說測試向量和數(shù)據(jù)已經(jīng)數(shù)字化的情況不同,這里的數(shù)據(jù)是模擬的,必須通過A/D轉(zhuǎn)換器,這就會帶來更多的錯誤和不一致性,因為它不再是純粹的數(shù)字信號,導致內(nèi)在的模擬失真。此外還會帶來額外的變量,造成更多不確定性,也使尋找問題根源更加困難重重。
集成工具提高效率與生產(chǎn)率
集成度更高的開發(fā)流程能以更動態(tài)的方式自動執(zhí)行上述任務。
我們不妨給出一個真實情況的例子,即在DSP上實施適應性噪聲消除系統(tǒng)。設計第一步是設計一個適應性過濾器(即過濾器系數(shù)、過濾器響應等),開發(fā)工程師以通常采用的DSP算法設計和分析工具(諸如MathWorks公司提供的MATLAB)開發(fā)C代碼,并在DSP上運行,而后綜合輸入信號并測試該過濾器的表現(xiàn)。
通過將MATLAB與通用DSP IDE(如德州儀器的Code Composer Studio)進行集成,工程師可使用相同的前端工具在模擬環(huán)境下進行算法設計、可視化、分析與優(yōu)化,隨后在DSP目標上實施設計,對其再次運行,并采用模擬設計對實際結(jié)果進行比較。
在我們給出的例子中,開發(fā)工程師可使用MATLAB直接訪問DSP目標存儲器,當DSP程序在目標上運行時對其進行控制,同時可以獲得MATLAB的可視化、模擬和優(yōu)化功能。該連接由高速實時雙向數(shù)據(jù)通訊機制加以實現(xiàn),如TI的高速實時數(shù)據(jù)交換(RTDX)。圖2顯示了MATLAB代碼,展示了如何使用MATLAB對信號進行綜合測試,通過RTDX實時連接可執(zhí)行過濾器的DSP實施,并使結(jié)果可視化。
運行于目標DSP上的算法接收噪聲信號與白信號作為輸入,并執(zhí)行LMS算法消除噪聲。圖3顯示了通過RTDX實時發(fā)回至MATLAB的DSP輸出信號、過濾器閥(filter tap)和過濾器響應,這意味著代碼執(zhí)行時,我們在MATLAB中可以動態(tài)優(yōu)化參數(shù),適應性地調(diào)節(jié)過濾器,并運行蒙特卡洛模擬使結(jié)果可視化。在算法運行于DSP上的同時,用戶還可以直接從MATLAB調(diào)用DSP上特定的函數(shù),并以批處理模式或互動模式對其加以執(zhí)行。
因此,測試與驗證小組可以使用原始的基于MATLAB的設計或規(guī)范,直接將其作為測試設置的一部分。測試小組再直接把實際系統(tǒng)輸出與原始MATLAB設計生成的所希望的輸出進行比較,并以此進行適當?shù)膶崟r改變。
本文結(jié)論
通過將研發(fā)小組與產(chǎn)品開發(fā)小組所用的工具進行集成,我們可以極大地提高生產(chǎn)率,從而使設計與驗證測試不僅更加自動化,而且具有更高的效率。開發(fā)DSP算法以及在真實目標上對那些算法進行實施工作的設計小組毋需改變開發(fā)流程方法,即可采用與IDE以及硬件后端集成的設計環(huán)境前端。他們也可以自動實時地轉(zhuǎn)移數(shù)據(jù),以便更迅速高效地重復產(chǎn)品設計,而不會導致出現(xiàn)新的錯誤。
設計與開發(fā)工具集成能夠推動開發(fā)周期早期的測試與驗證,從而幫助工程師以更高的效率確認并解決問題。工程師要以更快的速度構(gòu)建并向市場推出新型具有更強大功能的DSP產(chǎn)品,最重要的是要保證減少產(chǎn)品缺陷,工具集成將為最終成功助一臂之力。
?
傳統(tǒng)的設計流程里要用手工在兩個階段之間進行轉(zhuǎn)換與銜接,這樣容易出現(xiàn)錯誤而推遲產(chǎn)品的上市時間。本文介紹一種集成工具可以使設計與驗證測試更加自動化,且具有更高效率,可減少產(chǎn)品缺陷。
過去幾年以來,產(chǎn)品與系統(tǒng)在軟件方面的功能不斷增強,高強度實時要求越來越多。對設計工程師而言,為與競爭對手展開競賽,爭取更快將新產(chǎn)品投向市場,高效系統(tǒng)開發(fā)方法成為重中之重,對開發(fā)數(shù)字信號處理器算法的工程師而言尤為如此。此外,產(chǎn)品開發(fā)周期和生命周期不斷縮短等因素,也促使工程師和設計經(jīng)理對開發(fā)方法和軟件工具進程進行全面重新評估。
產(chǎn)品漏洞會導致市場份額迅速下降,如果公司犧牲質(zhì)量,那么其聲譽會馬上受到影響。產(chǎn)品工程師在實施由研發(fā)工程師設計的算法時,會遇到很多難題,其中之一就是將系統(tǒng)參數(shù)、測試向量以及其它數(shù)據(jù)從基于主機PC概念的開發(fā)工具用手工方式轉(zhuǎn)向基于目標硬件的DSP代碼開發(fā)工具。這種手工轉(zhuǎn)化常常會造成錯誤,要在確認和測試中才能被發(fā)現(xiàn),從而導致開發(fā)時間延長。市場調(diào)查顯示,客戶產(chǎn)品開發(fā)中常常有50%以上的時間是用于產(chǎn)品集成與測試。在這個階段,省時的工具對產(chǎn)品功能可靠性、上市時間以及能否最終取得成功都有很大的影響。
在今天市場環(huán)境下,要將工程師的開發(fā)流程從概念發(fā)展至算法并最終推出產(chǎn)品,傳統(tǒng)的產(chǎn)品開發(fā)流程已顯得力不從心,新開發(fā)流程需要廣泛的工具集成,保證數(shù)據(jù)以及其它信息能夠動態(tài)共享以實現(xiàn)更高的工作效率。
傳統(tǒng)DSP開發(fā)流程
嵌入式DSP系統(tǒng)傳統(tǒng)設計流程通常包括兩個主要階段,即概念到算法階段(由研發(fā)小組實施,其中包括算法開發(fā)與系統(tǒng)設計)以及算法到產(chǎn)品階段(由產(chǎn)品開發(fā)小組實施,該階段包括實際產(chǎn)品實現(xiàn)、目標編程和測試),如圖1所示。
由于上面兩個階段常常是彼此獨立的,并由不同的設計小組完成,而各小組的目標可能不一致,因此這種結(jié)構(gòu)內(nèi)部會有一些問題。此外,設計小組使用的工具還可能彼此不兼容,不能夠整合在一起。
在多數(shù)情況下,研發(fā)工程師使用數(shù)字計算環(huán)境,可充分發(fā)揮算法開發(fā)、分析以及各種科學、數(shù)學或工程應用可視化功能。研發(fā)工程師常常以M或C代碼創(chuàng)建算法,也可以為其算法創(chuàng)建測試向量(通常是文本或二進制格式的數(shù)據(jù)文件)。他們隨后會在主機PC上運行算法進行模擬,以便分析并使算法響應可視化,目標是確保算法不僅能夠獨立于特定的平臺進行工作,還能獨立于任何物理存儲器、速度或?qū)崟r限制工作。當他們希望將設計轉(zhuǎn)給產(chǎn)品開發(fā)小組時,他們將提交書面規(guī)范或?qū)嶋H的C或M代碼,并請開發(fā)小組就具體的DSP目標實施算法。
在產(chǎn)品開發(fā)方面,大多數(shù)DSP工作小組都使用集成開發(fā)環(huán)境(IDE),小組的目標是使用書面的規(guī)范實施算法、測試算法,并在最終產(chǎn)品中進行確認,以保證其滿足系統(tǒng)的實時、速度、功率及內(nèi)存等限制條件。產(chǎn)品開發(fā)小組常常依靠手工方法從事上述任務,因為直接根據(jù)規(guī)范或算法測試向量進行產(chǎn)品測試通常沒有便捷路徑可循。在遇到復雜系統(tǒng)時,手動轉(zhuǎn)換和確認會延緩產(chǎn)品開發(fā),影響產(chǎn)品的成功。
產(chǎn)品工程師為防止出現(xiàn)前后脫節(jié)而采取一些手工方法包括:
1. 手工復制并粘貼M文件測試向量(如100個值的陣列)至IDE的C代碼(或匯編)文件中。但是工程師必須注意,應復制所有數(shù)據(jù)不能遺漏,還必須添加正確的語法以保證兼容性(如逗號、方括號、圓括號等);
2. 使用典型IDE中的“載入數(shù)據(jù)”命令手工從PC硬盤向DSP存儲器載入整個數(shù)據(jù)文件。工程師必須注意應以人工方式或通過腳本(需要編寫并調(diào)試)對數(shù)據(jù)進行重新格式化,以保證文件格式和隨后的語法能夠匹配;
3. 可使用IDE的文件I/O功能(如fscanf()功能)以便以自動方式像上面第二種方法一樣載入文件,但是有關(guān)文件格式與語法類型的問題仍然存在。傳統(tǒng)文件I/O帶來的另一大主要問題在于,工程師必須在DSP本身上面運行龐大而低效的C庫,這將導致代碼膨脹,不僅浪費內(nèi)存,還會拖慢DSP的速度,使其喪失實時工作性能;
4. 利用外部硬件生成信號作為系統(tǒng)的輸入(如音樂或正弦波),以觀察系統(tǒng)是否能夠?qū)崟r響應。與前面所說測試向量和數(shù)據(jù)已經(jīng)數(shù)字化的情況不同,這里的數(shù)據(jù)是模擬的,必須通過A/D轉(zhuǎn)換器,這就會帶來更多的錯誤和不一致性,因為它不再是純粹的數(shù)字信號,導致內(nèi)在的模擬失真。此外還會帶來額外的變量,造成更多不確定性,也使尋找問題根源更加困難重重。
集成工具提高效率與生產(chǎn)率
集成度更高的開發(fā)流程能以更動態(tài)的方式自動執(zhí)行上述任務。
我們不妨給出一個真實情況的例子,即在DSP上實施適應性噪聲消除系統(tǒng)。設計第一步是設計一個適應性過濾器(即過濾器系數(shù)、過濾器響應等),開發(fā)工程師以通常采用的DSP算法設計和分析工具(諸如MathWorks公司提供的MATLAB)開發(fā)C代碼,并在DSP上運行,而后綜合輸入信號并測試該過濾器的表現(xiàn)。
通過將MATLAB與通用DSP IDE(如德州儀器的Code Composer Studio)進行集成,工程師可使用相同的前端工具在模擬環(huán)境下進行算法設計、可視化、分析與優(yōu)化,隨后在DSP目標上實施設計,對其再次運行,并采用模擬設計對實際結(jié)果進行比較。
在我們給出的例子中,開發(fā)工程師可使用MATLAB直接訪問DSP目標存儲器,當DSP程序在目標上運行時對其進行控制,同時可以獲得MATLAB的可視化、模擬和優(yōu)化功能。該連接由高速實時雙向數(shù)據(jù)通訊機制加以實現(xiàn),如TI的高速實時數(shù)據(jù)交換(RTDX)。圖2顯示了MATLAB代碼,展示了如何使用MATLAB對信號進行綜合測試,通過RTDX實時連接可執(zhí)行過濾器的DSP實施,并使結(jié)果可視化。
運行于目標DSP上的算法接收噪聲信號與白信號作為輸入,并執(zhí)行LMS算法消除噪聲。圖3顯示了通過RTDX實時發(fā)回至MATLAB的DSP輸出信號、過濾器閥(filter tap)和過濾器響應,這意味著代碼執(zhí)行時,我們在MATLAB中可以動態(tài)優(yōu)化參數(shù),適應性地調(diào)節(jié)過濾器,并運行蒙特卡洛模擬使結(jié)果可視化。在算法運行于DSP上的同時,用戶還可以直接從MATLAB調(diào)用DSP上特定的函數(shù),并以批處理模式或互動模式對其加以執(zhí)行。
因此,測試與驗證小組可以使用原始的基于MATLAB的設計或規(guī)范,直接將其作為測試設置的一部分。測試小組再直接把實際系統(tǒng)輸出與原始MATLAB設計生成的所希望的輸出進行比較,并以此進行適當?shù)膶崟r改變。
本文結(jié)論
通過將研發(fā)小組與產(chǎn)品開發(fā)小組所用的工具進行集成,我們可以極大地提高生產(chǎn)率,從而使設計與驗證測試不僅更加自動化,而且具有更高的效率。開發(fā)DSP算法以及在真實目標上對那些算法進行實施工作的設計小組毋需改變開發(fā)流程方法,即可采用與IDE以及硬件后端集成的設計環(huán)境前端。他們也可以自動實時地轉(zhuǎn)移數(shù)據(jù),以便更迅速高效地重復產(chǎn)品設計,而不會導致出現(xiàn)新的錯誤。
設計與開發(fā)工具集成能夠推動開發(fā)周期早期的測試與驗證,從而幫助工程師以更高的效率確認并解決問題。工程師要以更快的速度構(gòu)建并向市場推出新型具有更強大功能的DSP產(chǎn)品,最重要的是要保證減少產(chǎn)品缺陷,工具集成將為最終成功助一臂之力。
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 嵌入式系統(tǒng)系列叢書-時間觸發(fā)嵌入式系統(tǒng)設計模式 0次下載
- DSP嵌入式系統(tǒng)設計與應用(精)
- 嵌入式DSP系統(tǒng)C語言硬件編程技術(shù)
- DSP與MCU在嵌入式系統(tǒng)中的應用
- DSP在嵌入式系統(tǒng)中的應用實例
- 嵌入式DSP系統(tǒng)C語言硬件編程技術(shù)總結(jié)
- 推薦-DSP系統(tǒng)計時器系統(tǒng)的嵌入式設計A精品
- 嵌入式DSP系統(tǒng)C語言硬件編程技術(shù)簡介
- 基于DSP嵌入式系統(tǒng)的并網(wǎng)逆變器實現(xiàn)與設計 63次下載
- 使用C語言編程嵌入式DSP系統(tǒng)的方法和相關(guān)介紹說明 15次下載
- DSP嵌入式系統(tǒng)開發(fā)典型案例 16次下載
- 基于DSP平臺的嵌入式文件系統(tǒng)的開發(fā)與研究 4次下載
- 緒論DSP嵌入式系統(tǒng)開發(fā)典型案例 6次下載
- 如何用C 語言開發(fā)DSP 嵌入式系統(tǒng)
- 用嵌入式技術(shù)設計專用DSP系統(tǒng)研究
- 嵌入式fpga是什么意思 991次閱讀
- 什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)的具體應用 2096次閱讀
- 分享一種嵌入式系統(tǒng)自動化測試的詳細方案 2520次閱讀
- 嵌入式系統(tǒng)的全面解析 3146次閱讀
- 如何實現(xiàn)嵌入式系統(tǒng)遠程調(diào)試 5077次閱讀
- 嵌入式FIFO數(shù)據(jù)傳輸系統(tǒng)詳解 4141次閱讀
- 隨著嵌入式系統(tǒng)復雜度的提高 軟硬件的協(xié)同是嵌入式系統(tǒng)的關(guān)鍵 797次閱讀
- 以嵌入式DSP模塊和FPGA構(gòu)架為基礎(chǔ)的提高無線信號處理性能的子系統(tǒng)設計 795次閱讀
- 嵌入式系統(tǒng)的特點大匯總 5742次閱讀
- 什么是嵌入式系統(tǒng)_嵌入式系統(tǒng)基礎(chǔ)知識介紹 1.4w次閱讀
- 基于SoPC的FPGA集成嵌入式系統(tǒng)設計 1360次閱讀
- 典型的嵌入式系統(tǒng)設計 2650次閱讀
- 用GNU工具開發(fā)基于ARM的嵌入式系統(tǒng) 1628次閱讀
- 基于ARM和DSP的嵌入式智能儀器系統(tǒng)設計 1641次閱讀
- 基于DSP的嵌入式系統(tǒng)人機接口設計 1260次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1489次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 91次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 9次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關(guān)電源設計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30319次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關(guān)電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多