<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    Rss & SiteMap

    曙海教育集團論壇 http://www.bjzhda.cn

    曙海教育集團論壇
    共2 條記錄, 每頁顯示 10 條, 頁簽: [1]
    [瀏覽完整版]

    標題:基于DSP代碼自動生成技術(shù)實現(xiàn)FIR低通濾波器

    1樓
    wangxinxin 發(fā)表于:2010-11-22 14:09:08

    1 引言

    DSP芯片以其低成本、低功耗、高運算速度等優(yōu)勢得到了飛速發(fā)展與廣泛運用。但目前各DSP廠商提供的開發(fā)環(huán)境(如TI的CCS)大多采用G/C++或匯編語言作為開發(fā)語言,與編寫Matlab程序相比,前者要復(fù)雜得多。

    Matlab是一個強大的分析、計算和可視化工具,且編程非常方便。Simulink是Matlab產(chǎn)品中用來建模、分析和仿真各種動態(tài)系統(tǒng)的圖形化工具。通過豐富的功能模塊,可以迅速地創(chuàng)建動態(tài)系統(tǒng)模型。同時Simulink也是Real-Time Workshop(以下簡稱RTW)的支持平臺。通過RTW可以自動生成面向不同目標的代碼。

    Matlab輔助DSP進行混合編程,很多學(xué)者作了許多研究和嘗試。文獻[1]提出了由Matlab向DSP傳送原始數(shù)據(jù)以及DSP反饋處理后數(shù)據(jù)的方法,充分利用了Matlab優(yōu)秀的可視化功能。但仍然要在DSP開發(fā)環(huán)境中編寫復(fù)雜的代碼。文獻[2,3]利用工具包——Matlab Link for CCS Development Tools(以下簡稱CCSLink),實現(xiàn)了在Matlab、TI開發(fā)環(huán)境和DSP硬件間的雙向連接,極大地降低了開發(fā)人員調(diào)試DSP代碼的難度和工作量。但CCSLink只用于DSP程序的調(diào)試、數(shù)據(jù)傳遞和驗證等過程,同樣需要編寫復(fù)雜的DSP代碼。而另一工具包——ETTIC6000,利用RTW直接從Simulink模型生成面向TI C6000 DSP的高效代碼,不再需要傳統(tǒng)的DSP編程過程。本文在此基礎(chǔ)上進行研究,設(shè)計并自動生成FIR低通濾波器的DSP代碼。

    2 ETTIC6000的功能、特點及開發(fā)DSP代碼過程

    ETTIC6000是Math Works公司和TI公司聯(lián)合開發(fā)的工具包。利用RTW直接從Simulink模型生成面向TI的C6701 EVM和C6711 DSK目標板的可執(zhí)行文件或CCS工程。在DSP代碼自動生成過程中,ETTIC6000必須與Simulink,RTW,CCS和TI目標板等軟硬件相結(jié)合才能充分顯現(xiàn)其功能。它們之間的關(guān)系如圖1所示。

    應(yīng)用ETTIC6000開發(fā)DSP代碼的過程一般經(jīng)過如下幾步:

    (1)概念構(gòu)思和DSP處理算法設(shè)計。

    (2)在Simulink環(huán)境下,利用Matlab基本模塊,Simulink基本模塊,數(shù)字信號處理工具箱,以及專門面向TI C6000的模塊組等模塊,構(gòu)建算法模型并運行仿真。并非所有模塊都可以轉(zhuǎn)化為DSP代碼并順利編譯。例如一些面向Win32的程序模塊在轉(zhuǎn)化為DSP代碼或在CCS中進行編譯時就會出現(xiàn)無法兼容或找不到相關(guān)頭文件等錯誤提示。

    (3)對仿真結(jié)果進行評價,若仿真結(jié)果滿意,即可在模型中加入C6701 EVM或C6711 DSK目標板的輸入輸出模塊。否則,重新進行算法設(shè)計、建模、仿真。

    (4)在設(shè)計好的面向具體目標板的模型中,設(shè)置Simulation選項,包括RTW中的編譯連接等選項。

    (5)執(zhí)行代碼自動生成、編譯、調(diào)試并裝載到目標板上運行。

    從整個設(shè)計過程來看,DSP開發(fā)人員只需在Matlab中進行Simulink模型設(shè)計、構(gòu)建與仿真。省去了編寫、調(diào)試復(fù)雜DSP代碼的過程。下面以實現(xiàn)FIR低通濾波器為例,詳細闡述應(yīng)用ETTIC6000開發(fā)DSP代碼的全部過程。

    圖片點擊可在新窗口打開查看

    3 FIR低通濾波器實現(xiàn)過程

    此系統(tǒng)要求對頻率分別為200 Hz,600 Hz和1 000 Hz,幅度為1的混合正弦信號進行低通濾波,保留200 Hz的正弦信號。采用Simulink環(huán)境下的FDATool工具設(shè)計FIR低通濾波器。在以下軟硬件環(huán)境中設(shè)計并通過測試,以下軟件均采用默認安裝路徑,若軟硬件環(huán)境不同,相應(yīng)的參數(shù)設(shè)置將有很大差別。

    硬件環(huán)境:TMS320C6711 DSK開發(fā)板、PC聲卡、雙頭音頻線等。

    軟件環(huán)境:Matlab 7.4(R2007a),CCStudio 3.1,Simulink 6.6,Real-Time Workshop 6.6,Target forTI C6000(tm)3.2,Link for Code ComposerStudio 3.0。

    Matlab附帶軟件可以在命令窗口通過ver命令查看,附帶軟件的使用可以充分利用help命令。

    3.1 Simulink環(huán)境下構(gòu)建算法模型并仿真

    依據(jù)設(shè)計思想,在Simulink環(huán)境下,通過Simulink基本模塊庫和數(shù)字信號處理工具箱構(gòu)建如圖2所示系統(tǒng)模型。三個輸入信號模塊關(guān)鍵參數(shù)設(shè)置:頻率分別設(shè)置為200 Hz,600 Hz和1 000 Hz;幅度為1;采樣頻率為1 600 Hz。FDA Tool關(guān)鍵參數(shù)設(shè)置:濾波類型選擇低通;階數(shù)為80;采樣頻率為1 600 Hz;起始頻率為100 Hz;截至頻率為500 Hz。

    圖片點擊可在新窗口打開查看

    對圖2所示模型運行仿真,仿真結(jié)果如圖3所示。從濾波后的波形看,此濾波器的參數(shù)設(shè)置比較合理。

    圖片點擊可在新窗口打開查看

    3.2 構(gòu)建面向C6711 DSK目標模型

    (1)依據(jù)仿真模型利用ETTIC6000中C6711 DSK輸入輸出模塊構(gòu)建如圖4所示面向C6711 DSK目標模型。C6711 DSK ADC與C6711 DSK DAC參數(shù)采用默認設(shè)置。FDA Tool參數(shù)與仿真模型中參數(shù)保持一致,設(shè)置完成后將模型保存在Matlab默認目錄下,命名為myfilter.mdl。

    圖片點擊可在新窗口打開查看

    (2)依據(jù)圖4構(gòu)建如圖5所示的硬件平臺。TMS320C6711 DSK與PC通過并口線連接;信號源由PC聲卡輸出,經(jīng)C6711 DSK A/D轉(zhuǎn)換后進行FIR低通濾波,由Line OUT將濾波后信號輸出至PC聲卡,最后采集聲卡信號,顯示濾波后波形。

    3.3 DSP代碼自動生成

    進行DSP代碼自動生成前,首先要安裝、配置相應(yīng)的軟硬件環(huán)境。正確安裝、配置是此系統(tǒng)能夠成功運行的關(guān)鍵。具體配置有如下幾個方面:

    (1)依據(jù)圖5實現(xiàn)硬件連接。在BIOS中將并口傳輸模式改為EPP模式;在DOS模式下,運行C:\CCS-tudio v3.1\C6000\DSK6X11\conftest\dsk6xtst.exe文件,可以檢測目標板是否連接正常;最后檢查PC聲卡輸入輸出是否正常。

    (2)正確配置CCS。點擊Setup CCStudio V3.1,選擇C6711 DSK Port 378 EPP Mode模塊,點擊Add,設(shè)置并口地址為0x378;保存設(shè)置后退出。

    (3)打開myfilter.mdl模型,展開simulation>Configuration Paraineters面板,面板中相應(yīng)選項設(shè)置如下:

    圖片點擊可在新窗口打開查看

    其他選項設(shè)置為默認模式。

    (4)點擊RTW面板Generate code按鈕,執(zhí)行代碼自動生成過程,此時Matlab命令窗口將顯示如下信息:

    圖片點擊可在新窗口打開查看

    (5)CCStudio 3.1將自動運行,窗口中自動生成myfilter.pit的工程文件。

    3.4 FIR低通濾渡器實現(xiàn)

    (1)對myfiher.pit的工程文件在CCS中進行編譯、連接、裝載、運行。

    (2)利用Matlab中的daqfcengen函數(shù),可以實現(xiàn)向PC聲卡輸出端輸出波形。在Matlab命令窗口輸入daqfcengen命令,將顯示波形發(fā)生器窗口,將頻率設(shè)置為200 Hz,幅度設(shè)置為1,如圖6所示。點擊Start按鈕。在Matlab命令窗口繼續(xù)輸入daqfcengen命令,相繼實現(xiàn)頻率為600 Hz,1 000 Hz的波形輸出。這樣PC聲卡就輸出了三個不同頻率波形的疊加。

    圖片點擊可在新窗口打開查看

    (3)利用Matlab中的daqscope函數(shù),可以實現(xiàn)顯示PC聲卡輸入端的波形。在Matlab命令窗口輸入daqscope命令,將顯示波形顯示器窗口,如圖7所示,即為濾波后的輸出波形。

    圖片點擊可在新窗口打開查看

    4 結(jié) 語

    從整個FIR低通濾波器實現(xiàn)過程看,沒有編寫一行DSP代碼,全部采用圖形化的編程模式,生成的CCS工程文件既可供初學(xué)者學(xué)習(xí)、借鑒。又可供具有一定編程經(jīng)驗的程序開發(fā)者對代碼進一步修改或優(yōu)化,提高代碼執(zhí)行效率。

    從實驗結(jié)果看,設(shè)計的FIR低通濾波器濾波效果明顯。充分說明利用DSP代碼自動生成技術(shù)實現(xiàn)FIR低通濾波器的方法是可行的、高效的。Matlab輔助DSP在語音處理、圖像處理、通信、雷達等領(lǐng)域還有許多值得研究的地方。采用多語言工具進行程序開發(fā)也是今后發(fā)展的趨勢.

    2樓
    我愛jen3p 發(fā)表于:2010-12-4 21:39:13
    不錯。看起來不錯哦,送給朋友,長輩,領(lǐng)導(dǎo)什么的。不僅好看又能凈化空氣。禮客中國http://www.leekecn.com
    共2 條記錄, 每頁顯示 10 條, 頁簽: [1]

    Copyright © 2000 - 2009 曙海教育集團
    Powered By 曙海教育集團 Version 2.2
    Processed in .01611 s, 2 queries.
    主站蜘蛛池模板: 亚洲人成免费电影| 精品国产污污免费网站| 黑人巨大精品欧美一区二区免费| 182tv成人午夜在线观看| 青青草成人在线| 美女扒开内裤羞羞网站| 真实的和子乱拍免费视频| 欧美日韩在线视频不卡一区二区三区| 欧美乱强伦xxxxx高潮| 日韩在线视频第一页| 成人性生交大片免费看| 在线A级毛片无码免费真人| 国产男女在线观看| 国产ts人妖另类专区| 免费一级欧美片在线观免看| 亚洲欧洲中文日韩久久av乱码 | 蜜臀亚洲AV无码精品国产午夜.| 第一福利官方航导航| 欧美最猛性xxxx| 日本妇人成熟免费不卡片| 婷婷综合五月天| 国产福利一区二区三区| 双女车车好快的车车有点污| 亚洲永久精品ww47| 久久久久人妻一区精品| h视频在线免费看| 茄子视频国产在线观看| 激性欧美激情在线播放16页| 日韩在线一区视频| 天天色天天色天天色| 国产剧情精品在线观看| 人人干人人干人人干| 久久精品国产亚洲AV无码偷窥 | 无码人妻精品一区二区三区久久 | www.中文字幕| 色片网站在线观看| 欧美精品v国产精品v日韩精品| 无码国产精品一区二区免费模式| 国产麻豆va精品视频| 啦啦啦手机在线中文观看 | 又爽又黄又无遮挡的视频在线观看 |