和同學(xué)們一起交流程序定點(diǎn)化過(guò)程中的經(jīng)驗(yàn),這對(duì)同學(xué)們的學(xué)習(xí)很有幫助。本堂課不講解具體的理論內(nèi)容,而是從一個(gè)實(shí)際的文檔案例來(lái)說(shuō)明定點(diǎn)化的復(fù)雜度和重要性。
定點(diǎn)化是程序走向?qū)嵱玫谋亟?jīng)之路。
大多芯片都是在定點(diǎn)運(yùn)算中發(fā)揮速度優(yōu)勢(shì)?,F(xiàn)在信號(hào)處理要求的實(shí)時(shí)性要求高,所以浮點(diǎn)程序定點(diǎn)化是必須完成的過(guò)程,還要保證性能幾乎沒(méi)有變化。
課程《數(shù)字信號(hào)處理》中有一章專(zhuān)門(mén)講這方面的知識(shí),可見(jiàn)其有多重要。
先看看文檔內(nèi)容吧!
1.設(shè)計(jì)與調(diào)試總結(jié)
1.1.有關(guān)verilog HDL
1.1.1.二進(jìn)制補(bǔ)碼取反
既是雙目的減法運(yùn)算符,也可演變?yōu)閱文窟\(yùn)算符得到原值的二進(jìn)制補(bǔ)碼。
1.1.2.二維數(shù)組
假設(shè)對(duì)于一個(gè)位寬為wordsize,長(zhǎng)度為memsize的二維數(shù)組由如下定義:
reg [wordsize-1:0] mem[memsize-1:0];
如果想單獨(dú)讀取二位數(shù)組中地址為addr的某個(gè)字,那么addr只能是模塊內(nèi)部產(chǎn)生的變量,而不能是外部輸入。
1.1.3.帶符號(hào)移位操作符
使用verilog HDL語(yǔ)言中的帶符號(hào)移位運(yùn)算符“>>>”和“<<<”時(shí),需要設(shè)置變量為signed型,否則帶符號(hào)移位無(wú)效。
1.2.CIC經(jīng)驗(yàn)總結(jié)
1.2.1.CIC階數(shù)對(duì)下變頻器頻率響應(yīng)的影響
實(shí)際測(cè)試表明5級(jí)的CIC濾波器的頻率響應(yīng)性能大大好于3級(jí)CIC濾波器,由于1005#電臺(tái)有較嚴(yán)格的頻率響應(yīng)指標(biāo),必須使用5級(jí)CIC濾波器。
1.2.2.CIC運(yùn)算位寬的確定
CIC濾波器中由于存在積分單元,因此計(jì)算結(jié)果溢出在所難免。由于二進(jìn)制補(bǔ)碼對(duì)數(shù)據(jù)的溢出能夠進(jìn)行自動(dòng)補(bǔ)償,所以如果數(shù)據(jù)采用補(bǔ)碼的形式進(jìn)行運(yùn)算,對(duì)積分器的溢出問(wèn)題可以不用考慮。在多級(jí)CIC級(jí)聯(lián)的情況下,為了保證不至于因?yàn)?a href="http://wenjunhu.com/tags/寄存器/" target="_blank">寄存器溢出而導(dǎo)致的數(shù)據(jù)的丟失,需要對(duì)寄存器進(jìn)行位數(shù)的擴(kuò)展,這就涉及到寄存器最大長(zhǎng)度的問(wèn)題。
1.3.FIR經(jīng)驗(yàn)總結(jié)
1.3.1.FIR濾波器的設(shè)計(jì)
生成FIR濾波器的matlab語(yǔ)句為:
fir_coef = fir1(255,0.18,'low',chebwin(256,110));
使用窗函數(shù)法設(shè)計(jì)濾波器。
第一個(gè)參數(shù)是濾波器的階數(shù)。
第二個(gè)系數(shù)是截止頻率,這是一個(gè)介于0和1之間的數(shù)。假設(shè)實(shí)際截止頻率是F,采樣率是Fs,那么函數(shù)中第二個(gè)參數(shù)為 本文的FIR,截止頻率是電臺(tái)要求的3.2KHz,采樣率是36KHz。通過(guò)公式計(jì)算約為0.1778,因此設(shè)為0.18,即實(shí)際截止頻率比3.2KHz稍大。因?yàn)橹蟮?a target="_blank">DSP處理還有帶通濾波器,將會(huì)把上截止頻率嚴(yán)格限制在3.2KHz。但是該值也不可以太大,截止頻率越大,就會(huì)有更多的噪聲進(jìn)入音頻信號(hào),從而使電臺(tái)的靈敏度指標(biāo)惡化。
第三個(gè)參數(shù)是濾波器類(lèi)型,可以設(shè)為低通濾波器low,高通濾波器high和帶通濾波器bandpass。
第四個(gè)參數(shù)是窗函數(shù)的類(lèi)型,默認(rèn)為漢明(Hamming)窗,同樣還可以設(shè)計(jì)為KAISER或者切比雪夫窗。本文中的FIR采用切比雪夫窗。切比雪夫窗的使用方法是CHEBWIN(N+1,R),其中N是FIR的階數(shù),R是帶外抑制度,單位是dB。帶外抑制越高,電臺(tái)的靈敏度和阻塞指標(biāo)越好。
上述內(nèi)容是一位研究生所寫(xiě),從文檔中可以看出理論知識(shí)即使學(xué)的好,也需要在實(shí)踐中去應(yīng)用。知識(shí)只有應(yīng)用了才能得到真正的提高和理解。
休息一下!
沒(méi)有定點(diǎn)化的過(guò)程,
就很難完成實(shí)際的產(chǎn)品。
學(xué)過(guò)DSP和FPGA的人自然能明白!
-
二進(jìn)制
+關(guān)注
關(guān)注
2文章
795瀏覽量
41653 -
信號(hào)處理
+關(guān)注
關(guān)注
48文章
1029瀏覽量
103285 -
程序
+關(guān)注
關(guān)注
117文章
3787瀏覽量
81049
原文標(biāo)題:數(shù)字信號(hào)處理之信號(hào)處理仿真 第三章 程序定點(diǎn)化(1)
文章出處:【微信號(hào):gh_30373fc74387,微信公眾號(hào):通信工程師專(zhuān)輯】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論