główna
technologie
indeks tematyczny
indeks alfabetyczny

Z80 PIO

Z80 PIO jest programowalnym układem wy-wy, w którego skład wchodzą dwa równoległe porty PA i PB wraz liniami sterującymi. Układ ten może być wykorzystany w systemach opartych na mikroprocesorze Z80 bez użycia żadnych dodatkowych układów logicznych.

Podstawowe cechy układu:

Struktura układu Z80 PIO.


Układ składa się z bufora we-wy, wewnętrznego układu sterującego, portów PA i PB wraz z liniami sterującymi oraz układem generacji przerwań (rys poniżej). Bufor we-wy umożliwia bezposrednie łączenie Z80 PIO z Z80

Układ logiczne każdego z portów składa się z szesciurejestrów:

Do 2 bitowego rej. trybu pracy wpisywana jest przezmikroprocesor informacja w celu ustalenia trybu pracy. Przekazywanie danych pomiędzy urządzeniem peryferyjnym a jednostkącentralną odbywa się poprzez rej danych (wej i wyj). Dane mogą być wpisywane i odczytywane przez mikroprocesor w dowolnym czasie. Sterowanie transmisją danych między PIO i urządzeniem zewnętrznym umożliwiają linie związane z każdym z portów:

8 bitowy rej. maski i 8 bitowy rej wyboru wejścia i wyjścia używane są tylko w trybie bitowym. W trybie tym każda z 8 linii portu PA może być zaprogramowana jako wejscie lub wyjście. Rej maski służy do okreslenia, które z linii we-wy portu mogą generować przerwania.

2 bitowy rej. kontroli maskowania okresla jaki stan (wysoki lub niski) ma spowodować wygenerowanie przerwania oraz czy ma ono nastąpić w wyniku zmian na jednej czyna wszystkich niezamaskowanych liniach.

Opis wyprowadzeń.

Tryby pracy.

Port PA może pracować w jednym z czterech trybów pracy: wyjsciowym (tr. 0), wejsciowym (tr. 1), dwukierunkowym (tr. 2), bitowym (tr 3).
Port PB może pracować w trybach0, 1, 3. Wybór trybu pracy odbywa się poprzez ustalenie dwóch najbardziej znaczących bitów słowa sterującego i wpisanie go do rejestru trybu pracy okreslonego portu. 00 (D7D6) - tryb0, 01 tryb 1, 10 tryb 2, 11 tryb 3.

Zerowanie układu.

Układ Z80 PIO jest zerowany automatycznie po włączeniu zasilania. Wyzerowanie układu powoduje:

Uklad ten nie ma standardowego wejścia RESET. Jego zerowanie można uzyskać w wyniku pojawienia się stanu niskiego na wejściu M1 przy jednoczesnym pozostawieniu wejść RD i IORQ w stanie wysokim

System przerwań układu Z80 PIO.

Wewnętrzny uklad generacji przerwań umożliwia jednostece centralnej wielopoziomową obslugę przerwań według priorytetu określonego fizyczną lokacją ukladu. Przerwania generowane są na skutek osiągnięcia zdefiniowanego wcześniej stanu logicznego przez jedną lub wszystkie niezamaskowane linie we-wy portu. W systemie przerwań układu Z80 PIO port A ma wyższy priorytet. W trybie wyjściowym, wejściowym i dwukierunkowym przerwania mogą być generowane zawsze, gdy żąda tego urządzenie peryferyjne połączone z PIO (zmiana STB na wysoki). Natomiast w trybie bitowym przerwania są generowane wtedy, gdy warunki określone przez rejestr maski i rejestr kontroli maskowania są spełnione. Po otrzymaniu sygnalu przyjęcia przerwania (stany niskie IORQ i M1) z CPU, uklad PIO żądający obslugi przerwania wysyla na magistrale danych 8-bitowy wektor. Wektor ten jest młodszym bajtem 16-bitowego adresu obszaru pamięci, w którym umiejscowiono adres podprogramu obsługi przerwania. Starszy bajt adresu powinien znajdować się w rejestrze I mikroprocesora. Najmniej znaczący bit wektora przerwania jest automatycznie ustawiany na 0. Wektory przerwań obu portów są niezależne. Uklad PIO odbiera kod rozkazu RETI bezpośrednio z magistrali danych. Dzięki temu wszystkie układy serii Z80 są informowane o zakończeniu obsługi przerwania.

przygotował: Przemysław Siódemak (na podstawie "Układy mikroprocesorowe Z80")


główna | technologie | indeks tematyczny | indeks alfabetyczny