Istrukcja Filtr yfrowy - µs Struktura staowiska laboratoryjego Na rysuku.. okazao staowisko laboratoryje z rocesorem ADSP. Na rysuku. zazaczoo uŝywae w ćwiczeiu rzyciski do obsługi kosoli obserwacyjosterującej ys... Staowisko laboratoryje
ys... Kosola obserwacyjo- sterująca Architektura mikrorocesora ADSP. Zaozaj się z architekturą µs - rys..3. ys..3. Schemat blokowy mikrorocesora sygałowego ADSP - wg rysuku rzeaalizuj ołączeia jedostek wykoawczych: ALU, SHIFTE, MA, - zaozaj się z zaisem w ułamkowym kodzie uzuełieiowym (tzw kod.5) w którym zaisywae są róbki sygałów wejściowych (x i ), wyjściowych (y i ) i wsółczyiki wag róbek. - µs moŝe wykoać w rozkazie max. 3 oeracje. Są to. oeracja a MA i odczytu: z obszaru daych (róbka) i kodu (wsółczyik). Dla MA róbki są ładowae odowiedio do rejestrów MX i MY. Tak więc µs wykoując moŝeie z dosumowywaiem moŝe rówocześie wrowadzić do MX i MY argumety dla astęego moŝeia. - KaŜdy rozkaz ma idetyczy format 4 bitowy. Przykład rzejścia z trasmitacji G(s) a ekwiwaletą G(z) dla filtru asmowo-rzeustowego f 7 Hz -go rzędu. Zaozaj się z dołączoym rzykładem. ZauwaŜ Ŝe a wartość wsółczyika G(z) ma wływ okres róbkowaia tj czas między odczytami rzetworika a/c. Na odstawie G(z) otrzymujemy tzw rówaie róŝicowe gdzie owa róbka wyjściowa y jest sumą waŝoą róbki wejściowej x i róbek historyczych x -,x -... a takŝe wcześiej wyliczoych róbek y -,y -... Obliczeie y srowadza się więc do wykoaia odowiediej ilości moŝeń (x rzad filtra) z akumulacją. Wartości x i y i oraz wsółczyików są zaisae w kodzie.5 (liczby ±). W amięci µs musimy więc rzechowywać odowiedią ilość historyczych wartości x i y i (ilość zaleŝy od rzędu G(z) G(s)). 3
Bufory amiętające róbki x i y zajdują się oczywiście w obszarze amięci daych, a zestaw wsółczyików amiętay jest w obszarze amięci rogramu (wsółczyiki ie ulegą zmiaie). Do adresacji w µs uŝywae są układy DAG, (odowiedi dla daych i kodu/daych). KaŜdy DA dysouje 4-ma rejestrami adresującymi I. (I) x (I+) x (I+) x 3. dla G(z) IV rzędu (I+3) x 4 adres Po kolejej iteracji tj rzesuięciu a osi czasu o dyskretą wartość rówą adresowi róbkowaia. Tak więc róbka x staje się x, x rzechodzi w x Itd. (I) x x (I+) (I+) 3 (I+3) 4 x x x x x x zbęda NaleŜy więc rzesuąć w amięci wszystkie róbki w buforach dla x i / y i. Aby ie tracić a tej oeracji admiistracyjie kaŝdy mikrorocesor µs mechaizmem buforów cykliczych. W tym celu z kaŝdym rejestrem adresującym I jest skojarzoy rejestr M oraz L (odowiedio modyfikacja i długość : I L8 M3 7 6 3 5 4 Koleje adresy to,3,6, itd. Najczęściej M i wtedy adresy,,...7,,. Adresując, orócz rejestru I odajemy zawsze takŝe M (ie muszą być od ary, tz moŝa w daym momecie odać ie M, wtedy ostmodyfikacja zostaie zatrzymaa. Dla aalogiczego rzyadku Mi. 4
(I) x x x L4 (I+) (I+) 3 (I+3) x 4 x x x 3 x x 3 x 4 x x x reikremetacja o wykorzystaiu x 4 adresujemy stosując Mj-bez ostikremetacji i w miejsce (I3) wisujemy x. Nowy obieg algorytmu rozoczie się od (I3), zakończy a I gdzie wiszemy ową róbkę we x itd. Dzięki temu mechaizmowi rzesuwaie fizycze daych w buforach x, y jest zbęde. Pętla główa: Odczyt z ac Kowersja z kodu bi. rzesuiętego a kod.5 z rzesuięciem bitowym wyiku z a/c o 4 bity w lewo Wyliczeie y Kowersja y z kodu.5 a kod biary rzesuięty właściwy a/c Pętla czasowa zaewiająca uzyskaie czasu róbkowaia 6µSzałoŜoy rzy kowersji G(s)a G(z) 5
Filtr asmowy II rzędu. Prototy aalogowy realizacja z wykorzystaiem wielokrotych srzęŝeń zwrotych. 3 we wy As (s) gdzie: A s + Bs + c G B + 3 + ZałóŜmy Ŝe rojektujemy filtr o astęujących arametrach: wzmocieie H częstotliwość środkowa f 7 Hz dobroć 5 ( ) 3 fo f Poadto dla ułatwieia doboru elemetów. ZaleŜości a,,3 wyrowadzoe ze wzoru G(s) maja ostać: 3dB Π fh f Π( f fh) 6
3 ( 3 Π f H) Wstęa kalkulacja wykazuje Ŝe oiewaŝ, 3 >> więc << Dla H zachodzi oczywiście 3 ZaleŜości odwrote a f i w fukcji elemetów, mają ostać: f ( + ) Π f f 3 H 3 3 ( + + Uwzględiając wcześiejsze uroszczeia: f Π ) stąd zaleŝości a, (zakładając Ŝe F) Πf ( 74k657Ω 34Ω93) a wsółczyiki trasmitacji: A B A B ( ) 4Πf Trasmitacja układu asmowego II rzędu w fukcji i ω ma ostać: 7
ωo s G(s) ωo s + s + ωo (zaleŝość ta obowiązuje dla, wtedy częstotliwość własa jest raktyczie rówa częstotliwości środkowej, która uwzględia tłumieie. ω A B ω ω A 6,5 8 ω,6933x Do zarojektowaia filtru cyfrowego wykorzystamy rzekształceie liiowe wrowadzając zmieą zesoloą z -. z s T + z T- adres róbkowaia (T ) f z - rerezetuje oóźieie (c czas T) Po odstawieiu otrzymujemy trasmitację w dziedziie z -. G(z) G (z) 4f (4f ω ) ω 4f + f + ω '( z ) y A'z + B'z x ω f ω + f + ω 4f + 4f ( z f + f ) ω + ω ω + ω Algorytm filtracji moŝa rzedstawić w ostaci rówaia róŝicowego: (x- róbki we., y- róbki wy.) y '(x x ) + A' y B' y MoŜa wykazać Ŝe arametry A i B mieszczą się w zakresach: <A < <B < kokretie dla załoŝoych wartości tj. T6µs tj. f 6k5Hz 8
ω + 6,5 otrzymujemy: A,95393 B,995889 ω,693 8 9
Program realizujący filtr asmowo- rzeustowy II rzędu a częstotliwość 7 Hz Filtr yfrowy-czyości wstęe 8 88F JMP <8> Z bootującej amięci EPOM został o wyzerowaiu załadoway rogram ograiczający się do skoku od adres 8 a oczątek amięci zewętrzej kodu. Program jest czytay z amięci zewętrzej ze względu a obserwowalość działaia w trybie racy krokowej. Z tych samych względów bufory kołowe ie zostały ulokowae w 4 8 4E S 44 8 93FFFE DM(3FFF)S 48 8 436DBE S,,,,, 4 83 93FFEE DM(3FFE)S 5 84 37 Ix3 54 85 348 L 58 86 344 M 5 87 374 Ix34 6 88 349 L 64 89 345 M 68 8A 389 I4x9 6 8B 3848 L44 7 8 384 M4 74 8D 346 M 78 8E 385 M5 wewętrzej amięci daych. Porzez S wisujemy do lokacji (3FFF) gdzie wstawia się ilość taktów oczekiwaia dla dostęu do kodu Podobie rogramujemy liczbę Tw (3) dla kaŝdego z obszarów amięci zewętrzej daych I w obszarze daych są teŝ rzetw. a/c c/a Bufor kołowy w obszarze daych dla róbek wejściowych x / adresy 3,3/ Bufor kołowy w obszarze daych dla róbek wyjściowych y /adresy 34,35/ Bufor koło w Obszarze kodu dla wsółczyików wagi w rówaiu róŝicowym (adresy 9,9,9,93) Zerowe modyfikatory dla obu bloków DAG (dla otrzeb adresacji liiowej) wartość M musi być zawsze odaa 7 8F 343D Ix3D Adres rzetworika a/c (we) i c/a (wy) 8 8 A DM(I,M) Załadowaie zerowych wartości 84 8 A DM(I,M) oczątkowych do buforów kołowych x i y 88 8 A5 DM(I,M) 8 83 A5 DM(I,M) 9 84 4F98E SxF98 94 85 58E PM(I4,M4)S 98 86 4D69E SxD69 9 87 58E PM(I4,M4)S A 88 47FFE Sx7FF A4 89 58E PM(I4, M4)S A8 8A 4887E Sx887 A 8B 58E PM(I4,M4)S Załadowaie wsółczyików wagi do bufora kołowego w obszarze kodu ( z rzesiadką orzez rejestr S) B 8 9 MODIFY(I,M) Ustawieie wartości startowej adresu dla bufora x B4 8E 485 AYx8 Ta wartość (...) słuŝyć będzie do kowersji kodów orzez oerację sumy (egacja MSB) B8 8F 884F JMP <84> z biarego (rzetworik a/c) o dosuięciu -bitowego rezultatu o 4 bity w lewo z kodu,5 z astęym rzesuięciem rezultatu o 8 bitów w rawo (kodu biarego) aby zaewić rawidłowe rzesłaie dla rzetworika c/a
Filtr cyfrowy ętla główa 84 6EA SDM(I,M) 4 84 F64 SLSHIFT S BY+4 8 84 3EF AS XO AY 843 E8 MXDM(I,M) MYPM(I4,M4) 844 88A MMX*MY MXA Odczyt i sraw. Próbki do kodu,5 x - A 4 845 56 MYPM(I4,M4) 8 846 E96 MM+MX*MY MXDM(I,M) MYPM(I4,M5) x A (+...) 847 E95 MM+MX*MY MXDM(I,M) MYPM(I4,M4) 848 E96 MM+MX*MY MXDM(I,M) MYPM(I4,M4) y - /B+... y - +/B+... 4 849 69A MM+MX*MY y - B+... DM(I,M)A 8 84A 686 DM(I,M)M 84B 3F AM XO AY Przechodzeie z kodu 3 84 F SLSHIFT A BY-8,5 a kod biary 34 84D 68EA DM(I,M)S rzesuięty 38 84E 33E5 NTX3E (K) Pętla czasowa 3 84F 485E D <85> UNTIL E 4 85 NOP K 44 85 884F JMP <84> 38 84E 345 NTx3E* Kalkulacja ętli czasowej. zas róbkowaia T P 6µs (wg tej wartości liiowo wsółczyiki G (z) ) zas cyklu µ T 8s Ilość cykli µ a czas róbkowaia (obieg ętli) NT P /T 6/8. PM cyklt 6s DM cykl 4T 3s Ilość cykli w ętli (k+)+4*8k+76 Tak więc k+76 > k6 (3Ehex)* Tz. a T ętli aŝ 8T zajmuje oóźiająca ętla czasowa (rozkazy 84E- 85) Uewij się czy rzedstawioy rogram jest wisay do amięci systemu. Zatrzymaj mikrorocesor rzyciskiem UN-STOP (rysuek.) a łycie czołowej PU, zresetuj system rzyciskiem ESET a łycie czołowej (rys...). Przekrokuj rogram rzyciskiem STEP a łycie czołowej, zaozając się z kometarzami w tabelach owyŝej. Zwróć uwagę iŝ m mikrorocesorze ADSP ętla DO UNTIL rówieŝ odlega krokowaiu srzętowemu. Poowie wyzeruj system rzyciskiem ESET, a astęie uruchom mikrorocesor w racy ciągłej rzyciskiem UN-STOOP. Zmieiaj częstotliwość z geeratora POF a zakresie 7 Hz i zaobserwuj sygał a wyjściu rzetworika A. W rzyadku gdy dla częstotliwości około Hz sygał wyjściowy ulegie ziekształceiu (rzesterowaie) zmiejsz amlitudę sygału z geeratora.
Obserwacja harmoiczych sygałów iesiusoidalych Na geeratorze rzełącz sygał wyjściowy a rostokąty. Przy omocy okrętła wyełieie, ustaw a oscyloskoie sygał symetryczy (wyełieie ½). Na zakresie częstotliwości khz ustaw częstotliwość środkową i zaisz wielkość amlitudy sygału wejściowego (a wyjściu geeratora) i sygału a wyjściu filtru. Aby zaobserwować koleje harmoicze sygału rostokątego aleŝałoby rzestroić filtr a częstotliwości będące krotością częstotliwości środkowej. PoiewaŜ jedak aleŝałoby w tym celu modyfikować rogram, dla uroszczeia moŝa tak dobrać częstotliwość sygału z wyjścia geeratora, aby częstotliwość filtru była rówa częstotliwości kolejej harmoiczej sygału rostokątego. Przełącz zakres częstotliwości w geeratorze POF a Hz i zmieiając w sosób łyy częstotliwość a wyjściu geeratora ustaw taki sygał, aby a wyjściu filtru ojawił się sygał siusoidaly. Okres tego sygału będzie krotością okresu sygału rostokątego. Policz ile okresów siusoidy mieści się w rostokącie. Zmierz amlitudę sygału wejściowego (z geeratora) oraz sygału a wyjściu filtru. zyość owtarzaj dla kolejych harmoiczych. Wyiki omiaru zaisz w tabeli. F geeratora Nr harmoiczej Amlituda we Amlituda wy Aml. we /Aml. wy ZauwaŜ, które harmoicze wystęują w rzyadku sygału symetryczego. Ustaw sygał rostokąty, którego trzecią harmoiczą jest 7 Hz. Nastęie okrętłem wyełieia a geeratorze uzyskaj taki kształt sygału rostokątego, rzy którym 3 harmoicza zikie. zy jest tylko jede taki kształt tego sygału?- srawdź. Przy odkształcoym sygale rostokątym, oszukaj w sosób oisay owyŝej kolejych harmoiczych i zaotuj amlitudę sygału a wejściu i wyjściu filtru. F geeratora Nr harmoiczej Amlituda we Amlituda wy Aml. we /Aml. wy
Powtórz owyŝsze czyości dla sygału trójkątego. Wyiki zaisz w tabeli. F geeratora Nr harmoiczej Amlituda we Amlituda wy Aml. we /Aml. wy Odowiedź filtru a aczkę siusoidy o częstotliwości rówej częstotliwości środkowej filtru. Sygałem wyjściowym z geeratora ma być sygał siusoidaly, o częstotliwości rówej częstotliwości środkowej filtru. Włącz geerator imulsowy PGP 5. Wciśij rzycisk modulacji amlitudy AM a geeratorze POF. Dobierz tak szerokość imulsu rostokątego, aby objął o kilkadziesiąt okresów siusoidy. Głębokość modulacji owia owodować zerowy sygał a wyjściu geeratora POF rzy iskim staie a wyjściu geeratora imulsowego. Skometuj uzyskay a oscyloskoie sygał z wyjścia filtru. Zwróć uwagę a iezerowy czas arastaia i zaiku sygału a wyjściu filtr. Od jakiego arametru filtru zaleŝy te czas? 3