Ero sivun ”Transport triggered architecture” versioiden välillä

Wikipediasta
Siirry navigaatioon Siirry hakuun
[arvioimaton versio][arvioimaton versio]
Poistettu sisältö Lisätty sisältö
Ei muokkausyhteenvetoa
p typokorjaus
Rivi 1: Rivi 1:
''Transport Triggered Architecture''(TTA) on eräs tietokonene [[prosessori]]n suunnittelufilosofia.
''Transport Triggered Architecture''(TTA) on eräs tietokoneen [[prosessori]]n suunnittelufilosofia.


TTA menee vieläkin pidemmälle kuin [[VLIW]] vastuun siirtämisessä laitteistolta kääntäjälle; VLIW-käskykannalla ohjelmakoodi vain määrittelee, mitkä käskyt saa suorittaa rinnakkain, mutta ei ota kantaa siihen, miten prosessori ne sisäisesti suorittaa, TTA-prosessorilla prosessorin sisäiset väylät näkyvät käskykannassa, ja koko prosessoria ohjelmoidaan antamalla näille väylille käskyjä siirtää dataa.
TTA menee vieläkin pidemmälle kuin [[VLIW]] vastuun siirtämisessä laitteistolta kääntäjälle; VLIW-käskykannalla ohjelmakoodi vain määrittelee, mitkä käskyt saa suorittaa rinnakkain, mutta ei ota kantaa siihen, miten prosessori ne sisäisesti suorittaa, TTA-prosessorilla prosessorin sisäiset väylät näkyvät käskykannassa, ja koko prosessoria ohjelmoidaan antamalla näille väylille käskyjä siirtää dataa.

Versio 1. joulukuuta 2006 kello 08.32

Transport Triggered Architecture(TTA) on eräs tietokoneen prosessorin suunnittelufilosofia.

TTA menee vieläkin pidemmälle kuin VLIW vastuun siirtämisessä laitteistolta kääntäjälle; VLIW-käskykannalla ohjelmakoodi vain määrittelee, mitkä käskyt saa suorittaa rinnakkain, mutta ei ota kantaa siihen, miten prosessori ne sisäisesti suorittaa, TTA-prosessorilla prosessorin sisäiset väylät näkyvät käskykannassa, ja koko prosessoria ohjelmoidaan antamalla näille väylille käskyjä siirtää dataa.

esim. kahden rekistereissä olevan luvun yhteenlasku joka RISC-prosessorilla olisi muotoa

add R0, R1 -> R2

koostuu TTA_prosessorilla kolmesta datansiirrosta.

R0 -> adder.operand

R1 -> added.trigger

adder.result -> R2

joista ensimmäiset 2 voidaan suorittaa samalla kellojaksolla ja siten sijoittaa samaan käskysanaan, viimeinen myöhemmin sijoitettuna toiseen käskysanaan.

TTA-prosessorissa yhdessä käskysanassa voi olla niin monta siirtoa kuin prosessorilla on väyliä.

TTA-prosessorin suurimmat hyödyt saadaan siitä että paljastamalla prosessorin sisäiset väylät käskykannassa näiden väylien ja näiden väylien yhteyksien laskentayksiöihin määrää voidaan vähentää suuresti, ja siten saada prosessorista pienempi, vähävirtaisempi ja suurempaan kellotaajuuteen kykenevä kuin vastaava VLIW-prosessori. Toinen merkittävä hyöty on muokattavuus; TTA-prosessorista on helppo suunnitella erilaisia versioita joissa esim. laskentayksiköitä on lisäilty, ja käskykantaa on helppo laajentaa koska uusi käsky on vain uusi kohde jonne dataa voidaan siirtää.

TTAn haittapuolia ovat prosessorin huono sopeutuminen dynaamisiin tilanteisiin; keskeytysten toteuttaminen TTAlla on hyvin hankalaa ja koska mitään käskyjen uudelleenjärjestelyjä itse prosessorilla ei voida tehdä, välimuistihuti pysäyttää koko prosessorin. Lisäksi TTAn konekielikoodi vie verrattaen paljon tilaa, koska yhden laskuoperaation suorittamiseen joudutaan yleensä tekemään vähintään 2 datansiirtoa, jotka pitää erikseen koodata käskysanoihin. TTA-konekielikoodi on myös aina prosessorikohtaista eikä minkäänlaista binääriyhteensopivuutta prosessorin eri mallien välillä ole.

Täyden tehon saaminen irti TTA-prosessorista vaatii myös erittäin hyvän kääntäjän, koska kääntäjän vastuulla on enemmän kuin muiden prosessorityyppien tapauksissa.

Näistä syistä TTA-prosessoreja kaavaillaan lähinnä signaaliprosessoreiksi eikä yleiskäyttöisiksi prosessoreiksi. Toistaiseksi TTA-prosessoreita on lähinnä vasta tutkittu yliopistojen tutkimusprojekteissa eikä niitä tiedetä vielä otetun käyttöön missään tosielämän sovelluksissa.