Pamięć MEGA: Różnice pomiędzy wersjami

Przejdź do nawigacji Przejdź do wyszukiwania
brak opisu edycji
Nie podano opisu zmian
 
(Nie pokazano 11 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 1: Linia 1:
<1987.04.09>
[[File:ME-DM-400-v1-front.jpg|thumb|Pakiet nośnika danych ME-DM-400 o pojemności 512ksłów ([[:File:ME-DM-400-v1-back.jpg|rewers]])]]
 
[[File:ME-GA-400-front.jpg|thumb|Pakiet ME-GA-400 ([[:File:ME-GA-400-back.jpg|rewers]])]]
 
[[File:ME-GI-400-front.jpg|thumb|Pakiet ME-GI-400 ([[:File:ME-GI-400-back.jpg|rewers]])]]
[[File:ME-BU-400-front.jpg|thumb|Pakiet zasilania bateryjnego ME-BU-400 ([[:File:ME-BU-400-back.jpg|rewers]])]]
= Wprowadzenie =
= Wprowadzenie =


Linia 31: Linia 32:


* pamięć alokacji PAL dla całej przestrzeni adresowej MERA-400,
* pamięć alokacji PAL dla całej przestrzeni adresowej MERA-400,
* nośnik informacji PAO o pojemności od 128 k do 1024 k slow,
* nośnik informacji PAO o pojemności od 128 k do 1024 k słów,
* pamięć stała PAS o pojemności 4 k slow dostępna pod adresem logicznym (0,017xxxx).
* pamięć stałą PAS o pojemności 4 k słów dostępną pod adresem logicznym (0,017xxxx).
    
    
Pamięć MEGA może występować w systemie razem z innymi modułami pamięci np. z pamięcią ferrytowa, drutowa itd. Pamięć MEGA jest umownie zorganizowana w moduły, każdy o pojemności 64 k czyli zawierającymi po 16 kwantów.
Pamięć MEGA może występować w systemie razem z innymi modułami pamięci np. z pamięcią ferrytową, drutową itd. Pamięć MEGA jest umownie zorganizowana w moduły, każdy o pojemności 64 k czyli zawierającymi po 16 kwantów.


== Pamięć alokacji PAL ==
== Pamięć alokacji PAL ==
    
    
Pamięć alokacji pamięci MEGA przechowuje odwzorowanie dla wszystkich adresów logicznych. Ma pojemność 256 slow 9-cio bitowych. Przed działaniem pamięci należy zapisać wszystkie pozycje pamięci PAL.
Pamięć alokacji pamięci MEGA przechowuje odwzorowanie dla wszystkich adresów logicznych. Ma pojemność 256 słów 9-cio bitowych. Przed działaniem pamięci należy zapisać wszystkie pozycje pamięci PAL.


Zapis do pamięci PAL wykonuje rozkaz ALOKUJ (OU,N<sub>15</sub>=1, Q=0). Adres logiczny przesyłany jest w pierwszym argumencie rozkazu:
Zapis do pamięci PAL wykonuje rozkaz ALOKUJ (OU,N<sub>15</sub>=1, Q=0). Adres logiczny przesyłany jest w pierwszym argumencie rozkazu:
{| class="wikitable" style="text-align: center;"
| R<sub>0</sub> || R<sub>1</sub> || R<sub>2</sub> || R<sub>3</sub> || R<sub>4</sub> || R<sub>5</sub> || R<sub>6</sub> || R<sub>7</sub> || R<sub>8</sub> || R<sub>9</sub> || R<sub>10</sub> || R<sub>11</sub> || R<sub>12</sub> || R<sub>13</sub> ||  R<sub>14</sub> || R<sub>15</sub>
|-
| colspan="4" | NSL || colspan="8" | - || colspan="4" | BNL
|}


* R<sub>0-3</sub> - zawiera NSL,
* R<sub>0-3</sub> - zawiera NSL,
Linia 46: Linia 53:


Drugi argument rozkazu identyfikuje adres fizyczny:
Drugi argument rozkazu identyfikuje adres fizyczny:
{| class="wikitable" style="text-align: center;"
| N<sub>0</sub> || N<sub>1</sub> || N<sub>2</sub> || N<sub>3</sub> || N<sub>4</sub> || N<sub>5</sub> || N<sub>6</sub> || N<sub>7</sub> || N<sub>8</sub> || N<sub>9</sub> || N<sub>10</sub> || N<sub>11</sub> || N<sub>12</sub> || N<sub>13</sub> ||  N<sub>14</sub> || N<sub>15</sub>
|-
| || || || - || - || || || colspan="4" | NK || colspan="4" | NM || 1
|}


* N<sub>11-14</sub> - numer modułu NM,
* N<sub>11-14</sub> - numer modułu NM,
Linia 58: Linia 71:
* N<sub>0</sub> - wskaźnik zakończenia procesu alokacji pamięci MEGA.
* N<sub>0</sub> - wskaźnik zakończenia procesu alokacji pamięci MEGA.


Pozycje N<sub>0-2</sub> i N<sub>5-7</sub> są ignorowane przez "obce" moduły pamięci. Pamięć MEGA odpowiada OK na każdy rozkaz ALOKUJ z N<sub>6</sub>=1, bez względu na pojemność zaimplementowanego nośnika.
Pozycje N<sub>0-2</sub> i N<sub>5-7</sub> są ignorowane przez "obce" moduły pamięci. Przy instalacji pamiœci MEGA należy dokonać przeróbki "obcych" modułów tak, aby nie reagowały na rozkazy alokacji z N6=1. Pamięć MEGA odpowiada OK na każdy rozkaz ALOKUJ z N<sub>6</sub>=1, bez względu na pojemność zaimplementowanego nośnika.


W pamięci MEGA można przypisać rożnym adresom logicznym ten sam adres fizyczny.
W pamięci MEGA można przypisać rożnym adresom logicznym ten sam adres fizyczny.
Linia 64: Linia 77:
Pamięć MEGA odpowiada na rozkaz PISZ/CZYTAJ po wykonaniu rozkazu ALOKUJ z N<sub>0</sub>=1, gdy rozkazy PISZ/CZYTAJ odwołują się do istniejącej w pamięci MEGA i zaalokowanej strony czyli alokowanej z N<sub>6</sub>=1 i N<sub>5</sub>=0.
Pamięć MEGA odpowiada na rozkaz PISZ/CZYTAJ po wykonaniu rozkazu ALOKUJ z N<sub>0</sub>=1, gdy rozkazy PISZ/CZYTAJ odwołują się do istniejącej w pamięci MEGA i zaalokowanej strony czyli alokowanej z N<sub>6</sub>=1 i N<sub>5</sub>=0.


W pamięci MEGA przewidziane jest bateryjne podtrzymanie zasilania przy krótkotrwałych zanikach sieci. Zachowana jest wówczas zarówno zawartość pamięci PAL, jak i nośnika. PAO. Przy faktycznym zaniku zasilania pamięć MEGA przestaje odpowiadać na rozkazy PISZ/CZYTAJ. Należy wówczas przeprowadzić pełną alokacje pamięci PAL oraz uwzględnić fakt zaniku informacji w nośniku PAO.
W pamięci MEGA przewidziane jest bateryjne podtrzymanie zasilania przy krótkotrwałych zanikach sieci. Zachowana jest wówczas zarówno zawartość pamięci PAL, jak i nośnika PAO. Przy faktycznym zaniku zasilania pamięć MEGA przestaje odpowiadać na rozkazy PISZ/CZYTAJ. Należy wówczas przeprowadzić pełną alokacje pamięci PAL oraz uwzględnić fakt zaniku informacji w nośniku PAO.


'''Uwaga:''' Moduł pamięci ferrytowej nie odpowiada na rozkaz ALOKUJ dotyczący sprzętowo zaalokowanych pierwszych dwóch kwantów. (BRAK-ODP).
'''Uwaga:''' Moduł pamięci ferrytowej nie odpowiada na rozkaz ALOKUJ dotyczący sprzętowo zaalokowanych pierwszych dwóch kwantów. (BRAK-ODP).
Linia 85: Linia 98:
| 768k || 256k || 15 - 4
| 768k || 256k || 15 - 4
|-
|-
| 1024k || 256k || 15 - 0<sup>*</sup>
| 1024k || 256k || 15 - 0
|-
|-
|}
|}
<sup>*</sup> W tym przypadku może wystąpić konflikt z innymi modułami pamięci i należy odpowiednio oznaczać kwanty w pamięci MEGA.


== Pamięć stała PAS ==
== Pamięć stała PAS ==
Linia 95: Linia 106:
Pamięć PAS zbudowana jest na elementach PROM. Przy odwołaniach do PAS (adresy logiczne (0,017xxxx)) nie dokonuje się transformacji adresu poprzez pamięć alokacji.
Pamięć PAS zbudowana jest na elementach PROM. Przy odwołaniach do PAS (adresy logiczne (0,017xxxx)) nie dokonuje się transformacji adresu poprzez pamięć alokacji.


Po zaniku zasilania pamięci MEGA lub/i wykonaniu zerowania systemu (CLEAR, rozkaz MCL) pamięć PAS jest dostępna (widoczna) w systemie. Pamięć PAS można "przesłonić" dowolnym rozkazem ALOKUJ z N1=1, oraz "odsłonić" dowolnym rozkazem ALOKUJ z N2=1.
Po zaniku zasilania pamięci MEGA lub/i wykonaniu zerowania systemu (CLEAR, rozkaz MCL) pamięć PAS jest dostępna (widoczna) w systemie. Pamięć PAS można "przesłonić" dowolnym rozkazem ALOKUJ z N<sub>1</sub>=1, oraz "odsłonić" dowolnym rozkazem ALOKUJ z N<sub>2</sub>=1.


Pamięć PAS zawiera program realizujący następujące funkcje:
Pamięć PAS zawiera program realizujący następujące funkcje:


* wstępny zapis całej pamięci PAL,
* wstępny zapis całej pamięci PAL,
* zbadanie rzeczywistej konfiguracji pamięci w systemie Mera-400 ("obce" moduły pamięci, ich pojemność, sprzętowo zaalokowane kwanty, konfiguracja pamięci MEGA),
* zbadanie rzeczywistej konfiguracji pamięci w systemie MERA-400 ("obce" moduły pamięci, ich pojemność, sprzętowo zaalokowane kwanty, konfiguracja pamięci MEGA),
* testy pamięci MEGA,
* testy pamięci MEGA,
* wczytanie wskazanego systemu operacyjnego do pamięci (wskazanej) oraz przekazanie mu sterowania wraz z informacjami o rzeczywistej konfiguracji pamięci systemu.
* wczytanie wskazanego systemu operacyjnego do pamięci (wskazanej) oraz przekazanie mu sterowania wraz z informacjami o rzeczywistej konfiguracji pamięci systemu.
Linia 111: Linia 122:


* testy pamięci bloków obcych po 32K i MEGA po 64K,
* testy pamięci bloków obcych po 32K i MEGA po 64K,
* ściągaczki typowych systemów operacyjnych (CROOK,SOM),
* ściągaczki typowych systemów operacyjnych (CROOK, SOM),
* ściągaczkę systemu testów STM.
* ściągaczkę systemu testów STM.


Uruchomienie inicjatora następuje od adresu 0170000 bloku 0. Inicjator bada konfiguracje dołączonej do systemu pamięci operacyjnej. przy istnieniu hardwer'owo zaalokowanej pamięci bloku 0 inicjator działa w tym bloku, w przypadku dołączonej wyłącznie pamięci MEGA inicjator alokuje na adresy 0-030000 bloku logicznego numer 0 trzy kwanty dla systemu CROOK lub na adresy 0-020000 dwa kwanty dla pozostałych systemów z pamięci MEGA o minimalnym numerze modułu (tzn przy pojemności 1M slow są to kwanty 0, 1 i 2 lub 0 i 1 modułu numer 0, a przy pojemności 512 K slow są to kwanty 0, 1 i 2 lub 0 i 1 modułu numer 8) i do tego obszaru przepisuje wybrany system operacyjny. Po włączeniu maszyny, należy ustawić na kluczach adres 0170000, CLEAR, LOAD.
Uruchomienie inicjatora następuje od adresu 0170000 bloku 0. Inicjator bada konfigurację dołączonej do systemu pamięci operacyjnej. Przy istnieniu hardwer'owo zaalokowanej pamięci bloku 0 inicjator działa w tym bloku, w przypadku dołączonej wyłącznie pamięci MEGA inicjator alokuje na adresy 0-030000 bloku logicznego numer 0 trzy kwanty dla systemu operacyjnego z pamięci MEGA o minimalnym numerze modułu (tzn przy pojemności 1M slow są to kwanty 0, 1 i 2 modułu numer 0, a przy pojemności 512 K słów są to kwanty 0, 1 i 2 modułu numer 8) i do tego obszaru przepisuje wybrany system operacyjny. Po włączeniu maszyny, należy ustawić na kluczach adres 0170000, CLEAR, LOAD.


Następnie na kluczach należy ustawić:
Następnie na kluczach należy ustawić:
Linia 121: Linia 132:
! Klucze !! Opis
! Klucze !! Opis
|-
|-
| 0 - 3 || wybrany tryb pracy:
| 1-3 || wybrany tryb pracy:
* 0 - test pamięci bloków obcych i MEGA,
* 1 - test pamięci bloków obcych i MEGA,
* 1 - ściągniecie systemu SOM-MERCOMP (z dysku stałego),
* 2 - ściągniecie systemu [[SOM-MERCOMP]] (z dysku stałego),
* 2 - ściągniecie systemu testów STM,
* 3 - ściągniecie systemu testów STM,
* 3 - ściągniecie systemu SOM-MERCOMP (z winchestera),
* 4 - ściągniecie systemu [[SOM-MERCOMP]] (z winchestera),
|-
|-
| 4 - 5 || wolny
| 5-6 || wolny
|-
|-
| 6 - 14 || niewykorzystany
| 6-14 || niewykorzystany
|-
|-
| 15 || ściągniecie systemu CROOK, i jeżeli:
| 0 lub 7 || ściągniecie systemu CROOK, i jeżeli żaden inny klucz nie jest podniesiony przeprowadzana jest próba transmisji z dysku 5M talerza stałego jednostki nr 0 w kanale 4. Gdy dysk ten nie jest włączony lub nie jest gotowy, przeprowadzana jest próba transmisji kolejno z dysku elastycznego 360K nr 0 lub z WINCHESTERA nr 0 procesora MULTIX w kanale 1. Przy podniesionych kluczach adres dysku określany jest następująco:
* klucz 7 = 1 to na kluczach 5 i 6 należy ustawić numer winchestera z kanału MULTIX-a,
* klucze 8-9 - numer dysku,
* klucz 7 = 0 to na kluczach 8 - 15 należy ustawić adres pamięci dyskowej.
* klucze 10-13 - numer kanału,
* klucz 14=0
* klucz 15 - rodzaj dysku (0-wymienny, 1-stały lub 0-dysk elastyczny, 1-dysk twarty).
|-
|-
|}
|}


Przy pracy testu dodatkowe znaczenie maja klucze 4 oraz 8 - 15:
Przy pracy testu dodatkowe znaczenie mają klucze 4 oraz 8-15:


{| class="wikitable"
{| class="wikitable"
! Klucze !! Opis
! Klucze !! Opis
|-
|-
| 4 || określa sposób porozumiewania się z operatorem przy teście pamięci MEGA.
| 4 || określa sposób porozumiewania się z operatorem przy teście pamięci.
* 1 - test zatrzymuje się na stopach w przypadku wystąpienia błędu,
* 1 - test zatrzymuje się na stopach w przypadku wystąpienia błędu,
* 0 - całkowity wydruk (nr urządzenia i nr kanału określają klucze 8 - 14)
* 0 - całkowity wydruk (nr urządzenia i nr kanału określają klucze 8-14)
|-
| 5 || powoduje ominięcie testu pamięci obcych i przejście do testowania pamięci MEGA
|-
|-
| 8 - 14 || nr urządzenia i nr kanału do porozumiewania się z operatorem (gdy klucz 4 = 0)
| 8-14 || nr urządzenia i nr kanału do porozumiewania się z operatorem (gdy klucz 4 = 0)
* 0 - przyjmuje się nr urządzenia = 4 i nr kanału = 15,
* 0 - przyjmuje się nr urządzenia = 4 i nr kanału = 15,
* > 0 - odczytywany jest nr urządzenia i nr kanału (nr urządzenia/10+nr kanału/14)
* > 0 - odczytywany jest nr urządzenia i nr kanału (nr urządzenia/10+nr kanału/14)
Linia 159: Linia 174:


Test wykorzystuje klucz 4 pulpitu technicznego. W czasie wykonywania testu przy włączonym kluczu 4 na monitor nie są drukowane teksty. Test pamięci wykonuje się w sposób automatyczny.
Test wykorzystuje klucz 4 pulpitu technicznego. W czasie wykonywania testu przy włączonym kluczu 4 na monitor nie są drukowane teksty. Test pamięci wykonuje się w sposób automatyczny.
Test obsługuje 32 przerwania przychodzące z jednostki centralnej. Numer stopu odpowiada numerowi przerwania. Z wyjątkiem stopu 0, wszystkie stopy od 1 do 32 zapalają bit 6. Ignorowane są:
* przerwanie zegarowe - nr 5,
* przerwanie kanałowe - nr 13, 14, 15 i 27,
* zgłoszenie operatora - nr 28.
STOP/START wznawia działanie programu.


== Opis stopów ==
== Opis stopów ==
Linia 186: Linia 193:
STOP/START nie wznawia działania programu.
STOP/START nie wznawia działania programu.
|- valign="top"
|- valign="top"
| HLT,05 || Nieudana próba alokacji, BO, EN lub PE, 15 kwantu i 15 bloku pamięci MEGA, przy probie uaktywnienia MEGI (1/0).
| HLT,05 || Nieudana próba alokacji, BO, EN lub PE, 15 kwantu i 15 bloku pamięci MEGA, przy próbie uaktywnienia MEGI (1/0).
Zawartość rejestrów:
Zawartość rejestrów:
* R1 - adres logiczny,
* R1 - adres logiczny,
Linia 192: Linia 199:
STOP/START nie wznawia działania programu.
STOP/START nie wznawia działania programu.
|- valign="top"
|- valign="top"
| HLT,06 || Błąd przy probie odczytu, poprzednio zapisanego obszaru pamięci MEGA (istnieją obce bloki pamięci)
| HLT,06 || Błąd przy próbie odczytu poprzednio zapisanego obszaru pamięci MEGA (istnieją obce bloki pamięci)
Zawartość rejestrów:
Zawartość rejestrów:
* R6 - numer bloku, w którym wystąpił błąd,
* R6 - numer bloku, w którym wystąpił błąd,
Linia 217: Linia 224:
* 010014 - rodzaj testu (wartość od 1 do 3),
* 010014 - rodzaj testu (wartość od 1 do 3),
* 010033 - wzorzec testowany (wartość od 1 do 6),
* 010033 - wzorzec testowany (wartość od 1 do 6),
* 010032 - sposób testowania (wartość =1),
* 010032 - sposób testowania (wartość = 1),
* 010004 - numer bloku, w którym wystąpił błąd,
* 010004 - numer bloku, w którym wystąpił błąd,
* R1 - adres wystąpienia błędu,
* R1 - adres wystąpienia błędu,
Linia 242: Linia 249:
STOP/START wznawia działanie programu.
STOP/START wznawia działanie programu.
|- valign="top"
|- valign="top"
| HLT,017 || Błąd w czasie wykonywania testu. Transmisje PISZ/CZYTAJ dokonywane są po siedem slow (rozkazy grupowe).
| HLT,017 || Błąd w czasie wykonywania testu. Transmisje PISZ/CZYTAJ dokonywane są po siedem słów (rozkazy grupowe).
Zawartość rejestrów i komórek pamięci:
Zawartość rejestrów i komórek pamięci:
* 010014 - rodzaj testu (wartość od 1 do 3),
* 010014 - rodzaj testu (wartość od 1 do 3),
Linia 313: Linia 320:
Wzorce testowane w programie:
Wzorce testowane w programie:


* 1 - stale zero,
* 1 - stałe zero,
* 2 - stała jedynka,
* 2 - stała jedynka,
* 3 - pływające zero,
* 3 - pływające zero,
Linia 334: Linia 341:
= Komunikaty wyprowadzane na monitor =
= Komunikaty wyprowadzane na monitor =


Przy prawidłowo działającym teście pamięci, i przy zadaniu wydruku na monitor wyprowadzane są następujące teksty:
Przy prawidłowo działającym teście pamięci i przy zadaniu wydruku na monitor wyprowadzane są następujące teksty:
   
   
  >>ZEROWANIE PAMIECI
  >>ZEROWANIE PAMIECI
Linia 357: Linia 364:
* N0, ..., NN - numery testowanych bloków pamięci MEGA.
* N0, ..., NN - numery testowanych bloków pamięci MEGA.


W trakcie wykonywania testu możne pojawić się komunikat:
W trakcie wykonywania testu może pojawić się komunikat:


  >>BLAD
  >>BLAD
Linia 373: Linia 380:
lub oba komunikaty równocześnie i zatrzymanie testu na odpowiednim stopie. Klucz STOP/START powoduje kontynuowanie testu.
lub oba komunikaty równocześnie i zatrzymanie testu na odpowiednim stopie. Klucz STOP/START powoduje kontynuowanie testu.


Podanie na kluczach 0 - 3 wartości odpowiadającej wybranemu systemowi powoduje:
Podanie na kluczach 0-3 wartości odpowiadającej wybranemu systemowi powoduje:


* sprawdzenie konfiguracji pamięci,
* sprawdzenie konfiguracji pamięci,
Linia 379: Linia 386:
* zatrzymanie na stopie 070 przed wejściem do systemu, celem ustawienia kluczy wymaganych przez system operacyjny.
* zatrzymanie na stopie 070 przed wejściem do systemu, celem ustawienia kluczy wymaganych przez system operacyjny.


Podanie na kluczach 0 - 3 wartości 4 lub 5 powoduje zatrzymanie HLT,033. Test całego obszaru pamięci MEGA, bloków od 0 do 15 trwa około 45 min. Test zakończony jest komunikatem END i stopem 012. STOP/START powoduje przejście do początku programu, co umożliwia ponowny wybór trybu pracy.
Podanie na kluczach 0-3 wartości 4 lub 5 powoduje zatrzymanie HLT,033. Test całego obszaru pamięci MEGA, bloków od 0 do 15 trwa około 45 min. Test zakończony jest komunikatem END i stopem 012. STOP/START powoduje przejście do początku programu, co umożliwia ponowny wybór trybu pracy.
 
{{Source|title=Pamięć MEGA|author=Amepol|date=1989-12-28}}

Menu nawigacyjne