SBC6502 - zakrytované, horná doska pripravená na ďalší projekt.
Celkový rozmer dosky 100 x 160mm.
Ako som už pred časom spomínal stále som rozmýšľal skúsiť ísť na vyššiu hodnotu clocku, proste zvedavosť či mi to vôbec na vyššom takte pobeží. A SBC6502 stále beží ...
Je to síce len "mierne" pretaktovanie (stále v medziach zákona ), ale aj to sa ráta. Pôvodná hodnota bola na takte hodín =1.00MHz (alebo tesne pod touto hodnotou). Pri mojej prvotnej stavbe som použil x-talový oscilátor =1.8432MHz, čiže išiel som na hodnotu fakticky dvojnásobku originálu (OSI, KIM).
Hodne dlho mi trvalo než som sa k overclockingu "rozhúpal", hlavne to bolo dané tým že vždy keď som si už k tomu chcel sadnúť tak sa vždy našlo niečo dôležitejšieho na robotu, teraz som sa už zaťal a uprednostnil to pred všetkým, inak by to asi už nikdy neprišlo na radu.
Na vlastnom motherboarde SBC6502 som pre dosiahnutie zvýšeného taktu hodín nerobil ani pre jeden tu ďalej popísaný overclocking žiadne úpravy - tie sú prevádzané vždy výhradne iba na doske oscilátorov.
Riešenie?
Pretože som to chcel najprv vyskúšať tak som si urobil zapojenie na univerzálke, je to rýchle na testovanie a ak to funguje tak má zmysel robiť definitívu. V zapojení sú použité dva x-talové oscilátory - (obidva trvale bežia) jeden z nich dodáva pôvodných 1.8432MHz do obvodu 68B50 (tak ako doteraz, tým dostávam potrebnú prenosovú rýchlosť =115.200Bd), druhý oscilátor beží na 4.9152MHz. No, iný som nezohnal, kedysi boli dostupné aj oscilátory ktoré dávali priamo pre mňa potrebných 2.4576MHz, ale dnes skôr nájdete živú veľrybu na Sahare ..., preto som "zakotvil" na hodnote x-talu v oscilátore na spomínaných 4.9152MHz. Nedeste sa (zatiaľ idem iba na nízky overclocking), túto hodnotu najprv delím :2, teda hodiny ktoré idú do SBC6502 majú teraz hodnotu = 2.457MHz, zdvihol som takt o presne 614.400kHz, je to presne o 1/3 hodnoty hodín viac ako som mal v SBC6502 doteraz, alebo inak nárast výkonnosti o 33%, čo je celkom dosť. Delička :2 sa dá realizovať rôzne, najčastejšie sa ňu používa 1/2 obvodu 74LS74. Mne šuplík zo zásobami čipov ako prvý vydal 74LS90 - teraz funguje zapojený iba ako delička 2. Poviete si - na to je ten čip škoda, ale ak budem skúšať použiť iné mne dostupné x-taly (bude tam časom aj oscilátor pre rozsah x-talov niekde v rozmedzí 2÷22 MHz), tak možnosť deliť :2, alebo :4, či :8 sa naozaj bude viac ako hodiť (74LS90 dovoľuje na vstupe max. clock =32MHz, dokonca mám otestované že tie čo mám doma "idú" spokojne aj na 42MHz, niečo nad uvedený 42MHz TTL oscilátor už doma nemám.). Dá sa použiť aj delička TESLA MH7490A ale potom rátajte s podstatne vyšším príkonom uvedeného čipu a horná hranica vstupného kmitočtu bude nižšia ako u typu LS. Na doske je ešte miesto pre čip 74LS04 (zatiaľ neosadené) pomocou ktorého bude urobený spomínaný tretí oscilátor. Nakoniec, je to experimentálna doska, práve pre možné (a možno aj potrebné) experimentovanie. Vlastné základné zapojenie je teraz zjednodušené (delička teraz napevno delí :10, pretože teraz mi stačí delenie :2, delenie :5 za tým už nevyužívam), prepojiť to inak nie je žiaden problém. Postavené je to celé na univerzálnej doštičke a ako pripojenie slúži pôvodný socket (pätička) kde bol predtým "usídlený" x-talový oscilátor 1.8432MHz, prívod pre hodiny k čipu 68B50 je teraz vyvedený na pin č.13 pôvodného 14 pinového socketu do ktorého je to celé nastoknuté. Tak isto som zvolil netradičné zapojenie - na univerzálke je časť súčiastok zo strany plošného spoja (čip 74LS90), ostatné je osadené zo strany opačnej - tu sa mi to javilo ako dobré riešenie.
Voľba rýchlosti vstupných hodín (clock) do procesoru sa robí pomocou jumperov, máme teda možnosť bežať na pôvodných 1.843MHz SBC6502, alebo prepnúť na novú vyššiu hodnotu 2.4576MHz (prepnutie clocku sa samozrejme robí pri vypnutom napájaní).
Vlastné testovacie zapojenie dosky dvoch x-talových oscilátorov + delička :2
pre overclocking SBC6502.
Výsledok ?
Funguje to na jednotku - a pritom v zapojení mám odskúšaný aj procesor 14806 od Atari, čo je vlastne procesor 6502C s pridanou funkciou HALT, ktorá sa v zapojení SBC6502 nevyužíva. Procesor v Atari (8bit) beží na 1.79MHz, tu v SBC6502 si teraz spokojne "vrní" na 2.457MHz. A to značí že oproti atárku je teraz procesor pretaktovaný o viac ako 667kHz, čo je celkom dosť. Čo sa týka teploty tak nemám pocit že by bola vyššia ako pri takte hodín =1.8432MHz. Ak položíte prst na procesor tak cítite že je mierne teplý, rozhodne ale žiadne pálenie prstu nenastáva a nehrozí.
Čo ma teší - je to už celkom slušné pretaktovanie, hlavne ak zvážim že to mám celé postavené iba na univerzálke (komplet SBC a aj overclocking) a teda o dokonalom ťahaní ciest sa mi môže len zdať. Napriek tomu som asi celkom slušne dodržal isté zákonitosti pri stavbe SBC6502 a teda v konečnom dôsledku sa mi to nevymstilo - ale naopak výsledok potešil.
Tu už len skonštatujem že týmto asi nekončím, pretože mám v šuplíku procesory 65C02 ktoré idú na 4.00MHz ... snáď sa k tomu niekedy dostanem aby som skúsil ísť ešte na vyššie hodnoty overclockingu, čipy 68B50 frekvenciu 4.00MHz na zbernici bez problémov zvládajú (takt hodín pre sériovú komunikáciu je pritom stále 1.8432MHz). Procesor od Atari ale na vyššom takte ako 2.4576MHz už nebudem pokúšať, mám ho ako rezervu a nerád by som ho upiekol ...
A zase trošku matematiky ako to môže vyzerať:
Pri oscilátore 1.0000MHz trvá jedna perióda hodín = 1000ns
Pri oscilátore 1.8432MHz trvá jedna perióda hodín = 543ns
Pri oscilátore 2.0000MHz trvá jedna perióda hodín = 500ns
Pri oscilátore 2.4576MHz trvá jedna perióda hodín = 407ns
Pri oscilátore 3.0000MHz trvá jedna perióda hodín = 333ns
Pri oscilátore 4.0000MHz trvá jedna perióda hodín = 250ns
Pri oscilátore 5.0000MHz trvá jedna perióda hodín = 200ns
Pri oscilátore 6.0000MHz trvá jedna perióda hodín = 166ns
Čiže pekne vidieť ako narastajú nároky na rýchlosť použitých súčiastok v zapojení, spomínam to hlavne v súvislosti s použitým typom Eprom (vyhovuje 27256 s dobou prístupu 150ns), t.j. aby stíhala, procesor určite na takt 4.00MHz, teda ak sa podarí zohnať zodpovedajúco rýchly procesor.
Samozrejme že mi to nedalo a tak som do článkov o benchmarkoch v sekcii SBC6502 doplnil a dopísal nové merania - aby ste mohli porovnať nárast výkonu s pôvodným riešením a aj porovnať s inými počítačmi.
___________________________________________________________
Jedna ukážka koľko trvá vykonanie programu (pred a po):
10 ? CHR$(12):W=1024:Q=1
11 ? " TINY test RAM 1-32kB"
12 ? " (c)Igi 2017"
13 ? " ver.SBC6502-32kB RAM": ?
20 ? " RAM range:";:? Q;:?"-";:? Q+0.25;:?"kB"
25 FOR F=W TO W+255
30 POKE F,0:IF PEEK(F)<>0 THEN 50
31 POKE F,255:IF PEEK(F)<>255 THEN 50
32 POKE F,85:IF PEEK(F)<>85 THEN 50
33 POKE F,170:IF PEEK(F)<>170 THEN 50
39 NEXT F:Q=Q+0.25:W=W+256:IF W>32767 THEN 55
45 GOTO 20
50 ? " Problem at adress - data":? F,PEEK(F):END
55 ? " O.K. - complete !"
Taktovanie SBC6502 - 1.8432MHz - doba trvania testu 9min22sec.
Taktovanie SBC6502 - 2.4576MHz - doba trvania testu 7min02sec.
Taktovanie SBC6502 - 4.0000MHz - doba trvania testu 4min20sec.
Taktovanie SBC6502 - 6.0000MHz - doba trvania testu 2min53sec.
Takže vidieť že overclocking má výsledky, vidieť ako sa program zrýchlil. Dosť dávno som písal že skúsim urobiť na SBC6502 overclocking, tak teraz som tento svoj dlh mierne splatil. Keď sa to tak vezme - oproti 1.00MHz je to už 2.5 násobné zrýchlenie (zaokrúhlene, tých necelých 43kHz čo chýba do 2.5MHz som zanedbal) celkom slušné, no nie ?
___________________________________________________________
Nasleduje obrazová galéria:
SBC6502 - testovacia doštička pre oveclocking na svojom mieste.
SBC6502 - pre správnu výšku je do pôvodnej precíznej pätičky vložená ešte
jedna, ktorá to celé zdvihla na potrebnú hodnotu.
SBC6502 - pohľad zo strany na umiestnenie pomocnej doštičky.
SBC6502 - dtto - ale je to pohľad z druhej strany.
Vľavo oscilátor 1.8432MHz, vpravo oscilátor 4.9152MHz. Na spodku obrázku umiestnený jumper umožňuje prepínanie medzi nimi. Napravo dole je ešte miesto na osadenie v článku spomínaného čipu 74LS04 v zapojení ako ďalší oscilátor zo samostatnými výmennými x-talmi. (Teda - bude možné skúsiť smerom nahor ďalšie pretaktovanie - ak to teda ešte pôjde ...)
SBC6502 - pohľad zo zadnej strany, jumper je dobre prístupný
(aj keď je na vrchu položená ďalšia doska).
__________________________________________________________
Návrat do všetkých pokračovaní o SBC6502:
http://blog.3b2.sk/igi/post/Directory-SBC6502.aspx
____________________________________________________________
Vaše hodnotenie, Rate post: