SBC6502 - 1. 7 chip computer. 32kB RAM.

By Administrator at januára 11, 2016 18:00
Filed Under: SBC6502

 

 

SBC6502 - skúsim to bližšie definovať:


- pracovný takt =1.8432MHz (je to 2x viac ako originál, kde to u Granta fičí na 0.9216MHz)

  (aby som bol spravodlivý - aj on to skúšal na vyšších rýchlostiach)
- vstavaný Basic (upravený OSI Basic 8kB do novej 16kB Eprom)
- komunikácia prebieha cez Hyperterminál, potrebné nastavenie:
  (115.200 Bd, 8 bits, hardware handshake, no parity, 1 stop bit)
- veľkosť použitej ROM = 16KByte
- veľkosť použitej RAM = 32kByte

  (RAM je možné zväčšiť, napríklad na 40kB, alebo až na 46kB)

Použité obvody:
- 1x procesor 65C02, alebo 6502C

   (beží tu aj procesor z malého Atari 14806 - vyskúšané - len to potrebuje HW úpravu !!!)
- 1x obvod 68B50 (ten je priamo na 2MHz, ale fungujú aj 6850 určené na 1MHz  - overené)
- 2x 74LS00
- 1x Eprom 27128 (alebo po príslušnej úprave aj 27256)
- 1x SRAM 32kByte 62256
- 1x obvod MAX232

- x-tal oscillator 1.8432MHz

____________
Ak sa následne použije rozširovacia doska s čipom 8255 (3 osembitové porty - toto pripojenie je vlastný návrh):
- 1x adresový dekodér 74LS138
- 1x obvod 8255A
- je potrebné "prekopať" reset a teda pribudne ešte 1x čip 555

________________

Celá "mašinka" beží na takte 1.8432MHz, použité komponenty v zapojení to v pohode stíhajú. V pôvodnej verzii to dokázalo za cenu ďalšieho čipu bežať na polovičnej frekvencii, ale myslím si že to je pre moje využitie zbytočné. Upozornenie pre skalných puristov - ak chcete fungovať skutočne na frekvencii necelých 1MHz čo je pôvodná rýchlosť -  navštívte stránky Searl Granta, treba ešte navyše deličku 2, čo zvládne 1/2 obvodu 74LS74. Ja som rád že je moja SBC6502 oproti pôvodnému originálu 2x rýchlejšia, toto mi vôbec ale vôbec nevadí ...

 

Možno sa to nezdá, ale aj tých 32kB RAM je hodne veľké miesto pre software, tobôž ak sa nepoužíva grafika. (V ďalšom ešte budú uverejnená verzia s 40kB RAM a následne aj verzia pre 46kB RAM, toto už by malo stačiť každému ... síce to nie je 640kB, ale ja zase nie som Bill Gates ...)

 

Nejako extra nebudem zdôrazňovať že je to celé postavené na univerzálnej doske kde sa mi s tým celkom dobre robí, káblikov na prepojenie nie je až tak veľa. Pretože mi zjavne stačí 1 kus SBC6502 tak som sa nesnažil vymyslieť aj plošný spoj = pre 1 kus na otestovanie či to naozaj funguje je to zbytočná robota.
Obvody 6850 čo mám k dispozícii síce majú deklarovanú rýchlosť iba na 1MHz, ale tu to v pohode stíhajú. Searl Grant na svojich stránkach tvrdí že čip 6850 ide bez najmenších problémov na 1.8432MHz, môžem to potvrdiť, vyskúšal som 4 kusy a všetky fičali na jedničku. Takže už to teraz tvrdím aj ja.
(Teraz už mám aj osadenú 68B50, ale prvotné spúšťanie a testy som robil na 6850-ke, po celú dobu idem iba na 1.8432MHz.)

 

Takto to vyzerá po zapnutí, následne stlačenie Cold,

+ potvrdenie  Enter pre  Memory Size,

+ potvrdenie Enter pre Terminal With.


Najprv som rešte pred stavbou ozmýšľal že postavím jeden kus 100%-ne rovnaký ako originál od Searl Granta, ale potom som si povedal že to priamo pri stavbe trošku "poohýbam" a priamo prerobím k "obrazu svojmu":

- obvod 74LS74 v zapojení vôbec nepoužijem, pretože nechcem aby procesor bežal na frekvencii 1.8432/2=0,9216MHz, puristi si ho určite do obvodov pridajú (síce ten necelý 1MHz môže byť zaujímavý z hľadiska spotreby, ale nejedná sa o nejaké veľké odbery, takže toto neriešim)


- x-tal a hradlá pre oscilátor som zamenil priamo za x-talový oscilátor 1.8432MHz (ušetríte 3 hradlá typu 74LS04, x-talové oscilátory pri 5V majú povolené zaťaženie 10 vstupov TTL čo bohate postačuje, my tu máme záťaž max. 3 vstupy TTL)


- zapojenie ktoré použijem dokáže priamo použiť x-talové oscilátory v púzdre 14 pin, alebo 8 pin - proste ja obidva druhy oscilátorov mám doma, tak som to urobil zapojenie pre obidva typy oscilátorov v jednej 14 pinovej pätičke


- na základnej doske sú prehodené pozície RAM a EPROM oproti schéme, tak sa mi to hodilo pre lepšie rozloženie prívodov U6 a U7, žiaden iný dôvod nebol


- nakoniec som nahradil Eprom pamäť 27128 za pamäť 27256 (tých mám podstatne viac, 27128 sú dosť nedostatkové zbožie) a teda dokážem prepínať medzi pôvodným a upraveným OS, takto je k dispozícii 2x 16kB priestor Eprom (v schéme uvádzam zapojenie iba na typ 27128 pretože postačuje). Pre začiatočné testy som do Eprom nahral OS 2x za sebou t.j. teraz je jedno ktorých 16kB je funkčných (27256)


- zmenil som obvod 74LS04 za druhý obvod 74LS00 (používam o jeden typ menej = to sa hodí), z prvého IO 74LS00 1/4 (U6:A) sa robí invertor pre obvod 6850, pridaný odpor 2k2 je potrebný, pretože IRQ výstup obvodu 6850 (68B50) je typu open collector, 2/4 74LS00 (U7:B) slúži ako invertor pre správnu funkciu Reset obvodu 8255A. Hradlá 3/4 (U7:C) a 4/4 (U7:D) druhého obvodu 74LS00 sú nezapojené, slúžia ako rezerva (nakoniec som ich tiež použil)


- pre dekódovanie adries EPROM pamäte som použil 1/4 74LS00 (U7:A)


- pre dekódovanie adresného priestoru obvodu 8255A je potrebné použiť obvod 74LS138, ktorý je tiež pridaný navyše (vďaka dekodéru 74LS138 viem pripojiť maximálne 8 periférií typu 6520A, 8255A a pod., doma v šuplíku bola voľná 8255 (a 8255 sa ľahko programuje) takže voľba použitého čipu bola jasná ...)


- celková zmena Resetu, hlavne kvôli 8255 pridaný čip 555 pre generovanie nového Resetu (až ak použijete pripojenie 8255-ky)


- pridal som obvody na indikáciu sériovej komunikácie a pripojenia napájacieho napätia (nie sú za každú cenu potrebné, ale uľahčujú oživovanie)


- zvolil som napájanie 12V, potrebných 5V sa vyrába zo spínaného meniča, ktorý je umiestnený na základnej doske. Prečo ? Pretože tých 12V sa mi hodí pre moje ďalšie experimentovanie. A je podstatne príjemnejšie ak Vám stačí jeden zdroj a nemáte na stole 5V, 9V, 12V a tak ďalej nie ? Môj zdroj priamo na doske dodá pri 5V/1A. Samozrejme môžete zvoliť napájanie SBC6502 priamo z 5V, alebo z USB kábliku. Odber nepresiahne ani v rozšírenej verzii cez 0.2A (ani pri použití procesoru 14806 od Atari ktorý je skutočne "žravý"). Takže toto rozhodnutie je na Vás.


- pridal som obvod 8255A, sú potom k dispozícii 3x brány po 8 bitov voľne programovateľné ako vstupné, alebo výstupné


- zapojenie som priamo modifikoval na doske tak, aby sa dal vymeniť procesor 65C02 (ktorý mám k dispozícii) za procesor 14806 od Atari (vyriešil som to tak, že teraz na to prepínanie použitých procesorov stačí prepínať iba jeden jumper !)

 

- ak bude čas skúsim ešte experimentovať s rýchlosťou hodín procesora, bolo by celkom zaujímavé, ak by to vedelo fičať na 3.6864MHz to už bolo naozaj hodne, hodne zaujímavé (procesor 65C02 čo mám ide do 4MHz, 8255 mi ide do 5MHz).


Na ľavej strane v strede je 14 pinová pätička a v nej je založený

x-talový oscilátor, ktorý má iba 8 pinov.

 

Doska je na prvý pohľad relatívne veľká, nie je žiaden problém pri návrhu rozmiestnenia čipov na doske.

Dôležité rozhodnutia:

- napájanie beží z DC/DC meniča 12V/5V
- konektor napájania je vyvedený na zadnom paneli
- RS232 konektor bude vyvedený na zadnej stene
- LED (zelená) napájania bude na prednom paneli
- LED (červená) = indikácia prenosu dát smerom von z SBC 6502
  (ovládanie cez tranzistor)
- LED (oranžová) = indikácia prenosu dát smerom do SBC6502
  (ovládanie cez tranzistor)
- na prednom paneli je vyvedený Reset
- z praktických dôvodov som tiež zamenil (oproti schéme) umiestnenie EPROM s RAM


Nasleduje moje zapojenie SBC6502, ktoré sa bude postupne meniť podľa jednotlivých verzi, verzia 0 je základná:

SBC6502ver1_0n.PNG (65,39 kb)

 

Potrebný súbor do Eprom pamäte nájdete tu:

http://searle.hostei.com/grant/6502/osi_bas.zip

(tu je dôležitý súbor osi_bas.bin (alebo  ROM.HEX, podľa toho čo berie Vaša napaľovačka Eprom ako zdrojový súbor), ktorý treba napáliť do Eprom pamäte typu 27128)

______________________________________________________________________________

Aby ste počítač vedeli pripojiť a komunikovať s ním potrebujete si zabezpečiť ešte jednu vec:

- null modemový káblik, pozor maximálna odporúčaná dĺžka je cca 1.5m

(bežíme na 115.200Bd čo je celkom slušný "cvrkot"):


 

Ak môžem odporučiť, šetrite s miestom ak chcete postupne ešte rozširovať funkcie. Kto to pozná, vie o čom točím. Ale ako to býva, už som hneď špekuloval že by to časom aj niečo mohlo riadiť a ovládať ... ale dnes to bude iba samotný počítač vo verzii 7 čipov. V ďalšom nasledujú vždy kompletné zapojenia nových verzií.

 

Ak sa použije rozširovacia doska 8255 (3 osembitové porty, práve preto potom treba na doske ešte miesto na ďalšie čipy - toto pripojenie je vlastný návrh):- toto pripojenie

- pribudne adresový dekodér 74LS138
- obvod 8255A
- je potrebné "prekopať" reset a teda pribudne ešte čip 555

V ďalšom článku bude počítač ktorý má čipov viac (10), ale už je tam pripojerá 8255-ka, dnes sa už týmto rozšírením nebudem zaoberať. Celé to viete postupne pohodlne rozšíriť o tú 8255-ku, takže sa nič nedeje, akurát len pridáte ďalšie čipy.

 

Na tomto snímku je dobre vidieť 8 pinový oscilátor v 14 pinovej pätičke.

 

2x  jumper na snímku slúži na nasledovné:

- použil som Eprom 27256, pretože tých mám dostatok, 27128 sú naopak dosť vzácne, v schéme ale kreslím zapojenie pre 27128 - aby to bolo jasné od začiatku.

- druhý jumper som použil pre prepínanie medzi 2 procesormi, môžete tam založiť 65C02 (6502, 6502C) alebo špeciál Atari procesor 14806, v schéme to zatiaľ nekreslím, aby som nikoho nezblbol, potom to nakreslím dodatočne (keď som začínal len som dúfal že by to mohlo fungovať aj-aj a skutočne, funguje to !) Prerábka je maximálne jednoduchá, v ďalšom ju nakreslím.


Na fotke je aj osadený DC/DC menič z 12V na 5V ktorý mi pripravil pár bezsenných dní ...

 

ň

Na tomto snímku je osadený 14 pinový oscilátor 1.8432MHz,

mám totiž obidva typy.

 

Detailnejší pohľad.

 

Dtto.

 

Oscilátor v 8 pinovom púzdre, vpravo DC/DC menič,

zatiaľ použitý obvod pre sériovú komunikáciu 6850,

čo je 1MHz verzia. Šlape ako víno aj na dvojnásobku.

 

 Oscilátor 14 pin, detail.

 

V ďalšom článku bude popis vlastnej stavby (čo ešte bude treba) a problémov pri stavbe.

______________________________________________________

Návrat do všetkých pokračovaní o SBC6502:

http://blog.3b2.sk/igi/post/SBC6502-0-UvodIntroduction.aspx

________________________________________________________________________

Vaše hodnotenie, Rate post:

Add comment


(Will show your Gravatar icon)

  Country flag

biuquote
  • Comment
  • Preview
Loading