R3-1.DOC

(551 KB) Pobierz
Szablon dla tlumaczy

Rozdział 3.
Mikroprocesor i jednostka centralna

Jednostka centralna jest podstawową częścią każdego mikrokomputera. Zawiera ona mikroprocesor oraz najczęściej pewne układy wspomagające, jak np.:

·         bufory magistral,

·         układ generowania sygnałów zegarowych,

·         układ zerowania,

·         układ pracy krokowej.

Dodatkowo jednostka centralna może być wyposażona także w inne układy, charakterystyczne dla użytego typu mikroprocesora.

Jednostka centralna Z-80

Z-80 należy do grupy mikroprocesorów 8-bitowych. Został on skonstruowany w roku 1976 przez firmę Zilog, zawiera około 8 500 tranzystorów i wykonuje 158 rozkazów. Z-80 można traktować jako rozwinięcie mikroprocesora Intel 8080, niemal w pełni z nim zgodne na poziomie kodu wynikowego.

Mikroprocesor charakteryzuje się m. in. rozdzieloną przestrzenią adresową pamięci i wejścia-wyjścia. Adres pamięci jest zawsze 16-bitowy, natomiast wejścia-wyjścia 8- lub 16-bitowy zależnie od sposobu adresowania.

Opis wyprowadzeń Z-80

Wśród wyprowadzeń mikroprocesora Z-80 można wyróżnić 16-bitową magistralę adresową A, 8-bitową magistralę danych D oraz liczne sygnały sterujące (rysunek 3.1Rysunek 1). Stan aktywny wszystkich sygnałów sterujących to „0”, a ich znaczenie tych sygnałów jest następujące:

·         wyjście informujące, że mikroprocesor realizuje cykl pobrania kodu rozkazu;,

·         wyjście żądania dostępu do przestrzeni adresowej pamięci;,

·         wyjście żądania dostępu do przestrzeni adresowej wejścia-wyjścia;,

·         wyjście żądania odczytu;,

·         wyjście żądania zapisu;,

·         wejście żądania przejęcia magistrali, np. przez sterownik bezpośredniego dostępu do pamięci;,

·         wyjście potwierdzenia zwolnienia magistrali przez procesor wskutek wystąpienia sygnału ;,

·         wejście przerwania maskowalnego;,

·         wejście przerwania niemaskowalnego;,

·         wejście żądania wydłużenia cyklu maszynowego, używane m. in. przy współpracy z powolnymi urządzeniami oraz do realizacji pracy krokowej;,

·         wyjście informujące o tym, że mikroprocesor znajduje się w stanie zatrzymania (wykonuje rozkaz HLT);,

·         wejście zerowania;,

·         wyjście informujące, że na liniach A7-A0 znajduje się adres odświeżanego wiersza pamięci dynamicznej;,

·         CLK wejście zegarowe.

Rysunek 3.1. 1. Wyprowadzenia mikroprocesora Z-80

Buforowanie wyprowadzeń

Z-80 charakteryzuje się niską obciążalnością wyprowadzeń do każdego wyjścia można podłączyć tylko jedno wejście TTL. Z tego powodu w większości zastosowań konieczne jest „otoczenie” mikroprocesora buforami. Rozpatrywany przykład (rysunek 3.2Rysunek 2) umożliwia zastosowanie jednostki centralnej w układach wykorzystujących mechanizm bezpośredniego dostępu do pamięci (DMA).

Rysunek 3.2. 2. Buforowanie wyprowadzeń mikroprocesora Z-80

Magistralę adresową można buforować przez dwa 8-bitowe bufory jednokierunkowe, np. 74244 lub 74541. W praktycznych zastosowaniach lepszy jest układ 74541, ponieważ jego wejścia znajdują się po jednej stronie obudowy, a wyjścia po drugiej.

Również sygnały sterujące można wzmocnić za pomocą takich buforów. Część sygnałów powinna być blokowana podczas realizacji cykli DMA, natomiast pozostałe mogą lub powinny być stale aktywne. Do grupy sygnałów blokowanych należą ,, i , ponieważ są one wykorzystywane przez sterownik DMA do adresowania urządzeń, między którymi wymieniane są dane. Pozostałe sygnały, tj. , i  nie są potrzebne do realizacji cyklu DMA, natomiast informuje sterownik DMA o możliwości przejęcia magistrali i w związku z tym musi zawsze być dostępny na zewnątrz mikroprocesora. Z tych rozważań wynika, że najodpowiedniejszym układem buforującym będzie 74244.

Bufor magistrali danych musi umożliwiać przesył danych w obie strony, zatem odpowiednim układem jest tu 74245. Przyjmijmy, że od strony procesora znajdzie się strona „A” bufora. Podczas odczytu dane będą więc przesyłane w kierunku B ® A, zatem wejście określające kierunek przesyłu powinno przyjąć wtedy stan niski. Warunek ten można spełnić przez dołączenie tego wejścia do sygnału .

Podczas realizacji cyklu DMA wyjścia buforów powinny przejść w stan wysokiej impedancji, a więc ich wejścia bramkujące powinny być w stanie logicznym „1”. Ponieważ przez cały czas trwania cyklu DMA aktywny jest sygnał (ma wówczas wartość „0”), może on posłużyć do blokowania buforów, konieczna jest jednak zmiana jego stanu logicznego na przeciwny.

Generator sygnału zegarowego i układ zerowania

Mikroprocesor Z-80 wymaga sygnału zegarowego, którego maksymalna częstotliwość wynosi od 2,5 do 8 MHz. Przykładowy układ (rysunek 3.3Rysunek 3) wykorzystuje oscylator 10 MHz. Do wygenerowania podstawowego przebiegu wykorzystamy generator oparty nao dwóchie tzw. bramkachi zlinearyzowanyche, w których wejście jest połączone z wyjściem poprzez rezystor 330 W. Generator taki zapewnia dużą stabilność częstotliwości. Ponieważ częstotliwość oscylatora wynosi 10 MHz, konieczne jest podzielenie jej przez 4. Podział ten realizowany jest w dwóch przerzutnikach synchronicznych typu D uzyskujemy w ten sposób częstotliwość 2,5 MHz. Podział częstotliwości można uzyskać także przez wykorzystanie licznika.

Mikroprocesor Z-80 wymaga, aby sygnał zegarowy na wejściu CLK miał nieco inne poziomy napięć niż standardowy przebieg TTL. Wymaganie to można spełnić przez dołączenie bramki wraz z rezystorem podciągającym o wartości 330 W.

Rysunek 3.3. 3. Generator sygnału zegarowego i zerowania dla mikroprocesora Z-80

Procesor powinien być wyzerowany w dwóch przypadkach:

·         po włączeniu zasilania,

·         na swskutek interwencji użytkownika (np. po naciśnięciue przycisku).

Przykładowy układ (rysunek 3.3Rysunek 3) realizuje obie funkcje. Po włączeniu zasilania następuje ładowanie kondensatora Cx poprzez rezystor Rx. Dopóki kondensator nie będzie odpowiednio naładowany, na wejściu bramki będzie znajdował się stan niski, a więc sygnał będzie miał wartość logiczną „0”. Po naładowaniu kondensatora sygnał przejdzie w stan nieaktywny i zerowanie zakończy się.

Ręczne zerowanie jest możliwe przez wciśnięcie przycisku Kx, w następstwie czego następujektóre powoduje podanie „0” logicznego na wejście bramki i w konsekwencji wygenerowanie sygnału .

Układ pracy krokowej

W początkowym okresie konstrukcji układu mikroprocesorowego przydatny może być mechanizm pracy krokowej. W przypadku mikroprocesora Z-80 umożliwia on bowiem zatrzymywanie realizacji programu nawet w trakcie każdego cyklu maszynowego. Dzięki takiemu rozwiązaniu można dowolnie długo obserwować stany poszczególnych sygnałów w układzie.

W zaprezentowanym układzie (rysunek 3.4Rysunek 4) przyczyną zatrzymania procesora może być dowolny cykl maszynowy (przełącznik K1 w położeniu 2.) lub tylko cykl pobrania kodu rozkazu. Położenie 3. przełącznika oznacza wyłączenie pracy krokowej.

Rysunek

Na rysunku w napisach „K2 — krok” i „K1 — tryb pracy układu” powinny być naniesione myślniki, a także spacje przed nimi i po nich.

3.4. 4. Układ pracy krokowej dla mikroprocesora Z-80

Stan „0” sygnału A oznacza, że realizowany jest cykl pobrania kodu rozkazu. Podczas tego cyklu aktywne są sygnały i  mikroprocesora Z-80.

Stan „0” sygnału B oznacza, że realizowany jest cykl przyjęcia przerwania. Podczas tego cyklu aktywne są sygnały i  mikroprocesora Z-80.

Stan „0” sygnału C oznacza, że realizowany jest cykl odczytu lub zapisu pamięci lub układów wejścia-wyjścia. Podczas tego cyklu aktywne są sygnały lub oraz  lub mikroprocesora Z-80.

Stan „0” sygnału D oznacza, że realizowany jest cykl zatrzymania (HALT), podczas którego aktywny jest sygnał mikroprocesora.

Wystąpienie zbocza narastającego na wejściu C przerzutnika powoduje wpisanie do niego „0” logicznego, wygenerowanie sygnału i w konsekwencji zatrzymanie realizacji programu. Wykonanie kroku jest możliwe przez naciśnięcie przycisku K2. Ponieważ wejście przerzutnika jest asynchroniczne, konieczne jest zastosowanie układu czasowego.

Jednostka centralna 8048

8048 należy do grupy 8-bitowych mikrokomputerów jednoukładowych. Jest to pierwszy układ tego typu, zaprojektowany w roku 1976 w firmie Intel. Jest on w stanie zaadresować do 4 KB pamięci programu (adres 12-bitowy) oraz 256 B wewnętrznej lub zewnętrznej pamięci danych (adres 8-bitowy). Układ ten zawiera:

·         8-bitową jednostkę centralną,

·         wewnętrzną pamięć programu o ...

Zgłoś jeśli naruszono regulamin