You are on page 1of 22

ELEKTROTEHNIČKI FAKULTET

UNIVERZITETA U SARAJEVU
ODSJEK ZA AUTOMATIKU I ELEKTRONIKU

DIGITALNI SISTEMI UPRAVLJANJA

SARAJEVO, NOVEMBAR 2007.GODINE

KRITERIJUMI ZA IZBOR TIPA STRUKTURNE REALIZACIJE

Postoje četiri kriterijuma za izbor realizacije:
1. Zahtjev za memorijom. U direktnoj realizaciji neophodno je raspolagati u svakom
trenutku odabiranja sa m+1 odabirka ulaznog signala i sa n-1 odabiraka izlaznog
signala iz prethodnih trenutaka odabiranja, što zahtijeva m+n memorijskih jedinica
promjenljivih sadržaja. Tome se dodaje još m+n+1 memorijskih registara fiksnog
sadržaja, gdje su upisane vrijednosti koeficijenata a0, a1, a2, ... , am i - b1, - b2, ... , - bn .
Pa ova realizacija zahtijeva 2m+2n+1 memorijskih registara fiksnog ili promjenjivog
sadržaja. Kanonska realizacija takođe zahtijeva m+n+1 registara fiksnog sadržaja za
koeficijente ak i bk, ali svega dodatnih n+2 registra promjenljivog sadržaja: tri za
upisivanje odabiraka ulazne r*(t), pomoćne c1*(t) i izlazne c*(t) povorke odabiraka i
n-1 registar za pamćenje odabiraka pomoćne povorke iz prethodnih trenutaka
odabiranja. Dakle, ova realizacija zahtijeva bar 2n+m+3 memorijskih registara
fiksnog ili promjenjivog sadržaja. Sve ostale realizacije, direktna i one dobijene
rednim ili paralelnim programiranjem zahtjevaju više memorijskih modula, tako da je
najpogodnija kanonska realizacija sa gledišta zahtjeva za memorijom. Ovaj
zahtjev obično nije kritičan.
2. Zahtjev za radom u realnom vremenu. Ispunjenje ovog zahtjeva se može odrediti na
osnovu broja, vrsta i trajanja aritimetičkih operacija potrebnih za generisanje jednog
odabirka izlaznog signala. Na primjeru direktne realizacije za generisanje odabirka
c(jT) je neophodno m+n+1 množenje i isto toliko sabiranja uz dodatne operacije
pomjeranja sadržaja registra, memorisanja i sl. Sa gledišta vremena računanja
najkritičnija operacija je množenje i traje znatno duže od ostalih. Isti broj množenja i
sabiranja, kao u direktnoj, zahtjeva kanonska realizacija.
3. Minimizacija transportnog kašnjenja usljed računanja. Postoji razlika koja može
biti bitna: u izvjesnim broju operacija učestvuju odabirci ulazne i izlazne, odnosno
pomoćne povorke koji su prethodili posmatranom trenutku odabiranja. Ti odabirci se
znaju, pa se odgovarajuće operacije mogu izvršiti nakon generisanja odabiraka
izlaznog signala i rezultati izvršenih operacija pripremiti za sračunavanje izlaza u
narednom trenutku odabiranja. Na taj način se u posmatranom trenutku t=jT prvo vrše
operacije koje zavise od odabiraka ulaznog signala r(jT) a zatim se njima pridružuju
rezultati već izvršenih operacija u kojima učestvuju prethodni odabirci i tako generiše
izlazni odabirak sa što kraćim transportnim kašnjenjem usljed računanja. Očito, što je
veći broj operacija u kojima učestvuje r(jT), utoliko je transportno kašnjenje veće.
Poređenjem direktne i kanonske realizacije se vidi da je u kanonskoj realizaciji broj
operacija u zavisnosti od r(jT) veći, pa je sa stanovišta minimizacije transportnog
kašnjenja usljed računanja direktna realizacija pogodnija. Ostale realizacije dobijene
rednim i paralelnim programiranjima zahtjevaju veći ukupan broj aritimetičkih
operacija i veće transportno kašnjenje usljed računanja.
4. Minimizacija osjetljivosti procesora na proces kvantovanja parametara i
promjenljivih. Važan kriterij je i minimizacija negativnih efekata na tačnost
procesiranja koji nastaju usljed kvantovanja koeficijenata i promjenljivih. Naime,
svaki digitalni modul, pa samim tim i digitalni procesor u cjelini, posjeduje konačnu
dužinu riječi. Zato se koeficijenti i promjenljive koji po vrijednosti premašuju zadatu
dužinu riječi odsjecaju (zaokružuju), što unosi manju ili veću grešku u rezultate
1

gdje je Ω perioda odabiranja u frekventnom domenu (isti je broj odabiraka N i u t i u jω domenu). U tom pogledu su daleko manje osjetljive realizacije dobijene rednim ili paralelnim programiranjem jer se u ovim tipovima greške usljed kvantovanja odražavaju lokalno u pojedinim paralelnim granama ili u kaskadnim segmentima realizacije.procesiranja u zavisnosti od dužine riječi i osjetljivosti strukturne realizacije procesora na kvantovanje koeficijenata i/ili promjenljivih. ako skup odabiraka f(nT) obrazuje digitalni signal: N −1 f *(t ) = ∑ f (nT )δ (t − nT ) (5. DFT ALGORITAM Glavnu ulogu u ovom algoritmu ima diskretna Fourierova transformacija (DFT) i računarski orijentisani algoritmi brze Fourierove transformacije (FFT) za za računanje DFT. gdje je T perioda odabiranja.5. Direktna i kanonska realizacija su najosjetljivije na ova kvantovanja.35) n=0 tada su odabirci frekventnog spektra DFT od f*(t) u frekventnom području: 2 . Dakle. jer će svako odsijecanje u registru fiksnog ili promjenljivog sadržaja imati negativne posljedice na tačnost više diskretnih promjenljivih. Skup odabiraka digitalnog signala Frekventni spektar F(jω) zadatog digitalnog signala f*(t) može se predstaviti skupom od N odabiraka F(kΩ) na intervalu 0 ≤ k ≤ N-1. Pretpostavimo da je neki signal (informacija) konačnog trajanja diskretizovan i preveden u digitalni signal u vidu N odabiraka (brojnih vrijednosti) f(nT) na intervalu 0 ≤ n ≤ N-1. Slika 5.

6.40) n=0 pa se F(kΩ) može shvatiti kao vrijednost kompleksnog lika F(z) u tački na jediničnom krugu određenoj sa z = e jΩTk . Ilustracija peridičnog spektra nad jediničnim krugom u z ravni 3 .36) k =0 gdje su: N −1 F (k Ω) = ∑ f (nT )e− jΩTnk za Ω=2π/NT i k=0. iz prethodne relacije se dobija: F ( k Ω) = F ( k0 Ω) (5. 1.38) n=0 Pošto je ΩTN=2π. 2.39) Frekventni spektar digitalnog signala se može predstaviti u z ravni. ako se u formulu (5. z kompleksni lik skupa odabiraka f(nT) je: N −1 F ( z ) = ∑ f (nT ) z − n (5. slika 5. 1. a r = (k k0)/N..37) zamijeni cjelobrojno k sa k = r N+k0 . Slika 5. .N-1 (5. .. Naime.6.37) n =0 Može se pokazati da je pri datom Ω=2π/NT pomoću prethodne relacije (5. gdje je k0 = k po modulu N. dobija se: N −1 F (k Ω) = ∑ f (nT )e− jΩTn ( rN + k0 ) (5. . Naime..N-1.N −1 DFT { f *(t )} = ∑ F (k Ω)δ (ω − k Ω) (5.37) moguće izračunati samo N različitih vrijednosti za F(kΩ) pri k=0.. 2. .

k = 0. n = 0.2. Znamo da je frekventni spektar zbira kontinualnih kompleksnih sinusoida: 4 . Takođe će se često koristiti činjenica da je: e − j ΩT ( ( x ) ) =e − j ΩT ( x + rN ) = e− jΩTx (5.43) lahko izračunava pomoću (5. U sljedećem izlaganju izvjesnih osobina DFT često se sreće izraz ˝x po modulu N˝ koji se označava sa ((x)) i znači: ((x))=x mod N =x+rN.. ali ako je k=q+rN.42) jer je e. ako je q cjelobrojno. Razumije se. formula (5. (r-nula ili cijeli broj)..j 2π r = 1 .1. ako je kružna učestanost sinusoide neki multipl od Ω. pa je F(kΩ)=0. tj. prethodni rezultat važi za svako q (cjelobrojno ili ne). N − 1 1− v (5. ako je k≠((q)). pa se iz posljednje relacije za takvo q dobija F (kΩ) = 0 ili. Uočimo da se DFT od kompleksnog sinusoidalnog signala kružne učestanosti ω = qΩ . za k = ((q)) ⎧N F ( k Ω) = ⎨ (5.. Međutim. tada je i v=1.Na taj način. osim kada je k=((q)). kompleksna sinusoida čija je kružna učestanost jednaka nekom multiplu od Ω (ω=qΩ) ima diskretnu Fourierovu transformaciju: .37) kao: N −1 F (kΩ) = ∑ v n = n =0 1− vN . dobija se F(kΩ)=N.jΩTrN = e. za svako drugo k Odavde slijedi važno svojstvo DFT zbira kompleksnih sinusoida: ⎧ ⎫ DFT ⎨∑ aq e jqΩnT ⎬ = Nak ⎩ q ⎭ (5.37) omogućava izračunavanje samo N različitih odabiraka diskretnog spektra od kojih su dva sukcesivno pomjerena jedan u odnosu na drugi za Ω.46) Ovo ujedno predstavlja osobinu selektivosti DFT koju je interesantno uporediti sa odgovarajućim rezultatom u Fourierovoj transformaciji kontinualnog signala.. formula (5. 0 poslije izračunavanja limesa kada v → 1 .44) gdje je v = e jΩT ( q − k ) .. Dakle..41) gdje je r nula ili najmanji cijeli broj pri kome je zadovoljena nejednakost u prethodnoj relaciji. ali koji se u skupovima od po N različitih odabiraka ponavljaju periodično pri svakom narednom obrtanju po jediničnom krugu na prethodnoj slici. tada je F(kΩ)=0 uvijek. 2.37) takođe daje i beskonačan broj odabiraka frekventnig spektra. čiji su odabirci: f (nT ) = e jqΩnT ... N − 1 (5. 0≤x+rN≤N (5.1. Međutim. tada je vN=1. Naime.45) ⎩ 0 .

.37) za DFT. . Tako se dobija: f (lT ) = 1 N N −1 N −1 ∑∑ f (nT )e − jΩTnk e jΩTlk (5. Iz same definicije (5.37) slijedi osobina linearnosti.⎧ ⎫ F ⎨∑ ai e jωit ⎬ = 2π ∑ aiδ (ω − ωi ) i ⎩ i ⎭ (5. odnosno svojstvo aditivnosti: DFT { f (nT ) + g (nT )} = DFT { f (nT )} + DFT { g (nT )} i homogenosti: DFT {cf (nT )} = c ⎡⎣ DFT { f (nT )}⎤⎦ (5. tada će sve vrijednosti u DFT biti nenulte. posljednja relacija.49) Inverzna DFT omogućava da se na osnovu diskretnog spektra (N odabiraka u frekventnom domenu u učestanostima od kojih se svake dvije sukcesivne razlikuju za Ω) dobije original ..52) 5 . razlikuju po faktoru 1/N i znaku eksponenta. najviše N takvih sinusoida je moguće razdvojiti (selektovati) u frekventnom domenu. čija učestanost nije jednaka multiplu od Ω. . tada se u frekventnom domenu za sinusoide čije su kružne učestanosti multipl od Ω dobija po jedan impuls u učestanostima određenim sa (5.50) k =0 Uočimo da se ova relacija.1. ako je zbir tih sinusoida diskretizovan na konačnom vremenskom intervalu i za tako dobijenih N odabiraka izračunata DFT.skup odabiraka f(nT) u vremenskom domenu u trenutcima odabiranja. DFT ima još neke važne osobine.2. Inverzna DFT je definisana sa: f (lT ) = 1 N N −1 ∑ F (k Ω)e j ΩTkl .47) Ovaj spektar predstavlja skup impulsa u frekventnom domenu u učestanostima svih kompleksnih sinusoida. Zato se programi za računanje DFT i njene inverzne razlikuju samo u nekoliko naredbi. pošto u sračunavanju DFT učestvuje samo N različitih odabiraka (brojeva). l=0.37) u posljednju relaciju. Za razliku od kontinualnog spektra.45). Međutim. U tu svrhu zamijenimo F(kΩ) iz (5.N-1 (5. i relacija (5.48) (5. Međutim. Potrebno je pokazati da posljednja relacija zaista daje orginal. za inverznu DFT.51) k =0 n =0 odakle se poslije zamjene redoslijeda sumiranja dolazi do: f (lT ) = 1 N N −1 ∑ n =0 ⎡ N −1 ⎤ f (nT ) ⎢∑ e jΩT ( l − n ) k ⎥ ⎣ k =0 ⎦ (5. ako se uzme N odabiraka sa samo jedne kompleksne sinusoide.

N-1. itd. a nula u svim ostalim slučajevima. . osim u kombinacijama gdje je: m = ((l − n )) ((l-n) po modulu N) (5. Na taj način je dokazano da se odabirci vl dobijaju cikličnom konvolucijom skupova odabiraka xn i yn. inverzna DFT daje beskonačno broj odabiraka koji se dobijaju periodičnim obilaženjima ovoga kruga.. pa je na taj način obrazac (5. 1.44). Priroda ove konvolucije je ilustrovana na slici 5..54) Ako izmjenimo redoslijed sabiranja i pogodno preuredimo prethodni izraz. Slično DFT i njena inverzna može davati odabirke u vremenskom domenu i van intervala 0 ≤ l ≤ N-1. svaki sljedeći segment ose ove dužine namotava se ponovo na krugu. .7. pa je stoga ta suma jednaka N za ((l))=n (“l po modulu n“). Dakle. Neka su x(nT) i y(nT) skupovi od po N odabiraka (brojeva) i izračunajmo inverznu DFT: v(lT ) = 1 N N −1 ∑ X (k Ω)Y (k Ω)e jΩTlk (5. Međutim..53) k =0 Uvrstimo izraze za X(kΩ) i Y(kΩ) u prethodnu relaciju. . dobija se: v(lT ) = 1 N ⎡ N −1 jΩT (l − n − m ) k ⎤ ( ) ( ) x nT y mT ∑∑ ⎢∑ e ⎥ m =0 n =0 ⎣ k =0 ⎦ N −1 N −1 (5. tako da dio ose 0 ≤ t ≤ (N-1)T odgovara obimu kruga. Na ovaj način. Grafički se to može predstaviti krugom po kome je višestruko motana vremenska osa. u istim tačkama prilikom sljedećeg obilaska kruga dobijaju se odabirci f(nT) za n=N. Tako se dobija: 1 v(lT ) = N ⎡ N −1 ⎡ N −1 − jΩTnk − jΩTmk ⎤ jΩTlk ⎤ ∑ ⎢ ∑ x(nT ) e ⎥e ⎦ * ⎢ ∑ y (mT )e k =0 ⎣ n=0 ⎣ m=0 ⎦ N −1 (5. 2. Dakle. koji ima važnu ulogu u realizaciji funkcije diskretnog prenosa digitalnog procesora pomoću DFT algoritma. ali će ti odabirci biti prosto ponavljanje odabiraka unutar osnovnog intervala. U tačkama po krugu počev od 0 do (N-1)T nalazi se N odabiraka f(nT). pri svakom sljedećem obilasku ponavlja se isti broj odabiraka f(nT) za n=0.56) i tada je suma u zagradi jednaka N. N+1. Dokazaćemo ovaj stav.57) Iz prve sume se može dobiti druga suma u ovome izrazu prostom zamjenom označavanja promjenljivih pomoću indeksa.2N-1. 6 .Suma po k ima sličan oblik kao (5... N+2.55) Suma u srednjoj zagradi ovoga izraza je jednaka nuli za sve m i n. samo jedan član sume po n u posljednjoj relaciji i to Nf(lT) je različit od nule.50) dokazan. izraz se svodi na: N −1 N −1 n=0 n=0 vl = ∑ xn y( (l − n )) = ∑ yn x( (l − n )) (5. Već je pomenuto da je inverzna DFT proizvoda X(kΩ) i Y(kΩ) jednaka cikličnoj konvoluciji skupova odabiraka x(nT) i y(nT).

. Ponavljanjem ovog postupka dobijaju se ostali odabirci vl . obična konvolucija kontinualnih signala se može tretirati kao aperiodična. Da se dobije v1.. Geometrijska ilustracija ciklične konvolucije Predpostavimo da postoji po 6 odabiraka u digitalnim signalima xn i yn. U rezultatu ovog postupka bi se dobilo: vo = x0 y0 + x1 y5 + x2 y4 + x3 y3 + x4 y2 + x5 y1 v1 = x0 y1 + x1 y0 + x2 y5 + x3 y4 + x4 y3 + x5 y2 v2 = x0 y2 + x1 y1 + x2 y0 + x3 y5 + x4 y4 + x5 y3 v3 = x0 y3 + x1 y2 + x2 y1 + x3 y0 + x4 y5 + x5 y4 v4 = x0 y4 + x1 y3 + x2 y2 + x3 y1 + x4 y0 + x5 y5 v5 = x0 y5 + x1 y4 + x2 y3 + x3 y2 + x4 y1 + x5 y0 (5. .. y5. x1. U početnom položaju manji krug je postavljen u odnosu na veći kao na slici. u opštem slučaju.Slika 5. x5 . Za razliku od ciklične. Zamislimo da je dio vremenske ose 0 ≤ t ≤ 5T savijen u dva kruga različitih poluprečnika.7. . U tom položaju v0 se dobija kao zbir proizvoda susjednih odabiraka na manjem i većem krugu. 7 . y1. neophodno je najprije zaokrenuti manji krug u pozitivnom smjeru za ugao 2π/6 (ili.58) Slika ujedno ilustruje zašto se ciklična konvolucija naziva periodičnom.. Po većem krugu neka su raspoređeni u pozitivnom smjeru odabirci x0. . za 2π/N) i formirati zbir proizvoda susjednih odabiraka na manjem i većem krugu.. a po manjem u negativnom smjeru odabirci y0.

U opštem slučaju odabirci f(nT) mogu biti kompleksni (kao npr. i nazivaju se FFT algoritmi (Fast Fourier Transform). pa kod već i malog broja odabiraka. iznad 1000.37) četiri množenja i dva sabiranja u množenju + dva sabiranja zbog sume) Tc = 4N (tm + ts + tost) M (5. W=℮ =℮ −j 2π N (5. izračunavanje DFT zahtjeva enormno dugo mašinsko vrijeme.. Množenje dva kompleksna broja zahtjeva četiri množenja i dva sabiranja realnih brojeva. Fk = F(kΩ)..).N-1 NT za Ω = n=0 (5.59) gdje je: tm-potrebno vrijeme za jedno realno množenje. 2. 1. Neposredno se može koristiti relacija (5. Tako za sračunavanje DFT od N odabiraka f(nT) korištenjem date formule potrebno je izvršiti ukupno N2 kompleksnih množenja i N2 kompleksnih sabiranja. U daljem tekstu će se radi kraćeg pisanja koristiti indeksno označavanje: fn = f(nT). što npr.37): N −1 F(kΩ) = ∑ f (nT ) ℮-jΩTnk 2π i k = 0..60) n=0 8 . kada je za sračunavanje jednog odabirka F(kΩ) po prethodnoj formuli potrebno izvršiti N kompleksnih množenja i N kompleksnih sabiranja uz korištenje N koeficijenat tipa ℮-jΩTnk. N-broj odabiraka f(nT) i M-broj različitih odabiraka u DFT koji se žele sračunati.FFT ALGORITAM SRAČUNAVANJA DFT Postoji više algoritama za izračunavanje odabiraka DFT za date učestanosti kΩ. Tako je ukupno vrijeme za sračunavanje odabiraka DFT po prethodnoj formuli ravno: (4 na osnovu relacije (5..odabirci kompleksne sinusoide). Oni će umjesto N2 kompleksnih množenja i sabiranja imati Nlog2N istih operacija za računanje N odabiraka f(nT). za N = 1024 = 210 predstavlja uštedu od oko 99% mašinskog vremena. W = ℮-jΩT Tako zadnja relacija postaje: Fk = N −1 ∑ nk fn W -jΩT . ts-vrijeme za jedno realno sabiranje. Zato se pribjegava postupcima za izračunavnje DFT koji ekonomišu sa mašinskim vremenom. tost -vrijeme potrebno za ostale operacije (očitavanje koeficijenata iz tabele. Ovi koeficijenti imaju vrijednosti koje su po modulu jednake 1 odabircima jedne četvrtine sinusne oscilacije (za T sve se ponavlja) i mogu se uzimati iz 4 unaprijed pripremljene i memorisane tabele. memorisanje i sl. a sabiranje dva kompleksna broja zahtjeva dva sabiranja realnih brojeva.37) Ovaj postupak zahtjeva dugo mašinsko vrijeme i veliku memoriju za pamćenje međurezultata izračunavanja.

a faktor W zamjenjuje faktor W2. Zato. DESETKOVANJE PO VREMENU N odabiraka f l u vremenskom domenu razdjelimo na dva skupa odabiraka: skup g l koji sadrži sve odabirke skupa f l sa parnim indeksima i hl sa neparnim indeksima.Očito faktor W zavisi od broja odabiraka N. kao na slici 5. Desetkovanje po vremenu povorke od 16 odabiraka 9 .8. tada je gornja granica sume (N/2)-1.8. Sve varijante FFT su zasnovane na desetkovanju po vremenu i desetkovanju po učestanosti. ako se prema posljednjoj relaciji umjesto za N odabiraka sračunava DFT za N/2 odabiraka. Slika 5.

62) Hk = ( N / 2 ) −1 ∑ h (W 2 lk l l =0 ) Nas interesuje DFT od čitave prvobitne povorke f l .1. pa ova metoda zahtjeva gotovo dva puta manje mašinskog vremena.izračunavaju se samo za k od 0 do (N/2) -1. U posljednjem izrazu indeks k se mijenja od 0 do N-1.(N/2)-1 hl = f 2l +1 (5.2..što se može izračunati na osnovu Gk i Hk. koje se ponavljaju sa periodom N/2. što sve zajedno predstavlja N + 2(N/2)2 = N + N2/2 potrebnih operacija (operacija: jedno kompleksno množenje i jedno kompleksno sabiranje).61) Diskretne Fourierove transformacije povorki g l i hl se dobijaju u vidu dvije odgovarajuće povorke Gk i Hk od po N/2 odabiraka u frekventnom području. Analizom prethodnih izraza se dobija: ⎧Gk + W k H k ⎪ Fk = ⎨ ⎪Gk − N / 2 + W k Hk − N / 2 ⎩ 0 ≤ k ≤ N −1 2 (5. koristeći relaciju: Fk = ∑ [g W ( N / 2 ) −1 l =0 2 lk l ] (5.64) + hlW ( 2l +1) k Jednostavnim preuređenjem ove relacije dobije se: Fk = ( N / 2 ) −1 ∑ l =0 ( ) gl W 2 lk +W k ( N / 2 ) −1 ∑ l =0 ( ) hl W 2 lk Dobijema zavisnost između Fk sa jedne i Gk i Hk sa druge strane ima veliki značaj za formiranje FFT algoritma.63) = Gk + W k H k (5. Te povorke se sračunavaju kao: ( N / 2 ) −1 ∑ g (W Gk = 2 lk ) l l =0 (5. Stoga je neophodno uočiti način dobijanja Fk za k. dok se k mijenja u granicama od 0 do (N/2)-1 i od N/2 do N-1. a njihovo korištenje u zadnjem izrazu za Fk traži dodatnih N operacija. tj.. Vidjeli smo da neposredno računanje Fk zahtjeva N2 operacija..Skupovi g l i hl na ovoj slici se mogu formalno izraziti sa: g l = f 2l za l= 0.65) N 2 ≤ k ≤ N −1 10 . iako Gk i Hk imaju periodu N/2. Sračunavanje Gk i Hk ponaosob zahtjeva po (N/2)2 operacija..

njihovo izračunavanje se moze izvršiti prethodnim postupkom izračunavanja Fk i tako još više ekonomisati mašinskim vremenom.9. Ovaj postupak predstavlja FFT algoritam desetkovanja po vremenu i ilustrovan je na prethodnoj i dvije sljedeće slike za povorku od 8 odabiraka. Graf toka signala za izračunavanje DFT razlaganjem 8 odabiraka na dva skupa od po 4 odabirka Neka je i broj N/2 djeljiv sa 2. zatim svaka od dobijenih se na isti način podijeli na po dvije i dobiju 4 povorke. 11 . koja pokazuje postupak sračunavanja DFT za 8 odabiraka f l desetkovanjem po vremenu povorke f l na dvije povorke od po 4 odabirka..sve dok se na kraju ne dobije DFT od cijele prvobitne povorke f l . dobijene 4 se dijele na po dvije i dobije se 8 povorki itd.Ova relacija se ilustruje sljedećom slikom. Na taj način sračunavanje DFT se organizuje tako da započne sa izračunavanjem DFT za po samo jedan odabirak. Na osnovu tako dobijenih DFT pokazanim postupkom se izračunavaju DFT za skupove od po dva odabirka. Slika 5. Tada. pošto Gk i Hk ponaosob predstavljaju DFT. Tada se ta povorka prvo razdijeli na dvije. ovi DFT se koriste za izračunavanje DFT za skupove od po 4 odabirka itd. gdje je N broj jednak nekom stepenu od 2. sve dok se kao krajnji rezultat dijeljenja ne dobiju povorke koje sadrže samo po jedan odabirak. Za razumjevanje algoritma FFT u cjelini pretpostavimo da prvobitna povorka f l sadrži N odabiraka. što ne zahtjeva nijednu operaciju. kao što je pokazano.

Slika 5. Graf toka signala za izračunavanje DFT potpunim desetkovanjem po vremenu povorke od 8 odabiraka 12 .11.10. Graf toka signala za izračunavanje DFT razlaganjem 8 odabiraka na 4 skupa od po 2 odabirka Slika 5.

što čini ukupno 2x8x3 grana. f6. Stoga se poslije prvog koraka algoritma rezultati izračunavanja mogu smjestiti u registre po vretikali I. jer su one u opštem slučaju kompleksni brojevi. To znači da se u svakom koraku algoritma koriste rezultati samo iz prethodnog koraka. a starije-mlađe. Za povorku postoji još jedno važno svojstvo FFT algoritma. Rezultat prvog koraka algoritma su sadržaji registara koje predstavaljaju čvorovi po vretikali II. f1. a takvih grana je pola od ukupnog broja. ako je N ravno nekom stepenu od 2.66) Tada FFT algoritam zahtjeva minimum memorije računara i kako se kaže-izvodi se „u mjestu“. Zato. Pretpostavimo da su ulazni podaci složeni u memoriju računara po redosljedu: f0. tako što se sadržaj memorijskih registara polja zamjenjuju poslije svakog koraka algoritma. jer je W N / 2 = e − jπ = −1 . računanje DFT za N odabiraka zahtijeva Nlog2N sabiranja i najviše (Nlog2N)/2 množenja. jer oni neće više biti potrebni u sljedećem koraku algoritma. pa se zatim ti brojevi okrenu za 180 stepeni. gdje su se na početku izračunavanja nalazili odabirci f l . f4. poslije čega mlađe cifre postaju starije.Posljednja slika može da posluži kao ilustracija praktičnog aspekta FFT algoritma. Ovaj redosljed se dobija tako što se indeksi odabiraka prvo napišu u vidu binarbih brojeva. f7 (5. Od preostalih množenja polovina se takođe ne računa. f2. Tako jedno isto polje memorije koristi u toku cijelog algoritma. Ova procedura korišćenja istog memorijskog polja ostaje ista u toku cijelog algoritma: rezultati izračunavanja u svakom koraku algoritma mogu se smjestiti u memorijsko polje gdje su se na početku tog koraka nalazili potrebni podaci za taj korak. 13 . Ovo svojstvo je bitno jer u izračunavanjima DFT može učestvovati desetine hiljada odabiraka. Graf ima 8x3 čvorova. jer grane bez oznaka imaju pojačanje ravno jedinici. što je dato u sljedećoj tabeli. Plovina od ovih množenja se ne računa. U trećem koraku algoritma koriste se samo sadržaji registra po II vertikali grafa. Čvorovi na lijevom kraju grafa po vretikali I sadrže odabirke f l po datom redosljedu. ne računajući čvorove (izvore grafa) kojima su pridruženi ulazni podaci odabirci ( f l ). jer oni više nisu potrebni u drugom koraku. U dokazu se predpostavi da memorisanje promjenljivih pridruženih čvorovima grafa zahtjeva po dva mjesta za svaku promjenljivu. Mogućnost izvršenja FFT algoritma u mjestu postoji zahvaljujući prvobitnom memorisanju odabiraka f l po datom redoslijedu. U ove čvorove poniru po dvije grane. f3. kojima odgovara Nlog2N sabiranja i 2Nlog2N množenja. f5. koji se naziva „bit inverzni“ redosljed.

.. tada moramo imati na raspolaganju dodatnu memoriju. da su f l memorisani u prirodnom redosljedu. Ako se želi prirodni redosljed i f l i odabiraka Fk. pri čemu je prvom skupu prodriženo prvih N/2. 2. a da se odabirci diskretnog spektra dobiju u bit-inverznom redosljedu izvršenjem FFT algoritma u mjestu.1.Prirodni redosljed Binarni broj Binarnoinverzni 0 1 2 3 4 5 6 7 000 001 010 011 100 101 110 111 000 100 010 110 001 101 011 111 Bitinverzni redosljed 0 4 2 6 1 5 3 7 Tabela 5. Formiranje bit inverznog redosljeda Ako su početni podaci (odabirci f l ) memorisani u bit-inverznom redosljedu.68) ) + e − jπk hl W lk 14 . 1. F4. a drugom posljednjih N/2 odabiraka skupa f l . podijeljena na dva skupa odabiraka g l i hl . F1. F7.67) hl = f l + N / 2 Odabirci diskretnog spektra Fk se mogu izraziti preko g l i hl : Fk = ( N / 2 ) −1 ∑ (g W l =0 = l ( N / 2 ) −1 ∑ (g l =0 l lk ) + hlW (l + N / 2 )k = (5. FFT algoritam je moguće izvesti u mjestu. DESETKOVANJE PO UČESTANOSTI Neka je izvorna povorka od N odabiraka. a kao rezultat se dobijaju odabirci diskertnog spektra u prirodnom redoslijedu F0. Moguće je i obrnuto. F5. (N/2)-1 (5. F2. F3. F6.. gdje je N neki stepen od 2.. Formalno se povorke g l i hl mogu zapisati kao: gl = fl za l = 0.

70) Dva posljednja izraza (za parne i neparne vrijednosti) se mogu tumačiti i kao DFT od po N/2 parnih ( g l + hl ) i neparnih ( g l − hl )W l odabiraka. i konačno dijeljenjem skupova od dva. za Ω = 2π NT Razmotrimo parne i neparne odabirke Fk ponaosob. Ako u zadnjoj formuli k zamijenimo sa 2k (paran broj) dobija se: F2 k = ( N / 2 ) −1 ∑ (g l =0 l ( ) + hl ) W 2 lk (5. Slika 5. Graf toka signala za izračunavanje DFT podjelom 8 odabiraka na dva skupa od po 4 odabirka Na sljedeće dvije slike je pokazano kako se ekonomiše sa mašinskim vremenom u sračunavanju DFT dijeljenjem skupova od po 4 odabirka na po dva skupa od po dva odabirka. na po dva skupa koji sadrže samo po jedan odabirak.69) jer je ℮-j2 π k =1. imamo: F2 k +1 = ( N / 2 ) −1 ∑ (( g l =0 l )( ) − hl )W l W 2 lk (5.12. 15 . Na taj način se dolazi do drugog postupka za izračunavanje DFT od N odabiraka fn preko DFT od dva skupa od po N/2 odabiraka. Na sljedećoj slici je ilustrovan ovaj postupak za N = 8. Odavde i potiče naziv FFT algoritam desetkovanaj po učestanosti.W = e − jΩT . a kada se k zamijeni sa 2k+1 (neparno).

Graf toka signala za izračunavanje DFT potpunim desetkovanjem po učestanosti povorke od 8 odabiraka 16 .13.14. Graf toka signala za izračunavanje DFT podjelom 8 odabiraka na 4 skupa od po 2 odabirka Slika 5.Slika 5.

tj. a odabirci diskretnog spektra na izlazu u bit-invreznom redosljedu i da se i ovaj algoritam izvršava u mjestu.Na taj način se dolazi do grafa toka signala FFT algoritma desetkovanja po učestanosti (posljednja slika). Obje metode se mogu lahko realizovati programski. Kao i u slučaju FFT algoritma desetkovanja po vremenu. Pretpostavimo da je ulaz digitalnog procesora. U grafu FFT algoritma desetkovanja po učestanosti ulazni podaci (odabirci f l ) su u prirodnom redosljedu.ako odabirci njegove impulsne povorke ispunjavaju uslov: ∞ ∑ h(nT ) ‹∞ (5.79) dok je razlika faza odabiraka izlaznog i ulaznog signala jednaka vrijednosti fazne karakteristike procesora. FREKVENTNE KARAKTERISTIKE DIGITALNOG PROCESORA Slično kao u analognoj i u digitalnoj obradi signala prvorazrednu ulogu imaju frekventne karakteristike filtera.2) n =0 tada će u stacionarnom stanju (dovoljno dugo vremena poslije trenutka pobude) na izlazu procesora da se uspostavi povorka odabiraka: (5. ili. kad je riječ o digitalnoj obradi. ali tada ulazni podaci moraju biti u bit-inverznom redosljedu. Zato je važno pravilno razumjeti prirodu ovih karakteristika i postupak njihovog dobijanja.78) c(nT) = A2cos(ω0nT+φ2) čija je obvojnica također prostoperiodičan signal iste kružne učestanosti ω0 kao i obvojnica odabiraka ulaznog signala. digitalnog procesora. ali druge amplitude i faze. funkcije diskretnog prenosa H(z). Ovaj se algoritam može izvršiti u mjestu i kada se želi da odabirci Fk budu u prirodnom redosljedu. pobuđen povorkom odabiraka dobijenom diskretizacijom prostoperiodičnog signala r(t)=A1cos(ω0t+φ1) kružne učestanosti ω0. Ako se želi da i ulazni i izlazni odabirci budu u prirodnom redosljedu.80) 17 . tada se algoritam ne može izvesti u mjestu i angažuje se dodatna memorija. Ako je procesor stabilan. broj potrebnih operacija za određivanje ponora grafa je srazmjeran sa Nlog2N. odabirci tog signala su r(nT)= A1cos(ω0nT+φ1). za datu učestanost ω0. Dakle. φ(ω0) = φ2 – φ1 = arg H(z) z = e jω o T (5. Odnos vrijednosti odgovarajućih odabiraka izlaznog i ulaznog signala A2/A1 pri datoj učestanosti ω0 jednak je vrijednosti amplitude frekventne karakteristike: A(ω0) = A2 (ω0) = H (z ) A1 z = e jω o T (5.

dakle. Povucimo duž dužine u=1 iz dvostruke nule i duži dužina d1 i d2 iz polova γ 1 i γ 2 u tačku P. stacionarno stanje stabilnog po prirodi se razlikuje od stacionarnog stanja nestabilnog procesora u kome frekventne karakteristike nemaju fizički smisao.Razumije se. Uočimo tačku P na jediničnom krugu određenoj digitalnom učestanošću ωT. Treba.82) Za geometrijsku interpretaciju ovih karakteristika posmatrajmo jedinični krug na sljedećoj slici. naglasiti da dvije prethodne relacije imaju smisao samo u slučaju stabilnih digitalnih procesora informacija. koja ima i dvostruku nulu u koordinatnom početku z ravni.17.arctg 1 − K1 cos ωT + K 2 cos 2ωT cos 2ωT − K1 cos ωT + K 2 −1 2 (5. sljedeća 18 . Geometrijska interpretacija frekventnih karakteristika digitalnog rezonatora Neka su γ 1 i γ 2 polovi funkcije diskretnog prenosa H(z). Tada se može vidjeti da je amplitudno frekventna karakteristika.81) (5. koja će biti pokazana na već analiziranom primjeru digitalnog rezonatora funkcije diskretnog prenosa H(z). Slika 5.arctg j ωT ) = α [(1-K1cosωT+K2cos2ωT ) +(K1sinωT + K2sin2ωT) ] 2 2 K1 sin ωT − K 2 sin 2ωT sin 2ωT − K1 sin ωT = 2ωT . Za ovu funkciju se lako izračunava: H (e φ(ω) = . Frekventne karakteristike digitalnog procesora imaju geomertijsku interpretaciju.

Sa promjenom kružne učestanosti ω u rad/s ili digitalne učestanosti ωT u radijanima. Na posljednjoj slici prikazane su amplitudno frekventna i fazno frekventna karakteristika posmatranog rezonatora sa T = 10−4 s .za 0 ≤ ω ≤ π T pomjeranje tačke P po gornjem polukrugu jediničnog kruga. γ 1 = re jbT .18. i zbira uglova koje duži povučene iz polova zaklapaju sa tim smjerom. faktor L puta količnik proizvaoda dužina povučenih iz nula i proizvoda dužina duži povučenih iz polova funkcije H(z) u tačku P. fazno frekventna karakteristika je jednaka razlici zbira uglova koje duži povučene iz nula zaklapaju sa pozitivnim smjerom realne ose z ravni.slika. duži Slika 5. rezonantnom frekvencijom fc = 1000Hz (ili bT = πfcT = π/5 rad) i nekoliko vrijednosti faktora prigušenja r. i)Frekventne karakteristika na posljednjoj slici su date za promjenu kružne učestanosti ω (ili 0 ≤ ωT ≤ π rad) čemu odgovara unutar Nyquistovog područja. frekventne karakteristike će se konjugovano simetrično ponoviti tako da će ponovljene karakteristike u opsegu digitalne 19 . tj. tj. koja je izraženija što je pol γ 1 (ili γ 2 ) bliži jediničnom krugu. Amplitudno i frekventno fazna karakteristika digitalnog rezonatora Sa druge strane. tj. Tada nastupa rezonanasa digitalnog rezonatora. u posmatranom slučaju rezonatora φ(ω) = 2ωT – (Ψ1 + Ψ2). Ako tačka P nastavi da se kreće u pozitivnom smjeru po donjem polukrugu jediničnog kruga. zapravo jednaka Lu2/ d1d2. Interesantno je uočiti dvije važne činjenice: r2 = K2. tačka P se kreče po krugu i što se više približava polu γ 1 povećava se H (e jωT ) i dostiže maksimum kada se koordinatni početak. 2r cos bT = K1 γ 2 = re − jbT γ 1 i γ 2 su konjugovano kompleksni par. pol γ 2 i tačka P nađu na istoj pravoj.

Geometrijska interpretacija frekventnih karakteristika stabilnog digitalnog procesora 20 .. Razumije T se. z ... Ova geometrijska interpretacija važi u opštem slučaju funkcije diskretnog prenosa procesora.. nule funkcije diskretnog prenosa stabilnog procesora moraju biti unutar i/ili van jediničnog kruga. Naime.19. odnosno pri svakom sljedećem obilasku tačke P po cijelom jediničnom krugu. frekventne karakteristike dobijene u osnovnom pojasu ω ≤ π će se periodično ponavljati..učestanosti π ≤ ωT ≤ 2π ili frekvencije 5kHz ≤ f ≤ 10kHz biti konjugovano simetrične u odnosu na vertikalu u učestanosti ωT = π rad (ili 5kHz) prvobitnim karakteristikama na posljednjoj slici u Nyquistovom području učestanosti. z i polove p1 . pretpostavimo da je funkcija H(z) data u vidu realne racionalne funkcije po z. pn ( n ≥ m ). Pri daljem porastu učestanosti.. p2 .. frekventne karakteristike u komplementarnim pojasevima imaju isti fizički smisao kao ove karakteristike u osnovnom pojasu.. Međutim. Slika 5. da ima faktor α = 1 . kao što je prikazano na sljedećoj slici za slučaj funkcije H(z) sa jednim realnim i dva dva konjugovano kompleksna pola i tri nule – jednom u koordinatnom početku i dvije konjugovano kompleksne van jediničnog kruga. nule z . Napomenimo da funkcija 1 2 m diskretnog prenosa stabilnog procesora ima sve polove unutar jediničnog kruga sa centrom u koordinatnom početku z ravni.

Konkretno. odnosno kretanjem tačke P po jediničnom krugu dobijaju frekventne karakteristike koje odgovaraju najprije Nyquistovom području učestanosti.I u opštem slučaju važi geometrijska interpretacija: i) amplitudno frekventna karakteristika je jednaka količniku proizvoda dužina duži povučenih iz nula i proizvoda dužina duži povučenih iz polova funkcije H(z) u tačku P na jediničnom krugu određenu digitalnom učestanošću ωT. pri čemu se uglovi duži mjere u odnosu na pozitivni smjer realne ose z ravni. za funkciju H(z) čije su nule i polovi prikazani na prethodnoj slici bismo imali: H ( e j ωT ) = R1 R2 R3 P1 P2 P3 i ϕ (ω ) = arg H (e jωT ) = ωT + ϕ 2 + ϕ 3 − (Ψ1 + Ψ2 + Ψ3 ) I ovdje se sa porastom učestanosti. a zatim se te karakteristike preiodično (konjugovano) ponavljaju pri svakom sljedećem obilasku tačke P po jediničnom krugu. ii) fazno frekventna karakteristika je jednaka razlici zbira uglova duži povučenih iz nula i zbira uglova duži povučenih iz polova u tu tačku. 21 .