3012
edycji
Nie podano opisu zmian |
|||
Linia 1: | Linia 1: | ||
Różne fragmenty dokumentacji MERY-400 dają sprzeczne i niekompletne informacje na temat sposobu adresowania pamięci i rozmiaru bloków użytkowych. | |||
== | == Dokumentacja == | ||
'''DTR tom I część III z roku 1979''' podaje następujące fakty: | '''DTR tom I część III z roku 1979''' podaje następujące fakty: | ||
Linia 22: | Linia 22: | ||
== Interpretacja == | == Interpretacja == | ||
'''Adresowanie słów 16-bitowych:''' | '''Adresowanie słów 16-bitowych:''' | ||
Linia 33: | Linia 29: | ||
'''Adresowanie bajtów 8-bitowych:''' | '''Adresowanie bajtów 8-bitowych:''' | ||
Istnienie rozkazów używających adresowania bajtowego może rodzić problemy, których dokumentacja próbuje uniknąć, ograniczając praktyczną przestrzeń adresową do 32k słów. Rozkazy te budziły zresztą mieszane uczucia również wśród konstruktorów minikomputera. | |||
* Adres bajtu jest 16-bitowy, z czego 15 najstarszych bitów jest adresem słowa w pamięci, a najmłodszy bit wskazuje lewy/prawy bajt w słowie. | * Adres bajtu jest 16-bitowy, z czego 15 najstarszych bitów jest adresem słowa w pamięci, a najmłodszy bit wskazuje lewy/prawy bajt w słowie. | ||
* Dla rozkazów bajtowych adres przesuwany jest przed wystawieniem na szynę adresową o jeden bit w prawo. W ten sposób na szynie pojawia się właściwy adres słowa, a bit wysuwający się z prawej strony używany jest do wybrania odpowiedniego bajtu ze słowa. To rodzi problemy, ponieważ pozwala bajtowo zaadresować obszar tylko 32k słów. | * Dla rozkazów bajtowych adres przesuwany jest przed wystawieniem na szynę adresową o jeden bit w prawo. W ten sposób na szynie pojawia się właściwy adres słowa, a bit wysuwający się z prawej strony używany jest do wybrania odpowiedniego bajtu ze słowa. To rodzi problemy, ponieważ pozwala bajtowo zaadresować obszar tylko 32k słów. | ||
Rozwiązaniem jest użycie PRE- | Rozwiązaniem jest modyfikacja procesora minikomputera MERA-400, która może być wykonana z użyciem istniejących "wolnych" bramek. Po takiej modyfikacji, użycie PRE- lub B-modyfikacji dla adresu bajtowego powoduje, że wynikowy adres pamiętany jest na 17 bitach. Przy przesuwaniu adresu bajtowego przed wystawieniem go na szynę adresową, ten dodatkowy 17 bit staje się 16 bitem pełnego adresu słowa w 64k bloku, pozwalając bajtowo zaadresować 128kB. |