高斯噪聲源電路的設(shè)計(jì)與實(shí)現(xiàn)
摘要:為了實(shí)現(xiàn)占用資源少、精度高的高斯噪聲源電路,設(shè)計(jì)了一種新的高斯噪聲產(chǎn)生方案,該方案在FPGA上通過(guò)線性反饋移位寄存器產(chǎn)生高速均勻分布偽隨機(jī)數(shù),接著利用均勻分布與高斯分布之間的映射關(guān)系生成高斯噪聲,并創(chuàng)新地采用非均勻劃分的折線逼近映射曲線,同時(shí)設(shè)計(jì)尋址電路,從而減少噪聲源占用的資源,改善噪聲精度。在XILINX Virtex5 XC5VLX50T上的實(shí)現(xiàn)結(jié)果表明,該方案僅使用了2%的可配置SUCE和1塊片上BRAM,實(shí)現(xiàn)了+4σ(σ為標(biāo)準(zhǔn)偏差)的高斯噪聲源。時(shí)序分析表明其最高頻率可達(dá)131 MHz。
關(guān)鍵詞:高斯噪聲源電路;查表法;非均勻劃分;尋址電路
在硬件實(shí)現(xiàn)的跟蹤系統(tǒng)中,經(jīng)常需要高斯噪聲信號(hào)源來(lái)提供噪聲。傳統(tǒng)的高斯噪聲大多在基于DSP的軟件系統(tǒng)上生成,其產(chǎn)生速度比硬件系統(tǒng)工作頻率要慢很多,且不利于SOC(system on chip)的集成。通常,在這樣的系統(tǒng)里有大量的運(yùn)算與邏輯操作(例如,硬件粒子濾波系統(tǒng))高斯源作為噪聲模塊只是很小的一個(gè)功能塊,因此設(shè)計(jì)時(shí)需要盡量減少噪聲源占用的資源,以便將有限的FPGA的資源盡量留給其他計(jì)算模塊。然而,噪聲的精度卻對(duì)最終的跟蹤結(jié)果精度有著直接影響,因此要想獲得高精度的跟蹤結(jié)果必須改善噪聲的精度。為了獲得占用資源少、精度高的高斯噪聲源電路,設(shè)計(jì)了本文的高斯噪聲產(chǎn)生方案。該方案由Verilog HDL編程,可移植性強(qiáng),可作為功能模塊移植到其他系統(tǒng)中產(chǎn)生高斯噪聲。
1 方案選擇
為了獲得高斯噪聲,通常采用數(shù)字合成方法,首先產(chǎn)生均勻分布的偽隨機(jī)數(shù)噪聲,然后通過(guò)一定的轉(zhuǎn)換方法獲得高斯白噪聲。
均勻分布的偽隨機(jī)數(shù)產(chǎn)生已經(jīng)有較長(zhǎng)的研究歷史,主要的方法有:線性同余法、m序列產(chǎn)生法、logist方程法、進(jìn)位加方法。FPGA具有并行計(jì)算的優(yōu)勢(shì),可以勝任基本邏輯、簡(jiǎn)單加減法、大小比較、多路選擇和時(shí)序邏輯等操作。通常FPGA采用查找表實(shí)現(xiàn)組合邏輯運(yùn)算,當(dāng)組合邏輯過(guò)于復(fù)雜時(shí),往往需要使用多級(jí)查找表來(lái)完成運(yùn)算,大大降低速度,如乘除法。因此用FPGA實(shí)現(xiàn)偽隨機(jī)數(shù)發(fā)生器,算法應(yīng)該盡量簡(jiǎn)單,并盡量不要使用乘除法。考慮到以上因素,本設(shè)計(jì)采用m序列產(chǎn)生法,該算法具有簡(jiǎn)單、產(chǎn)生速度快、可重復(fù)性強(qiáng)的特點(diǎn),并且得到的偽隨機(jī)序列周期較長(zhǎng)。將均勻分布的隨機(jī)序列轉(zhuǎn)化為高斯分布的隨機(jī)序列的方法主要有函數(shù)變換法、中心極限法、查找表法3種。前兩種方法都使用到了復(fù)雜的運(yùn)算,在FPGA上實(shí)現(xiàn)時(shí)需要占用較多的邏輯資源。查找表法通過(guò)圖1所示的均勻噪聲和高斯噪聲之間的映射關(guān)系建立查找表,通過(guò)查表方法得到對(duì)應(yīng)高斯噪聲。若對(duì)每個(gè)均勻輸入都建立查找關(guān)系,則對(duì)于n位的均勻噪聲輸入需要建立2n大小的查找表,查找表大小隨著輸入位數(shù)增加成指數(shù)增長(zhǎng)。當(dāng)為了增加精度而提高n時(shí),查找表大小迅速增長(zhǎng)到不能接受。文獻(xiàn)利用折線來(lái)逼近映射曲線,查找表里存儲(chǔ)折線的偏移和斜率,從而減少查找表的大小。觀察圖1發(fā)現(xiàn)曲線在高斯噪聲絕對(duì)值小的地方斜率小,在絕對(duì)值大的地方斜率大。如果采用均勻量化的方法,則在高斯噪聲絕對(duì)值越大的地方精度越差。要想得到更高精度,就要增加均勻量化級(jí)數(shù),增大查找表。文中引入非均勻劃分的思想,在斜率較小的地方,用較少的折線逼近映射曲線,在斜率大的地方,用更多的折線逼近映射曲線,這樣可以在不增加查找表大小的情況下改善精度。
文中的安排如下:在第2節(jié)中給出了均勻偽隨機(jī)數(shù)的實(shí)現(xiàn)過(guò)程。第3節(jié)詳細(xì)描述了本文的非均勻劃分的方法和尋址方式。在最后1節(jié),給出了設(shè)計(jì)結(jié)果和結(jié)論。
評(píng)論