基于C6000的隨機信號相關(guān)計算程序設(shè)計與實現(xiàn)_第1頁
基于C6000的隨機信號相關(guān)計算程序設(shè)計與實現(xiàn)_第2頁
基于C6000的隨機信號相關(guān)計算程序設(shè)計與實現(xiàn)_第3頁
基于C6000的隨機信號相關(guān)計算程序設(shè)計與實現(xiàn)_第4頁
基于C6000的隨機信號相關(guān)計算程序設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、DSP應(yīng)用課程設(shè)計設(shè)計說明書基于C6000的隨機信號相關(guān)計算程序設(shè)計與實現(xiàn)起止日期: 2013年 12 月 2 日 至 2013年 12 月 13 日學生姓名班級學號成績指導教師(簽字)計算機與通信學院2013年 12 月 30 日課題名稱基于C6000的隨機信號相關(guān)計算程序設(shè)計與實現(xiàn)人 數(shù)9組 長同組人員課題的主要內(nèi)容和要求一、 基本要求熟悉隨機信號相關(guān)計算的原理與方法,掌握其DSP程序的設(shè)計與實現(xiàn)過程。二、設(shè)計任務(wù)主要內(nèi)容:(1) 編寫程序。(2)程序要完善、優(yōu)化與仿真,能演示輸入輸出數(shù)據(jù)的完整圖形,顯示結(jié)果,并對程序或相關(guān)設(shè)計予以解釋。主要任務(wù):1、 算法設(shè)計; 2、程序設(shè)計; 3、程序

2、的調(diào)試與各項性能的測試。三、設(shè)計工作量2周完成具體任務(wù)算法設(shè)計時間安排與完成情況12月2日 分組、任務(wù)分配、課題理解12月3日-12月6日 功能分析、程序設(shè)計、系統(tǒng)設(shè)計和實現(xiàn)12月9日-12月13日 實驗驗證和考核12月16日 總結(jié)、書寫實驗報告一、設(shè)計目的通過該設(shè)計,熟悉隨機信號相關(guān)算法的原理,掌握其DSP程序設(shè)計與實現(xiàn)過程,以及程序的調(diào)試技巧。是對DSP應(yīng)用技術(shù)理論學習的總結(jié)和補充,為DSP應(yīng)用系統(tǒng)的開發(fā)設(shè)計打下基礎(chǔ)。二、設(shè)計原理 廣義平穩(wěn)隨機信號 x(n)和 y(n)的相關(guān)函數(shù)的定義為: 如果 x(n),y(n)是各態(tài)遍歷的,則上式的集合平均可以由單一樣本序列的時間平均來實現(xiàn),即 如果觀

3、察的點數(shù) N 為有限值,則求 r(m)估計值的一種方法是由于 x(n)只有 N 個觀察值, 因此對于每一個固定的延遲m,可以利用的數(shù)據(jù)只有 N-1-|m|個,且在 0N-1 的范圍內(nèi),xN(x)=x(n),所以在實際計算中上式變?yōu)榈拈L度為 2N-1,這是有偏估計。無偏估計為三、設(shè)計所需儀器與設(shè)備1、PC微機1臺,安裝CCS3.02、DSP仿真器TDS510-USB2.0,1套四、設(shè)計內(nèi)容1、編寫程序。 2、程序完善、優(yōu)化,面向C6000開發(fā)調(diào)試。3、能演示輸入輸出數(shù)據(jù)的完整圖形,顯示結(jié)果,并對程序或相關(guān)設(shè)計予以解釋。五、設(shè)計步驟1、開電,運行 CCS 軟件,創(chuàng)建項目文件,編譯運行并下載。按照以

4、下步驟創(chuàng)建一個新工程:1.1 如果CCS安裝在C:CCStudio_v3.1,在C:CCStudio_v3.1myprogects文件下新建一個practice文件夾。1.2. 把C:CCStudio_v3.1tutorialtargetconsultant文件夾下的內(nèi)容復制到新建的文件夾里。目標與當前CCS的配置有關(guān)。在使用CCS前必須進行配置,CCS里沒有默認的配置。關(guān)于CCS配置的詳細介紹請參照第三章。1.3. 選擇Project->New。1.4. 在Project Name框里輸入工程名:(例如:practice)。1.5. 在Location框里輸入或者瀏覽第一步創(chuàng)建的文件夾

5、。1.6. 工程類型默認為可執(zhí)行的(.out)文件,目標設(shè)置為CCS當前的配置。1.7. 點擊 Finish ,CCS創(chuàng)建一個叫做practice.prj的工程文件。文件里存儲了工程配置和工程所需要的各種相關(guān)文件。1.8. 選擇 Project->Add files to Project,把文件加到工程里。你也可以在左邊的工程視圖窗口里右擊工程,選擇 Add files to Project。1.9. 從你所創(chuàng)建的文件夾里添加main.c, DoLoop.c, 和lnk.c(映射內(nèi)存的連接命令文件)。瀏覽C:CCStudio_v3.1c6000cgtoolslib目錄,為所配置的目標添加

6、相應(yīng)的rts.lib。1.10. 你不必手工添加包含文件到工程里,因為編譯程序的時候,程序會自動找到它們。在編譯一個工程后,包含文件會出現(xiàn)在工程視圖里。2、設(shè)置斷點,再點擊“運行”按鈕,如下圖所示。這里的相關(guān)算法是在程序中編寫的。選擇Debug->Go main開始Main函數(shù)的執(zhí)行。執(zhí)行到Main函數(shù)出暫停,此時程序指針(黃色箭頭)停在Main函數(shù)的左邊空白處。這個區(qū)域被稱為選擇區(qū)域(select margin)??梢栽谶@個區(qū)域設(shè)置斷點(break point),探針(probe)等把光標置于所需行上,按F9設(shè)置一個斷點。此外,你還可以通過選擇Toggle Breakpoint工具條按

7、鈕創(chuàng)建斷點。設(shè)置斷點后,一個紅色圖標將出現(xiàn)在選擇空白區(qū)。再按F9或Toggle reakpoint按鈕將除去斷點。main.c中,在DoLoop行設(shè)置斷點(Input1, Input2, Weights, Output, LOOPCOUNT) 當程序暫停在Main函數(shù)處時,通過按F5,選擇Debug->Run,或者選擇Run工具條來運行程序。一旦程序運行到斷點出,程序?qū)炱稹?、點擊View>Graph>Time/Frquence打開圖形屬性對話框,如下設(shè)置。采用雙綜觀察2路信號輸入變量x_real 和y_real。觀察點數(shù)為128點,類型為float型。輸出窗口默認定位在屏

8、幕下部,也可以通過View->Output Window來訪問。默認情況下,printf函數(shù)的輸出顯示在Output窗口,顯示Stdout的內(nèi)容和構(gòu)建日志之類的信息。4、再設(shè)置單綜觀察 1 路信號的輸出 r_real.觀察的點數(shù)為 255 點,類型為 float 型。內(nèi)存映射關(guān)系可以告訴調(diào)試器它能訪問內(nèi)存的哪個區(qū)域。內(nèi)存映射關(guān)系可以隨具體應(yīng)用而改變。當一個內(nèi)存映射關(guān)系定義并且內(nèi)存映射建立,調(diào)試器按照內(nèi)存映射關(guān)系挨個檢查內(nèi)存入口。調(diào)試器不能進入被設(shè)置為保護狀態(tài)的內(nèi)存區(qū)域。調(diào)試器按照軟件內(nèi)存映射關(guān)系檢查內(nèi)存入口而非按照硬件。調(diào)試器并不能阻止你的程序訪問不存在的存儲區(qū)域。5、點擊“OK”后,可

9、以看到如下波形。應(yīng)用程序代碼分析是對影響程序效率因素的數(shù)據(jù)進行收集和解釋的過程。應(yīng)用程序的調(diào)整就是修改代碼以此提高程序效率。DSP開發(fā)人員可以盡可能的分析和調(diào)整應(yīng)用程序,以此來滿足用戶、應(yīng)用區(qū)域和硬件所要求的效率。仿真分析工具允許用戶對事件、硬件斷點進行設(shè)定、監(jiān)視、計數(shù)等操作。CCS IDE可以通過各種方法把程序處理到的數(shù)據(jù)畫出來,包括時間/頻率,星座圖,眼圖和圖像等。選擇View-> Graph,可以得到這些圖,然后選擇需要的圖。這時候可以在圖屬性(graph property)的對話框中指定圖的屬性選項。下面的例子展示了一個單時刻(時間/頻率)圖表屬性對話框。六、程序框圖和程序con

10、st int MAXN=100;const double pi=acos(-1);const double eps=1e-6;struct C double r, i; C () C(double _r, double _i):r(_r),i(_i) inline C operator +(const C a)const return C(r+a.r, i+a.i); inline C operator - (const C a)const return C(r-a.r, i-a.i); inline C operator * (const C a)const return C(r*a.r-i

11、*a.i, r*a.i+i*a.r); aMAXN, bMAXN;int numMAXN, cntMAXN;int resMAXN, sumMAXN;void brc(C *y,int l) / 二進制平攤反轉(zhuǎn)置換 O(logn) register int i,j,k; for(i=1,j=l>>1;i<l-1;i+) if(i<j) swap(yi,yj); / 交換互為下標反轉(zhuǎn)的元素 / i<j保證只交換一次 k=l>>1; while(j>=k) / 由最高位檢索,遇1變0,遇0變1,跳出 j-=k; k>>=1; if(j&l

12、t;k) j+=k; void FFT(C *y,int l,int on) / FFT O(nlogn) / 其中on=1時為DFT,on=-1為IDFT register int h,i,j,k; C u,t; brc(y,l); / 調(diào)用反轉(zhuǎn)置換 for(h=2;h<=l;h<<=1) / 控制層數(shù) / 初始化單位復根 C wn(cos(on*2*pi/h),sin(on*2*pi/h); for(j=0;j<l;j+=h) / 控制起始下標 C w(1,0); / 初始化螺旋因子 for(k=j;k<j+h/2;k+) / 配對 u=yk; t=w*yk+

13、h/2; yk=u+t; yk+h/2=u-t; w=w*wn; / 更新螺旋因子 / if(on=-1) for(i=0;i<l;i+) yi.r/=l; / IDFTvoid correl(C *x, C *y, int lx, int ly, double *c)/ c 為相關(guān)系數(shù). int len=1;/len>=lx+ly-1 2kwhile(len<lx+ly-1)len<<=1;C *z;z=new Clen;for( int i=lx; i<len; + i )xi=C(0, 0);for( int i=ly; i<len ; + i)

14、yi=C(0, 0);FFT(x, len, 1);FFT(y, len, 1);for( int i=0; i<len; + i )zi=xi*yi;FFT(z, len, -1);for( int i=0;i<lx+ly-1; + i )ci=zi.r;delete z;七、心得體會課程設(shè)計是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學生實際工作能力的具體訓練和考察過程。隨著科學技術(shù)發(fā)展的日新月異,時代對于學生的綜合素質(zhì)要求將會越來越高,進行課程設(shè)計,將有利于提高學生們綜合素質(zhì)的提高。 從本次課程設(shè)計的中心來看,課題是希望通過對隨機信號的相關(guān)性的算法進行設(shè)計,編寫這里就是指對程序的編寫,調(diào)試等。在這里我們只要編寫正確的程序,經(jīng)過調(diào)試,仿真硬件調(diào)試就

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論