3012
edycji
Nie podano opisu zmian |
|||
Linia 251: | Linia 251: | ||
= Polecenia = | = Polecenia = | ||
Rozkazy wejścia-wyjścia wydawane przez jednostkę centralną dzielą się z punktu widzenia MULTIX-a na trzy grupy: | |||
* rozkazy kanałowe, | |||
* polecenia sterujące ogólne, | |||
* polecenia sterujące liniowe. | |||
W zależności od typu polecenia, jest ono przetwarzane w różnych obszarach MULTIX-a. | |||
== Rozkazy kanałowe == | |||
Rozkazy kanałowe wymagają natychmiastowej odpowiedzi niezależnie od tego, czym aktualnie zajęty jest procesor MULTIX-a. Dlatego realizowane są sprzętowo, na styku MULTIX-interfejs MERY-400. Należą do nich: | |||
# Zerowanie - realizowane sprzętowo przez reset procesora MULTIX-a i wszystkich układów podległych. MULTIX w ten sam sposób musi reagować na zerowanie komendą IN/OU, programowe (MCL) i sprzętowe (CLEAR). To znaczy, że polecenie zerowania musi być dekodowane sprzętowo "na interfejsie" i skutkować sprzętowym resetem. | # Zerowanie - realizowane sprzętowo przez reset procesora MULTIX-a i wszystkich układów podległych. MULTIX w ten sam sposób musi reagować na zerowanie komendą IN/OU, programowe (MCL) i sprzętowe (CLEAR). To znaczy, że polecenie zerowania musi być dekodowane sprzętowo "na interfejsie" i skutkować sprzętowym resetem. | ||
# Sprawdź istnienie kanału - rezultatem tego polecenia jest wysterowanie | # Sprawdź istnienie kanału - rezultatem tego polecenia jest wysterowanie odpowiedzi OK na szynie magistrali. | ||
# Podaj specyfikację przerwania - rezultatu tego polecenia oczekuje się natychmiast po jego wykonaniu (w procedurze obsługi przerwania) | # Podaj specyfikację przerwania - rezultatu tego polecenia oczekuje się natychmiast po jego wykonaniu (w procedurze obsługi przerwania). | ||
== Polecenia ogólne == | == Polecenia ogólne == | ||
Odbiór polecenia ogólnego realizowany jest sprzętowo: | |||
* polecenie sterujące i jego argument zapamiętywane są w rejestrach | |||
* do procesora wysyłane jest przerwanie IPOST (5.5) | |||
* jeśli procesor jest gotów obsłużyć przerwanie, jednostka centralna MERY-400 dostaje odpowiedź OK, a procesor MULTIX-a odczytuje zawartość rejestrów zawierających polecenie i rozpoczyna jego obsługę. | |||
* jeśli przerwanie nie może zostać przyjęte, to polecenie nie może zostać obsłużone i j.c. MERY-400 dostaje odpowiedź EN. | |||
Polecenia ogólne dotyczą sterowania pracą MULTIX-a ralizowane są programowo i należą do nich: | |||
# Ustaw konfigurację - jest to pierwsze polecenie, jakie MULTIX może przyjąć. Zanim nie zostanie poprawnie zakończone, żadne polecenie liniowe nie może zostać wykonane. W trakcie jego realizacji przerwania są zablokowane, więc każde kolejne polecenie "ustaw konfiguracje" wydane przed zakończeniem bieżącego zakończy się sygnałem EN. | # Ustaw konfigurację - jest to pierwsze polecenie, jakie MULTIX może przyjąć. Zanim nie zostanie poprawnie zakończone, żadne polecenie liniowe nie może zostać wykonane. W trakcie jego realizacji przerwania są zablokowane, więc każde kolejne polecenie "ustaw konfiguracje" wydane przed zakończeniem bieżącego zakończy się sygnałem EN. | ||
Linia 269: | Linia 282: | ||
# Cofnij przerwanie niepokwitowane do kolejki - dotyczy wyłącznie kolejki przerwań do MERY-400 i musi zostać wykonane podczas gdy kolejka nie zmienia swojego stanu. | # Cofnij przerwanie niepokwitowane do kolejki - dotyczy wyłącznie kolejki przerwań do MERY-400 i musi zostać wykonane podczas gdy kolejka nie zmienia swojego stanu. | ||
== Polecenia | == Polecenia liniowe == | ||
Polecenia kanałowe są przyjmowane | Polecenia kanałowe są przyjmowane na zasadach takich samych jak polecenia ogólne. Wynikiem przyjęcia polecenia może być zgłoszenie zadania odpowiadającego poleceniu, bądź jego odrzucenie (bo linia nie istnieje, polecenie jest już wykonywane, ...). Po zgłoszeniu zadania obsługa przerwania się kończy, a zadanie podjąć może manager zadań (główna pętla programowa MULTIX-a). | ||
= Zadania liniowe = | = Zadania liniowe = |