You are on page 1of 11

FAKULTET ELEKTRONIKE I RAUNARSTVA

ZAVOD ZA ELEKTRONIKE SUSTAVE I OBRADU INFORMACIJA

SLUAJNI PROCESI U SUSTAVIMA

FIR prilagoeni filtar

Boi Dejan Parat Neven Rihtari Hrvoje

Zagreb, 28. 05. 2004.

1.

Uvod

FIR prilagoeni filtar slui za uklanjanje poznatog uma iz digitalnog impulsnog signala, npr. digitalni serijski prijenos informacija. Koristi se u sluajevima gdje je signal jako pokriven umom, odnosno koristi se u onim sustavima gdje nije potrebno dobiti vjeran oblik signala, ve samo informaciju da je signal stigao. Prilagoeni filtar maksimizira odnos signal-um uz prisutnost sluajnog uma u nekom odabranom trenutku t0. Izlaz prilagoenog filtra je kroskorelacijska funkcija ulaznog signala i eljenog signala.

2.

FIR prilagoeni filtar u primjeni

Upotrebljava se u digitalnim komunikacijama, detekciji radarskih i sonarskih signala i sl. Ovdje priamo o hardwareovskom filrtru, filtar se moe i realizirati softwareovski i sluiti za obradu nekih signala. Primjer upotrebe FIR prilagoenog filtra u DVB (digital video brodcast) prijemniku (satelitskom digitalnom prijemniku):

Inae tvrtka XILINX trenutano je jedna od vodeih u realizaciji i primjeni naeg filtra. Pomou svojih FPGA programibilnih ipova s kojima se mogu realizirati razni modeli FIR prilagoenog filtra, pa i ostali sklopovi, gotovo cjeli prijemnik ili predajnik sa gornje slike (osim RF dijela!). Naravno XILINX ne realizira na filter direktnom realizacijom kao mi jer onda taj filter ne bi mogao biti dovoljno brz i dobar, tj. ne bi bio upotrebljiv na gornjem primjeru gdje je ostvarena velika brzina prijenosa podataka. Njihova realizacija filtera trenutano nadilazi nau matu, njihov FIR prilagoeni filter je znatno sloeniji i poboljan dodavanjem raznih dodatnih digitalnih sklopova u sam sklop filtra, ovisno o upotrebi. Npr. imaju ak i rjeenja sa FIR prilagoenim filtrom za novu generaciju UMTS GSM mree.

3.

FIR prilagoeni filtar u teoriji

3.1. Prilagoeni filtar


Optimalna prijenosna funkcija prilagoenog filtra, odreena ulaznim valnim oblikom signala za prilagodbu filtra:

X * ( )e jt0 H opt ( ) = 2cS NN ( )


SNN() je gustoa spektra snage uma, a X() je signal na koji prilagoavamo filtar. U naem modelu koristili smo bijeli um za koji je SNN()=konst., konkretno u naem sluaju SNN()=1. Za bijeli um optimalna prijenosna funkcija prilagoenog filtra postaje:

H opt ( ) = k X * ( )e jt0 = k X ( )e jt0


Kod bijelog uma je Hopt() proporcionalno priguenom konjugiranom spektru signala. Uz bijeli um za odreivanje impulsnog odziva ne moramo prelaziti u frekvencijsku domenu ve sve radimo u vremenskoj.

Pri tome koristimo relacije: F-1[X*()]=x(-t) F-1[X()e-j t ]=x(t-t )


0 0

Uz primjenu gore navedenih relacija impulsni odziv prilagoenog filtra je:

hopt (t ) = k x(t 0 t )
odnosno

hopt (t ) = k x(t +t 0 )
s time da pomak t0 mora biti vei od trajanja signala da bi odziv bio kauzalan. Primjer:

x(t-t0) x(t)

x(t0-t)

t0

t0 +T

t0
Na ovom primjeru odziv s kanjenjem t0 i zrcaljenje oko vertikale kroz t0.

3.2. Realizacija FIR filtra


Primjer direktne realizacije FIR filtra:

FIR filter veliine M karakteriziran s M koeficijenata potrebuje M mnoila i M-1 zbrajala za direknu realizaciju. Prijenosna funkcija glasi:

H ( z ) = h[k ]z k
k =0

M 1

Ulazno-izlazna jednadba je:

y[n] = h[k ]x[n m]


k =0

M 1

dakle:

y[n] = h[0]x[n] + h[1]x[n 1] + h[2]x[n 2] + ...... + h[ M 1]x[n ( M 1)]

4.

Realizacija i simulacija FIR prilagoenog filtra

FIR prilagoeni filtar prilagoen je na pravokutni impuls koji ustvari predstavlja osnovni dio od kojega se bazira digitalni signal koji e kasnije filtrirati. U primjeru simulacije filtar treba izfiltrirati um iz digitalnog serijskog prijenosa podataka, neeg signala, koji se sastoji od niza logikih 1 i 0 s jednakim periodom. Stoga filtar se mora prilagoditi za takav signal, tj. moraju se izraunati koeficijenti, signal za prilagodbu mora se sastojati jednoliko od oba stanja, jedne logike 1 i 0, tj. jedan pravokutni impuls. Zbog jednostavnosti izabran je bijeli um i hopt[M-1]=b[M-1]. Simulacija je izvrena za FIR prilagoeni filter s 32 i 64 koeficijenta, izabrani pomak t0 za 32 koeficijenta je 33, za 64 t0 je 65. Signal na kojega se filtar prilagoava:

Odziv filtra na taj isti signal bez uma (hopt):

Simulacija FIR prilagoenog filtra izvrena sa 32 koeficijenta:

Simulacija sa 32 i 64 koeficijenta gdje moemo uoiti kvalitetu filtriranja u ovisnosto o koeficijentima :

5.

Zakljuak

Iz primjera za 32 i 64 koeficijenta naeg filtra vidi se da filtar radi bolje sa vie koeficijenata, tj. bolje se moe odrediti eljeni signal iz zaumljenog signala. Ukoliko bi odredili neku graninu razinu iz naeg primjera mogli bi odrediti logika stanja (0 i 1) filtriranog digitalnog signala. U praksi ne moemo napraviti dobar i brz filtar sa puno koeficijenata, zbog ogranienja brzine i koliine hardwarea, ali vidimo da je firma Xilinx ipak uspjela realizirati zadovoljavajue dobar filtar uz razne modifikacije i realizacije, za DVB prijenos, te za UMTS i sl.

6.

Literatura
Sanjit K. Mitra : Digital signal processing, inernational editions 1998. Donald G. Childers : Probability and random process Ricardo Losada : Practical FIR Filter Design in MATLAB, The MathWorks, Inc., January 12, 2004. biljeke s kolegija Sluajni procesi u sustavima http://www.xilinx.com http://www.mhhe.com/engcs/electrical/mitra/index.mhtml http://www.mathworks.com

Dodatak kod MATLAB funkcija:


PrimjerFIRBijeliSum.m
T=32 t0=33 %period impulsa za prilagodbu i broj koeficijenta %vrijeme kanjenja

Hopt=FIRBijeliSum(T, t0); Signal=[ones(1,2*T) zeros(1,2*T) ones(1,2*T) zeros(1,2*T) zeros(1,2*T) ones(1,2*T) zeros(1,2*T) ones(1,2*T) ones(1,2*T) zeros(1,2*T) zeros(1,2*T)]; SignalLength=length(Signal); BijeliSum=randn(1,SignalLength); SignalIBijeliSum=Signal+BijeliSum; % Signal s umom

akf=conv(Signal,Hopt); % Ako se na ulaz prilagodjenog filtra dovede signal za kojeg je on % prilago?en odziv autokorelacijska funkcija tog signala odziv= conv(SignalIBijeliSum,Hopt); % Odziv na signal s um figure, hold on, plot(akf,'r'),plot(odziv), title('Odziv FIR filtra i autokorelacijska funkcija'); b=Hopt; % Koeficijenti prilago?enog FIR filtra

% za simolaciju : Sim_Signal=[(0:length(Signal)-1)' Signal']; Sim_SignalIBijeliSum=[(0:length(SignalIBijeliSum)-1)' SignalIBijeliSum']; open SimulacijaFIRBijeliSum.mdl

FIRBijeliSum.m
function Hopt=FIRBijeliSum(T, t0) % Funkcija FIRBijeliSum(T, t0) prima dvije varijable trajanje signala za prilagodbu T % (T mora biti djeljiv sa 2 !!), koje je radi jednostavnosti i broj koeficijenata filtra, % eljeno kanjenje t0 koje mora biti t0 > T/2 kako bi odziv bio kauzalan(T/2 je % vrijeme trajanja logi?ke 1, stepenice). % Funkcija vra?a odziv prilago?enog filtra na signal za prilagodbu % (stepenicu, signal od logi?ke 1 i 0) za slu?aj bjelog uma, tj. % vrijednosti koeficijenata filtra SignalZaPrilagodbu=[ones(1,T/2) zeros(1,T/2)]; % signal sadri dva logi?ka stanja 1 i 0 jednolikog trajanja T/2, ukupno traje T figure, plot(SignalZaPrilagodbu), title('Signal za kojeg se filtar prilago?ava'); SignalZaPrilagodbu=[zeros(1,t0) SignalZaPrilagodbu]; % pomak signala za t0 udesno

Hopt=zeros(1, T); for k=0:T/2 Hopt(t0-k)=SignalZaPrilagodbu(t0+k); end figure, plot(Hopt), title('Odziv prilagodjenog filtra za bijeli um'); koeficijenti=Hopt; % koeficijente FIR filtra spremamo u matricu koeficijenti[]

Model u MATLABU (prvi model realiziran direktnom realizaciom vrijedi samo za 32 koeficijenta, dok druga dva vrijede za neogranieno koeficijenata za siganal bez uma i signal s umom) :
E U S S z a L l P e A k R m a Z S a l A s e n i + g K n j T e n u t I n

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 i m _ z z z z z z z z z z z z z z z z z z z z z z z z z z z z z z z i g n

- - - - K- K- K- - - K - K - K- - - K - K - K- - - K - K - K- - - K - K - K - - - K - K - K- - - K - K - - - - - - - - - - b b b b b b b b b b 0 b 1 3 b 2 4 b b b 5 b 6 b 7 9 8 b 1 b 1 b 1 b 1 b 1 b 1 b 1 b b b 2 0 b 2 1 b 2 2 4b 2 3 3 3 5 1 6 1 6 1 2 2 7 2 8 2 9 1 0 7 8 9 1 0

2 3

S S F S

b 1 A

I i i O I i g m

Z d K R g

L _ n z F f n

A S a i a i l l

Z i v t l a b b g 1 r e n

S S F

b 1 O i

i g I

m d R n z

_ a f i i

S v l l t 2

i s a

g r

You might also like