新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 一種基于FPGA的自適應(yīng)譜線增強(qiáng)系統(tǒng)的設(shè)計(jì)

一種基于FPGA的自適應(yīng)譜線增強(qiáng)系統(tǒng)的設(shè)計(jì)

作者: 時(shí)間:2010-07-13 來源:網(wǎng)絡(luò) 收藏

  3.1 TLC5510的控制

  TLC5510是8位高速模數(shù)轉(zhuǎn)換器,以流水線的工作方式進(jìn)行采樣,在每一個(gè)時(shí)鐘周期啟動(dòng)1次采樣、完成1次采樣,采樣在時(shí)鐘下降沿進(jìn)行,經(jīng)過2.5個(gè)時(shí)鐘周期后輸出轉(zhuǎn)換結(jié)果。設(shè)計(jì)中根據(jù)采樣時(shí)序,用狀態(tài)機(jī)來描述采樣控制過程,實(shí)現(xiàn)了采樣的控制。實(shí)現(xiàn)狀態(tài)交替的VHDL代碼如下:

  實(shí)現(xiàn)采樣數(shù)據(jù)輸出的VHDL代碼如下:

  3.2 采樣信號(hào)延遲

  為了實(shí)現(xiàn)延時(shí),片內(nèi)開辟了3個(gè)緩沖區(qū),分別是輸入、時(shí)延、權(quán)值緩沖區(qū)。采樣后的數(shù)據(jù)首先存入片內(nèi)數(shù)據(jù)緩存FIFO,進(jìn)入待命狀態(tài)。時(shí)延緩沖區(qū)實(shí)現(xiàn)△長(zhǎng)度的時(shí)延,權(quán)值緩沖區(qū)儲(chǔ)存權(quán)值。其中,時(shí)延緩沖區(qū)和輸入緩沖區(qū)地址是連續(xù)的。時(shí)延緩沖區(qū)的長(zhǎng)度由延遲△決定,輸入緩沖區(qū)和權(quán)值緩沖區(qū)的長(zhǎng)度由權(quán)值的維數(shù)決定。緩沖區(qū)的實(shí)現(xiàn)是在VHDL語言編寫的程序中定義存儲(chǔ)數(shù)據(jù)的向量,這些數(shù)據(jù)向量的數(shù)據(jù)類型定義如下:

  其中:ARRAY_N1BIF定義的是濾波器參數(shù)向量的數(shù)據(jù)類型;ARRAY_N1BIYX定義的延遲后信號(hào)向量的數(shù)據(jù)類型;ARRAY_N1BIT定義的是輸入信號(hào)向量的數(shù)據(jù)類型;ARRAY_N2BIT定義的是譜線增強(qiáng)后信號(hào)向量的數(shù)據(jù)類型;W1是采樣數(shù)據(jù)的寬度,這里為8;Delay是延時(shí)長(zhǎng)度;L是濾波器階數(shù)。

  3.3 LMS算法核心模塊

  這是設(shè)計(jì)的核心部分也是設(shè)計(jì)中的難點(diǎn)。用實(shí)現(xiàn)復(fù)雜數(shù)字并不像DSP中那樣簡(jiǎn)單,需要考慮時(shí)序同步、數(shù)據(jù)寬度以及如何舍入。該設(shè)計(jì)采用16階器實(shí)現(xiàn),濾波器初始權(quán)值全部為0,按照式(3)的算法進(jìn)行迭代更新,算法實(shí)現(xiàn)中用到大量乘法運(yùn)算。調(diào)用芯片內(nèi)部嵌入的乘法器宏功能模塊lpm_mult使實(shí)現(xiàn)這些乘法運(yùn)算更加快速、高效的方案。lpm_mult模塊輸入采樣的8位數(shù)據(jù),因?yàn)樵诔朔ㄟ\(yùn)算中2個(gè)8位二進(jìn)制數(shù)相乘得到的結(jié)果是1個(gè)16位二進(jìn)制數(shù),所以設(shè)計(jì)中將處理結(jié)果輸出為16位二進(jìn)制數(shù)。為了提高速度,設(shè)計(jì)中采用流水線的濾波器結(jié)構(gòu)。流水線結(jié)構(gòu)能夠顯著地提高處理的速度,但是要消耗更多的硬件資源,特別是硬件乘法器,如果LMS FIR濾波器的長(zhǎng)的為L(zhǎng)則需要2L個(gè)通用乘法器。設(shè)計(jì)中L=16,片內(nèi)有36個(gè)片內(nèi)乘法器可以勝任處理要求。編譯結(jié)果顯示片內(nèi)應(yīng)用于LMS核心算法的其他資源消耗全部小于或等于總消耗的6%,其余資源可以用于片內(nèi)的采樣、輸出等時(shí)序控制。LMS算法硬件實(shí)現(xiàn)的流水線結(jié)構(gòu)框圖如圖5所示。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉