1975 - MOS 6502. Mikroprocesor 6502.

By Administrator at januára 16, 2016 08:40
Filed Under: Non-Atari

Vlastne som už ten termín mierne prešvihol, ale aj tak stojí za to si pripomenúť že mikroprocesor 6502 (alebo ak chcete MOS6502) sa objavil na trhu v roku 1975, (...) takže je tu s nami už viac ako 40 rokov. Napriek tomuto veku a jeho "starobe" je na tom dodnes celkom slušne. U ľudí je to stredný vek, kedy by mali byť najproduktívnejší. Procesor 6502 má dodnes množstvo fanúšikov, používal sa v masovom merítku - pred vyše 10 rokmi sa odhadovalo, že výroba dala poriadne cez 100 miliónov kusov čo je celkom slušný počet nasadených procesorov v 8-bitovom svete. Tak to dnes pripomeniem.

S procesorom 6502 je nerozlučne spojené meno jeho hlavného konštruktéra - bol ním Chuck Peddle. Predtým pracoval v Motorole (spolu s ním aj Bill Mensch, ktorý v 6502 má tiež prsty). Pretože bol pozorný a vnímavý - veľmi rýchlo si všimol že procesor 6800 sa zo svojou vysokou cenou ťažko predával a tak sa snažil znížiť a to významne náklady na výrobu. Jeho cieľom bolo procesory predávať výrazne lacnejšie (čo následne zase produkuje masové nasadenie) ... o tom šéfovia Motoroly ale nechceli ani počuť. Nuž dovidel ďalej ako šéfovia, ktorí nevideli ani na koniec svojho nosa.

 

 

 

Poďme trošku dozadu  s touto úsmevnou vecou smerom do histórie:

Chuck mal priezvisko v skutočnosti "piddle", bolo to pomenovanie po rieke ktorá viedla mestom jeho predkov. Po presťahovaní do Kanady jeho starý otec zistil že je toto pomenovanie v miestnom slangu nie príliš lichotivé (označuje močenie) a tak prišlo k zmene mena. Sú teda veci v živote čo si nikto nevymyslí ...
Koniec historky, poďme naspäť k veciam dôležitejším. Naozaj to dnes nemá byť Chuckov životopis (jeho zásluhy, PET computer a podobne už tu v článku nezmieňujem - a bolo toho o hodne viac), takže mi to prepáčte, budem sa venovať procesoru 6502 a Chuckovmu miestu pri jeho uvedení do života.

V Motorole Chuck bojoval za zníženie cien procesorov, ale bol to boj proti betónovej stene, predstavitelia firmy na túto temu boli hluchí. Investície boli veľké a teda čakala sa aj slušná návratnosť, ostatné išlo bokom. A že bola návratnosť očakávaná poriadne vysoká dokladajú následné čísla - výrobná cena cca 20.- USD, predajná ale 179.- USD. Chuck svoj boj za nižšiu cenu v žiadnom prípade nevzdával, ale jedného dňa bez akéhokoľvek predchádzajúcho upozornenia  dostal oficiálny list od vedenia firmy. Bol to celkom zlovestný list, kde ho upozornili nech prestane propagovať znižovanie ceny a tým aj nákladov na výrobu. Proste nazvime to formálnym pokarhaním za jeho snahy. Chuck mal v hlave presné priority, stanovil si totiž že ak sa podarí vytvoriť čip 6800 tak pôjde preč. Firme odpísal že opustí produkt, ale zlepšovať čip bude naďalej.


Chuck Peddle

hlavný designér MOS 6502.


Je jasné čo nasledovalo - odchod Chucka a Billa spolu s ďalšími spolupracovníkmi z Motoroly smerom do MOS Technology, kde svoje predstavy dokázali pretaviť do viditeľného výsledku.

 

Architektúru čipu 6502 navrhovali Chuck Peddle, Will Mathys a Rodney Orgill, prevedenie do reálu bolo zverené Billovi Menschovi.

Chuck dal konštruktérom "tight zoznam" funkcií, ktorú budú v novom čipe. Ak chcete získať cenu do 25.- USD, treba tam dať len to čo potrebujú a vyžadujú zákazníci, teda nič navyše.  Takto sa dá aj výrobná cena stlačiť na minimum. Nový procesor obsahoval niektoré z konceptov 6800 - ale nebolo tam nič, čo by bolo patentované. Mal to byť novší, lepší, rýchlejší procesor.

Instrukčná sada byla oproti čipu 6800 celkom odlišná – tam si tvorcovia vzali inšpiráciu z minipočítača PDP-8, Peddle a jeho tým sa inšpiroval u typu PDP-11, ktorý bol o poznanie pokročilejší.

 

Je tu ale jedna vec ktorá aj po tých rokoch prekvapí - pôvodne procesor 6502 vôbec nesmeroval na nasadenie do oblasti domácich počítačov.

 

Nechajme ale prehovoriť samotného Chucka Peddla:

„Pokiaľ by sme robili čip pre počítače, urobili by sme ho inak.“


Takže zase raz platilo - "človek mieni, život mení" - priamo v praxi. A dokazuje to aj to, že mikroprocesor ako súčiastka sa skutočne dá použiť na rozličných pozíciách. MOS6502 mal byť nasadený predovšetkým v súboji s čipom i4040, ten bol určený pre použitie v kalkulačkách, v elektronických pokladniach, v domácej elektronike, v strojárenstve a v automobiloch.  Intel 4040 bola vylepšená verzia 4-bitového procesora i4004, takže tu 6502 naozaj mala dosť veľký priestor na prekonanie konkurenta. To nám aj dodatočne vysvetľuje prečo vnútorná architektúra, jeho strojový kód a počet registrov sú v zrovnaní napríklad s procesorm Z80 alebo 8080 veľmi obmedzené - nuž je to práve z tohoto dôvodu. Typický príklad keď motyka vystrelila a Murphyho zákon našiel uplatnenie v praxi.

 

Mikroprocessor 6502


6502 pri svojom predstavení bol aj ponúkaný za cenu ktorá konkurencii proste vyrazila dych. Procesor 6800 stál 179.- USD, 6502 bola dodávaná za 25.- USD. Je jasné kam sa obrátili snahy konštruktérov, za tú cenu ste proste iný konkurencieschopný čip vtedy nekúpili. Commodore naskočila na cestu 6502, Steve Wozniak z Apple mal síce tiež v merku procesor 6800, (no a zase sme u ceny - bolo rozhodnuté), Apple nakoniec tak isto išiel tiež cestou 6502. Dá sa povedať že koncom 70-tych rokov v USA kraľoval v domácich počítačoch procesor 6502. Samozrejme zase tam bol háčik, niektorým firmám sa cena proste zdala podozrivo nízka, nakoniec aj ostatné konkurenčné firmy boli časom donútené znížiť ceny svojich procesorov - ale nikdy sa nedostali na úroveň 6502-ky, ich ceny skončili na úrovni 79.- USD za kus. Proste nedokázali vo výrobe dosiahnuť takú výťažnosť ako dosahovala MOS Technology a to bolo vo finále rozhodujúce.

Vrátim sa ešte k uvedeniu procesoru na trh, MOS Technology vtedy bola celkom malá firma a tak potrebovala zaujať - a podarilo sa. Ako? V snahe prebudiť záujem o čipy uverejnili inzerát, ktorý uvádzal, že procesor bude nielen k videniu, ale že by ste si ho mohli aj kúpiť za neuveriteľnú cenu 25.- USD na výstave Westcon (západná Electronics Show) v roku 1975.


Bohužiaľ, keď čipy dorazili tak sa ukázalo že vystavovatelia nesmeli predávať výrobok na svojich stánkoch. Výstava totiž bola "nepredajná", fungovali iba predvádzačky.  Výstava bola určená na kontrakty, nie na priamy predaj. Čo s tým ?

Chuck si ale poradil, rýchlo prenajal blízku hotelovú izbu - nasadil tam mladú atraktívnu ženu, sediacu pri stole s dvomi sklenenými nádobami naplnenými novučičkými MOS procesormi.
"Pivo zadarmo, procesor za 25.- USD" - toto bol slogan ktorým lákal zákazníkov na hotel. A na nákup.

Chuck zapojil do akcie postupne chuťové poháriky, nasledovali zmyslové a potom už bol priamy atak na peňaženku ... Len ťažko by vtedy kupujúci uverili, že všetky procesory v dolnej časti týchto sklenených nádob boli chybné, proste odpad pri výrobe. MOS to prešlo, nikto nič nezistil a vyzeralo to že výroba produkuje ohromné množstvá procesorov.
"Image je všetko" poveda vtedy Chuck. A mal pravdu.

Hmm, celkom dobrý obchodník - mimo toho, že bol tvorcom procesora.

Mikroprocesor 6502


Dôvod prečo Chuck trval na nízkej cene  – Chuck Peddle a jeho spolupracovníci použili natoľko vylepšenú metódu tvorby masky čipu, která im dovoľovala robiť neskôr opravy a predovšetkým sa dramaticky zvýšila výťažnosť výroby, teda pomer čipov na predaj oproti nepodarkom. Uvádza sa, že 6502 mal až niekoľkonásobně väčšiu výťažnost ako procesor 8080. Nakoniec aj firma Atari potrebovala svoju verziu procesora 6502 a Chuck súhlasil, chceli procesor za cenu 12.-USD (neskôr prezradil, že výrobná cena dosahovala 4.- USD, takže no problem ...)

A ešte jedna vec:

Keď sa vyrobili prvé procesory tak sa všetci vrhli na ich testovanie. Samozrejme nikto neočakával že návrh mikroprocesora bude bezchybný, toto sa naozaj nestávalo, ale odhadovalo sa že treba uskutočniť cca 9 revízií návrhu aby ste dostali bezproblémový a už naozaj funkčný procesor. Lenže Bill Mensch ako návrhár urobil niečo neskutočné a neočakávané - jeho čip bežal bez najmenšej chybičky hneď na prvýkrát !


Chuckov komentár:

" Bill (Mensch) vytvoril 7 rozličných čipov a ani v jednom nemal najmenšiu chybičku, neuveriteľné. Keď o tom niekde hovorím, nikto mi neverí, ale je to tak. Je to najlepší návrhár čipov na svete".

Nezostáva nič iné ako súhlasiť.

 

Bill Mensch


Bill Mensch navrhol prvú verziu MOS6502 pre použitie s taktom 1MHz. V tej dobe išlo o vysoký výkon, pretože vtedajšie čipy od Intelu a Motoroly pracovaly tak isto obvykle na takte 1MHz. Lenže pri testoch sa ukázalo, že čip nemá najmenší problém ani s dvojnásobným taktom, teda spokojne vrní aj na hodnote 2MHz. V kontexte už zmienenej potreby málo taktov na jednu inštrukciu teda išlo v tej dobe o najvýkonnejší čip na trhu.

Tu sa patrí spomenúť ešte jednu vec, najprv existoval procesor 6501 ktorý bol virtuálnou kópiou procesora 6800 - aj s rozložením vývodov Je jasné že toto neprešlo, hrozili súdne ťahanice a tak sa to vyriešilo tak že procesor síce zvnútra zostal rovnaký akurát sa zmenilo rozloženie výstupných pinov aby nebola plná kompatibilita. Ešte pripomínam že procesor 6501 nemal zabudovaný interný oscilátor, vyžadoval dvojfázový generátor hodinového kmitočtu. Súdny spor síce prebehol, padla aj pokuta (bavím sa o procesore 6501 - 200.000.- USD), takže tadeto cesta neviedla, ale procesor 6502 bol funkčný, nekolidoval s patentami, bol k dispozícii - toto práve MOS Technology hodne potrebovala.

Výborne - procesor bol k dispozícii, ale to nebolo dostatočné, aby sa používal bolo treba ponúknuť niečo čo odprezentuje možnosti 6502-ky a bude pre potenciálnych zákazníkov aj cenovo dostupné.

Hádajte čo to bolo ?


Počítač KIM-1, jednodoskový počítač s veľkosťou pamäte 1kB, toto mal aj počítač ZX-81, ale o až o celých 5 rokov neskôr ...
A všetci vieme že výrobcovia počítačov veľmi rýchlo ocenili to čo procesor 6502 poskytoval, spomeniem len firmy Atari, Apple, Commodore. Počty predaných počítačov išli do milíónov a ruka v ruke s tým samozrejme aj predaje procesorov.
Na procesor ktorý ma v sebe cca 4300 tranzistorov je to celkom úctyhodný výkon. Napríklad aj Intel 8080 mal v sebe približne rovnaký počet tranzistorov, ale potreboval ešte ďalšie 2 čipy aby bol plne funkčný (a potreboval ešte k tomu aj celkove 3 napájacie napätia - +5V, +12V a -5V).


Je tu jedna zaujímavosť ktorá povyšovala 6502 nad procesormi tej doby:

Rýchlosť hodín vtedy bola síce 1MHz, výnimočne 2MHz, pozastavím sa práve pri tom 1MHz - 6502 nepracuje cez mikrokód inštrukcií pre každý operačný kód takže je v praxi rovnako rýchla ako 3MHz verzia Z80 a je asi 2.5 krát rýchlejšia ako 8080. Asi sa to blbo počúva ale je to tak. Toto práve celkom dobre vysvetľuje ako je možné čo všetko stíha Commodore 64 pri takte = 1MHz. A je to zaujímavé o to viac keď vieme že tento procesor vlastne vôbec nemieril do tejto kategórie procesorov.
Procesor 8bit, adresová zbernica 16bit, maximálne 64kB RAM, takt 1MHz. Inštrukčná sada sa skladá iba z 56 inštrukcií. Procesor obsahoval veľmi málo registrov - v tej dobe bola rýchlosť RAM pamätí výrazne rýchlejšia ako rýchlosť procesoru - na to nezabúdajme. Preto v tej dobe bolo podstatne rozumnejšie implementovať skôr operácie s pamäťou než zvyšovať počty a veľkosť registrov. K dispozícii je 8 bitový akumulátor, dva 8 bitové registre X a Y, potom 8 bitový príznakový register "status register" a 8 bitový ukazateľ na pozíciu v zásobníku "stack pointer".
No a potom sa tu ešte nachádzal 16 bitový programový čítač "program counter".

 

Pinout procesora 6502,

je zaujímavé že ešte

3 piny zostali nepoužité.


Existujú aj drobné úpravy procesora - uvediem príklad - existuje verzia 6507, ktorá pracuje priamo s 8kB adresným priestorom (používala sa v hernej konzoli Atari VCS2600), Commodore zase používalo vylepšené verzie s názvom procesora 6510 (Commodore 64). A zmienim sa aj o Atari, ktorá vo svojich počítačoch používala upravené procesory 6502C doplnené o signál HALT. A existovali aj iné verzie v 28 pinovom púzdre (6503, 6504, 6505).

 

Procesor 6504


Procesor  6507, adresný priestor 8kB,

použitý napríklad v ATARI 1050.


Vzhľadom k tomu že 6502 je taký univerzálny a lacný procesor a preto sa dá ľahko kombinovať s iným technickým vybavením, je to ešte aj dnes obľúbený prvok v mnohých projektoch (vrátane mňa).


Jedna historka na odľahčenie:

6502 použitá v kasíne:

To, že 6502 môže byť použitá na získanie "kopy peňazí inou cestou ako legálne" pretavila do reálu dvojica amerických študentov z Kalifornie. Postavili dva obvody pomocou 6502-ky, ktoré boli umiestnené v dvoch topánkach. Následne sa vybrali do kasína hrať ruletu. Študent číslo jedna pohyboval svojou topánkou v rovnakom rytme ako boli Otáčky rulety. Procesor 6502 v tejto topánke používal revolučný algoritmus pre výpočet na základe ktorého by loptička mala"zapadnúť" do predpovedaného čísla. Táto informácia bola potom automaticky odoslaná na študenta číslo 2 - do jeho topánky. Oznam o čísle bol daný vibráciami.
Ten potom na základe vibrácií vo svojej topánky vedel na ktoré číslo treba staviť.
Historka sa bohužiaľ nezbýva praktickými vecami - ako fungoval prenos údajov medzi týmtio topánkami a ako vôbec na ich nekalé praktiky prišli.
No, aspoň sme sa zabavili.


Počítač v ktorom sa 6502-ka preslávila bola už zmienená herná konzola VCS2600. Atari považovalo 6502-ku v konzole za zbytočne drahú a tak sa vyvinula zmienená verzia procesoru 6507. Ak pamätníci tej doby neklamú -aj tak sa vtedy nepočítalo s tým že by hry mali presiahnuť veľkosť 2kB pamäte ... (nezabúdajte na to že ceny pamätí boli vtedy extrémne hrozivé, pre nás dnes nepredstaviteľné, nakoniec konzola Atari VCS 2600 mala k dispozíci na všetko celých 128 Byte RAM - nie, nie je preklep !)

___________________________________________________________

Pridané 15.07.2016:

Pretože mi to nedalo tak som skúsil zistiť na danú tému kasíno trošku viacej - kto hľadá (časom) nájde. A čo som našiel hovorí trošku inou rečou, podrobnosti si môžete si pozrieť na uvedených linkoch (anglicky):

http://physics.ucsc.edu/people/eudaemons/eudaemons.html

http://physics.ucsc.edu/people/eudaemons/layout.html

 

Shoe Computer Image

Photo by Steve Mann, MIT Media Lab

___________________________________________________________

Takže ak dovolíte aj moja SBC6502 a jej varianty ktoré uvediem sú takou malou "poctou" tomuto čipu, ktorý začal domácu počítačovú revolúciu pred naozaj už slušnou riadkou rokov. Procesor sa vtedy vyrábal technológoiu N-MOS, ktorá "papala" celkom slušne, vtedy to ale nikoho nevzrušovalo, procesor fungoval. Postupne sa objavili novšie technológie a tak aj aj mám doma verziu 65C02 z rozšírenou inštrukčnou sadou a v prevedení CMOS, ktorý bez najmenších problémov behá na 4MHz s podstatne nižšou spotrebou ako pôvodný originál - ale toto nie je vec na ktorú by sa niekto sťažoval.

 

Procesory 6502 - nech dobre slúži ďalšie roky v službe svojim majiteľom,

tu ešte uvádzam tabuľku celej rodiny rady 65XX:


 

Rád by som zdôraznil že za tie roky sa vyrábali  a vyrábajú verzie aj v iných typoch púzdier, takže ich nasadenie bolo a je skutočne masové.

Nuž a ako to bolo organizované zvnútra ?:

 

___________________________________________________________
Ešte sa zmienim o jednej zaujímavosti v súvislosti s procesorom 6502:

Je ním projekt skupiny dobrovoľníkov združených pod názvom Visual6502.

 

"Pitva 6502":

Na začiatku svojej práce podrobili podrobnému spracovaniu dva procesory – 6800 a MOS 6502, podľa ktorého si skupina odborníkov aj zvolila svoje meno.
Keď se traja IT odborníci v roku 2009 pustili do mapovania architektúry historicky prelomového procesora firmy MOS Technology s označením 6502, žiadne kompletné plány neboli k dispozícii, totiž všetky pôvodné designy MOS 6502 z polovice 70-tych rokov existovali pôvodne iba v papierovej podobe  ... A od tej doby už podľahli zkaze.
Ľudia ktorí sa zaujímali  o históriu tohoto konkrétneho kusu procesora tak mali pred sebou neobvyklý problém, dochovali sa síce informácie o tom, aké príkazy obsahovala inštruktážna sada procesora, ale vôbec nebolo jasné, ako ich procesor vykonával. Inak povedané – boli k dispozícii funkčné exempláre MOS 6502, ale nikto poriadne nevedel, ako to vlastne vovnútri funguje.
Naši "procesoroví archeológovia" museli  preto ísť opačnou cestou – od skutočného čipu sa dopracovať až k jeho plánom.
(Takto nejako sa dostávali aj naši inžinieri k okopírovaniu procesora 8080 pred mnohými rokmi.)
Zobrali niekoľko hodne dobre zachovalých procesorov, ochranný kryt každého čipu potom odleptali vrelou kyselinou sírovou a následne potom mikroskopom vyfotili 72 snímkov všetkých komponentov. Potom pomocou grafického programu snímky "zošili" a tak máme teraz k dispozícii aj architektúru 6502.
Zdá sa že robota bola u konca. Nebola - tým troch nadšencov tu neskončil - rozhodli sa previesť fotku do polygónového modelu, s ktorým sa – na rozdiel púhej fotografie – dalo ďalej pracovať.
Celý proces prekreslenia museli zvládnuť ručně, pomáhali si pritom iba vlastným programom napísaným v jazyku Python. Potom už nič nebránilo vytvoreniu ich prvého funkčného virtuálneho modelu procesora 6502.

Chcete videť viac:

http://www.visual6502.org/JSSim/index.html

_____________________________________________________

Chuck Peddle zomrel
15. decembra 2019 ...

_____________________________________________________

Dodnes sa niečo stavia na základoch 6502:

www.6502.org

Poznáte monster6502 ? - je to mikroprocesor 6502 postavený na tranzistoroch:

http://monster6502.com/

_______________________________________________________________________________

Vaše hodnotenie, Rate post:

Comments

8. 12. 2018 19:36:33 #

trackback

Directory Non-Atari.

Directory Non-Atari.

Igi blog |

Info o autorovi

Volám sa Igor Gramblička, bydlisko: Bratislava, Slovakia. Môj nick: Igi. Blog je o mojich záujmoch, predtým som pracoval ako IT špecialista na počítačové siete a redakčné systémy pre viaceré denníky - až som pred rokmi nakoniec v jednom z nich zakotvil a kde som to potiahol až do konca mojej profesnej kariéry.

Rok, mesiac, počet článkov: