《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于DES5402PP的IIR濾波器設(shè)計(jì)與實(shí)現(xiàn)
基于DES5402PP的IIR濾波器設(shè)計(jì)與實(shí)現(xiàn)
摘要: 在許多實(shí)際應(yīng)用DSP系統(tǒng)中,輸入信號既可以是語音信號、調(diào)制的電話信號,、編碼的數(shù)字信號,、壓縮后的圖像信號,,也可以是各種傳感器輸出的模擬信號,這就需要DSP通過A/D和D/A轉(zhuǎn)換完成數(shù)字信號和模擬信號之間的轉(zhuǎn)換,,從而能使DSP處理模擬信號和將數(shù)字信號轉(zhuǎn)換成易于人機(jī)交互的聲,、光、電等信號,。DES5402PP是一個(gè)采用TI公司的TMS320C5402為核心處理器的實(shí)驗(yàn)開發(fā)板,,它提供的TLC320AC01能很好的完成這一功能。
關(guān)鍵詞: DES5402PP IIR濾波器 DSP TMS320C5402 BSP
Abstract:
Key words :

  0 引言

  在許多實(shí)際應(yīng)用DSP系統(tǒng)中,,輸入信號既可以是語音信號,、調(diào)制的電話信號、編碼的數(shù)字信號,、壓縮后的圖像信號,,也可以是各種傳感器輸出的模擬信號,這就需要DSP通過A/D和D/A轉(zhuǎn)換完成數(shù)字信號和模擬信號之間的轉(zhuǎn)換,,從而能使DSP處理模擬信號和將數(shù)字信號轉(zhuǎn)換成易于人機(jī)交互的聲,、光、電等信號,。DES5402PP是一個(gè)采用TI公司的TMS320C5402為核心處理器的實(shí)驗(yàn)開發(fā)板,,它提供的TLC320AC01能很好的完成這一功能。

  1 IIR濾波器的MATLAB設(shè)計(jì)

  盡管IIR濾波器的算法比FIR濾波器要復(fù)雜,,且不是因果穩(wěn)定的,,但I(xiàn)IR濾波器也具有多種優(yōu)越性,,它可充分利用模擬濾波器的設(shè)計(jì)成果,,工作量相對較小,;在相同的設(shè)計(jì)指標(biāo)下,,可以用較低的階數(shù)獲得較好的性能;所用的存儲(chǔ)單元少,,因此對于硬件來說,,在相同時(shí)鐘速率和存儲(chǔ)空間下可以提供更好的帶外衰減特性[1]。

  設(shè)低通IIR切比雪夫?yàn)V波器的采樣點(diǎn)為256個(gè),,采樣頻率為600Hz,,輸入為兩個(gè)頻率分別為100Hz和300Hz的正弦信號的合成信號。設(shè)定截止頻率為200Hz,,可以預(yù)料,,將保留100Hz的信號,,300Hz的信號基本被濾掉。

  根據(jù)系統(tǒng)的設(shè)計(jì)流程,,先在MATLAB中求得IIR濾波器的系數(shù),。主要分為三個(gè)步驟:產(chǎn)生本系統(tǒng)的測試信號;調(diào)用MATLAB中的濾波器函數(shù),,求出濾波器的系數(shù),;調(diào)用filter函數(shù)進(jìn)行濾波,輸出濾波后的信號,。驗(yàn)證濾波器的性能后,,將濾波器的系數(shù)通過程序?qū)懗?inc的文件,通過.include語句將其寫入DSP匯編程序中,。

  2 C5402的緩沖串口(BSP)工作方式

  TMS320C5402是TI公司生產(chǎn)的16位定點(diǎn),、速度為100MIPS、RAM為16×16位,、ROM為4K×16位,、可編程、低功耗和高性能的DSP,。它提供的各種類型的串口都可以在全雙工方式下通信,,其串口信號與許多符合工業(yè)標(biāo)準(zhǔn)的串行設(shè)備兼容,可以直接連接,。當(dāng)串口復(fù)位時(shí),,可通過DSP來關(guān)閉或打開串口工作時(shí)鐘,并允許串口運(yùn)行在低功耗模式下[2],。

  緩沖串口在BSP在標(biāo)準(zhǔn)串口的基礎(chǔ)上增加一個(gè)自動(dòng)緩沖單元ABU,,是一種增強(qiáng)型標(biāo)準(zhǔn)串口。允許8,、10,、12、16,、20,、24或32位的數(shù)據(jù)傳輸。由于ABU是一個(gè)附加邏輯電路,,它允許串口單元直接將數(shù)據(jù)讀寫到C5402的內(nèi)部獨(dú)立存儲(chǔ)器,,不需要CPU參與,從而使BSP傳輸速度更快,。表1給出了BSP發(fā)送和接收數(shù)據(jù)初始化的操作步驟,。

表1 BSP的發(fā)送和接收初始化步驟

BSP的發(fā)送和接收初始化步驟

  3 AC01的特點(diǎn)[3][4]

  TLC320AC01也是TI公司生產(chǎn)的一款集成有A/D和D/A的芯片,通過串口與DSP或其他設(shè)備通信,。AC01的最高采樣頻率為25kHz,,其數(shù)據(jù)精度為16位,,采用單一5V電源供電。C5402與AC01連接后,,可以只使用一個(gè)緩沖通道串口來同時(shí)實(shí)現(xiàn)數(shù)據(jù)的采集和輸出,,從而節(jié)省了DSP的硬件開銷。因此,,DSP與AC01的連接使用在信號處理中得到了廣泛的應(yīng)用,。

  實(shí)驗(yàn)系統(tǒng)DES5402PP使用AC01作為模擬信號接口,有兩個(gè)AC01,,分別工作于“主”,、“從”模式。利用“主AC01”產(chǎn)生合成的輸入信號,,“從AC01”將該信號轉(zhuǎn)換成濾波的數(shù)據(jù)信號并輸入到DSP芯片,。其中,DSP還可以通過讀寫AC01的寄存器,,控制AC01的采樣頻率,、增益、低通,、高通濾波器的截止頻率等參數(shù),。AC01的九個(gè)控制寄存器如表2。

表2 TLC320AC01的數(shù)據(jù)存儲(chǔ)器功能

TLC320AC01的數(shù)據(jù)存儲(chǔ)器功能

  在AC01正常工作前,,必須對它進(jìn)行正確的初始化,。初始化的操作主要工作是配置AC01的以上各個(gè)數(shù)據(jù)存儲(chǔ)器。采樣頻率Fs=MCLK/2AB,,其中,,MCLK為DSP的工作頻率,A,,B分別為A,,B寄存器的內(nèi)容。由于實(shí)驗(yàn)設(shè)置采樣頻率為600Hz,,因此設(shè)A,,B寄存器的內(nèi)容分別為5和4,。即:

程序

  4 C5402和AC01的連接方式

  4.1 C5402和AC01的硬件連接

  在主/從模式下,,DSP可以不通過其他器件而直接與兩個(gè)AC01相連。其硬件連接如圖1所示:

主/從TLC320AC01和TMS320C5402的連接

圖1 主/從TLC320AC01和TMS320C5402的連接

  4.2 C5402和AC01的軟件連接

  先在C5402的數(shù)據(jù)存儲(chǔ)空間寫入256個(gè)數(shù)據(jù)(即三個(gè)正弦信號混合而成的測試信號的離散表示),,然后通過緩沖串口將數(shù)據(jù)發(fā)送到“主AC01”,,利用“主AC01”的D/A通道產(chǎn)生一個(gè)模擬信號作為IIR濾波器的輸入信號。由于實(shí)驗(yàn)中DES5402PP的信號輸出通道與輸入通道相連,,即“主AC01”的輸出作為“從AC01”的輸入,,“從AC01”的DOUT端口與DSP芯片的DR端相連,。另外,在串口通訊中,,因?yàn)閿?shù)據(jù)時(shí)鐘和幀同步信號都由AC01產(chǎn)生,,所以C5402將使用外部時(shí)鐘和幀同步信號。在使用串口前,,需要對它進(jìn)行初始化,,包括串口收發(fā)中斷設(shè)置和串口寄存器的初始化,主要代碼如下:

 

程序

  同時(shí),,要修改中斷向量表以便正確響應(yīng)串口的接收和發(fā)送中斷請求,,其中發(fā)送中斷產(chǎn)生測試信號和完成對AC01的初始化。實(shí)際上對信號濾波的實(shí)現(xiàn),,就是指從A/D讀到一個(gè)數(shù)據(jù)后調(diào)用濾波程序,,然后輸出數(shù)據(jù)到D/A。

  5 實(shí)驗(yàn)過程與結(jié)果分析

  實(shí)驗(yàn)程序主要包括以下幾個(gè)步驟:

 ?。?),,對DSP的寄存器、緩沖串口以及定時(shí)器初始化,,確保能提供AC01正確的時(shí)鐘信號,。完成該步驟后,檢測DSP的CLKR和FSR引腳可以看到連續(xù)輸出的信號,。

 ?。?),同過DSP的緩沖串口對AC01進(jìn)行初始化,,正確設(shè)置AC01的采樣率控制寄存器(表2中的R1),,設(shè)置其采樣頻率。完成該步驟后,,檢測AC01的DOUT引腳可以發(fā)現(xiàn)有連續(xù)輸出的信號,。

  (3),,設(shè)置DSP的中斷,,從緩沖串口讀取數(shù)據(jù)。這一步可以通過CCS環(huán)境查看讀取的數(shù)據(jù)是否正確,。如果正確,,將采樣數(shù)據(jù)送到濾波程序中,進(jìn)行濾波處理,,得到結(jié)果后,,直接送到AC01的D/A單元輸出。否則,,返回步驟(1),。

  濾波前后的波形如圖2和圖3所示,。可以看到,,比起濾波前的(a)圖,,(b)圖的時(shí)域和頻域波形得到明顯改善,300Hz的信號基本被濾除,。

濾波前后信號的時(shí)域波形

(a)濾波前的信號波形&nBSP;                               (b)濾波后的信號波形

圖2 濾波前后信號的時(shí)域波形

濾波前后信號的頻域波形

(a)濾波前的信號頻率                              (b)濾波后的信號頻率

圖3 濾波前后信號的頻域波形

  在圖2(b)中,,可以看到,只剩下一種頻率的正弦信號,。從頻域來看,,在圖3(b)中,高頻部分已經(jīng)基本削弱,,同時(shí)低頻也有少量損失,,只要將濾波器的階數(shù)高一些或者截止頻率稍微定低一些,便能更大程度的保留低頻信號,、消除高頻信號,。

  6 結(jié)語

  在信號與信息的過濾、檢測和預(yù)測等處理中,,都要使用濾波器,,數(shù)字濾波器是數(shù)字信號處理中使用最廣泛的一種方法。IIR數(shù)字濾波器的設(shè)計(jì)過程中,,可以借助模擬濾波器的設(shè)計(jì)成果或直接采用典型的濾波器類型,,減少工作量。而在信號的輸入輸出過程中,,往往需要A/D和D/A轉(zhuǎn)換,,TLC320AC01模擬接口電路便可方便的實(shí)現(xiàn)這一轉(zhuǎn)換。此外,,DSP芯片本身具有并行的硬件乘法器,、流水線結(jié)構(gòu)以及快速片內(nèi)RAM等資源,容易實(shí)現(xiàn)濾波運(yùn)算,,且程序可移植性好,,不同性能的濾波器只需要修改濾波器的參數(shù)即可。

  本文作者創(chuàng)新點(diǎn):在DES5402PP開發(fā)板的基礎(chǔ)上,,通過輸入一組兩個(gè)不同頻率的正弦混合信號,,設(shè)計(jì)并實(shí)現(xiàn)了IIR濾波器。同時(shí)介紹串口和TLC320AC01的工作方式,,給出了與DSP的連接方法,,并通過程序?qū)崿F(xiàn)。不論處理的是模擬信號還是數(shù)字信號,,系統(tǒng)都可以通過TLC320AC01在信號形式上進(jìn)行匹配轉(zhuǎn)換,,完成對信號的濾波處理。由于TLC320AC01最高采樣頻率為25kHz(高于語音采樣頻率8kHz),,因此該系統(tǒng)也可用于音頻信號濾波,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。