新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 用CPLD實(shí)現(xiàn)FIR數(shù)字濾波器的設(shè)計(jì)

用CPLD實(shí)現(xiàn)FIR數(shù)字濾波器的設(shè)計(jì)

作者: 時(shí)間:2009-07-17 來源:網(wǎng)絡(luò) 收藏
當(dāng)前,無論在軍事還是民用方面,對(duì)于數(shù)字信號(hào)處理的實(shí)時(shí)性、快速性的要求越來越高??删幊踢壿嬈骷≒LD)由于在速度和集成度的飛速提高,越來越多的電子系統(tǒng)采用可編程邏輯器件來實(shí)現(xiàn)數(shù)字濾波。
Altera公司的FLEX10K是工業(yè)界第一個(gè)嵌入式的PLD,具有高密度、低成本、低功率等優(yōu)點(diǎn)。器件的主要結(jié)構(gòu)特點(diǎn)是除主要的邏輯陣列塊(LAB)之外,首次采用了嵌入陣列塊(EAB)。每個(gè)陣列塊包含8個(gè)邏輯單元(LE)和一個(gè)局部互連。一個(gè)LE又由四輸入查找表(LUT)、一個(gè)可編程寄存器和專用的載運(yùn)和級(jí)聯(lián)功能的信號(hào)通道所組成。
在FLEX10K器件中,把每一組邏輯單元(8個(gè)LE)組成一個(gè)邏輯陣列塊(LAB),所有的邏輯陣列塊(LAB)排成行和列。在一行里還包含一個(gè)單一的EAB。多個(gè)LAB和多個(gè)EAB采用快速通道互相連接。
嵌入式陣列塊(EAB)是FLEX10K系列器件在結(jié)構(gòu)設(shè)計(jì)上的一個(gè)重要部件。它是一個(gè)輸入端口和輸出端口都帶有寄存器的一種靈活的RAM塊,嵌入陣列塊(EAB)組成的規(guī)模和靈活性對(duì)比較多的內(nèi)存是適宜的。功能包括乘法器、向量的標(biāo)準(zhǔn)和誤差矯正電路等。在應(yīng)用中,這些功能又能夠聯(lián)合完成和微控制器的功能。
采用可編程的帶有只讀平臺(tái)的嵌入陣列塊(EAB)在配置期間可執(zhí)行邏輯功能并建立一個(gè)大的查找表(LUT),在這個(gè)查找表里用查找的結(jié)果執(zhí)行組合邏輯函數(shù),而不用計(jì)算它們。顯然,用這種組合邏輯函數(shù)執(zhí)行比通常在邏輯里應(yīng)用算法執(zhí)行要快,而且專用EAB容易應(yīng)用,并且快速提供可能預(yù)測(cè)的延遲。
本文介紹了應(yīng)用Altera 公司的FLEX10K系列快速完成卷積的方法實(shí)現(xiàn)有限沖激響應(yīng)()濾波器的設(shè)計(jì)。


查表法實(shí)現(xiàn)卷積運(yùn)算方法
有限沖激響應(yīng)()濾波器的基本結(jié)構(gòu)如是一個(gè)分節(jié)的延時(shí)線,把每一節(jié)的輸出加權(quán)累加,得到濾波器的輸出。數(shù)學(xué)上表示為:
s1.gif (2245 字節(jié))

t1.gif (5470 字節(jié))結(jié)構(gòu)如圖1所示。它由用一條均勻間隔抽頭的延遲線上對(duì)抽頭信號(hào)進(jìn)行加權(quán)求和構(gòu)成。

本文引用地址:http://2s4d.com/article/188815.htm

根據(jù)上式,可以看出涉及到大量的卷積運(yùn)算,使用常規(guī)硬件實(shí)現(xiàn)時(shí)會(huì)占用大量的資源。通過充分利用FLEX10K系列芯片所具有的查表結(jié)構(gòu),將卷積運(yùn)算轉(zhuǎn)化為查表移位求和來實(shí)現(xiàn)。例如:對(duì)于式

y = [ x(1) h(1) ]+[ x(2) h(2) ]+[ x(3) h(3) ] + [ x(4) h(4) ] (1)

t2.gif (5838 字節(jié)) 假設(shè)x和h 都是無符號(hào)整型二進(jìn)制數(shù),寬度兩位,取值兩位如下:

h(1)= 01,h(2)= 11 ,h (3)= 10, h(4)= 11
x(1)= 11,x(2)= 00, x (3)= 10, x(4)= 01


上一頁 1 2 下一頁

關(guān)鍵詞: CPLD FIR 數(shù)字濾波器

評(píng)論


相關(guān)推薦

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

關(guān)閉