Styk programowy MERA-MULTIX: Różnice pomiędzy wersjami

Z MERA 400 wiki
Przejdź do nawigacji Przejdź do wyszukiwania
(Utworzono nową stronę "Wersja: '''J'''<br/> Data: '''19.02.87''' = Wstęp = Styk software'owy MERA-MULTIX składa się z następujących elementów: * rozkazy IN, OU wysyłane do procesora...")
(Brak różnic)

Wersja z 09:37, 16 maj 2013

Wersja: J
Data: 19.02.87

Wstęp

Styk software'owy MERA-MULTIX składa się z następujących elementów:

  • rozkazy IN, OU wysyłane do procesora MULTIX,
  • przerwania zgłaszane do komputera MERA-400,
  • pole sterujące umieszczone w bloku nr 0 MERA,
  • bufory danych umieszczone w dowolnych blokach MERA.

Procesor komunikacyjny MULTIX przedstawia dla komputera MERA zbiór obiektów składający się z:

  • kanału MULTIX,
  • zbioru linii logicznych.

Linie logiczne wyróżnione są identyfikatorami od 0 do 255. Identyfikatory przydzielane są przez komputer MERA poleceniem "ustaw konfigurację". Zbiór identyfikatorów powinien być ciągły i zaczynać się od 0. Niespełnienie tych warunków spowoduje dodatkowe zapotrzebowanie na pamięć MULTIX-a.


Rozkazy

Rozkazy IN, OU wysyłane do procesora MULTIX mają wspólne cechy:

  • Q = 0
  • N/15/ = 0
  • N/11-14/ = nr kanału

Rozkazy te dzielą się na trzy grupy:

  • rozkazy kanałowe,
  • polecenia sterujące ogólne (dla kanału MULTIX),
  • polecenia sterujące liniowe (dla linii logicznej).

Rozkazy kanałowe

  • Typ: IN
  • N/0-2/ = 0
  • N/5-10/ = 0
  • Odpowiedź I/F: OK

Zeruj moduł

N/3-4/ = 00

Inicjuje zerowanie procesora MULTIX. Po zakończeniu zgłaszane jest przerwanie:

  • INSKA - procesor MULTIX jest niesprawny
  • IWYZE - procesor został wyzerowany.

Uwaga: każdy sygnał zerowania systemu (CLEAR, MCL, włączenie zasilania) działa identycznie jak rozkaz zeruj moduł.

Sprawdź istnienie modułu

N/3-4/ = 10

Podaj specyfikację przerwania

N/3-4/ = 01

Rozkaz ten jest wysyłany sprzętowo przy obsłudze przerwania. Specyfikacja składa się z numeru przerwania (bity 0-7) i identyfikatora linii (bity 8-15).

Polecenia sterujące ogólne

Odpowiedź I/F: OK lub EN.

Po EN należny powtórzyć polecenie.

Cofnij przerwanie niepokwitowane do kolejki

  • Typ: IN
  • N/0-2/ = 001
  • N/3-10/ = 0

Jeżeli jest zgłoszone przerwanie, którego specyfikacja nie została jeszcze pobrana, to zostaje ono ponownie umieszczone w kolejce przerwań.

Testuj

  • Typ: OU
  • N/0-2/ = 001
  • N/3-10/ = parametr testu
  • Informacja: adres pola testu

Program testujący zostaje przepisany do pamięci MULTIX i wykonany. Po poprawnym zakończeniu zgłaszane jest przerwanie IWYTE.

Ustaw konfigurację

  • Typ: OU
  • N/0-2/ = 101
  • Informacja: adres pola sterującego.

Przyporządkowane zostają linie logiczne do urządzeń dołączonych do MULTIX-a (linii fizycznych). Ustalone zostają podstawowe parametry linii. Po zakończeniu ustawiania konfiguracji zgłaszane jest przerwanie:

  • INKON - nie wykonano polecenia, bo były błędy w polu sterującym lub konfiguracja była już wcześniej ustawiona.
  • IUKON - ustawiono konfigurację
  • INKOT - nie wykonano polecenia, bo wystąpiły błędy transmisji MERA-MULTIX.

Uwaga: Ustawiona konfiguracja nie może być zmieniona aż do wyzerowania modułu.

Polecenia sterujące liniowe

  • Odpowiedz I/F: OK lub EN. Po EN należny powtórzyć polecenie.
  • N/3-10/ = identyfikator linii logicznej.

Każde polecenie potwierdzone przez OK kwitowane jest zgłoszeniem przerwania.

Dołącz linię

  • Typ: OU
  • N/0-2/ = 010
  • Informacja: adres pola sterującego.

Linia logiczna zostaje dołączona do programu. Polecenie "dołącz linię" musi poprzedzać polecenie/a transmisyjne.

Pokwitowanie:

  • IDOLI - dołączono linię
  • INDOL - nie doliczono bo blednę parametry lub linia już była dołączona
  • INKDO - brak linii w konfiguracji

Odłącz linię

  • Typ: IN
  • N/0-2/ = 010

Linia logiczna zostaje usunięta z programu. Linia fizyczna zostaje wyzerowana.

Pokwitowanie:

  • IODLI - odłączono linię
  • INODL - linia nie zakończyła transmisji, nie odłączono
  • INKOD - brak linii w konfiguracji

Podaj status linii

  • Typ: OU
  • N/0-2/ = 011
  • Informacja: adres statusu

Status zostaje umieszczony pod wskazanym adresem.

Pokwitowanie:

  • ISTRE - podano status
  • INSTR - odrzucono polecenie (poprzednie polecenie "podaj status" jest w toku)
  • INKST - brak linii w konfiguracji

Przesyłaj

  • Typ: OU
  • N/0-2/ = 100
  • Informacja: adres pola sterującego.

Rozpoczynana jest transmisja w linii.

Pokwitowanie:

  • IETRA - zakończono przesyłanie poprawnie
  • ITRER - zakończono przesyłanie z błędami
  • INTRA - odrzucono polecenie (błędne parametry)
  • INKTR - brak linii w konfiguracji
  • ITRAB - zerwano transmisje poleceniem "zerwij"

Zerwij przesyłanie

  • Typ: IN
  • N/0-2/ = 011

Przesyłanie zostaje zerwane.

Pokwitowanie:

  • IABTR - wykonano zerwanie
  • INABT - nie ma transmisji w tej linii
  • INKAB - brak linii w konfiguracji

Przerwania

Przerwania zgłaszane przez MULTIX dzielą się na 3 grupy:

  • przerwania specjalne
  • przerwania ogólne
  • przerwania liniowe

Specyfikacja przerwania, pobierana rozkazem "podaj specyfikację przerwania", składa się z numeru przerwania (bity 0-7) oraz identyfikatora linii (bity 8-15). Identyfikator linii ma znaczenie tylko dla przerwań liniowych. Przerwanie specjalne kierowane jest do obu procesorów MERA natychmiast (bez kolejkowania) i bez sprawdzania odpowiedzi I/F. Przerwania ogólne i liniowe umieszczane są w kolejce przerwań. Przerwanie ogólne kierowane jest do tego procesora, który przysłał polecenie będące przyczyna przerwania. Powyższa zasada dotyczy także przerwań "brak linii w konfiguracji". Przerwanie liniowe (prócz "brak linii w konfiguracji") kierowane jest do tego procesora, który przysłał ostatnie polecenie dla danej linii. Przerwania z kolejki zgłaszane są od najstarszego (najdłużej oczekującego), z tym ze przerwania do procesorów zablokowanych są omijane (ale nie usuwane z kolejki). Zablokowanie procesora dla przerwań następuje po braku jego odpowiedzi na zgłoszenie przerwania. Odblokowanie procesora następuje po otrzymaniu od niego dowolnego polecenia sterującego. Zgłoszenie następnego przerwania odbywa się po pobraniu specyfikacji poprzedniego przerwania (rozkaz "podaj specyfikacje") lub po poleceniu "cofnij przerwanie niepokwitowane do kolejki".

Przerwania specjalne

Oznaczenie Nr Opis Proponowane działanie
INSKA 1 niesprawny kanał powtórzyć zerowanie, gdy to nie pomoże - testować i naprawić moduł
IWYZE 2 wykonano zerowanie podjąć prace zaczynając od polecenia "ustaw konfiguracje"
IWYTE 3 wykonano test podjąć pracę zaczynając od rozkazu "zeruj moduł"

Przerwania ogólne

Oznaczenie Nr Opis Zgłaszane po poleceniu Uwagi o przyczynach
INKON 4 odrzucono "ustaw konfigurację" ustaw konfigurację błędy w polu sterującym, za mała pamięć, konfiguracja już ustawiona
IUKON 5 ustawiono konfigurację ustaw konfigurację
INKOT 6 nie wykonano "ustaw konfigurację" ustaw konfigurację błędy transmisji MERA-MULTIX

Przerwania liniowe

Oznaczenie Nr Opis Zgłaszane po poleceniu Uwagi o przyczynach
ISTRE 7 podano status podaj status
INSTR 8 odrzucono "podaj st." podaj status poprzednie "podaj status" jest w toku wykonywania
INKST 9 brak linii w konfig. podaj status
IDOLI 10 dołączono linię dołącz linię
INDOL 11 odrzucono "dołącz linię" dołącz linię błędy w polu, linia dołączona, poprzednie "dołącz" jest w toku
INKDO 12 brak linii w konfig. dołącz linię
IETRA 13 zakończono transmisję poprawnie przesyłaj
INTRA 14 odrzucono "przesyłaj" przesyłaj błędy w polu, linia nie dołączona, poprzednie przesyłanie w toku
INKTR 15 brak linii w konfig. przesyłaj
ITRER 16 zakończono transmisję z błędem przesyłaj wykryto błąd parzystości lub inny
ITRAB 19 zerwano przesyłanie przesyłaj zgodnie z poleceniem "zerwij"
IABTR 20 wykonano zerwij zerwij przesyłanie
INABT 21 nie wykonano zerwij zerwij brak transmisji w linii
INKAB 22 brak linii w konfig. zerwij przesyłanie
IODLI 23 odłączono linię odłącz linię
INODL 24 nie odłączono linii odłącz linię transmisja w linii
INKOD 25 brak linii w konfig. odłącz linię
INPAO 32 brak trans. MERA-MULTIX dowolne polecenie liniowe uszkodzenie sprzętu
IPARE 33 błąd parzystości MERA-MULTIX dowolne polecenie liniowe uszkodzenie sprzętu
IOPRU 34 zgłoszenia operatora urządzenia dowolne polecenie liniowe