29.3.3. Rozšíření paměti (MMU)

Protože 4KiW operační paměti není zrovna mnoho, je možné SOC8 rozšířit pomocí jednotky správy paměti schopnost adresovat další RAM.

Jednotka MMU má 8 stránkových registrů. Pro každý režim procesoru. Tyto registry jsou široké 12 bitů. Tyto registry jsou adresovány dvěma nejvyššími bity adresy na adresní sběrnici a dalším signálem I/D který rozlišujem mezi čtením programu a čtením a zápisem dat. Tento signál efektivně rozšiřuje adresu ze 12 na 13 bitů a odděluje prostor programu od prostoru dat.

Takže tyto 3 bity adresují 8 stránkových registrů. Celý adresní prostor počítče je tak rozdělen na 1KiW stránky.

0000 +--------+
     | PAGE 0 | 1777
2000 +--------+
     | PAGE 1 | 3777
4000 +--------+
     | PAGE 2 | 5777
6000 +--------+
     | PAGE 3 | 7777
     +--------+

Každý stránkový registr obsahuje bity ochrany paměti a bity rozšířené adresy.

 11  10   9   8   7   6   5   4   3   2   1   0
+---+---+---+---+---+---+---+---+---+---+---+---+
|R/O| ? | ? |           :PAGE ADDRESS   :       |
+---+---+---+---+---+---+---+---+---+---+---+---+

Na uvedeném návrhu je pro adresu stránky vyhrazeno 9 bitů. To umožňuje adresovat celkem 512 stránek o velikosti 1KiW což je 512KiW operační paměti. To ja na 12-ti bitový počítač docela dost.

Nejvyšší 3 bity stránkového registru pak specifikují vlastnosti stránky. V bitu b11 je informace zdali je stránka jen pro čtení. Pokud ano, je při pokusu o zápis do stránky vyvolána výjimka ochrnany paměti. Zbylé dva bity zatím nemají přidělen žádný význam.

Možné použití je například takové že do bitu b10 jednotka MMU zapíše jedna při každém přístupu na stránku. Je možné pak sledovat, zdali proces jenž má stránku k dispozici s ní někdy pracoval.

Operační systém počítač poskytuje procesům službu mapování stránek. Pokud proces o takovou službu požádá operační systém pro něj udržuje seznam přidělených stránek a umožňuje mu tyto přepínat.

Protože minimální počet režimů procesoru je v případě rozšířeného procesoru dva, t.j. uživatelský a systémový. Je celkový počet registrů MMU 16.

Poznámka

Rozšíření počtu stran paměti v adresním prostoru ze 4 na 8 by se mi líbilo. Celkové snížení adresovatelné paměti nevidím jako problém. Problém je, přepínání úloh. Čím menší velikost stránky a větší počet stránek v adresním prostoru procesoru, tím více je stránkových registrů v MMU. A to znamená že při přechodu na jinou úlohu je třeba vyměnit více informací.

Licence Creative Commons
Elektronika a počítače, jejímž autorem je Radek Hnilica, podléhá licenci Creative Commons Uveďte autora-Nevyužívejte dílo komerčně-Zachovejte licenci 3.0 Česká republika .