大俠好,歡迎來(lái)到FPGA技術(shù)江湖,江湖偌大,相見(jiàn)即是緣分。大俠可以關(guān)注FPGA技術(shù)江湖,在“闖蕩江湖”、"行俠仗義"欄里獲取其他感興趣的資源,或者一起煮酒言歡。
大俠好,最近本媛比較忙,沒(méi)有時(shí)間更新。時(shí)間太長(zhǎng),怕大家忘了我,今天我來(lái)了,今天由“82年的程序媛”本媛給大俠帶來(lái)基于FIR濾波器的帶限白噪聲的設(shè)計(jì),后續(xù)本媛還會(huì)繼續(xù)更新產(chǎn)品項(xiàng)目開(kāi)發(fā)心得,學(xué)習(xí)心得等,歡迎大家持續(xù)關(guān)注,話不多說(shuō),上貨。
一、?高斯白噪聲
高斯噪聲:是一種隨機(jī)噪聲,其時(shí)域內(nèi)的信號(hào)幅度的統(tǒng)計(jì)規(guī)律服從高斯分布。
白噪聲:信號(hào)的功率譜在整個(gè)頻域內(nèi)為常數(shù)的噪聲。
帶限白噪聲:帶寬限制在一定范圍內(nèi)的高斯白噪聲。
二、?產(chǎn)生方法
傳統(tǒng)的高斯白噪聲的產(chǎn)生是將多個(gè)m序列通過(guò)D/A轉(zhuǎn)換器,然后通過(guò)濾波器得到,比較繁瑣。本項(xiàng)目將通過(guò)線性反饋移位寄存器和FIR濾波器完成。
首先通過(guò)matlab中wgn函數(shù)生成高斯白噪聲,并將生成的噪聲數(shù)據(jù)存入到rom中,然后通過(guò)LFSR產(chǎn)生m序列偽隨機(jī)碼作為rom地址對(duì)噪聲數(shù)據(jù)進(jìn)行讀取增加其隨機(jī)性,最后將輸出的隨機(jī)噪聲通過(guò)FIR濾波器得到帶限白噪聲。
三、?線性反饋移位寄存器(LFSR)
偽隨機(jī)碼的性能指標(biāo)直接影響產(chǎn)生白噪聲的隨機(jī)性。本設(shè)計(jì)采用xilinx提供的LFSR IP核來(lái)實(shí)現(xiàn)。
LFSR可以通過(guò)如圖方式進(jìn)行配置,可選擇輸出的數(shù)據(jù)類型、位寬、小數(shù)位等。
本設(shè)計(jì)選擇數(shù)據(jù)類型為UFIX_32_4,然后再通過(guò)convert對(duì)其進(jìn)行截位,得到UFIX_10_0的數(shù)據(jù)輸出作為ROM地址,再一次提高了隨機(jī)性。
四、?FIR濾波器系數(shù)重載
該部分濾波器的設(shè)計(jì)選擇Use Reloadable Coefficients模式,接收系統(tǒng)發(fā)送的濾波器系數(shù),產(chǎn)生可變帶寬的帶限噪聲信號(hào)。
使用可重新加載的濾波器系數(shù)時(shí),需將內(nèi)部系數(shù)設(shè)置成相同長(zhǎng)度的0,然后借助FDATools設(shè)計(jì)并導(dǎo)出濾波器系數(shù)。
本設(shè)計(jì)中低通FIR濾波器使用等波紋法設(shè)計(jì)、128階,250M采樣率、通帶頻率10M、截止頻率20M。
設(shè)計(jì)完成后可通過(guò)下圖操作將系數(shù)生成.m文件,然后就可以作為重載系數(shù)輸入到濾波器中了。
濾波器設(shè)置成系數(shù)重載模式時(shí),需控制的接口如下圖;
其中data_tdata_real即為輸入的數(shù)據(jù),reload_tdata_data為輸入的系數(shù)。
其接口時(shí)序圖如下圖所示:
按照時(shí)序要求配置FIR濾波器:
然后對(duì)輸出數(shù)據(jù)的位寬和類型進(jìn)行調(diào)整得到結(jié)果。
最后得到的帶寬為10M的帶限白噪聲:
今天本媛就說(shuō)到這里,后續(xù)繼續(xù)和大俠一起分享,歡迎關(guān)注貌美如花的“82年的程序媛”本媛,江湖偌大,繼續(xù)闖蕩,加油!