120 likes | 233 Views
DEKODERINGSTEGNIEKE. PROM DEKODEERDERS PAL (GAL) DEKODEERDERS VOORBEELD OEFENING. (sien ook boek vb: fig 10-17). PROM DEKODEERDERS. Gestel die data by prom adress 0 tot 3FH is FEH. Dan geld: A19 ….……….A10 D7……….D0 0000 0000 00 11111110
E N D
DEKODERINGSTEGNIEKE • PROM DEKODEERDERS • PAL (GAL) DEKODEERDERS • VOORBEELD • OEFENING RS245-2003-Lesing 18
(sien ook boek vb: fig 10-17) PROM DEKODEERDERS Gestel die data by prom adress 0 tot 3FH is FEH. Dan geld: A19 ….……….A10 D7……….D0 0000 0000 00 11111110 0000 0000 01 11111110 tot 0000 1111 11 11111110 A0 D0 A1 D1 ens A9 D7 A10 - A19 /CS0 - /CS7 /CS /OE GND Verbind A10 (stelsel adresbus) aan A0 (PROM ) ens, D0 (PROM) = /CS0, D1 (PROM) = /CS1 ens. A0 tot A9 van die adresbus word nie gedekodeer nie. Elke blok is gevolglik 210 = 1K. Hierbo is 64 blokke toegeken aan /CS0. Die laagste 64 K behoort dus aan /CS0. Met ander woorde adresse: 0000 00000000 0000 0000 tot 0000 11111111 1111 1111 sal /CS0 nul maak RS245-2003-Lesing 18
Gestel die data in die PROM by adres 200H is FDH. A19 ….……….A10 D7……….D0 1000 0000 00 11111101 Slegs een blok is toegeken aan /CS1 Met ander woorde 1K adresse behoort aan /CS1 Adresse 1000 00000000 0000 0000 tot 1000 00000011 1111 1111 maak dus /CS1 nul. Die 1K blok van 80000H tot 803FFH behoort dus aan /CS1. A0 D0 A1 D1 ens A9 D7 A10 - A19 /CS0 - /CS7 /CS /OE GND Nota: Die voorbeeld in die boek ken dieselfde aantal blokke toe aan elke /CS, maar 'n PROM dekodeerder het juis die voordeel dat die blokke nie ewe groot hoef te wees nie. RS245-2003-Lesing 18
PDL DEKODEERDERS ( p353-) PLD : programmable logic array (Dikwels Flash tegnologie) CPLD: complex PLD (Dikwels Flash tegnologie) PAL : 'Programmable Array Logic (Fuseable link tegnologie) GAL : 'Generic Array Logic' (Flash tegnologie) PAL 10L8 8 uittreelyne A17 10 intreelyne /CS0 A18 Dit is duidelik dat PALs aangewend kan word vir /CS dekodering. A19 Hier is die PAL geprogrammeer sodat: /CS0 = /((A17.A18./A19)+(/A17.A18.A19)) RS245-2003-Lesing 18
VOORBEELD Ontwerp met behulp van 'n 1K PROM 'n adresdekodeerder wat die volgende selekteerlyne in 'n 8086 stelsel aandryf : /CS0 : 4 K RAM met beginadres 00000H ( 2 x 2 K RAMs) /CS1 : 8K EPROM met eindadres FFFFFH ( 2 x 4 K EPROMs) Gee 'n tabel wat aantoon hoe die EPROM programmeer moet word. Aanvaar dat die /BHE en /A0 adreslyn by die dekodering ingesluit word. Nota: Die alternatief is om die /wr lyn na die ewe en onewe RAM pakkies te beheer soos op p 366. /BHE /WR /A0 /WRonewe /WRewe RS245-2003-Lesing 18
Elke RAM 2K : 7FFH Die RAM het dus 11 adreslyne. Elke EPROM 4K : FFFH Die EPROM het dus 12 adreslyne RAMx2: 00000H tot 00FFFH EPROMx2: FE000H tot FFFFFH RAM (A1-A11) [1] D0 /CS ewe D1 onewe /CS A0 /BHE A0 D0 A1 D1 .. A2 D7 .. A9 EPROM (A1-A12) A12 tot A19 D2 ewe /cs /CS /OE gnd /cs onewe RAM: 0000 0000 xxxx xxxx xxxx EPROM:1111 111x xxxx xxxx xxxx A0 word gebruik om te onderskei tussen ewe en onewe RS245-2003-Lesing 18
A0 /BHE D0 /CS RAMewe D1 /CS RAMonewe D2 /CS EPROM A0 D0 A1 D1 .. A2 D7 .. A9 A12 tot A19 RAM: 0000 0000 xxxx xxxx xxxx EPROM:1111 111x xxxx xxxx xxxx /CS /OE gnd A0 en /BHE moet ook in ag geneem word: A19.. A12 /BHE A0 D7 D6 D5 D4 D3 D2 D1 D0 0000 0000 0 0 1 1 1 1 1 1 0 0 0000 0000 0 1 1 1 1 1 1 1 0 1 0000 0000 1 0 1 1 1 1 1 1 1 0 0000 0000 1 1 1 1 1 1 1 1 1 1 0000 0001 0 0 1 1 1 1 1 1 1 1 tot 1111 1101 1 1 1 1 1 1 1 1 1 1 1111 111x x x 1 1 1 1 1 0 1 1 RS245-2003-Lesing 18
VOORBEELD TOETSVRAAG Die skets toon die adresdekodeerder vir 'n 8086 stelsel. (1) Bepaal geskikte adresse vir elke geheue komponent. (2) Bepaal watter van die intreelyne na die PAL benodig word as onvolledige dekodering gebruik word. (3) Skryf die logiese vergelykings neer vir elke /CS uitgang. RS245-2003-Lesing 18
PAL10L8 /CE 2732A 2732A A19 A18 A17 A16 A15 A14 A13 A12 A0 1 19 2 18 3 17 4 16 5 15 6 14 7 13 8 12 9 11 /CE /CE CYC198 CYC198 /CE /CE CYC198 CYC198 /CE /CE CYC198 CYC198 /CE /BHE (Ingang!) Basiese inligting: 8086 stelsel :16 bis data, 20 bis adres 2732: 8 bis data , 4k grepe elk (EPROM) CYC198: 8-bis data 32k grepe elk (RAM) RS245-2003-Lesing 18
Plaas RAM by laagste adresse: 3 blokke van 2 x 32 K = 3 blokke van 64 K elk: 00000 tot 0FFFF 10000 tot 1FFFF 20000 tot 2FFFF Plaas die EPROMs by die hoogste adres. 1 blok van 2 x 4K = 8 K: FE000 tot FFFFF (FE000 = FFFFF - 1FFF) RS245-2003-Lesing 18
Die kleinste blok is 8 K (13 adresbisse). Vir volledige dekodering moet A13 tot A19 dus dekodeer word. A0 en /BHE moet dekodeer word om tussen RAM ewe, onewe en woord adresse te onderskei. Vir onvolledige dekodering, is dit voldoende om slegs A0, /BHE, A16 en A17 te dekodeer aangesien A16 en A17 voldoende is om die vier adresblokke te onderskei. RAM: xx00 0000 0000 0000 0000 tot xx00 1111 1111 1111 1111 xx01 0000 0000 0000 0000 tot xx01 1111 1111 1111 1111 xx10 0000 0000 0000 0000 tot xx10 1111 1111 1111 1111 EPROM: xx11 xxx 0 0000 0000 0000 tot xx11 xxx1 1111 1111 1111 RS245-2003-Lesing 18
EPROM (EWE) : /(A16 . A17) EPROM (ONEWE) : /(A16 . A17) RAM0 (EWE) : /(/A0 . /A16 . /A17) RAM0 (ONEWE) : /(/BHE . /A16 . /A17) RAM1 (EWE) : /(/A0 . A16 . /A17) RAM1 (ONEWE) : /(/BHE . A16 . /A17) RAM2 (EWE) : /(/A0 . /A16 . A17) RAM2 (ONEWE) : /(/BHE . /A16 . A17) Nie nodig om A0 en /BHE te dekodeer vir EPROM nie. RS245-2003-Lesing 18