• Nie Znaleziono Wyników

Wielkości charakterystyczne m ikroprocesorów jako kryteria porównania

Opis m ikroprocesorów za pom ocą architektury, przedstawiony w podpunkcie 4.2.1.3 nie umożliwiał przeprowadzenia ich porównania. W ybór rozwiązania sterowania mikroprocesorowego (rys.3.1) wymaga liczbowego porównania mikroprocesorów, które jest możliwe do przeprow adzenia na podstawie wielkości charakterystycznych (np. architektura TD, szerokość słowa, przestrzeń adresow a itd.).

Wielkości charakterystyczne odzwierciedlają bezpośrednio właściwości techniczne. Pełna ocena porównawcza wymaga uwzględnienia czynnika ekonomicznego. Ta myśl zostanie rozw inięta w dalszej części rozdziału.

Wielkości charakterystyczne potrzebne do analizy porównawczej stanow ią minimalny zbiór informacji pozwalający na ustalenie właściwego rozwiązania sterownika mikroprocesorowego i są wynikiem doświadczenia autora pracy. Ze w zględu na specyfikę sterowania urządzeniami energoełektronicznym nie jest możliwe ustalenie właściwego rozwiązania sterownika mikroprocesorowego tylko i wyłącznie na podstawie literatury czysto informatycznej.

Omówionym wielkościom charakterystycznym odpow iadają dane, które zestawiono dla typowych m ikroprocesorów w tabelach 4.1 i 4.2.

W poniższym omówieniu nie odnoszono się zasadniczo do sterowania przekształtnikami energoelektronicznymi, poniew aż zostało to zrobione w punkcie 4.3.3 - M ikroprocesor a sterowanie przekształtnika energoełektronicznego.

rozdział 4 - D obór sterowania dedykowanego urządzeń energoelektronicznych (system doradczy)

architektura TD (transm isji danych)

W większości obecnie produkowanych mikroprocesorów jest stosowana klasyczna architektura ustalona przez von Neumanna. Polega ona na tym, że procesor jest wyposażony w je d n ą magistralę danych dla pamięci programu i danych. Daje to znaczne uproszczenie konstrukcji wewnętrznej układu, jednocześnie wym aga pracy szeregowej, czyli pobierania kolejno kodów rozkazów i danych, co spowalnia pracę. Jedną z możliwości poprawienie szybkości pracy jednostki centralnej, jest zastosowanie architektury typu RISC (zredukowana lista rozkazów, nie wymagających dekodowania na mikrorozkazy). Drugim kierunkiem jest rozbudow a m ikroproce­

sora przez zwiększenie ilości rozkazów, czasami bardzo skomplikowanych, wymagających w innych jednostkach tworzenia całych procedur.

Konkurencyjną wobec koncepcji von Neumanna jest architektura harwardzka, w której rozdzielono przestrzeń adresow ą programu od przestrzeni adresowej danych poprzez dwie niezależne w ewnętrzne szyny programu i danych. Znacznie przyśpiesza to wykonywanie programu tak, że w większości now oczesnych układów rozkazy są wykonywane w jednym cyklu maszynowym (dotyczy to najczęściej procesorów sygnałowych np. A D SP-2111 [MF2]).

szerokość słowa

Szerokość słowa jest jednym z podstawowych parametrów mikroprocesora. Układy proste charakteryzują się 8-bitowym słowem, co ogranicza możliwości ich zastosowania. W pływa to na dokładność obliczeń, otrzymuje się bowiem rozdzielczość Ibit przy zakresie 0 - 255b. W przypadku gdy w procesorze o architekturze 8-bitowej istnieje konieczność prow adzenia obliczeń na liczbach 16- lub 32-bitowych to czas ich wykonywama, wydłuża się znacznie.

Szerokość słowa jest jednym z podstawowych kryteriów oceny przydatności m ikroprocesora do konkretnego zadania.

Szczególnym zagadnieniem związanym z szerokością słowa jest pojęcie szerokości zewnętrznej magistrali danych. Dla niektórych typów m ikroprocesorów 16-bitowych istnieje możliwość programowego ustawienia szerokości zewnętrznej magistrali danych na: 8- lub 16-bitową. Ta ostatnia możliwość pozwala na pełne wykorzystanie szybkości pracy mikroprocesora, kosztem rozbudowy zewnętrznej części systemu mikroprocesorowego (pamięć o 16 bitowej strukturze) - dodatek2. W przypadku mikrokontrolera Intel 80C196KC taka zmiana może doprowadzić do ok. 20% przyśpieszenia pracy procesora. Przeciwnie, ustawienie na 8-bitow ą zew nętrzną szynę danych może być powodowane względami oszczędnościowymi.

przestrzeń adresow a

Parametr ten określa wielkość pamięci programu i danych wyrażonych w kilobajtach. W zależności od konstrukcji mikroprocesora przestrzeń adresowa może być jednolita lub podzielona na część przeznaczoną na pamięć typu ROM i część przeznaczoną na pamięć typu RAM. To drugie rozwiązanie (np. M CS 51) pozw ala na powiększenie pamięci obsługiwanej przez procesor, ale powoduje potrzebę w yróżnienia dodatkowych rozkazów, pozwalających na komunikację z różnymi typami pamięci.

Typow ą w artością przestrzeni adresowej jest 64 kB, nawet dla mikrokontrolerów 16-bitowych. W nowszych rozwiązaniach m ikroprocesorów poszerza się j ą do wartości 1MB, a w układach 32-bitowych ( np.

procesory typu RISC) do 4 GB. Pozwala to na powiększanie wielkości nie tylko programu, ale zwłaszcza danych (stałych zawartych w ROM i zmiennych przechowywanych w RAM).

pam ięć w ew nętrzna układu

Pamięć wewnętrzna jest to pamięć znajdująca się wewnątrz mikroprocesora. Skonstruowany program wymaga określonej pamięci (programu i danych). Różnica między tą wartością, a pojem nością pamięci wewnętrznej określa potrzebę rozbudowy zewnętrznej części systemu m ikroprocesorowego o układy pamięci ROM i RAM. Jeżeli system m ikroprocesorowy musi mieć pamięć zew nętrzną to oznacza, że wymiary fizyczne, zewnętrzne sterownika s ą odpowiednio większe, przy czym może to spowodować jednocześnie spadek niezawodności urządzenia (ze zwiększaniem ilości układów scalonych maleje niezawodność). Dodatkowo maleje w takim przypadku odporność na zakłócenia (długie doprowadzenia itp.).

Wewnętrzna pamięć typu ROM je st cechą charakterystyczną mikrokontrolerów. W ystępuje w różnych postaciach: od gotowej, fabrycznie maskowanej typu ROM, poprzez jednokrotnie program owalne przez użytkownika OTPROM, do reprogramowalnych wielokrotnie EPROM.

rozdział 4 - D obór sterowania dedykowanego urządzeń energoelektronicznych (system doradczy)

Pierwsza z nich (ROM ) je st rzadko spotykana w dostępnych na rynku egzemplarzach. Stosować je m ogą tylko duże zasobne przedsiębiorstwa, które stać na spore początkowe koszty opracowania maski o żądanej zawartości pamięci. W arunkiem stosowania jest produkcja masowa, przez co w rezultacie m ikrokontrolery takie mają niską cenę. Przykładem je st tu mikrokontroler Intel 80C 51.

Pamięć OTPROM stanowi pośrednie rozwiązanie pomiędzy pamięcią fabrycznie m askow alną ROM a pamięcią elektrycznie reprogram owalną EPROM. Jest coraz częściej stosowana przy produkcji niskoseryjnej (niższa cena niż z EPROM -em) [M F11]

Pamięć EPROM znajduje zastosowanie w wykonaniach jednostkowych lub eksperymentalnych. Cena jej jest wysoka.

Stosunek cen dla układu podstawowego z rodziny MCS51 odzwierciedla ogólny układ kosztów [M F11]:

bez ROM (80C31) - 1,0 (w wartościach względnych) z OTPROM (87C51) - 4,8

z EPROM (87C51) - 7,2

dla porównania, pamięć zewnętrzna EPROM o tej samej pojemności: - 0,75

Wynika z tego, że właściwy w ybór mikrokontrolera ze względu na pamięć w ew nętrzną (bez pamięci ROM , OTPROM, EPROM ) je st problemem złożonym.

Ogólnie można powiedzieć, że w przypadkach jeśli system ma być mały i zwarty to wybieramy odpowiedni układ z w ew nętrzną pamięcią: dla prototypu EPROM, przy dalszej produkcji OTPROM. Ze względu na koszty ogólne jest to rozwiązanie rzadko spotykane.

Częściej w porównaniu do powyższego stosuje się rozwiązanie z zew nętrzną pam ięcią programu. W adą takiego podejścia jest to, że blokowane s ą zwykle dwa porty układów wejścia/wyjścia mikroprocesora.

Na decyzję o w yborze określonego mikroprocesora ma wpływ także cena pamięci ROM. W przypadku stosowania pamięci zewnętrznej jej koszt wzrasta wraz z maleniem czasu dostępu.

W pamięć danych RAM, wyposażona jest większość współczesnych mikrokontrolerów i procesorów sygnałowych. Jej pojemność zwykle nie jest duża ( do lkB ), ale wystarcza do typowych zastosowań, co powoduje, że nie jest potrzebna rozbudowa o pamięć RAM zewnętrzną.

Jeżeli zachodzi potrzeba zastosowania zewnętrznej pamięci RAM to należy uwzględnić nie tylko jej pojemność ale także czas dostępu. Czas dostępu jest pewnym czynnikiem wpływającym na cenę pamięci. Dla szybkich procesorów (np. typu RISC, procesorów sygnałowych) wymagana jest pamięć o małym czasie dostępu rzędu 50ns i jest droższa od wolniejszej o tej samej pojemności.

Trzeba tu wspomnieć o rejestrach wewnętrznych mikroprocesorów, które służą do podobnych celów jak pamięć RAM. Zwykle ich wartość użytkowa jest większa jak pamięci RAM, dzięki większej ilości rozkazów jakie pozw alają na nich operować. Ich duża ilość może więc kompensować m niejszą ilość lub brak

wewnętrznego RAM-u.

szybkość

pracy

Jest to parametr, który określa przydatność mikroprocesora do konkretnego zadania, czyli określa czy jednostka centralna ma możliwość wykonania odpowiednich obliczeń w określonym czasie. Stosunkowo trudnym problemem jest podanie wyraźnej definicji parametru. Nie jest nim, ja k często się podaje, maksymalna częstotliwość rezonatora kwarcowego, który można przyłączyć do mikroprocesora. W zależności od wewnętrznej konstrukcji jednostki centralnej sygnał z generatora może być dzielony wielokrotnie w celu uzyskania wewnętrznego taktu, a poza tym cykl maszynowy może składać się z różnej ilości taktów.

Jedną z wielkości określających szybkość pracy może być czas trwania cyklu maszynowego, który bezpośrednio wpływa na czas wykonania rozkazów.

Czasami podawana jest liczba instrukcji wykonywanych w ciągu sekundy (MIPS - milion instructions per second). Powstaje w związku z tym problem ja k ą wielkość uznać za ‘rozkaz’. Istnieje tu kilka możliwości:

• najkrótszy rozkaz - często najkrótsze rozkazy są albo w ogóle nie wykorzystywane, albo bardzo rzadko, więc tc żaden miernik,

• najdłuższy rozkaz - sytuacja jest podobna jak wyżej,

• rozkazy przesłań - wykorzystywane chyba najczęściej, ale czas ich wykonania je st zwykle zależny od sposobu adresowania,

• podstawowy rozkaz mnożenia - wykonywany może nie tak często, ale w przypadku wielokrotnych obliczeń wykonywanych w pętli decyduje o czasie realizacji.

rozdział 4 - D obór sterowania dedykowanego urządzeń energoelektronicznych (system doradczy)

Chyba dobrym rozwiązaniem je st podanie wszystkich wyżej wymienionych wartości, bo to dopiero pokazuje szybkość mikroprocesora.

Dla oceny szybkości pracy procesorów sygnałowych stosuje się wskaźnik: szybkość operacji zm iennoprzecinkowych na sekundę (MFLOPS - milion floating-point operations per second). Tu sytuacja jest o tyle prostsza, że nowoczesne procesory w ykonują wszystkie rozkazy w jednym cyklu maszynowym.

obliczenia zm iennoprzecinkow e

M ożliwość prow adzenia obliczeń zm iennoprzecinkowych je st kolejnym wskaźnikiem w artości mikroprocesora. Tylko nowoczesne mikroprocesory, a w tym część procesorów sygnałowych posiada takie możliwości.

Operacje zm iennoprzecinkowe wymagane są w przypadkach prow adzenia dokładnych obliczeń na dużych liczbach, daje to w rezultacie skrócenie czasu wykonywania operacji, które w innym w ypadku wymagałyby tworzenia odrębnych czasochłonnych procedur.

system przerw ań

Przerwaniem je st operacja polegająca na zawieszeniu wykonywania bieżącego programu, zapam iętaniu wszystkich ważnych informacji o stanie zawieszonego programu i w yw ołaniu podprogram u obsługującego to przerwanie [M l]. Przerwanie jest generowane na skutek pojawienia się sygnału zgłoszenia przerwania.

Zgłoszenie przerwania może pochodzić od:

- wejścia zewnętrznego mikroprocesora, - licznika wewnętrznego,

- układu transmisji szeregowej (wewnętrznego), - przetwornika A/C (wewnętrznego) itp.

W sterowaniu urządzeniami energoelektronicznymi często wym agana jest synchronizacja ze zjawiskami zewnętrznymi. Odpowiedź na pojawienie się takiego sygnału musi być odpowiednio szybka i w tym celu stosowane są przerwania [K2j.

Do realizacji obsługi służy układ obsługi przerwań. Jest on bardziej lub mniej rozbudow any w różnych typach mikroprocesorów. Im więcej źródeł przerwań posiada dany m ikroprocesor, tym obsługa (programowa) jest łatwiejsza. Stąd w nowoczesnych konstrukcjach dążenie do rozbudow anych systemów przerwań.

W cześniejsze konstrukcje mikroprocesorów dopuszczały zwykle w prow adzanie bezpośrednie przerw ań tylko od jednego źródła przerwań. Powodowało to, że gdy źródeł przerw ań zewnętrznych było więcej (np.

sygnały synchronizacji, układy licznikowe) istniała potrzeba dobudowania zewnętrznego priorytetowego układu obsługi przerw ań w oparciu o specjalizowane układy scalone (np. Intel 8259).

układy w ejść/w yjść cyfrow ych

S ą one podstawowym elementem mikrokontrolerów pozwalającym na sterowanie zaworami energoelektronicznymi (tyrystory, IGBT i in.), przekaźnikami, kom unikację z otoczeniem (klawiatura, wyświetlacze, diody LED). Im większa ilość wejść/wyjść mikroprocesora tym w iększa możliwość na realizację skomplikowanych systemów bez rozbudowy o dodatkowe elementy zewnętrzne (np. Intel 8255).

W nowoczesnych konstrukcjach należy rozróżnić dwa rodzaje układów wejść/wyjść cyfrowych:

- standardowe, - szybkie.

Standardowe wejścia/wyjścia są obsługiwane programowo, czyli do zapisu lub odczytu służą odpowiednie rozkazy w programie. U kład sterowania m ikroprocesora aktualizuje stan w yjść lub odczytuje ich stan w chwili wykonywania odpowiedniego rozkazu.

Szybkie wejścia/wyjścia s ą obsługiwane w nieco inny sposób. Do ich układu sterowania je st zapisywane polecenie zmiany stanu wyjść wraz z określeniem chwili czasu w jakiej ma to nastąpić. W efekcie urucham iane są one bieżącym czasem maszynowym (np. jeden z liczników), a nie programem (tak jak w przypadku standardowych). Tzn. w spółpracują one z odpowiednim licznikiem i dokonują przełączeń w odpowiedniej chwili wyznaczonej stanem licznika.

Jako szybkie w ejścia pozw alają na rejestrację czasu zmiany stanu w ejść odniesionego do stanu licznika.

Wszystkie te operacje s ą sterowane układowo i sama realizacja zdarzenia wymaga w małym stopniu obsługi programowej.

Całkowicie różnym rozwiązaniem w stosunku do wejść standardowych i szybkich je st struktura, k tó rą firma Analog Devices zastosowała w swoich niektórych procesorach sygnałowych (np. ADSP-2111). Jest to układ interfejsu z jednostką nadrzędną (HIP). Służy on do wymiany informacji w formacie rów noległym z procesorem

rozdział 4 - D obór sterowania dedykowanego urządzeń energoelektronicznych (system doradczy)

nadrzędnym np. z M otorolą 68000 lub Intelem 80C31. Nie pozwala natomiast na sterow anie elementami zewnętrznymi.

Z układami wejść/wyjść cyfrowych jest związane pojęcie separacji galwanicznej. Pozw ala ona na oddzielenie części siłowej urządzenia od układu sterowania. N a poziom ie projektu technicznego należy wziąć pod uwagę obciążalność tych wyjść.

liczniki

Liczniki służą do odmierzania odcinków czasu lub zdarzeń zewnętrznych. Odpowiednia ich ilość w ewnątrz struktury mikroprocesora pozw ala na realizację zadań bez rozbudowy o liczniki zewnętrzne. W pew nych sytuacjach liczbę liczników może skompensować wewnętrzna struktura rejestrowo-kom paratorowa, pozw alająca na odmierzanie kilku odcinków czasu w oparciu o jeden licznik (np. struktura PCA w układzie Intel 80C51GB).

Ilustracjąjest układ sterowania prostow nika opisany w dodatkuS.

Należy zwrócić uwagę, że nie wszystkie liczniki znajdujące się w układach m ikroprocesorowych posiadają możliwość zliczania im pulsów zewnętrznych. M oże to mieć zasadnicze znaczenie przy doborze właściwego procesora dla konstruowanego sterownika. Np. w układzie mikrokontrolera Intel 80C196KC liczniki (współpracujący z układem szybkich wejść), nie może być taktowany sygnałem zewnętrznym [MF9].

transm isja szeregow a

W w ielu przypadkach urządzenia energoelektroniczne w ym agają sterowania nadrzędnego o niezbyt dużych szybkościach oddziaływania. Najczęściej stosowanym sposobem wymiany informacji jest w tedy transmisja szeregowa. Istnieją dwie metody transmisji szeregowej:

• synchroniczna - gdzie przesyłany je st nieprzerwany strumień bitów, zaopatrzony w znaczniki synchronizacji (USART),

• asynchroniczna - w której między bajtami danych m ogą występować dowolnie długie przerwy, a każdy bajt je st wyznaczony przez bit startu i bity stopu (UART).

Większość m ikrokontrolerów jest wyposażona w układ transmisji asynchronicznej, program owalny, pozwalający na komunikację dupleksową. N owsze wersje posiadają także niezależne układy transmisji synchronicznej.

Należy tu wskazać na dodatkowe możliwości komunikacji szeregowej z urządzeniam i peryferyjnymi systemu.

Firma Analog Devices w swoim procesorze ADSP-2111 wprowadziła dwa takie same układy do transmisji szeregowej, które m ogą być sprzęgnięte z układami przetworników A/C i C/A, dostosowanymi do komunikacji szeregowej.

przetw ornik analogow o-cyfrow y

Sterowanie urządzeń energoelektronicznych w wielu przypadkach wym aga wykorzystania sygnałów analogowych. Przykładem są napędy energoelektroniczne (prędkość, prąd, napięcie). W ykorzystanie ich przez m ikroprocesor wymaga przetw orzenia na wartości cyfrowe.

Chociaż dostępne są scalone przetworniki A/C o zróżnicowanych parametrach, rozdzielczości, dokładności i szybkości działania, to w większości zastosowań najwygodniejszym je st przetwornik znajdujący się w ew nątrz struktury mikroprocesora. N ie ma wtedy problem ów z dopasowaniem układów i rozbudow ą sterownika.

Przetwornik wewnętrzny je st znacznie łatwiejszy w obsłudze. D la przykładu, w m ikrokontrolerze Intel 80C196KC istnieje możliwość automatycznego uruchomienia przetw arzania za pom ocą układu szybkich wejść/wyjść (HSI/O unit), w chwili odmierzanej przez jeden z liczników, bez dodatkowej ingerencji programowej. W tym przypadku przetwarzanie może być w ielokrotnie powtarzane, funkcjonując poza programem (dalsze zautomatyzowanie procesu przetwarzania może być wprowadzone na drodze wykorzystania wewnętrznego układu obsługującego transmisje peryferyjne (PTS).

Przetworniki w ewnętrzne zwykle posiadają kilka wejść analogowych (4, 8 lub 10), zaopatrzonych w m ultiplekser analogowy. Typowa rozdzielczość to 8- lub 10-bitów i jest ona w ybierana programowo.

przetw ornik cyfrow o-an alogow y

Przetwornik cyfrowo-analogowy je st elementem systemu mikroprocesorowego, który pozw ala na wyprowadzenie sygnału w postaci analogowej poza część cyfrow ą systemu. W yjściowy sygnał analogowy (napięciowy lub prądow y) je st proporcjonalny do wejściowej cyfrowej wartości (8-, 10-bitowej).

W ystępowanie tego typu elementów w klasycznej postaci w strukturze m ikroprocesora to rzadkość (np.

ADSP-21msp50).

rozdział 4 - D obór sterowania dedykowanego urządzeń energoelektronicznych (system doradczy)

Częściej spotykane są cyfrowe wyjścia generujące sygnał M SI, które m ogą spełniać tak ą funkcję po zastosowaniu dodatkowych środków. P racują one z określoną dużą częstotliw ością (kHz) i zmienianym programowo wypełnieniem. W ypełnienie je st proporcjonalna do wejściowej w artości cyfrowej. Otrzymanie sygnału w postaci analogowej wymaga zastosowania na wyjściu układu filtra dolnoprzepustow ego, który stanowi przetwornik w ypełnienie/poziom napięcia. Rozwiązanie to ma też tak ą zaletę, że sygnał M SI m ożna łatwo separować galwanicznie (jako sygnał cyfrowy) od systemu mikroprocesorowego ( np. transm isja sygnału MSI na duże odległości z separacją galw aniczną - mniejszy wpływ zakłóceń na system pP).

licznik zabezpieczający m ikroprocesor - w atchdog tim er

W atchdog timer służy do kontroli poprawności działania systemu m ikroprocesorowego. Jest to dodatkow y wewnętrzny licznik m ikroprocesora, odliczający takty zegarowe m ikroprocesora, który po w ystąpieniu w nim przepełnienia powoduje zerowanie (reset) procesora. W celu zapewnienia normalnej pracy systemu należy go

‘odświeżać’ (zerować), poprzez wykonanie specyficznych operacji programowych, tak aby to przepełnienie nie nastąpiło. Procedura ‘odśw ieżania’ jest na tyle specyficzna, że przypadkowe jej w ystąpienie je st prawie niemożliwe. Jeśli więc w wyniku zakłócenia układ sterowania mikroprocesora spowoduje wyjście poza program i przez to ‘w atchdog’ nie będzie odświeżany, nastąpi zerowanie procesora i start programu od początku.

Jeśli dany m ikroprocesor nie posiada wewnętrznego ‘w atchdoga’ to niezbędne jest dodanie układu zewnętrznego, który pełniłby tę funkcję. W innym przypadku sterownik nie spełnia wymagań urządzenia przemysłowego.