Blog:Pamäťové rozšírenie 256kB RAM
Z PMD 85 Infoserver
D (rekat a odsadenie) |
(fix nazvoslovia) |
||
Riadok 33: | Riadok 33: | ||
| height="24" align="center" style="background-color:#f2f2f2" | — | | height="24" align="center" style="background-color:#f2f2f2" | — | ||
| height="24" align="center" style="background-color:#ccf" | VRAM | | height="24" align="center" style="background-color:#ccf" | VRAM | ||
- | | height="24" align="center" style="background-color:#fcf" | | + | | height="24" align="center" style="background-color:#fcf" | REG1 |
- | | height="24" align="center" style="background-color:#fcf" | | + | | height="24" align="center" style="background-color:#fcf" | REG0 |
- | | height="24" align="center" style="background-color:#ffc" | | + | | height="24" align="center" style="background-color:#ffc" | PAGE3 |
- | | height="24" align="center" style="background-color:#ffc" | | + | | height="24" align="center" style="background-color:#ffc" | PAGE2 |
- | | height="24" align="center" style="background-color:#ffc" | | + | | height="24" align="center" style="background-color:#ffc" | PAGE1 |
- | | height="24" align="center" style="background-color:#ffc" | | + | | height="24" align="center" style="background-color:#ffc" | PAGE0 |
|- | |- | ||
|} | |} | ||
- | * {{Kbd| | + | * bity {{Kbd|PAGE<x>}} určuje číslo stránky, ktorá bude namapovaná do oblasti určenej bitmi {{Kbd|REG<x>}}. |
* ktorákoľvek stránka tak môže byť namapovaná do ktorejkoľvek oblasti. | * ktorákoľvek stránka tak môže byť namapovaná do ktorejkoľvek oblasti. | ||
* mapovanie je platné vždy '''iba pre jednu konkrétnu stránku a oblasť'''! | * mapovanie je platné vždy '''iba pre jednu konkrétnu stránku a oblasť'''! |
Verzia zo dňa a času 08:10, 19. máj 2014
Pamäťové rozšírenie 256kB RAM pre PMD 85-2A a PMD 85-3
Pôvodné pamäťové čipy 4164 sú nahradené čipmi 41256. Mapovanie rozšírenej pamäti zabezpečuje hradlové pole.
- 256kB pamäti sa delí na 16 stránok po 16kB: (PG00 až PG15).
- Pamäťový priestor CPU sa delí na 4 oblasti:
- REG0 - od adresy 0000h
- REG1 - od adresy 4000h
- REG2 - od adresy 8000h
- REG3 - od adresy C000h
Základné stránky PG00 až PG03 sú mapované do zodpovedajúcich oblastí REG0 až REG3. Ak nie je pre danú oblasť zvolená iná stránka, je tam namapovaná stránka základná.
Stránky PG03 a PG07 zdieľa aj Video-procesor. Ten pristupuje ku týmto stránkam nezávisle od CPU a teda tieto stránky vôbec nemusia byť namapované v adresnom priestore CPU.
- stránka PG03 je VRAM-0
- stránka PG07 je VRAM-1
stránkovanie
Stránkovanie je prístupné na porte 6Dh. Z portu je možné zapísanú hodnotu aj prečítať. Po resete je port vynulovaný, čo znamená, že sú v pamäťovom priestore namapované všetky základné stránky a zobrazuje sa VRAM-0.
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
— | VRAM | REG1 | REG0 | PAGE3 | PAGE2 | PAGE1 | PAGE0 |
- bity PAGE<x> určuje číslo stránky, ktorá bude namapovaná do oblasti určenej bitmi REG<x>.
- ktorákoľvek stránka tak môže byť namapovaná do ktorejkoľvek oblasti.
- mapovanie je platné vždy iba pre jednu konkrétnu stránku a oblasť!
- bit VRAM určuje, ktorá VideoRAM sa bude zobrazovať (PG03 alebo PG07).
- ROM sa stránkuje obvyklým spôsobom na 4. bite portu PC sytémovej 8255 (viď. AllRAM).
- Ak je ROM nastránkovaná, zápis do časti RAM pod ROM je možný ako obvykle.
príklad použitia
Z popisu stránkovacieho portu je vidieť, že voľba banky s rovnakým číslom, ako je číslo oblasti znamená, že v pamäťovom priestore sú vždy základné stránky a teda zápis hodnôt 00h, 11h, 22h alebo 33h na port 6Dh je ekvivalentné. To je možné využiť na test prítomnosti pamäťového rozšírenia.
MVI A,33h ; test na prítomnosť pamäťového rozšírenia OUT 6Dh IN 6Dh ; prečítaj zapísanú hodnotu CPI 33h JZ MEM256_OK ; pamäťové rozšírenie je prítomné JNZ MEM256_NO ; pamäťové rozšírenie sa nenašlo MVI A,82h ; povolenie a zapnutie AllRAM OUT 0F7h MVI A,09h ; ROM pripojená OUT 0F7h MVI A,08h ; ROM odpojená - AllRAM OUT 0F7h MVI A,16h ; stránka 6 do oblasti 1, zobrazuje sa VRAM-0 OUT 6Dh ; v pamäťovom priestore sú stránky 0,6,2,3 MVI A,7Fh ; stránka 15 do oblasti 3, zobrazuje sa VRAM-1 OUT 6Dh ; v pamäťovom priestore sú stránky 0,1,2,15 MVI A,07h ; stránka 7 do oblasti 0, zobrazuje sa VRAM-0 OUT 6Dh ; v pamäťovom priestore sú stránky 7,1,2,3 MVI A,6Ch ; stránka 12 do oblasti 2, zobrazuje sa VRAM-1 OUT 6Dh ; v pamäťovom priestore sú stránky 0,1,12,3