ATARI
portfolio


Zde je pár fotek, klikněte pro zvětšení
click 4 zoom click 4 zoom click 4 zoom click 4 zoom click 4 zoom
click 4 zoom click 4 zoom click 4 zoom click 4 zoom click 4 zoom
počeštěné portfolio
click 4 zoom click 4 zoom click 4 zoom click 4 zoom click 4 zoom

Blokové schéma:




Mapa paměti:

FFFFF
E0000
SYSTÉMOVÁ ROM A
128 kB
DFFFF
C0000
SYSTÉMOVÁ ROM B
128 kB
BFFFF
B1000
NEOBSAZENO
B0FFF
B0000
VIDEO RAM
4 kB
AFFFF
9F000
NEOBSAZENO
9EFFF
1F000
ROZŠÍŘENÁ RAM
512 kB
1EFFF
00000
SYSTÉMOVÁ RAM
128 kB


Schema portfolia za které děkuji Lukášovi:

hlavní část 1 - CPU a RAM   GIF image [137kB]
hlavní část 2 - ASIC a sběrnice   GIF image [159kB]
napájecí část - logika zdroje   GIF image [37kB]


Rozšíření vnitřní RAM portfolia na 512kB:

[lukas.dlab^post*cz]

Tak tady to je. jedná se o upgrade ze 128 kB interní paměti na 512 kB interní paměti. Co k tomu budete potřebovat. Jednu paměť 628512, 8 diod 1N4148 a 3 odpory 100k. Pokud se nebojíte vzít do ruky mikropáječku a začít se hrabat ve vašem milém portfoliu, tak čtěte dál.

Technická podstata:

Jedná se o odpojení původní RAM, která je organizovaná jako 4 paměti po 32 kB, a které vybírá IO 74HCT139, který generuje ze signálů A15, A16 a /CS pro první 128kB bank signály /CS pro 4x32 kB. signál /CS ze 74HCT139ky je vyveden z DIP CHIPu pin 21, CRA1. DIP CHIP může adresovat díky pinům 21-CRA1, 22-CRA2, 23-CRA3 a 24-CRA4 maximálně 512 kB interní paměti RAM. Pak jsou tam ještě signály 25-CRO1 a 26-CRO2 které generují signál /CS pro ROM. Takže máme k dispozici 4 signály /CS a paměť 628512, která má jeden signál /CS, zato má ale 19 adresových vodičů. Adresové vodiče A0..A16 můžeme přímo připojit na adresovou sběrnici pamětí. To samé můžeme provést s datovými vodiči D0..D7. Takže zbývají adresové vodiče A17 a A18. A teď jak do nich vměstnat čtyři signály /CS a generovat dva signály A17 a A18 a ještě navíc jeden /CS pro nás? Na to je připraveno oněch 8 diod a 3 rezistory. Tato matice dekóduje ony čtyři /CS signály z DIP CHIPu na naše potřebné dva adresové a jeden /CS. Více vám napoví schéma: 512k_upg.gif [40kB]

Provedení:

Rozšroubujeme zezadu naše oblíbené portfolio tak, že povolíme ty dva šroubky na zadní stěně a pak ty dva co jsou v expanzním konektoru. Pak jde kryt docela snadno sejmout. Tam se naskytne pohled na paměťové chipy. Další jsou, stejně jako DIP chip na druhé straně desky. Na této straně ale umístíme naši novou 628512. Tenkými vodiči propojíme adresovou (A0..A16) a datovou (D0..D7) sběrnici a piny /WE a /OE k původní paměti a k ploškám HC139ky. HC139ku na desce ponecháme, budeme tu původní paměť ještě potřebovat. Odchlípneme jenom pin 1 HC139ky, což je původní /CS. Teď vyrobíme diodovu matici a umístíme ji někam blízko 628512ky. Připojíme z ní zbylé adresové vodiče A17 a A18, nový /CS, a propojíme také matici s piny 21-24 DIP chipu. Zbývá jen připojit napájení, které si také půjčíme z původní RAM. A je to. Teď máme 512kB portfolio. RAM chip můžeme použít jak ve verzi klasické, t.j. DIP32, tak i ve verzi SMD, obojí se do folia bezpečně vejde. Brzo taky tady uvedu nějaké fotky jak to má vypadat jen co seženu něco s čím bych to dokázal... ;))



Rozšíření vnitřní RAM portfolia na 512kB a přidání permanentní interní jednotky B:

[RayeR]

Lákalo mě vyzkoušet Lukášův návod a taky teď v GMku zlevnili paměťové chipy, takže jsem se do toho pustil. Paměť je klasická SMD TSOP, Hynix HY628400A LLG-56. Nicméně zdála se mi dost tlustá na to, abych dával 2 chipy na sebe. Takže jsem ji napájel místo jednoho původního 32kB chipu. Před pájením je třeba jí přihnout nožičky k sobě, aby se chytla na plošky PCB (je širší). V první fázi jsem odpojil /Enable 74HCT139ky a místo toho tam připojil /CE nové paměti. Tím jsem zprovoznil prvních 128kB.

zatím jen 128kB


Pak následovala výroba diodové matice. Použil jsem 8 SMD diod a pár SMD odporů na tišťáku vlastní výroby (asi 20x15mm). Ještě pár slov k tomu, jak to vlastně funguje. DIP chip má 4 nožičky CRA1-CRA4 kterými může vybírat jeden ze čtyř 128kB banků, tedy max. 512kB. Diodová matice tvoří vlastně prioritní kodér jenž zakóduje kód 1 z 4 do binárního, který se přivede na zbylé dvě nejhornější adresy 512kB paměťového chipu. Navíc se ještě generuje /CE. Více napoví pravdivostní tabulka:

CRA4 CRA3 CRA2 CRA1 A18 A17 /CE
0 1 1 1 0 0 0
1 0 1 1 0 1 0
1 1 0 1 1 0 0
1 1 1 0 1 1 0
1 1 1 1 1 1 1
diodová matice

K diodové matici jsem tedy připojil A17, A18, /CE paměti, +Vcc RAM a vývody CRA1-CRA4 jsem dotáhl tenkými drátky z DIP chipu na druhé straně. To bylo asi to nejhorší na celé operaci, protože DIP chip má hodně malou rozteč pinů a tyto zrovna spolu sousedí.

zadrátování matice zvrchu zadrátování matice zespodu

Po zapnutí portfolia se nová paměť korektně nadetekovala a vytvořil se defaultně 128kB ramdisk C: (zbývá 384kB RAM).

screenshot c:


Dále jsem chtěl využít zbylé tři 32kB chipy jako jednotku B: ale nějak se mi to nedařilo. Povedlo se mi rozchodit jen 32kB při použití přímo /CE jedné 32kB paměti, přes /Enable 74HCT139ky mi to nešlo. Tak jsem je všechny odpájel a dal tam jeden 128kB chip LP621024DM-70LL a zapojil podle následujícího schematu:

interni drajv B: - schema


Adresová a datová sběrnice, /OE, /WE a zem je opět společná. Je-li to účelné, lze vzájemně prohodit vývody A15, A16. Data budou sice fyzicky v jiných buňkách, ale nenaruší se tím nijak konzistence čtení/zápisu. signál /CE1 se bere ze signálu NCC1 - pin 6 expanzního portu portfolia. O přítomnosti B:čka se pofu řekne propojením signálů NMD1 na zem (pin 7 na 35) a CDET na +Vcc sběrnice (pin 18 na 32). Zbývá vyřešit logiku napájení a CE2. Pro napájení jsem použil malou 3V lithiovku, kterou jsem jednou nohou připájel k záložnímu kondenzátoru 68uF. Odebíraný strand-by proud paměti je asi 1uA. Pin Vcc paměti je připojen jednak přes obyčejnou křemíkovou diodu k napájení RAM odkud se napájí v případě, že jsou v pofu nabité baterie, a jednak přes germaniovou nebo schottkyho diodu (malý úbytek Uak) z lithiovky, která napájí v případě vybití/vyjmutí baterií. Druhá dioda zároveň zabraňuje toku prudu z pofa do baterie, což by jí neďálo dobře (jinak by to bylo v případě akumulátoru/kondenzátoru GoldCap). Zbývá CE2. Ten musí být při zapnutém pofu aktivní a při vypnutém naopak neaktivní (jinak by se odebíral pamětí poměrně velký provozní proud řádu desítek mA a lithiovka by brzo odešla). Zapojil jsem ho na Vcc pin paměti ROM (pin 32), která je napájena z jiné větve zdroje než RAM. Avšak při vytažení baterií pár vteřin trvá než toto Vcc spadne na nulu a paměť v tu chvíli bere velký proud. Tím může dojít k velkému poklesu napětí záložní baterie a i ke ztrátě dat. Proto je paralelně k baterii připojen 100uF SMD kondenzátor, který zvýšený odběr vykryje. A takto vypadá zadrátování:

zadrátování drive B:


a její úspěšné naformátování a použití:


screenshot B:




rayer^seznam*cz   lukas.dlab^post*cz

zpět   zpět na index


aktualizováno 23:17; 9.8.2004