freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于dsp數(shù)字信號(hào)處理器的快速傅里葉變換程序設(shè)計(jì)-文庫(kù)吧資料

2024-11-15 22:04本頁(yè)面
  

【正文】 e(n=k) { n=nk。xi[n]=T。 T=xi[m]。xr[m]=xr[n]。m=N12。 //最高位加 1 相當(dāng)于十進(jìn)制加上最高位的權(quán) N1/2 n=N2。 //m 為正序數(shù); n為倒序數(shù); k 為各個(gè)權(quán)值; N2為最高位的權(quán)值 快速傅里葉變換程序設(shè)計(jì) 13 float T。經(jīng)過第三級(jí)到最后一級(jí)蝶形運(yùn)算之后,已經(jīng)得到式( 42)所示: ( ) ( ) ( )A k AR k AI k j?? ( 42) 故功率譜可以通過式( 43)計(jì)算得到 : 22( ) ( )AR k AI k? ( 43) 通過軟件仿真,可以觀察到輸入信號(hào)的時(shí)間波形和頻譜波形以及輸出信號(hào)的功率譜波形。m++) { w[m]=sqrt(Xr[m]*Xr[m]+Xi[m]*Xi[m])。 功率譜的計(jì)算實(shí)現(xiàn) for(m=0。 例 N=2048, N2=4194304, (N/2)log2N=11264, N2/[(N/2)log2N]=。因此每一級(jí)運(yùn)算都需要 次 復(fù)乘和 N 次復(fù)加 (每個(gè)結(jié)作加、減各一次 ),這樣,經(jīng)過時(shí)間抽取后 M級(jí)運(yùn)算總共需要的運(yùn)算: 復(fù)乘 復(fù)加 N 當(dāng)然,實(shí)際情況與這個(gè)數(shù)字稍有出入,因?yàn)? 這幾個(gè)系數(shù)實(shí)際上都不用乘法運(yùn)算,因此在上面 N=8 的例子中,實(shí)際上只有兩個(gè)系數(shù) W 及 W 是需要乘法運(yùn)算的。這樣的 M次分解,就構(gòu)成從 x(n)到 X(k)的 M 級(jí)運(yùn)算過程。 } } } 在這個(gè)時(shí)間抽取法 FFT 程序中,要求采樣點(diǎn)數(shù) N 為 2 的整數(shù)冪次方,每級(jí)需要進(jìn)行 B種蝶形運(yùn)算,每種蝶形運(yùn)算在某一級(jí)中需要進(jìn)行 N/pow(2,m)次蝶形運(yùn)算,結(jié)果的實(shí)部和虛部分別存儲(chǔ)在原實(shí)部和虛部位置。 Xr[k]=Xr[k]+X。 Xr[k+B]=Xr[k]X。k+=(int)(pow(2,m)+)) { //結(jié)果的實(shí)部和虛部分別存儲(chǔ)在原實(shí)部和虛部位置 X=Xr[k+B]*cos_tab[S]+Xi[k+B]*sin_tab[S]。 for(k=j。jB。m++) { B=(int)(pow(2,m1)+)。 //倒序運(yùn)算函數(shù),對(duì)輸入序列倒序 for(m=1。 float X,Y。 按時(shí)間抽取法的 FFT 程序 void FFT(float Xr[N],float Xi[N]) //時(shí)間抽取法 FFT 程序,要求采樣 //點(diǎn)數(shù) N為 2的整數(shù)冪次方 { //Xr[], Xi[]分別為輸入序列的實(shí) //部和虛部 int S,B。 } } 為了獲得 FFT 運(yùn)算中需要的全部旋轉(zhuǎn)因子,需要分別存儲(chǔ)正弦表和余弦表,且每個(gè)表長(zhǎng)度為 N ,對(duì)應(yīng)于 0176。i++) 快速傅里葉變換程序設(shè)計(jì) 11 { sin_tab[i]=sin(PI*2*i/N)。 for(i=0。同時(shí),采用循環(huán)尋址方式對(duì)正弦表和余弦表進(jìn)行尋址。為了獲得FFT 運(yùn)算中需要的全部旋轉(zhuǎn)因子,需要分別存儲(chǔ)正弦表和余弦表,且每個(gè)表長(zhǎng)度為 N ,對(duì)應(yīng)于 0176。 Xi[k]=Xi[k]+Y。 Xi[k+B]=Xi[k]Y。//采用循環(huán)尋址方式對(duì)正弦 Y=Xi[k+B]*cos_tab[S]Xr[k+B]*sin_tab[S]。k=N1。j++) //每級(jí)需要進(jìn)行 B種蝶 形運(yùn)算 {S=j*(int)(pow(2,Mumm)+)。 //B=2^(m1) for(j=0。m=Mum。 在這個(gè)主程序中,可以調(diào)用后續(xù)的 FFT 初始化函數(shù)程序,時(shí)間抽取法 FFT程序,以及倒序運(yùn)算函數(shù)程序,是整個(gè)程序的中轉(zhuǎn)站。 由于主函數(shù)肩負(fù)著入口和出口的重任,所以最好不要把太多的細(xì)節(jié)方面的邏輯直接放在主函數(shù)內(nèi),這樣不利于維護(hù)和擴(kuò)展。主函數(shù)意味著建立一個(gè)獨(dú)立進(jìn)程,且該進(jìn)程成為了程序的入口,對(duì)其它各快速傅里葉變換程序設(shè)計(jì) 10 函數(shù)進(jìn)行調(diào)用,當(dāng)然其它被調(diào)用函數(shù)也可以再去調(diào)用更多函數(shù),這樣整個(gè)程序的運(yùn)行軌跡就像一種棧,有時(shí)我們稱之為調(diào)用棧。//功率譜 } adconvover=0。iN。 //N=2^Mum FFT(fWaveR,fWaveI)。 w[i]=。i++) //i128 { fWaveR[i]=INPUT[i]。} for(i=0。i128。 for(。 IER 是 CPU 中斷使能寄存器 EINT。 //已經(jīng)定義 define StartCpuTimer2() // = 0 /*開中斷 */ IER |= M_INT14。CpuTimer2, 150, 22)。 DINT。 // Enable Global interrupt INTM ERTM。 // This is needed to disable write to EALLOW protected //registers /*開中斷 */ IER |= M_INT1。ad。ISRTimer2。 /*設(shè)置中斷服務(wù)程序入口地址 */ EALLOW。 /*初始化 PIE中斷矢量表 */ InitPieVectTable()。 //禁止 CPU 中斷 IFR = 0x0000。 /*關(guān)中斷 */ DINT。//建立正余弦函數(shù)表 cos_tab[i]=cos(PI*2*i/N)。iN。 //Mum 為蝶形運(yùn)算的級(jí)數(shù) 程序初始化部分的詳細(xì)信息見上 面所列程序。 float sin_tab[N],cos_tab[N]。 //倒序運(yùn)算函數(shù),對(duì)輸入序列倒序 int INPUT[N],DATA[N]。 //void InitForFFT(void)。 volatile unsigned int adconvover =0。 //聲明 ad 中斷子程序 unsigned int Ad_data[128]={0}。 快速傅里葉變換程序設(shè)計(jì) 8 程序的初始化 include define PI define N 128 //采樣次數(shù) include include interrupt void ISRTimer2(void)。 快速傅里葉變換程序設(shè)計(jì) 7 Next,作如下圖所示的設(shè)置。 圖 目標(biāo)板選擇 F2812 XDS510 Emulator驅(qū)動(dòng)后,鼠標(biāo)右鍵,在彈出的菜單中點(diǎn)擊Properties。 DSP的型號(hào)選擇相應(yīng)的 TI原裝驅(qū)動(dòng)程序,根據(jù) DSP的型號(hào)選擇相應(yīng)的 TI驅(qū)動(dòng)程序,本實(shí)驗(yàn)箱 采用 SEED_DEC2812,故選擇 F2812 XDS510 Emulator。 快速傅里葉變換程序設(shè)計(jì) 5 3 設(shè)計(jì)流程圖 否 是 否 是 開始 程序初始化 開中斷 初始化 ADC 等待中斷發(fā)生 是否發(fā)生中斷? AD采樣 采樣結(jié)束否? 將采集到的數(shù)據(jù)進(jìn)行 FFT 變換 計(jì)算功率譜 圖形輸出 結(jié)束 快速傅里葉變換程序設(shè)計(jì) 6 4 各部分程序設(shè)計(jì)及參數(shù)計(jì)算 驅(qū)動(dòng)程序的配置 Setup CCStudio 。 旋轉(zhuǎn)因子 由 FFT 算法原理過程可知,若 N =2L ,則共有 L 級(jí)蝶形運(yùn)算,各級(jí)蝶形運(yùn)算中旋轉(zhuǎn)因子分別如下:第 L 級(jí)的旋轉(zhuǎn)因子為 rNW ( r =0,1,?, /2 1N ? ) ;第 L 1級(jí)的旋轉(zhuǎn)因子為 /2rNW ( r =0,1,?, 2/2 1N ? );?;第一級(jí) 的旋轉(zhuǎn)因子為1/2LrNW ?( r =0,1,?, /2 1LN ? )。 表 21 碼位倒 置順序 自然順序 二進(jìn)碼表示 碼位倒置 倒位序 0 000 000 0 1 001 100 4 2 010 010 2 3 011 110 6 4 100 001 1 5 101 101 5 6 110 011 3 7 111 111 7 蝶距 快速傅里葉變換程序設(shè)計(jì) 4 設(shè) N=2L ,則整個(gè)運(yùn)算流圖中包含 L 級(jí)蝶形運(yùn)算,每一級(jí)則有 N/2 個(gè)蝶形單元。 需要注意當(dāng)進(jìn)行原位運(yùn)算時(shí),輸入輸出序列為倒位序的關(guān)系,若不為原位運(yùn)算,則這種關(guān)系不一定成立。 當(dāng)用二進(jìn)制表示順序時(shí),它正好是“位碼倒置”的順序。然后用模數(shù)轉(zhuǎn)換器采集信號(hào)(正弦 信號(hào),方波信號(hào)等等),最后將采集到的信號(hào)進(jìn)行 FFT變換即可。在本設(shè)計(jì)中實(shí)現(xiàn)的是基 2 的時(shí)間抽取 FFT 算法,具體的實(shí)現(xiàn)過程可參見源程序及其注釋。時(shí)間抽取 FFT 算法的特點(diǎn)是每一級(jí)處理都是在時(shí)域里把輸入序列依次按奇 /偶一分為二分解成較短的序列;頻率抽取 FFT 算法的特點(diǎn)是在頻域里把序列依次按奇 /偶一分為二分解成較短的序列來計(jì)算。 N 點(diǎn)的 DFT 先分解為兩個(gè)N/2 點(diǎn)的 DFT,每個(gè) N/2 點(diǎn)的 DFT 又分解為 兩個(gè) N/4 點(diǎn)的 DFT 等等,最小變換的點(diǎn)數(shù)即基數(shù),基數(shù)為 2 的 FFT 算法的最小變換是 2 點(diǎn) DFT。 對(duì)于旋轉(zhuǎn)因子 NW 來說,有如下的對(duì)稱性和周期性: 對(duì)稱性: 2/NkNkN WW ??? 周期性: NkNkN WW ?? FFT 就是利用了旋轉(zhuǎn)因子的對(duì)稱性和周期性來減少運(yùn)算量的。 對(duì)于有限長(zhǎng)離散數(shù)字信號(hào) {x[n]},0≦ n≦ N1,其離散譜 {x[k]}可以由離散付氏變換( DFT) 求得。 FFT 使 DFT 的運(yùn)算大大簡(jiǎn)化,運(yùn)算時(shí)間一般可以縮短一至兩個(gè)數(shù)量級(jí),F(xiàn)FT 的出現(xiàn)大大提高了 DFT 的運(yùn)算速度,從而使 DFT 在實(shí)際應(yīng)用中得到廣泛的應(yīng)用。離散傅立葉變換( DFT)是連續(xù)傅立葉變換在離散系統(tǒng)中的表現(xiàn)形式,由于 DFT 的計(jì)算量很大,因此在很長(zhǎng)時(shí)間內(nèi)其應(yīng)用受到很大的限制。所以快速傅里葉變換算法的原理和實(shí)現(xiàn)成為了整個(gè) 設(shè)計(jì)的核心部分。 發(fā)揮部分 用 AD 采集信號(hào),可以對(duì)多種信號(hào)進(jìn)行 FFT 變換。 ( 2) 編寫 FFT程序 。 ( 3) 學(xué)習(xí)用 FFT 對(duì)連續(xù)信號(hào)和時(shí)域信號(hào)進(jìn)行譜分 析的方法,了解可能出現(xiàn)的分析誤差及其原因,以便在實(shí)際中正確運(yùn)用 。 設(shè)計(jì)主要內(nèi)容及要求 設(shè)計(jì)目的 ( 1) 掌握 DSP芯片的使用方法 。它使 DFT 的運(yùn)算效率提高 1~ 2 個(gè)數(shù)量級(jí),為數(shù)字信號(hào)處理技術(shù)應(yīng)用于各種高速信 號(hào)的實(shí)時(shí)處理創(chuàng)造了良好的條件,從而大大推動(dòng)了數(shù)字信號(hào)處理技術(shù)的發(fā)展。 FFT 使 DFT 的運(yùn)算大大化簡(jiǎn),運(yùn)算時(shí)間一般可以縮短 1至 2個(gè)數(shù)量級(jí), FFT 的出現(xiàn)大大提高了 DFT 的運(yùn)算速度,從而使 DFT 得到廣泛的應(yīng)用。離散傅里葉變換( DFT)是連續(xù)傅里葉變換在離 散系統(tǒng)中的表現(xiàn)形式,但由于 DFT 的計(jì)算量很大,因此在很長(zhǎng)一段時(shí)間內(nèi)其應(yīng)用受到很大的限制。 TMS320C2020 系列 DSP片上整合了 Flash 存儲(chǔ)器、快速的 A/D 轉(zhuǎn)換
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1