Motorola 68000
Wikipedia
Motorola 68000 (MC68000, m68k, 68k) on Motorolan valmistama mikroprosessori, joka julkistettiin vuonna 1979. Se oli aikanaan suosittu suoritin, jota käytettiin mm. Commodore Amiga, Atari ST ja Apple Macintosh ja Sinclair QL -tietokoneissa. Se on sisäisesti 32-bittinen ja ulkoisesti 16-bittinen. Muita saman sarjan suorittimia ovat 68008, 68010, 68020, 68030, 68040, 68060 eri variaatioineen. Nimitystä 68000 käytetään joskus myös yleisesti koko sarjasta ja sen toteuttamasta CISC-suoritinarkkitehtuurista.
[muokkaa] Käyttökohteet
68000:ta käytettiin aluksi kalliissa järjestelmissä, kuten monenkäyttäjän mikroissa ja yhden käyttäjän työasemissa. Kotitietokoneissa sitä käytettiin ensiksi 1980-luvun alkupuolella Applen Lisassa ja Macintoshissa. Näitä seurasivat Commodore Amiga, Atari ST ja Sharp x68000. Suoritinta käyttivät jo 1980-luvun alkupuolelta useat kolikkopelijärjestelmät ja hieman myöhemmin pelikonsolit, kuten Sega Megadrive ja Neo-Geo. Jotkut uudemmat konsolit kuten Sega Saturn ja Atari Jaguar käyttivät 68000:ta vielä apusuorittimena. Texas Instruments käyttää 68000:aa laskimissaan TI-89 ja TI-92.
Menestyksekkäin 68000 oli kuitenkin ohjaustehtävissä. Lasertulostimissa sitä käytettiin ohjaimena ensimmäistä kertaa jo vuonna 1981, läpi 1980-luvun yleisesti ja vielä pitkälle 1990-luvulla halvoissa malleissa. Sitä käytettiin ja käytetään edelleen paljon myös teollisuusjärjestelmissä ja ohjelmoitavissa logiikoissa.
[muokkaa] Käskykannan ominaisuuksia
M68k-arkkitehtuurissa on kahdeksan 32-bittistä datarekisteriä sekä kahdeksan 32-bittistä osoiterekisteriä. Käskykanta on melko ortogonaalinen, eli siinä ei ole suuremmalti rajoituksia siinä, mitä rekisterejä pystyy käyttämään minkäkin käskyn yhteydessä, paitsi että osa käskyistä operoi vain datarekistereillä, osa vain osoiterekistereillä.
32-bittiset osoiterekisterit mahdollistivat suuren muistimäärän suoran osoittamisen ilman hankalia segmentointeja, joita kilpaileva x86 tarvitsi yli 64 kilotavun käyttämiseen. Ensimmäisissä 68k-suorittimissa oli vain 24-bittinen ulkoinen osoiteväylä minkä johdosta jotkut ohjelmoijat käyttivät osoiterekisterien ylimpiä kahdeksaa bittiä ylimääräisen datan säilömiseen. Tämä aiheutti myöhemmin yhteensopivuusongelmia suorittimien uudempien mallien kanssa joissa oli leveämpi ulkoinen osoiteväylä tai virtuaalimuistia.
m68k:n käskykanta on muutenkin melko johdonmukainen ja siten assembly-kieleksi helppoa ohjelmoida, ja ohjelmoijat pitivät sille ohjelmoimisesta, mitä ei voinut sanoa kilpailevasta x86-arkkitehtuurista. Suuresta rekisterimäärästä ja käskykannan ortogonaalisuudesta johtuen konekieli vei enemmän tilaa kuin kilpailevan x86:n konekieli.