Zegar czasu rzeczywistego Amepolu

Z MERA 400 wiki
Wersja z dnia 14:53, 1 kwi 2013 autorstwa Amo (dyskusja | edycje) (Utworzył nową stronę „= Opis funkcjonalny = Zegar czasu rzeczywistego z loaderem systemu opracowany dla m.c. MERA-400 ma za zadanie usprawnienie czynności operatorskich podczas uruchami...”)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacji Przejdź do wyszukiwania

Opis funkcjonalny

Zegar czasu rzeczywistego z loaderem systemu opracowany dla m.c. MERA-400 ma za zadanie usprawnienie czynności operatorskich podczas uruchamiania systemu. Układ składa się z dwóch części:

  • z części zegarowej, która ma za zadanie odliczanie czasu i umożliwienie odczytania bieżącego czasu i daty przez procesor,
  • z części dotyczącej przechowywania loadera systemu w pamięci PROM i jego odczytu do pamięci operacyjnej przez procesor.

Obie te części korzystają ze wspólnego dekodera rozkazów, który umożliwia na podstawie kodu operacji selektywną współpracę procesora z jednym lub drugim układem. Układ pracuje w kanale znakowym minikomputera w miejscu przeznaczonym dla jednostek sterujących urządzeń znakowych na dowolnej z ośmiu pozycji, która określa jego nymer.

Operacje wykonywane przez układ zegar + loader

Procesor współpracuje z opisywanym układem przy pomocy rozkazu IN - wykonującego operację pobrania informacji z urządzenia. Argument efektywny rozkazu niesie informację określającą:

Bity argumentu Znaczenie
0-5 kod operacji
6 kod niewykorzystany
8-10 numer urządzenia w kanale znakowym
11-14 numer kanału znakowego
15 = 0 (bit określający rozkaz wysłany do kanału

Zależnie od kodu operacji zawartego na bitach 0-6 urządzenie może wykonywać operacje przedstawione w tabeli:

Kod operacji Treść operacji Odpowiedź
1xxxxx Czytaj znak z pamięci PROM zawierającej loader systemu.
R)A)8-15 := ZNAK
OK
01xxxx Ustaw bit HS w rejestrze trybu pracy zegara.
R)A)0-15 := STAN ZEGARA
OK
00xxxx Zeruj bit HS.
R)A)0-15 := STAN ZEGARA
OK
0x1xxx Ustaw bit MS w rejestrze trybu pracy zegara.
R)A)0-15 := STAN ZEGARA
OK
0x0xxx Zeruj bit MS.
R)A)0-15 := STAN ZEGARA
OK
0xx0xx Ustaw bit DR w rejestrze trybu pracy zegara.
R)A)0-15 := STAN ZEGARA
OK
0xx1xx Zeruj bit DR.
R)A)0-15 := STAN ZEGARA
OK
0xxx0x Ustaw bit TR w rejestrze trybu pracy zegara.
R)A)0-15 := STAN ZEGARA
OK
0xxxx1 Odblokuj przerwania zegarowe.
R)A)0-15 := STAN ZEGARA
OK
0xxxx0 Zablokuj przerwania zegarowe.
R)A)0-15 := STAN ZEGARA
OK

Poszczególne operacje dotyczące zegara (bit N0=0) można sumować przez ustawienie odpowiednich bitów N1-N5. Urządzenie zgłasza do procesora przerwania zegarowe po uprzednim ich odblokowaniu. Specyfikacja tego przerwania podawana na szyny P-DTIN 5-7 ma wartość 0.

Budowa i działanie układu zegara z loaderem

Styk urządzenia z kanałem znakowym

Wykorzystywane są następujące sygnały interface'u znakowego:

  • P-Fi - strob operacji pobrania
  • P-OK - potwierdzenie wykonania operacji
  • P-AD0-5 - kod operacji
  • P-DTIN0-15 - informacja urządzenia
  • P-IN - zgłoszenie przerwania
  • P-PSPi - żądanie specyfikacji przerwania
  • P-CL - zerowanie ogólne

Indeks "i" związany jest z numerem fizycznym urządzenia zależnym od miejsca zajmowanego w kanale.

Operacje wykonywane przez urządzenie

Urządzenie odbiera z kanału znakowego strob -P-F oraz sygnały -P-AD0-5 zawierające kod operacji i może wykonać następujące operacje pobrania (w nawiasach podano kod operacji odpowiadający bitom -PAD0-5, "x" oznacza dowolną wartość bitu).