Magistrale i sygnały sterujące mikroprocesora
Mikroprocesor komunikuje się z pozostałymi elementami systemu za pomocą magistral. Są to magistrala danych, magistrala adresowa i magistrala sterująca.
Szerokość magistrali danych jest z reguły dostosowana do długości operendów dla jednostki arytmetyczno-logicznej. Zwiększenie szerokości magistrali danych oznacza zwiększenie mocy obliczeniowej z powodu operowania na dłuższych argumentach jak i z powodu możliwości przesyłania większych ilości informacji.
Szerokość magistrali adresowej ma wpływ na ilość pamięci ponieważ im szersza magistrala adresowa tym więcej komórek adresowych może system zapamiętać - system dysponuje więc większą pamięcią.
Jednym z podstawowych zadań mikroprocesora jest sterowanie pracą pozostałych elementów systemu takich jak pamięć czy układy wejścia/wyjścia. W tym celu procesor posiada magistralę sterującą, będącą zestawem sygnałów wchodzących i wychodzących z procesora. Sygnały wchodzące informują o stanach urządzeń natomiast wychodzące sterują pracą tych układów - czyli powodują wykonanie określonej operacji.
RESET
CLK magistrala sterująca
RDY#
M/IQ # Definicja cyklu
D/C# magistrali
W/R#
HOLD
Sterowanie dostępem
HLDA do magistrali
INTR
NMI przerwania
sprzętowe
zadania poszczególnych sygnałów magistrali sterującej:
RESET - restart mikroprocesora - wprowadzenie wartości początkowych
CLK - przebieg taktujący(zegar) pracę procesora
RDY# - sygnał gotowości układów współpracujących z procesorem. Znak # oznacza że sygnałem gotowości jest 0
M/IO#- sygnał oznaczający operację dotyczącą pamięci(1) lub układów wejścia-wyjścia(0)
D/C#- sygnał oznaczający obecność na magistrali danych danej (1) lub kodu rozkazu (0)
W/R# - operacja zapisu (1) lub odczytu (0)
HOLD - sygnał żądania przejścia procesora w stan zawieszenia (następuje przełączenie magistral w stan wysokiej impedancji). Pozwala to innemu zarządcy magistral (bus master) przejąć kontrolę nad magistralą (np. sterownik karty graficznej czy sieciowej)
HLDA - sygnał potwierdzenia przejścia procesora w stan zawieszenia
INTR - sygnał żądania przerwania maskowanego
NMI - sygnał zgłoszenia przerwania niemaskowanego
Układy wejścia/wyjścia
Układy wejścia/wyjścia pośredniczą w wymianie informacji pomiędzy systemem mikroprocesorowym i pamięcią z jednej strony a zewnętrznymi urządzeniami współpracującymi zwanymi urządzeniami peryferyjnymi z drugiej. Urzadzenia te mogą służyć do wprowadzenia danych, wyprowadzenia danych, przechowywania informacji lub mogą być układami wykonawczymi np. dyski, klawiatura, monitor.
Potrzeba pośrednictwa wynika z następujących faktów:
Istnieją różnice w szybkości działania urządzeń
Urządzenie wymaga podania informacji w ściśle określonym formacie
Układy wejścia/wyjścia mogą być przeznaczone do współpracy z konkretnym urządzeniem (karta graficzna - monitor, streownik dysku twardego - napęd dysku twardego) lub mogą współpracować z wieloma urządzeniami (np. interfejs szeregowy RS, sterownik przerwań)
Dla systemu mikroprocesorowego układ wejścia/wyjścia widoczny jest jako rejestr lub zespół rejestrów o określonych adresach oraz pewnien zestaw sygnałów sterujących.
Układy wejścia/wyjścia mogą być współadresowalne z pamięcią operacyjną lubmogą być izolowane
W układzie współadresowalnym układy we/wy traktowane są jako zespół rejestrów i wybierane przy pomocy adresów. Blok układów we/wy będzie posiadał więc wejście adresowe i wejście sterujące zapis/odczyt. Sygnały sterujące są wspólne dla pamięci i układów we/wy. Układy współadresowalne wymagają wydzielenia części przestrzeni adresowej dla adresów układów we/wy.
W układzie izolowanym sygnały sterujące są dla pamięci i układów we/wy są rozdzielone. Za ich pomocą wybierany jest obiekt na którym wykonywane są operacje. Również przestrzenie adresowe pamięci i układów we/wy są rozdzielone.
W komputerach IBM/PC stosowane są oba typy chociaż zazwyczaj stosuje się układy izolowane. Przykładem układu współadresowanego może być karta graficzna - zawartość obrazu wyświetlanego na ekranie umieszczana jest w tzw buforze wideo który jest blokiem pamięci RAM umieszczonym w określonym miejscu przestrzeni adresowej pamięci operacyjnej. Przykładem układu izolowanego może być sterownik dysku twardego w standardzie IDE który widziany jest przez system jako zestaw rejestrów o adresach zarezerwowanych
procesor