Autor Wątek: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.  (Przeczytany 12694 razy)

McArti0

  • Moderator
  • *****
  • Wiadomości: 264
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #60 dnia: 2024.11.24, 19:05:29 »
Wersja De/Multiplekserowa ...

W zasadzie rozrysowałem dyskretną wersję klona RAM-BOXa stworzoną naście lat temu przez Jarka Adamskiego.

https://www.cpcwiki.eu/index.php/RAM_BOX

UWAGA!!! na schemacie https://www.cpcwiki.eu/index.php/File:RAMBOX_SCH.png JEST WIELBŁĄD w postaci ŹLE wstawionego i podłączonego TRANZYSTORA RAMDIS.
Szanse na działanie równe są zero! Chyba specjalnie przez lata tego nie poprawili żeby nikt z newbie tego nie uruchomił i kupował gotowce.
Uszkodzenie 74151 w GRATISIE. :o

Nasz układ działa tak ...

Link do symulacji CPC6128 4MB dyskretnie TTL/AHCT itp.

« Ostatnia zmiana: 2024.11.24, 19:55:43 wysłana przez McArti0 »

ZorrO

  • ****
  • Wiadomości: 293
  • Miejsce pobytu:
    UK
  • CPC AGA PSX
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #61 dnia: 2024.11.25, 21:54:24 »
Z tego co pamiętam to Yarkowa wersja nie była zewnętrzna, tylko wymagała masy "makaronu" w środku.

ArturM

  • ***
  • Wiadomości: 228
  • Miejsce pobytu:
    GZM
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #62 dnia: 2024.11.26, 09:33:52 »
No dobra, udostępnię full projekt. Bez gwarancji, że działa.

ZX 48 | HQ 48 SMD | Sizif-512 | FDD3000 | SFDD3500 | M-397 Multiinterface | DivMMC AY - KiCad user | PCB Designer

McArti0

  • Moderator
  • *****
  • Wiadomości: 264
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #63 dnia: 2024.11.26, 13:26:57 »
Dokładnie chodzi mi o RAM-BOX 512kB, zewnętrzne rozszerzenie Yarka, które przerobiłem na 4MB.

McArti0

  • Moderator
  • *****
  • Wiadomości: 264
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #64 dnia: 2024.12.06, 10:03:24 »
Na priv padło pytanie co trzeba zrobić żeby to działało na cpc464.
Kilka faktów.
W CPC464 nie przewidywano podłączenia dodatkowej pamięci RAM.
Układ GateArray 40010/08/07 w CPC do zarządzania pamięcią nasłuchuje sygnałów z procesora nMREQ i nRD (n to jest to samo co kreska u góry).
Nie nasłuchuje nWR.
Skąd zatem wie czy następuje zapis? Ano dedukuje, jeżeli nMREQ jest niskie a nRD jest wysokie to znaczy, że jest to zapis.
Karta rozszerzeń sygnałem RAMDIS blokuje, tylko odczyt z RAM. Nie jest w stanie zablokować Zapisu. (W 6128 blokuje odczyt i zapis).

Co tu robić? Jak teraz zapisać coś do RAM zewnętrznego i nic nie zapisać jednocześnie do wewnętrznego?

Z80 żąda zapisu do pamięci nRD wysokie, nWR niskie, nMREQ niskie.
GateArray słucha nMREQ niskie, nRD wysokie, hura zapisujemy do wewnętrznej RAM!

Pytanie jak to przerwać....

McArti0

  • Moderator
  • *****
  • Wiadomości: 264
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #65 dnia: 2024.12.06, 17:48:05 »
Skoro o zapisie do wewnętrznej pamięci RAM decydują dwa druty łączące Z80 i GateArray i oba są wyjściami procesora, to zewnętrznie można tylko zrobić zwarcie na jednym z nich. Tak w CPC464 zewnętrzną pamięć podłączyć można robiąc zwarcie na jednym z pinów Z80 i on ma to przeżyć.  :o

układy C/NMOS mają taką umiejętność, że można im trochę bezkarnie przypalać boczki.

W przypadku CPC464 moglibyśmy udawać, że odczytujemy zwierając wysoki sygnał na nRD w dół do masy a do zewnętrznych pamięci wysyłać sygnał dodatni (że niby nic złego się nie dzieje)
Inna droga to niski sygnał nMREQ zewrzeć do plusa na tyle żeby GateArray zobaczyło, że co złego to nie my i nie pracujemy na pamięci w ogóle.

ten drugi sposób jest powszechny od 40 lat.

Jak wrażenia?

pawelb

  • ***
  • Wiadomości: 238
  • Miejsce pobytu:
    Wawa
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #66 dnia: 2024.12.06, 22:06:03 »
Ogólnie fajny projekt!!

Czy pisząc
Cytuj
Tak w CPC464 zewnętrzną pamięć podłączyć można robiąc zwarcie na jednym z pinów Z80 i on ma to przeżyć.  :o
miałeś na myśli podanie logicznego zera?  Jeśli tak to też od 40lat stosuje się rezystory pull-up by sygnał nie był o wartości 0V tylko trochę więcej ale w zakresie tego stanu logicznego.

McArti0

  • Moderator
  • *****
  • Wiadomości: 264
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #67 dnia: 2024.12.06, 23:06:23 »
Chyba nie załapałeś.

Gdy WYJŚCIE MREQ Z80 jest Lo/Niski/Zero itp. masz z tego zrobić conajmniej 2V żeby było Hi.

czyli tranzystor NMOS w stanie przewodzenia ma mieć spadek napięcia <2V.

Zegar

  • **
  • Wiadomości: 60
  • Miejsce pobytu:
    Europa
  • Z80/CA80
    • Wszystko o CA80.
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #68 dnia: 2024.12.07, 11:38:50 »
... od 40lat stosuje się rezystory pull-up by sygnał nie był o wartości 0V tylko trochę więcej ale w zakresie tego stanu logicznego.
Rezystory pull-up podciągają do stanu logicznego HIGH. Potrzebne są zwłaszcza w celu ustalenia stanu na niepodłączonych wejściach o dużej impedancji (CMOS), żeby nie generowały nieprzewidywalnych przebiegów. Stan niski na takich wejściach można wymusić rezystorem pull-down. To samo można osiągnąć podłączając wejście do masy (lub Vcc), ale wtedy niemożliwe jest użycie tego wejścia przez podłączenie czegoś w przyszłości.

pawelb

  • ***
  • Wiadomości: 238
  • Miejsce pobytu:
    Wawa
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #69 dnia: 2024.12.09, 19:08:26 »
Może masz i rację - człowiek całe życie się uczy.
Trik z pull-up zobaczyłem w filmach na YT u "Adrian's basement".  Grzebał przy starym kompie Apple lub CBM.
I tłumaczył że takie zastosowanie jest po to by nie doprowadzać bezpośrednio do zwierania do masy ale o kilka mili Voltów ponad 0V.

McArti0

  • Moderator
  • *****
  • Wiadomości: 264
Odp: DIY Sterownik pamięci do CPC do pracy z dowolną pamięcią SRAM.
« Odpowiedź #70 dnia: 2025.02.24, 19:09:25 »
No i jest jednak błąd w układzie! Jeden kabelek na inny Pin złącza.

Powinniśmy zamiast do RD podłączyć do RAMRD. także jedno cięcie ścieżki i jeden kabelek dodatkowo.

Pliki obrazów ArturM w wątku zostały poprawione.


« Ostatnia zmiana: 2025.02.24, 21:34:34 wysłana przez McArti0 »