Stránka 2 z 3

Re: Návrh logického obvodu

Napsal: 31 říj 2023, 10:39
od ondraN
Souhlasím s gilhadem. Pro adresový dekodér je daleko vhodnější ten PAL obvod. Navíc má ošetřené přechodové stavy, což je u adresového dekodéru celkem potřeba. A nebo použít demultiplexery (např. 74LS138, 74LS154) zapojené do kaskády. Ale to je dost peněz a drátování v porovnáním s tím PALem.

Re: Návrh logického obvodu

Napsal: 31 říj 2023, 12:12
od Diego
PAL by asi byl reseni ale za 1. sem s nim nikdy nedelal a za 2. nemam programator tak nemam jak naprogramovat.

Re: Návrh logického obvodu

Napsal: 31 říj 2023, 12:22
od ondraN
A ty adresy máš v nějakých blocích? Pokud ano, můžeš použít ty demultiplexy. Zkus napsat adresy, které potřebuješ selektovat (nejlépe hex).

Re: Návrh logického obvodu

Napsal: 31 říj 2023, 20:40
od Caster
Napiš sem tvou pravdivostní tabulku a co chceš přesně HW pro Z80 udělat, ať se na to můžeme podívat 8-) .

Re: Návrh logického obvodu

Napsal: 01 lis 2023, 04:37
od Diego
adresový dekodér.jpg
červená je log.1
modrá je log.0

Re: Návrh logického obvodu

Napsal: 01 lis 2023, 06:26
od gilhad
Ty tabulky nejsou úplné, to by to nuselo mít 128 řádků.

Zároveň to vypadá, že (pokud tam další řádky nejsou, protože na nich nezáleží) platí

OUT(1) je negací OR(IN(1)...IN(7)) (Výstup je jedna, pouze pokud všechny vstupy jsou nula)
OUT(2) je negací OUT(1)
a ostatní OUT(n) prostě kopírují IN(n+1)

což vypadá jako docela zvláštní logika ... ale spíš neúplné zadání

Možná by bylo lepší napsat, co to má dělat a proč než řešit jak to má dělat.

Například ten můj
http://8bit.gilhad.cz/HW/ATF16V8BQL.html pro http://8bit.gilhad.cz/6809/Expanduino/Expanduino_I.html funguje takhle:

Na desce jsou 4 registry pro čtení (R0..R3) a 4 registry pro zápis (W0..W4). Kterékoli z nich je aktivován, když mu na /Enable přivedu nulu, takže potřebuju 8 výstupů, co budou normálně logická jedna a když se aktivujou budou logická nula.
Na desku vedou 3 bity adresy v normální logice, čili binárně 000..111, dekadicky 0..7, ale já potřebuju adresovat pouze registry 0..3
Taky tam vedou tři signály aktivní v nule, /Read, /Write a /IO1 (který vybírá tu desku)
To je celkem 6 vstupů.

Něco se vybírá, pouze pokud je vybrána deska (/IO1)
Pokud je aktivní /Read, vybírá se jeden z registrů Rx
Pokud je aktivní /Write, vybírá se jeden z registrů Wx
Pokud jsou ale aktivní oba, nebo žádný, nevybírá se nic.
Adresa 0..3 určuje, kolikátý z čipů Rx (resp. Wx) bude vybrán.
Adresy 4 a výš znamenají, že se nevybere nic.

Re: Návrh logického obvodu

Napsal: 01 lis 2023, 10:42
od Diego
Je to komplet.
Je pravda ze kdyz na to ted koukam tak se to vlastne moc nelisi takze by to slo udelat nejspis docela jednoduse jen logikou. Uvidime. EEPROMka to jisti, s tou mam dobry zkusenosti ;)

Re: Návrh logického obvodu

Napsal: 01 lis 2023, 11:09
od peterple
EEPROMKA? PAL? To myslíš vážne? Na toto nepotrebujeme žiadnu KM. Výstupy 3 - 6 si môžeš odpustiť. Sú to vstupy 4-7 teda na to stačí obyčajný drôt.
No a výstup jedna sa dá urobiť jedným 8 vstupovým NAND (jeden vstup sa zapojí na log1). Výstup 2 je potom negácia výstupu 1.
Teda celkovo potrebuješ 1x8vstupový NAND a 1xinvertor a 4xdrôt.

Re: Návrh logického obvodu

Napsal: 01 lis 2023, 23:00
od Caster
Experti poradili jak na to 8-) .
Stačí použít:
Obrázek
a propojit vstup 4 s výstupem 3, vstup 5 s výstupem 4, vstup 6 s výstupem 5 a vstup 7 s výstupem 6

Re: Návrh logického obvodu

Napsal: 05 lis 2023, 09:58
od Diego
Snímek obrazovky 2023-11-05 095555.png
Tak se nakonec povedlo i jednoduše ;)