Rozszerzenie pamięci do 256kB lub 320KB

   Po kilku mailach postanowiłem przychylić się do prośby kolegów i umieścić na stronach tego maga schemat rozszerzenia pamięci. Autorem tego projektu jest Tomasz S. Piotrowski, a wcześniej był on publikowany w Atari Magazynie 5/94. Układ jest w pełni działający (sam go chyba ze 3 razy montowałem).
Teks znajdujący się poniżej jest przedrukiem z Atari Magazynu nr 5/94.

   Na rysunku przedstawiony został schemat rozszerzenia pamięci, przeznaczeonego dla komputerów Atari 800 XL i 65 XE. Układ ten pozwala rozszerzyć pamięć w tych modelach do 256 kB. Obsługa dodatkowej pamięci jest realizowana przy wykorzystaniu wolnych bitów portu B PIA. Dla zaawansowanych atarowców nie jest zapewne tajemnicą, że dodatkowa pamięć jest włączana w bankach po 16 kB w obszar adresowy $4000-$7FFF (kolejność włączaniaposzczególnych banków przedstawia tabela). Zadaniem przedstawionego sterownika jest dzielenie liniowej przestrzeni adresowej układów pamięci na banki, włączne w w/w obszar.
    Zaadresowanie tego obszaru jest wykrywane przez bramkę U1B i jeśli bit 4 portu B jest ustawiony na "0" (co oznacza "chęć" programu do korzystania z pamięci dodatkowej) - do układów pamięci, zamiast najstarszych bitów adresowych, są wysyłąneodpowiednie bity portu B PIA.
   Do rozszerzenia pamięci należy użyć ośmiu układów 41256 (oczasie dostępu poniżej 150 ns) lub ich odpowiedników. Ukłądy te montujemy (koniecznie w podstawkach) w miejscach "starych" pamięci RAM (po uprzednim ich usunięciu). Powinno się uważać, aby podczas wylutowywania scalaków nie uszkodzić połączeń na płycie komputera. Kości pamięci RAM, które należy usunąć, znajdują się z lewej strony płyty komputera. Jest to osiem jednakowych 16-nóżkowych ukłądów scalonych, oznaczonych na płycie jako U9 - U16, mających symbole 4164 lub 4264. Po wlutowaniu podstawek trzeba w komputerze 65 XE połączyć ze sobą cienkim przewodem wszystkie pierwsze wyprowadzenia (w modelu 800 XL nóżki te są już połączone). Gdy powyższe "scalakołomne" czynności udało się wykonać, reszta nie powinna już sprawić trudności. Na początku należy zmontować sterownik - najlepiej na płytce drukowanej (punkty oznaczone "X" trzeba połączyć przewodem). Następnym krokiem jest zlokalizowanie układu PIA. Jest to 40-nóżkowy układ scalony, znajdujący się z prawej strony płyty, oznaczony U23 o symbolu 6520. Interesujące nas wyprowadzenia to bity 2 - 6 portu B. Znajdują się one odpowiedni na nóżkach 12 - 16 układu scalonego. Teraz należy podłączyć do naszego sterownika 5 bitów portu B PIA oraz sygnał RAS. Sygnał ten znajduje się na czwartym wyprowadzeniu układów pamięci i jest tam doprowadzony przez rezystor R107 (800 XL) lub R106 (65 XE). Przewód należy przylutować PRZED tym rezystorem. W modelu 800 XL wejście RAS sterownika równie dobrze można podłączyć do pierwszej nóżki układu U26 lub U27.
   Jeśłi rozszerzenie montujemy w modelu 800 XL, to najpierw trzeba przeciąć ścieżki z sygnałami A14 i A15, dochodzące do układu U27 (74LS158) od spodu płyty. Sygnał A14 dochodzi do wyprowadzenia 13 układu, a sygnał A15 do wyprowadzenia 10. Wyprowadzenie 13 łączymy przewodem z wyjściem Y2 sterownika, a wyprowadzenie 10 z wyjściem Y3. Podłączamy do sterownika linie A14 i A15. Dla wygody, sygnały A14 i A15 można znaleźć w innym miejscu płyty np. na nóżkach procesora U8 (A14 - nóżka 24, A15 - nóżka 25). Wyjście Y1 sterownika łączymy z prawym wyprowadzeniem rezystora R23 znajdującego się nad pamięciami. Od wyprowadzenia tego biegnie ścieżka, łącząca pierwsze nóżki wszystkich pamięci RAM. W pamięciach 64 kB nóżki te nie były wykorzystane, teraz jest tam dodatkowy bit adresowy.

LISTING 1

Program sprawdzający poprawność montażu rozszerzenia pamięci w komputerach Atari serii XL/XE

HH 10 FOR S=129 TO 205 STEP 4
NZ 15 POKE 54017,S:POKE 20000,S
MC 20 NEXT S
BE 25 POKE 54017,253:POKE 20000,0
KK 30 FOR S=129 TO 193 STEP 32
XL 35 FOR A-0 TO 12 STEP 4
TY 40 POKE 54017,S+A
NY 45 IF PEEK(20000)<>S+A THEN 70
BS 50 NEXT A:NEXT S:POKE 54017,253
RE 55 IF PEEK(20000)<>0 THEN 70
VB 60 ? :? "O.K."
ZE 65 END
JB 70 ? :? "ERROR !"
   Jeśli rozszerzenie montujemy w modelu 65 XE, to najpierw należy przeciąć ścieżki doprowadzające sygnały A14 i A15 do układu scalonego U6 na górnej stronie płyty. Sygnał A14 dochodzi do nóżki 23, a sygnał A15 do nóżki 24 układu U6. Następnie trzeba podłączyć (podłączone wcześniej przewodem) pierwsze wyprowadzenia układów pamięci RAM (podstawek) do wyjścia Y1 sterownika. Wyjścia Y2 i Y3 podłączamy odpowiednio do nóżek 23 i 24 ukłądu scalonego U6, potem doprowadzamy do sterownika sygnały A14 i A15 z odciętych ścieżek.
   Na koniec podłączamy do sterownika zasilanie. Ze znaleziemiem ścieżek zasilania (na płycie komputera) nikt, kto choć trochę oriętuje się w budowie układów elektronicznych, nie powienien mieć żadnych trudności.
   Inaczej rzecz się ma, gdy chcemy rozszerzyć pamięć w komputerze 130 XE. Tu znajduje się już sterownik oraz miejsce na dwa zestawy scalaków pamięci (umieszczonych podobnie jak w innych modelach). Dzięki temu w modelu 130 XE możemy łatwo rozbudować pamięć do 320 kB. Potrzebny nam będzie do tego jeden układ 74LS157 i osiem układów pamięci 41256.
   W komputerze 130 XE należy usunąć drugi od lewej (ten bliżej środka płyty) rząd pamięci RAM i wlutować podstawki. Przy samych pamięciach, dokładnie na prawo od drugiego układu licząc od dołu, umieszczony jest 16-nóżkowy układ scalony. Jest to sterwonik rozszerzenia pamięci. Ma on oznaczenie CO25953. Po jego zlokalizowaniu trzeba podłączyć układ 74LS157. W tym celu najpierw odginamy płaskimi nóżki tego układu na boki. Nie odginamy tylko nóżek o numerach 8 i 16. Teraz należy nałożyć kostkę z odgiętymi końcówkami na ukłąd sterownika rozszerzenia pamięci i zlutować ze sobą wyprowadzenia 8 i 16 obydwu ukłądów. Reaszta końcówek układu 74LS157 powinna wisieć w powietrzu niczego nie dotylając. Teraz łączymy przewodem (od spodu płyty) pierwsze wyprowadzenia wlutowanych podstawek. Koniec przewodu wyprowadzamy na górną stronę i podłączamy do końcówki 7 nalutowanego układu 74LS157. Końcówkę 15 tego układu podłączamy do masy. Do nóżki 1 doprowadzamy sygnał RAS. Znaleźć go można np. na końcówkach 4 nie wylutowanych pamięci.
   Teraz trzeba zlokalizować układ PIA. Podobnie jak w innych modelach, znajduje się on z prawej strony płyty komputera i ma oznaczenie 6520 (ewentualnie 6521). Na wyprowadzeniach 15 i 16 znajdują się odpowienio bity 5 i 6 portu B. Od końcóki 15 na górnej stronie płyty odchodzi ścieżka. Należy ją przeciąć, a część biegnącą w dół (nie do PIA) podłączyć przez rezystor 4k7 do plusa zasilania. Drugim rezystorm 4k7 podłączmy również do plusa zasilania wyprowadzenie 16 ukłądu PIA. Następnie łączymy przewdoami nóżki 15 i 16 układu PIA z nóżkami 5 i 6 zamontowanego wcześniej układu 74LS157 (kolejność obojętna). Reszta wyprowadzeń scalaka 74LS157 powinna pozostać nie podłączona.
   Ostanią czynnością podczas rozszerzania pamięci, bez względu na typ komputera, powinno być włożenie nowych pamięci w podstawki!

bit "B PIA" 6 5 4 3 2
bank podst. x x 1 x x
bank 0
bank 1
bank 2
bank 3
0 0 0 0 0
0 0 0 0 1
0 0 0 1 0
0 0 0 1 1
bank 4
bank 5
bank 6
bank 7
0 1 0 0 0
0 1 0 0 1
0 1 0 1 0
0 1 0 1 1
bank 8
bank 9
bank 10
bank 11
1 0 0 0 0
1 0 0 0 1
1 0 0 1 0
1 0 0 1 1
bank 12
bank 13
bank 14
bank 15
1 1 0 0 0
1 1 0 0 1
1 1 0 1 0
1 1 0 1 1
Tabela obok przedstawia adresowanie banków pamięci bitami 2..6 portu "B" układu PIA (banki 12..15 dotyczą tylko komputera 130 XE)

   Obraz plytki  Rozmieszczenie czesci

Powrot