eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaProblem z dekoderem adresówRe: Problem z dekoderem adresów
  • Data: 2025-04-23 20:51:39
    Temat: Re: Problem z dekoderem adresów
    Od: Atlantis <m...@w...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 19.04.2025 09:53, Janusz wrote:

    > No to pozostaje ci tylko podłączyć jakiś analizator stanów i analizować
    > to adresowanie i na czym się wiesza, może potem na tej podstawie napisać
    > kawałek programu żeby sie w kółko kręcił i dał możliwość dokładnego
    > zbadania zależności oscylem.

    Ok, kilka prób z użyciem oscyloskopu faktycznie wyjaśniło sprawę.
    Okazuje się, że miałem do czynienia z mieszanką dwóch przyczyn.
    Pierwsza była banalna - zamieniłem miejscami sygnały A15 i SHADOW_ROM na
    wejściach 74139, przez do dekoder generował niewłaściwe sekwencje
    sygnałów CS dla pamięci, co prowadziło do konfliktu po ustawieniu
    SHADOW_ROM w stanie wysokim.

    Jednak samo to nie rozwiązało problemu, bo jak się okazuje była jeszcze
    druga przyczyna, faktycznie związana z timingami. Układ zaczął działać
    dopiero wtedy, gdy zsynchronizowałem sygnał CS portu 74273 (generującego
    SHADOW_ROM) z zegarem systemowym, zatrzaskując go w flip-flopie. Było to
    relatywnie proste do realizacji, bo tę część logiki miałem
    zaimplementowaną w GAL-u.

    Teraz zabrałem się za wprowadzanie podobnej modyfikacji w starszej
    wersji projektu na 8080. Tym razem wejścia 74139 są podłączone
    prawidłowo (sprawdzone wizualnie i za pomocą oscyloskopu) ale układ
    również nie działa, wywalając się po skoku do załadowanego CP/M-a.
    Podejrzewam, że to też jakaś wersja problemów z timingiem przy pisaniu
    do portu. Tym razem port jest zrealizowany na 74S412 (polski klon 8212).

    Sterowanie portem odbywa się w następujący sposób:
    1. Pin MD podciągnięty do VCC
    2. Wejście DS1 podłączone do IO_WR
    3. Wejście DS2 podłączone do zanegowanego wyjścia dekodera adresów I/O
    (74138)
    4. Wejścia DI0..DI7 do magistrali systemowej.
    5. Wyjścia DO0..DO7 tam, gdzie są potrzebne. ;)

    Zastanawiam się czy i tym razem nie opóźnić trochę sygnału DS2, przez
    zatrzaśnięcie go w 7474 sygnałem zegara systemowego.

    Tylko dlaczego w ogóle mam ten problem? Czy przypadkiem w 8080 nie
    powinienem mieć już stabilnej nowej wartości na liniach danych, gdy na
    szynie adresowej pojawia się adres, a linia IO_WR przechodzi w stan niski?

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: