Pytania: Różnice pomiędzy wersjami

Z MERA 400 wiki
Przejdź do nawigacji Przejdź do wyszukiwania
Nie podano opisu zmian
Nie podano opisu zmian
 
(Nie pokazano 9 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 1: Linia 1:
Poniże lista pytań, które pojawiły się podczas prac nad EM400, emulatorem systemu MERA-400. Kolejność przypadkowa.
Poniżej lista pytań, które pojawiły się podczas prac nad EM400, emulatorem systemu MERA-400. Kolejność przypadkowa.


= Aktualne =
= Aktualne =


== Procesor ==
== Procesor ==
* Jak dla użytkownika zachowywało się R0 przy instrukcjach innych niż przesłania (przesunięcia, dodawanie, ...), kiedy było argumentem?
* Jak zachowywało się R0 przy instrukcjach przesuwania kiedy było argumentem?
* Jak często mogło być zgłaszane [[przerwanie zegarowe]]? Różne dokumentacje podają różne wartości.
* Jak naprawdę działały przeróbki procesora?
* Czy w przypadku braku pamięci podczas pobierania rozkazu zwiększany jest licznik rozkazów?
* Czy rozkazy SV* rzeczywiście nie zerują flagi V, jeśli była ustawiona?
* Czy rozkazy arytmetyczne rzeczywiście nie zerują flagi V, jeśli była ustawiona?


== Pulpit techniczny ==
== Pulpit techniczny ==
* Czy odwołanie z pulpitu do nieistniejącej pamięci powoduje błąd/przerwanie?
* Czy można z pulpitu pisać rejestry, gdy maszyna jest running?


== Pamięć ==
== Pamięć ==


* Co było w komórce o adresie 0xffff przy odsłoniętym segmencie PROM [[Pamięć MEGA|pamięci MEGA]]
* Jak zachowywała się pamięć Elwro, kiedy w dwóch rejestrach RAL była ta sama wartość (dwa segmenty fizyczne chcą "odpowiedzieć" na adres logiczny)?
* Jak zachowywała się pamięć Elwro, kiedy w dwóch rejestrach RAL była ta sama wartość (dwa segmenty fizyczne chcą "odpowiedzieć" na adres logiczny)?


= Wyjaśnione =
= Wyjaśnione =
== Procesor ==


* '''Q:''' Jak instrukcja MW ustawia flagę V?<br/>'''A:''' Ustawia tak, jak AD i SD, czyli w praktyce nigdy nie ustawia.
* '''Q:''' Jak instrukcja MW ustawia flagę V?<br/>'''A:''' Ustawia tak, jak AD i SD, czyli w praktyce nigdy nie ustawia.
* '''Q:''' Czy instrukcje zmiennoprzecinkowe ustawiały flagę C na "wypadający" najmłodszy bit wyniku?<br/>'''A:''' Tak, ale po krągleniu.
* '''Q:''' Jaka jest kolejność elementów w priorytetowym układzie rezerwacji?<br/>'''A:''' Taka, jak kolejność modułów "na kablu interfejsu".
* '''Q:''' Jak często mogło być zgłaszane [[przerwanie zegarowe]]? Różne dokumentacje podają różne wartości.<br/>'''A:''' Wszystkie schamty mówią, że: 2, 4, 8, 10, 20 milisekund.
* '''Q:''' Jak naprawdę działały przeróbki procesora?<br/>'''A:''' Patrz: [[Modyfikacje sprzętowe procesora]]
* '''Q:''' Czy rozkazy SV* rzeczywiście nie zerują flagi V, jeśli była ustawiona?<br/>'''A:''' Tak, nie zerują.
* '''Q:''' Czy rozkazy arytmetyczne rzeczywiście nie zerują flagi V, jeśli była ustawiona?<br/>'''A:''' Tak, nie zerują.
* '''Q:''' Czy w przypadku braku pamięci podczas pobierania rozkazu zwiększany jest licznik rozkazów?<br/>'''A:''' Tak.
* '''Q:''' Jak zachowuje się R0 przy instrukcjach przesuwania i arytmetycznych, kiedy jest argumentem?<br/>'''A:''' Rejestr jest zapisywany po ustawieniu flag, więc ich zmiany są nadpisywane wynikiem operacji.
* '''Q:''' Jak dla użytkownika zachowywało się R0 przy instrukcjach innych niż przesłania (przesunięcia, dodawanie, ...), kiedy było argumentem?<br/>'''A:''' j.w.
== Pulpit techniczny ==
* '''Q:''' Czy instrukcja odczytywania kluczy pulpitu technicznego (RKY) przepisywała klucze do rejestru zawsze, czy tylko, gdy przełącznik obrotowy był w pozycji KB? (a w przeciwnym wypadku zawartość rejestru nie była zmieniana)<br/>'''A:''' Zawsze.
* '''Q:''' Czy można z pulpitu pisać rejestry, gdy maszyna jest running?<br/>'''A:''' Nie, tylko w stanie STOP.
* '''Q:''' Czy odwołanie z pulpitu do nieistniejącej pamięci powoduje błąd/przerwanie?<br/>'''A:''' Tak, operacje na pamięci z pulpitu są wciąż operacjami wykonywanymi przez procesor.
== Pamięć ==
* '''Q:''' Dlaczego adres był 15-bit? Przecież mógł być 16-bit i MERA mogła obsłużyć dwa razy więcej pamięci. Czy to ma związek z MEGA? Jeśli 15-bit, to co MERA robiła z 16 bit.<br/>'''A:''' Patrz: [[Adresowanie pamięci]]
* '''Q:''' Co było w komórce o adresie 0xffff przy odsłoniętym segmencie PROM [[Pamięć MEGA|pamięci MEGA]]?<br/>'''A:''' Numer procesora (unikalny identyfikator systemu, de facto MEGI).
== CROOK ==
* '''Q:''' Dlaczego tablica opisu dysków WINCHESTER CROOK-a pokrywa się z wektorami obsługi niezainstalowanych opcji (brak arytmometru)? Czy może to nie blok pamięci OS? Czy CROOK wymagał arytmometru wielokrotnej precyzji?<br/>'''A:''' Bo CROOK nie obsługiwał konfiguracji bez arytmometru, więc mógł nadpisać obszar z wektorami.
* '''Q:''' Dlaczego tablica opisu dysków WINCHESTER CROOK-a pokrywa się z wektorami obsługi niezainstalowanych opcji (brak arytmometru)? Czy może to nie blok pamięci OS? Czy CROOK wymagał arytmometru wielokrotnej precyzji?<br/>'''A:''' Bo CROOK nie obsługiwał konfiguracji bez arytmometru, więc mógł nadpisać obszar z wektorami.
* '''Q:''' Jak wygląda bootstrap systemu?<br/>'''A:''' [[Ładowanie systemu operacyjnego]]
* '''Q:''' Jak wygląda bootstrap systemu?<br/>'''A:''' [[Ładowanie systemu operacyjnego]]
* '''Q:''' Pod jaki adres ładowany był system operacyjny? (czy też jakikolwiek "startowy" program ładowany do pamięci OS)<br/>'''A:''' Pod adres 0
* '''Q:''' Pod jaki adres ładowany był system operacyjny? (czy też jakikolwiek "startowy" program ładowany do pamięci OS)<br/>'''A:''' Pod adres 0
* '''Q:''' Co było na pamięci PROM zainstalowanej w module zegarze czasu rzeczywistego AMEPOL-u? Jak duży był ten PROM? Czy można zabootować CROOK-a bez niego?<br/>'''A:''' PROM miał 256 bajtów, był tam bootloader, na przykład (standardowo) CROOK-a.
* '''Q:''' Jak wyglądał proces instalacji CROOK-a?<br/>'''A:''' Inicjalizacja talerza, wkopiowanie plików.
* '''Q:''' Jak wyglądał proces instalacji CROOK-a?<br/>'''A:''' Inicjalizacja talerza, wkopiowanie plików.
* '''Q:''' Jaka jest organizacja bloku pamięci systemu operacyjnego? (patrz: [[Mapa pamięci]])<br/>'''A:''' [[Mapa pamięci CROOK-5]]
* '''Q:''' Jaka jest organizacja bloku pamięci systemu operacyjnego? (patrz: [[Mapa pamięci]])<br/>'''A:''' [[Mapa pamięci CROOK-5]]
* '''Q:''' Gdzie jest stos? Jak duży? (patrz: [[Mapa pamięci]])<br/>'''A:''' Stos jest tam, gdzie wskaże wskaźnik.
* '''Q:''' Gdzie jest stos? Jak duży? (patrz: [[Mapa pamięci]])<br/>'''A:''' Stos jest tam, gdzie wskaże wskaźnik.
* '''Q:''' Co to jest MULTIX?<br/>'''A:''' [[MULTIX]]
* '''Q:''' Jak wygląda praca systemu dwuprocesorowego? jak dwuprocesorowość wykorzystywał CROOK?<br/>'''A:''' CROOK nie obsługiwał konfiguracji dwuprocesorowej.
* '''Q:''' Jak wygląda praca systemu dwuprocesorowego? jak dwuprocesorowość wykorzystywał CROOK?<br/>'''A:''' CROOK nie obsługiwał konfiguracji dwuprocesorowej.
* '''Q:''' Dlaczego adres był 15-bit? Przecież mógł być 16-bit i MERA mogła obsłużyć dwa razy więcej pamięci. Czy to ma związek z MEGA? Jeśli 15-bit, to co MERA robiła z 16 bit.<br/>'''A:''' [[Adresowanie pamięci]]
 
* '''Q:''' Czy instrukcje zmiennoprzecinkowe ustawiały flagę C na "wypadający" najmłodszy bit wyniku?<br/>'''A:''' Tak, ale po krągleniu.
== Urządzenia Amepolu ==
* '''Q:''' Czy instrukcja odczytywania kluczy pulpitu technicznego (RKY) przepisywała klucze do rejestru zawsze, czy tylko, gdy przełącznik obrotowy był w pozycji KB? (a w przeciwnym wypadku zawartość rejestru nie była zmieniana)<br/>'''A:''' Zawsze.
 
* '''Q:''' Jaka jest kolejność elementów w priorytetowym układzie rezerwacji?<br/>'''A:''' Taka, jak kolejność modułów "na kablu interfejsu".
* '''Q:''' Co było na pamięci PROM zainstalowanej w module zegarze czasu rzeczywistego AMEPOL-u? Jak duży był ten PROM? Czy można zabootować CROOK-a bez niego?<br/>'''A:''' PROM miał 256 bajtów, był tam bootloader, na przykład (standardowo) CROOK-a.
* '''Q:''' Co to jest MULTIX?<br/>'''A:''' Patrz: [[MULTIX]]

Aktualna wersja na dzień 17:35, 19 wrz 2020

Poniżej lista pytań, które pojawiły się podczas prac nad EM400, emulatorem systemu MERA-400. Kolejność przypadkowa.

Aktualne

Procesor

Pulpit techniczny

Pamięć

  • Jak zachowywała się pamięć Elwro, kiedy w dwóch rejestrach RAL była ta sama wartość (dwa segmenty fizyczne chcą "odpowiedzieć" na adres logiczny)?

Wyjaśnione

Procesor

  • Q: Jak instrukcja MW ustawia flagę V?
    A: Ustawia tak, jak AD i SD, czyli w praktyce nigdy nie ustawia.
  • Q: Czy instrukcje zmiennoprzecinkowe ustawiały flagę C na "wypadający" najmłodszy bit wyniku?
    A: Tak, ale po krągleniu.
  • Q: Jaka jest kolejność elementów w priorytetowym układzie rezerwacji?
    A: Taka, jak kolejność modułów "na kablu interfejsu".
  • Q: Jak często mogło być zgłaszane przerwanie zegarowe? Różne dokumentacje podają różne wartości.
    A: Wszystkie schamty mówią, że: 2, 4, 8, 10, 20 milisekund.
  • Q: Jak naprawdę działały przeróbki procesora?
    A: Patrz: Modyfikacje sprzętowe procesora
  • Q: Czy rozkazy SV* rzeczywiście nie zerują flagi V, jeśli była ustawiona?
    A: Tak, nie zerują.
  • Q: Czy rozkazy arytmetyczne rzeczywiście nie zerują flagi V, jeśli była ustawiona?
    A: Tak, nie zerują.
  • Q: Czy w przypadku braku pamięci podczas pobierania rozkazu zwiększany jest licznik rozkazów?
    A: Tak.
  • Q: Jak zachowuje się R0 przy instrukcjach przesuwania i arytmetycznych, kiedy jest argumentem?
    A: Rejestr jest zapisywany po ustawieniu flag, więc ich zmiany są nadpisywane wynikiem operacji.
  • Q: Jak dla użytkownika zachowywało się R0 przy instrukcjach innych niż przesłania (przesunięcia, dodawanie, ...), kiedy było argumentem?
    A: j.w.

Pulpit techniczny

  • Q: Czy instrukcja odczytywania kluczy pulpitu technicznego (RKY) przepisywała klucze do rejestru zawsze, czy tylko, gdy przełącznik obrotowy był w pozycji KB? (a w przeciwnym wypadku zawartość rejestru nie była zmieniana)
    A: Zawsze.
  • Q: Czy można z pulpitu pisać rejestry, gdy maszyna jest running?
    A: Nie, tylko w stanie STOP.
  • Q: Czy odwołanie z pulpitu do nieistniejącej pamięci powoduje błąd/przerwanie?
    A: Tak, operacje na pamięci z pulpitu są wciąż operacjami wykonywanymi przez procesor.

Pamięć

  • Q: Dlaczego adres był 15-bit? Przecież mógł być 16-bit i MERA mogła obsłużyć dwa razy więcej pamięci. Czy to ma związek z MEGA? Jeśli 15-bit, to co MERA robiła z 16 bit.
    A: Patrz: Adresowanie pamięci
  • Q: Co było w komórce o adresie 0xffff przy odsłoniętym segmencie PROM pamięci MEGA?
    A: Numer procesora (unikalny identyfikator systemu, de facto MEGI).

CROOK

  • Q: Dlaczego tablica opisu dysków WINCHESTER CROOK-a pokrywa się z wektorami obsługi niezainstalowanych opcji (brak arytmometru)? Czy może to nie blok pamięci OS? Czy CROOK wymagał arytmometru wielokrotnej precyzji?
    A: Bo CROOK nie obsługiwał konfiguracji bez arytmometru, więc mógł nadpisać obszar z wektorami.
  • Q: Jak wygląda bootstrap systemu?
    A: Ładowanie systemu operacyjnego
  • Q: Pod jaki adres ładowany był system operacyjny? (czy też jakikolwiek "startowy" program ładowany do pamięci OS)
    A: Pod adres 0
  • Q: Jak wyglądał proces instalacji CROOK-a?
    A: Inicjalizacja talerza, wkopiowanie plików.
  • Q: Jaka jest organizacja bloku pamięci systemu operacyjnego? (patrz: Mapa pamięci)
    A: Mapa pamięci CROOK-5
  • Q: Gdzie jest stos? Jak duży? (patrz: Mapa pamięci)
    A: Stos jest tam, gdzie wskaże wskaźnik.
  • Q: Jak wygląda praca systemu dwuprocesorowego? jak dwuprocesorowość wykorzystywał CROOK?
    A: CROOK nie obsługiwał konfiguracji dwuprocesorowej.

Urządzenia Amepolu

  • Q: Co było na pamięci PROM zainstalowanej w module zegarze czasu rzeczywistego AMEPOL-u? Jak duży był ten PROM? Czy można zabootować CROOK-a bez niego?
    A: PROM miał 256 bajtów, był tam bootloader, na przykład (standardowo) CROOK-a.
  • Q: Co to jest MULTIX?
    A: Patrz: MULTIX