Przerwania , DMA , itp, PRZERWANIA NIM


PRZERWANIA NIM

System przerwań (ang. interrupt system) umożliwia przerwanie wykonywania bieżącego programu przez mikroprocesor i wykonanie specjalnego podprogramu zwanego programem obsługi przerwań. Na początku każdego cyklu rozkazowego procesor sprawdza czy jest zgłoszenie przerwania. Jeżeli takie zgłoszenie istnieje i system przerwania jest włączony, to układ sterowania mikroprocesora zamiast pobrania kolejnego rozkazu wykonuje program obsługi przerwania. Przerwania typu NIM są to przerwania niemaskowalne. Przerwanie takie jest przyjmowane zawsze i ma stały numer np. n=2. Liczbie n przypisana jest odpowiednia komórka pamięci w której znajduje się adres początku obsługi programu przerwania. W chwili zgłoszenia przerwania mikroprocesor wykonuje następujące czynności:

- wyłącza system przerwań

- zapamiętuje zawartość licznika rozkazu LR na stosie

- wpisuje do LR adres początku programu obsługi przerwania.

Powyższe czynności są równoważne skokowi do podprogramu. Różnica jest tylko taka, że skok jest wymuszony przez sygnał zewnętrzny lub zdarzenie zachodzące w mikroprocesorze, a nie przez aktualnie wykonywany program. Po wykonaniu programu obsługi przerwania mikroprocesor wraca do normalnej pracy włączając przedtem z powrotem system przerwań.

UKŁAD PAMIĘCI

W systemach mikroprocesorowych są stosowane dwa rodzaje pamięci:

- pamięci zapisywalne, zwane również pamięciami o dostępie swobodnym RAM

- pamięci stałe ROM

Pamięć zapisywalna RAM jest zespołem rejestrów równoległych, służących do przechowywania informacji, przy czym informację tę można zapisywać i odczytywać z dowolnego rejestru. W rzeczywistości rejestry są zastąpione tzw. matrycą pamięciową złożoną z możliwie prostych elementów pamięciowych. Pamięci RAM są z reguły budowane jako pamięci statyczne i dynamiczne MOS. W pamięci statycznej podstawową komórką przechowującą informację jest przerzutnik. Komórka taka składa się z około 6 tranzystorów. W pamięci dynamicznej natomiast informacja jest zgromadzona w postaci ładunku na kondensatorze a tranzystor służy tylko do wyprowadzenia lub wprowadzenia ładunku. Komórka taka zawiera mniej elementów jest więc tańsza niż pamięć statyczna. W związku z samoczynnym rozładowaniem się kondensatora zawartość pamięci musi być odświeżana. Pamięć ma trzy wejścia sterujące:

- CS (ang. chip select) - wybieranie modułu pamięci

- OE (ang. output enable) - sygnał odczytu

- WE (ang. write enable) - sygnał zapisu.

Ze względu na sposób ustalania zawartości pamięci ROM możemy podzielić na:

-pamięci programowane w procesie produkcji ROM

- pamięci programowane przez użytkownika przez przepalenie połączeń PROM

- pamięci reprogramowalne EPROM i EEPROM.

Pamięć ROM jest budowana zarówno techniką TTL (PROM), jak i MOS (EPROM)

Zawartość pamięci ROM jest ustalana w końcowym procesie produkcji. Zawartość pamięci PROM ustala użytkownik poprzez przepalenie połączeń między poszczególnym tranzystorami pamięci. Podczas programowania pamięci EPROM w rejon bramki jest wprowadzany ładunek, który może być usunięty przez naświetlanie pamięci promieniem ultrafioletowym.

UKŁAD DMA

Układ bezpośredniego dostępu do pamięci DMA jest specjalizowanym procesorem o stałym mikroprogramie, sterującym bezpośrednie przesyłanie danych między pamięcią a urządzeniem zewnętrznym, z pominięciem mikroprocesora. W celu zrealizowania takiego przesłania sterownik DMA musi zażądać od mikroprocesora zwolnienia magistral systemu. Gdy procesor wstrzyma swoje działanie, sterownik DMA może przejąć kontrolę nad magistralami i sterować przesyłanie informacji. Przesyłanie może całkowicie angażować system, blokując procesor, może być również przeplatane wykonywaniem rozkazów przez mikroprocesor. W drugim przypadku procesor zostaje wstrzymany na jeden cykl pamięci, aby umożliwić sterownikowi DMA przesłanie pojedynczego słowa. Zasadniczymi elementami układu DMA są liczniki adresów LA1 i LA2 oraz rejestr buforowy. Przesłanie jest realizowane w dwu cyklach: w pierwszym następuje odczytanie słowa z układu źródłowego adresowanego przez LA1 i przesłanie go do rejestru buforowego sterownika , w drugim - zapis tego słowa do układu odbiorczego adresowanego przez LA2. Przesyłanie takie umożliwia realizację przesłań nie tylko między urządzeniem zewnętrznym a pamięcią, ale również między dwoma obszarami pamięci lub dwoma urządzeniami zewnętrznymi, proste przetwarzanie informacjo podczas przesyłania, porównanie informacji pochodzącej z dwu źródeł. Sterownik DMA może pracować w dwu trybach, jako:

- układ podporządkowany

- układ nadrzędny.

W trybie podporządkowanym sterownik jest normalnym urządzeniem zewnętrznym, do którego mikroprocesor przesyła informację sterującą i odczytuje informację o jego stanie. W trybie nadrzędnym sterownik DMA wysyła informację do magistrali adresowej i sterującej, a więc steruje pozostałe elementy systemu mikroprocesorowego.

UKŁAD CZASOWY

Układ czasowy może służyć do:

- odmierzania czasu

- zliczania zewnętrznych impulsów podawanych na wejście systemu mikroprocesorowego.

Obie te funkcje mogą być realizowane programowo. Układ czasowy odciążając procesor od wykonywanie prostych, lecz czasochłonnych operacji, realizuje je sprzętowo. Układy czasowe są zazwyczaj używane w mikroprocesorowych układach automatyki i wchodzą w skład wszystkich mikrokomputerów jednoukładowych. Układ czasowy składa się zazwyczaj z licznika L, liczącego wstecz, rejestru okresu zliczania T, dzielnika częstotliwości D oraz rejestru sterującego C. Programowanie układu zliczania polega na wpisaniu okresu zliczania do rejestru T i słowa sterującego do rejestru C. Rejestr C określa m.in. czy układ będzie pracował jako licznik impulsów zewnętrznych, czy jako układ czasowy zliczający impulsy generatora wewnętrznego. Układy czasowe zawierają zwykle kilka liczników. Liczniki te mogą być łączone kaskadowo w celu zwiększenia pojemności lub zakresu odmierzanych czasów, bądź też mogą pracować niezależnie w różnych trybach.



Wyszukiwarka