MIPS-arkkitehtuuri – RISC-käskykanta, historia ja käyttökohteet

Tutustu MIPS-arkkitehtuuriin — RISC-pohjainen 32/64-bittinen teknologia, sen historia ja käytöt sulautetuissa järjestelmissä, reitittimissä ja PlayStation-pelikonsolissa.

Tekijä: Leandro Alegsa

MIPS-arkkitehtuuri on Stanfordin yliopistossa vuonna 1981 kehitetty tietokoneiden käskykanta. Alussa MIPS oli lyhenne sanoista Microprocessor without Interlocked Pipeline Stages. Suurin osa siitä on toteutettu RISC:nä. Täydellisessä RISC-arkkitehtuurissa kaikki komennot ovat yhtä pitkiä. Tämä yksinkertaistaa mikrosirun suunnittelua ja mahdollistaa nopeiden kellojaksojen käytön. Alussa arkkitehtuurissa käytettiin 32-bittistä väylää, mutta vuodesta 1991 alkaen käytettiin 64-bittistä arkkitehtuuria.

Vuonna 2015 MIPS-toteutuksia käytetään pääasiassa sulautetuissa järjestelmissä, kuten Windows CE -laitteissa, reitittimissä, kotikäyttöön tarkoitetuissa yhdyskäytävissä ja videopelikonsoleissa, kuten Sony Playstationissa, PlayStation 2:ssa ja PlayStation Portableissa. Vuoden 2006 loppuun asti niitä käytettiin myös monissa SGI:n tietokonetuotteissa. MIPS-toteutuksia käyttivät 1980-luvun lopulla ja 1990-luvulla myös Digital Equipment Corporation, NEC, Pyramid Technology, Siemens Nixdorf, Tandem Computers ja muut. Arvioiden mukaan 1990-luvun puolivälissä ja lopussa joka kolmas tuotettu RISC-mikroprosessori oli MIPS-toteutus.

Tekniset piirteet

  • Load/store-arkkitehtuuri: MIPS on puhdas load/store-arkkitehtuuri, eli aritmeettiset käskyt käsittelevät ainoastaan rekistereitä ja muistoon päästään erillisillä lataus- ja tallennuskäskyillä.
  • Kiinteän pituinen käskykanta: Perinteiset MIPS-käskyt ovat 32-bittisiä, mikä yksinkertaistaa dekooderia ja pipelöintiä. MIPS64 laajensi arkkitehtuurin 64-bittiseksi.
  • Rekisterit: Tavallisessa MIPS-arkkitehtuurissa on 32 yleiskäyttöistä 32- tai 64-bittistä rekisteriä ja erillinen liukulukuyksikkö rekistereineen. Rekisterien nimityksiä käytetään laajasti kutsuen mm. zero, at, v0–v1, a0–a3, t0–t9, s0–s7, k0–k1, gp, sp, fp, ra.
  • Käskyformaatit: Kolme perusmuotoa: R- (rekisteri), I- (immediate/osoite) ja J- (hyppy) muodot. Lisäksi arkkitehtuuri tukee coprocessor-yksiköitä (esim. FPU).
  • Pipelöinti ja ilman lukituksia: Nimestäkin käy ilmi, että alkuperäisessä MIPSissä pyrittiin välttämään laitteellisia interlockeja (hazard-lukituksia). Tämä siirsi vastuun ajoituksesta enemmän käännösohjelmalle (compiler), ja joissain tilanteissa käännösohjelma lisäsi viivekäskyjä (esim. NOP) tai hyödynsi branch-delay -paikkoja.
  • Endianness: MIPS-ympäristöt voivat olla kumpaakin endiannessiä tukeva (big- tai little-endian) toteutuksesta riippuen.

Historia ja kehitys

MIPS kehitettiin akateemisessa ympäristössä ja sen suunnittelufilosofia painotti yksinkertaisuutta, pipelöitävyyttä ja tehokasta käännösohjelman tukea. Arkkitehtuuri oli merkittävä esimerkki RISC-ajatuksista ja sillä oli suuri vaikutus mikroprosessoreiden suunnitteluun 1980–1990-luvuilla. MIPS-arkkitehtuuria lisensoitiin useille valmistajille, minkä takia sen toteutuksia nähtiin monissa eri tuotteissa ja markkinasegmenteissä.

Käyttökohteet ja nykytilanne

  • Sulautetut laitteet: Reitittimet, kotiverkkolaitteet, modeemit ja erilaiset järjestelmäpiirit (SoC) ovat olleet yleisiä MIPSin käyttökohteita.
  • Kulutuselektroniikka ja pelikonsolit: MIPS-toteutuksia on käytetty mm. useissa Sony-konsoleissa ja erilaisissa viihdelaitteissa.
  • Tietokoneet ja työasemat: Aikaisemmin SGI ja muut valmistajat käyttivät MIPS-prosessoreita työasemissa ja palvelimissa, mutta markkinat ovat sittemmin siirtyneet laajemmin muihin arkkitehtuureihin.
  • Koulutus ja tutkimus: MIPS on suosittu opetusesimerkki tietokonearkkitehtuurin kursseilla, ja se on käytössä monissa oppikirjoissa ja kurssimateriaaleissa.

Edut ja rajoitukset

  • Edut: Selkeä ja yksinkertainen käskykanta, hyvä pipelöitävyys, tehokas kompilaattorituki ja laaja lisenssiverkosto eri laitevalmistajien keskuudessa.
  • Rajoitukset: Koska alkuvaiheen lähestymistapa siirsi osan vastuusta ohjelmistolle, laitteistot saattoivat olla riippuvaisia kääntäjän optimoinneista. Lisäksi MIPS on menettänyt osan markkinaosuudestaan ajan myötä esimerkiksi ARM-arkkitehtuurille, mikä on vähentänyt joissain segmenteissä ekosysteemin vetovoimaa.

Yhteenvetona MIPS on merkittävä RISC-arkkitehtuuri, joka on vaikuttanut laajasti mikroprosessoreiden kehitykseen ja jota on käytetty laajalti erityisesti sulautetuissa ja erikoistuneissa järjestelmissä. Sen yksinkertainen rakenne tekee siitä myös edelleen hyödyllisen opetus- ja tutkimuskäytössä.

Kysymyksiä ja vastauksia

K: Mikä on MIPS-arkkitehtuuri?


A: MIPS-arkkitehtuuri on Stanfordin yliopistossa vuonna 1981 kehitetty tietokoneiden käskykanta.

K: Mitä MIPS tarkoittaa?


V: MIPS oli alun perin lyhenne sanoista Microprocessor without Interlocked Pipeline Stages.

K: Mikä on RISC MIPS-arkkitehtuurissa?


V: Suurin osa MIPS-arkkitehtuurista on toteutettu RISC:nä. RISC on lyhenne sanoista Reduced Instruction Set Computing.

K: Mikä on RISC:n käytön etu MIPS-arkkitehtuurissa?


V: Täydellisessä RISC-arkkitehtuurissa kaikki komennot ovat yhtä pitkiä. Tämä yksinkertaistaa mikrosirun suunnittelua ja mahdollistaa nopeiden kellojaksojen käytön.

K: Mitä väyläarkkitehtuuria käytettiin MIPS-arkkitehtuurin ensimmäisissä versioissa?


V: Alussa arkkitehtuurissa käytettiin 32-bittistä väylää.

K: Milloin MIPS-arkkitehtuurissa käytettiin 64-bittistä arkkitehtuuria?


V: Vuodesta 1991 alkaen käytettiin 64-bittistä arkkitehtuuria.

K: Missä järjestelmissä MIPS-toteutuksia käytetään ensisijaisesti?


V: Vuonna 2015 MIPS-toteutuksia käytetään ensisijaisesti sulautetuissa järjestelmissä, kuten Windows CE -laitteissa, reitittimissä, kotikäytävien yhdyskäytävissä ja videopelikonsoleissa, kuten Sony Playstationissa, PlayStation 2:ssa ja PlayStation Portableissa.


Etsiä
AlegsaOnline.com - 2020 / 2025 - License CC3