Blog:Prerušenie od Video procesora
Z PMD 85 Infoserver
D (Doplnená kategória) |
D (rekat) |
||
Riadok 61: | Riadok 61: | ||
- | [[Kategória:Hardvér]] | ||
[[Kategória:Blog| 012]] | [[Kategória:Blog| 012]] | ||
+ | [[Kategória:Detaily o PMD 85 a kompatibilných]] |
Aktuálna verzia
Prerušenie od Video procesora
UPOZORNENIE - Prerušenie od Video procesora je iba experimentálny návrh zapojenia, ku ktorému neexistuje reálny hardvér. Bol realizovaný iba testovací "prototyp" a implementácia v Emulátore PMD 85. |
Video procesor v PMD 85 zabezpečuje pravidelné čítanie údajov z Video RAM a ich zobrazovanie na obrazovke. Túto pravidelnosť možno využiť na synchronizáciu zápisu do Video RAM a zobrazovania obsahu Video RAM a tak použitím vhodného spôsobu zabrániť "blikaniu" zobrazovaných údajov na obrazovke.
Zobrazenie jedného mikroriadku trvá 64μs (48μs 48 šestíc bodov + 16μs synchronizácia riadku a zatemnenie pri prechode lúča na ďalší mikroriadok). Pre 256 mikroriadkov je to zaokrúhlene 16ms. Po zobrazení všetkých mikroriadkov prichádza impulz o dĺžke 4ms pre synchronizáciu obrazu a zatemnenie pri návrate lúča na začiatok obrazu. Zobrazenie jedného snímku trvá celkovo 20ms.
Prerušenie od Video procesora teda prichádza každých 20ms, vždy po zobrazení všetkých mikroriadkov, teda v okamihu zatemnenia obrazu. Po príchode prerušenia sa o 4ms začne opäť vykresľovať obraz.
ovládací port
Port 6Ch pre aktiváciu (povolenie) prerušenia od Video procesora je zdieľaný s voľbou módu farebného zobrazenia VGA konvertora. Z portu je možné zapísanú hodnotu aj prečítať. Po Resete je prerušenie od VideoCPU zakázané (VPI=0) a mód farebného zobrazovania je nastavený na číslo 7 (CM<x>=1).
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
VPI | SVICM | — | — | — | CM2 | CM1 | CM0 |
- bit SVICM - set video interrupt or color mode - tento bit určuje, čo sa bude nastavovať:
- 0 = farebný mód (bity CM<x>)
- 1 = povolenie/zakázanie prerušenia od VideoCPU (bit VPI)
- bit VPI - video processor interrupt - 0/1=zakázanie/povolenie prerušenia od VideoCPU
- bity CM<x> - číslo módu farebného zobrazenia VGA konvertora
Pri čítaní z portu nemá bit SVICM význam a jeho hodnota je 0.
príklad použitia
MVI A,0C0h ; povolenie prerušenia od VideoCPU OUT 6Ch MVI A,40h ; zakázanie prerušenia od VideoCPU OUT 6Ch
hardvérové riešenie
Prerušenie od video procesora je realizované spolu s ďalšími rozšireniami v hradlovom poli Xilinx CPLD XC9536.
Schému a detailneší popis zapojenia doplníme neskôr.