Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym

trol.six 13 Kwi 2019 11:17 1521 9
  • pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym
    W zasadzie nie wiem jaki tytuł dać ;) Jest to uniwersalny moduł (bufor) a częściowo dedykowany ze względu na dostęp sekwencyjno-blokowy.

    - obsługuje pamięci SRAM w obudowie dip 28
    - umożliwia 4 lub 8 bitowy dostęp
    - podział na bloki 256 lub 512 bajtowe
    - sekwencyjny dostęp
    - konfigurowalny na kilka sposobów
    - LED sygnalizujące stan read/write

    zastosowanie
    - bufor dla różnych systemów w tym o różnych częstotliwościach
    - rozszerzenie pamięci

    pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym

    Moduł testowałem z pamięcią D4464 (8kb) i CS18LV02560 (32kb)
    Zastosowałem głównie układy cyfrowe typu HC.

    pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym

    Projekt:

    pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym

    Pcb jak widzicie 4 warstwowa plus dwie linie na piątej. Płytke zrealizowałem na dwustronnej plus troche okablowania. Jedna warstwa jest cała masa. Po wytrawieniu, pocynowaniu i sfazowaniu otworów na masie, mase pomalowałem lakierem do szkła aby kabelki nie leżały bezpośrednio na niej (na masie). A potem drugi raz aby się nie plątały.

    Podczas montażu:
    pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym


    Zasilanie jest na złączu 16-pinowym ale jest też i osobne złącze

    Rezystory R22 R23 R24 przy 574 (pin 3,4,5) są niepotrzebne (tzn rezystancja 0 zero), to taka zaszłość z początkowego stadium. Tam powinny być ścieżki bezpośrednio.

    pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym
    Złącze (sygnały wystarczające dla 4 bitowej obsługi):
    1 D0
    3 D1
    5 D2
    7 D3
    9 REG
    11 GND
    13 CLK
    15 CE - wewnętrznie podciągnięty

    Dodatkowe sygnały
    2 D4
    4 D5
    6 D6
    8 D7
    10 8 bit
    12 VCC
    14 res
    16 res


    Standardowo działa na szynie danych 4 bit. Ustawienie 8 bit wymaga albo zworki 4-5 i mamy zmiane przez pin 10 lub zworke 3-4 i przez rejestr konfiguracyjny PIN5

    Za pomocą zworki możemy wybrać czy rejestr konfiguracyjny obsługuje zmiane trybu 4-8 bitowego (3-4) czy rozmiar wielkości bloku (2-3).

    Zworka 1-2 ustawia rozmiar bloku na stałe 256 bajtów.

    Zworka:
    1-2 rozmiar bloku na stałe 512 bajtów
    2-3 rozmiar zależny od rejestru konfiguracyjnego bit D2
    3-4 dostęp 4-8 bitowy zależny od rejestru konfiguracyjnego
    4-5 dostęp przez PIN10

    Wpis do rejestru odbywa sie poprzez stan 1 na pinie REG i danych (D3-D0)
    0001 reset licznika adresu
    0010 write ('0' read)
    0100 bufor 512 ('1' 256)
    1xxx - adres 3 cykle

    W trybie 512 bajtowym najmniej znaczący bit adresu nie ma znaczenia. Wpis adresu wymaga wpierw wpisania write do rejestru, następnie 3 cykle zapisu 3 bajtowych wartości od najstarszej. W planach miało być bez tego wpisu write, ale w czasie modyfikacji mi to umknęło. Można to zrobić dając dwie diody na sygnał U1 HC244 pin1, jedna tak jak jest od sygnału WENN druga od REG, i rezystor do plusa. Nie modyfikowałem ale może jak zajdzie potrzeba w przyszłości. (Sygnał REG powinien być zanegowany)
    pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym

    Zapis i odczyt:

    pamięć z 4-8 bitowym dostępem sekwencyjnym-blokowym

    W trybie 4 bitowym wpisujemy najpierw bardziej znaczącą połówke a przy odczycie pierwszą odczytujemy. W trybie 8 bitowym jest ona na dodatkowych pinach.


    Wrzucam program testowy napisany na atmege328, komendy wysyłane przez UART. PCB w formacie pdf, schemat.


    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
  • #2 13 Kwi 2019 14:06
    atari_robbo
    Poziom 20  

    Ale dlaczego nie zrobić wszystkiego w jakimś małym CPLD? To technologia z lat 70tych ubiegłego wieku.

  • #4 13 Kwi 2019 19:41
    trol.six
    Poziom 31  

    Na schemacie były drobne błędy w nazwach linii, poprawiłem i zmieniłem też załącznik: mem01_schematic2.pdf

    trol.six napisał:
    Można to zrobić dając dwie diody na sygnał U1 HC244 pin1,

    A całkiem zapomniałem, mam przecież jedną bramkę and wolną. Można ją wykorzystać. Ale znowu te ścieżki. ;) ... I sygnał REG powinien być zanegowany ;) Ale bramka not też jest jedna wolna.

    atari_robbo napisał:
    Ale dlaczego nie zrobić wszystkiego w jakimś małym CPLD?

    Jak ktoś zrobi, zaprezentuje, obejrzę, to może się zastanowię czy robić czy nie robić ;)

    Piottr242 napisał:
    Czy ta pytka była robiona pod konkretny wymiar cartridge?

    Nie. Natomiast jeśli chodzi o wygląd to mnie się akurat podoba, aczkolwiek zauważyłem że mam niszowy gust. Acz mogę się zgodzić, że bez kabelków pewnie prezentowała by się lepiej. :)

    Nie chciałem już robić większej. Myślałem o zrobieniu kolejnej warstwy z miedzi bo czasem dwustronne tak robie, że kleje warstwe miedzi na żywicy, ale z wielu drobnych niuansów (niezbyt mam to dopracowane) zrobiłem zwykłe okablowanie.

  • #5 14 Kwi 2019 12:47
    Gizmoń
    Poziom 28  

    Uuu, nie ma tu układów programowalnych tylko na sztywno spięte CMOSy. Zero swobody w zmianie funkcjonalności. Jakbyś nagle zechciał zrobić z tego zegarek, a przecież takie zmiany to teraz codzienność, to bez dłubania lutownicą się nie obejdzie. To nie przystoi takie rzeczy robić w XXI wieku :D Żartowałem oczywiście. Fajnie zobaczyć, że jeszcze ktoś robi takie układy cyfrowe. Co z tego, że technika lat 70? Ważne, że daje autorowi trochę rozrywki przy projektowaniu, uruchamianiu, a teraz w trakcie używania. Używania pewnie z podobnymi konstrukcjami, więc jest też zachowana zgodność technologiczna ;) Nie wszystko musi być opłacalne i na najnowszych częściach. Ten obwód drutowany wygląda bardzo artystycznie, takiego jeszcze nie widziałem.

  • #6 14 Kwi 2019 13:57
    Janusz_kk
    Poziom 20  

    Gizmoń napisał:
    To nie przystoi takie rzeczy robić w XXI wieku :D Żartowałem oczywiście. Fajnie zobaczyć, że jeszcze ktoś robi takie układy cyfrowe. Co z tego, że technika lat 70?

    Mam nadzieję że zdajesz sobie sprawę że jak cos padnie to łatwiej wymienić scalaki niż wyszukać uszkodzony ?
    A na procku który to spokojnie ogarnie nie dość że łatwiej testować to i mozna mieć program testowy do naprawy a i łatwiej rozszerzyć o nowe funkcjonalności np SPI czy I2C.

  • #7 14 Kwi 2019 17:37
    trol.six
    Poziom 31  

    Gizmoń napisał:
    a przecież takie zmiany to teraz codzienność,

    I tak i nie. ;) Tutaj kluczowy jest interfejs, realizacja sprzętowa jest drugorzędna. Mając jakiś system nie ma czasu na modyfikacje różnorakich gadżetów z nim współpracujących.

    Nie każdy układ da się przeprogramować potężną ilość razy. Inna rzecz że nawet mając układ programowalny, nie oznacza że możliwości PCB akurat umożliwią te modyfikacje.

    Natomiast cały układ wcale nie musi być jakoś podatny na modyfikacje, zrobienie drugiego z lekką modyfikacją może nie będzie takie straszne. Z tego powodu na pamięć dałem podstawkę aby jej nie lutować. Bo może przyda się w innym projekcie. Myślałem nawet o zmianach bloków na inny rozmiar za pomocą zworek itp, i tu się by można troche przyczepić. ;) Dlatego napisałem że częściowo jest dedykowany z tegoż powodu. Nie jest to jakieś super uniwersalne.

    Janusz_kk napisał:
    łatwiej wymienić scalaki niż wyszukać uszkodzony

    Szczególnie jeśli jest w podstawce. ;)

    Punkt widzenia zależy od punktu siedzenia, jak sobie dłubie, to wole poszukać, bo nie lubię przelutowywać. Natomiast jako wielki producent to chyba wolałbym dać nowy moduł bo seryjna produkcja jest tańsza. Zależy też od sprzętu i awaryjności. Większy sprzęt bym naprawiał. Myśle, nie ma tutaj prostej zasady.

  • #8 14 Kwi 2019 21:12
    Janusz_kk
    Poziom 20  

    trol.six napisał:
    Szczególnie jeśli jest w podstawce. ;)

    Noo, wymienisz i dalej nie działa :) akurat naprawiam to wiem :)
    Układy na cmos-sach są dość paskudne do naprawy.

    Dodano po 2 [minuty]:

    trol.six napisał:
    Natomiast cały układ wcale nie musi być jakoś podatny na modyfikacje, zrobienie drugiego z lekką modyfikacją może nie będzie takie straszne.

    Pewnie tak tyle że to straszna dłubanina, odpowiedni procek z dma np atxmega czy stm załatwia mnóstwo problemów
    i mocno uprasza układ i płytkę.

    Dodano po 58 [sekundy]:

    trol.six napisał:
    Mając jakiś system nie ma czasu na modyfikacje różnorakich gadżetów z nim współpracujących.

    No włąśnie miałem o to zapytać, do czego to stosujesz?

  • #9 14 Kwi 2019 21:26
    pgoral
    Poziom 25  

    Podoba mi się mała płytka. Chyba też mam niszowy gust.
    Podoba mi się rozpisanie na pojedyncze bramki. Czysty hardware. Natomiast szkoda, że schemat nie jest narysowany tak by było widać jak te bramki sobie krążą.
    Z czym tego używasz?

  • #10 15 Kwi 2019 21:21
    trol.six
    Poziom 31  

    pgoral napisał:
    Natomiast szkoda, że schemat nie jest narysowany tak by było widać jak te bramki sobie krążą.
    Z czym tego używasz?


    Ten projekt był modyfikowany grube kilkanaście razy, modyfikacje za pomocą etykiet są szybsze, może nie zawsze czytelniejsze. W każdym razie bramki starałem się "posegregować" funkcjonalnie. I lokalizacja też jest w miarę blisko sygnałów. Osobno blok selektora, osobno sygnały do zatrzaskiwania buforów, osobno aktywacja sygnałów REG.

    Płytke zrobiłem bo eksperymentuje z systemami cyfrowo-operacyjnymi. Między innymi:
    Obsługa wątków na pic18

    Postaram się zaprezentować jakieś osiągnięcia jeśli będzie czym się chwalić ;) Bo zaczęło się od obsługi wątków, ale temat się rozrasta.
    .