Tynnyriprosessori , rumpuprosessori, on prosessori , joka vaihtaa käskyvirtojen välillä jokaisen jakson jälkeen . Tämä prosessoriarkkitehtuuri tunnetaan myös nimellä "lomiteltu" (lomiteltu) tai "hienorakeinen" tilapäinen monisäikeistys . Toisin kuin samanaikainen monisäikeistys nykyaikaisissa superskalaariarkkitehtuureissa , tämä tekniikka ei salli useiden käskyjen suorittamista yhdessä syklissä.
Kuten ennaltaehkäisevässä moniajossa , jokaiselle suoritussäikeelle on määritetty oma ohjelmistolaskuri ja muut laitteistorekisterit kunkin säikeen kontekstin säilyttämiseksi. Tynnyriprosessori voi taata, että jokainen säiettä toimii n syklin välein, toisin kuin ennaltaehkäisevä moniajoprosessori, joka tyypillisesti suorittaa yhtä suoritussäiettä satojen tai tuhansien jaksojen ajan, kun kaikki muut säikeet odottavat vuoroaan.
Suunnittelutekniikka nimeltä C-slowdown voi yhden tehtävän prosessorimallin perusteella generoida vastaavan Barrel-prosessorimallin. Näin luotu n -säikeinen Barrel-prosessori toimii aivan kuten moniprosessorijärjestelmä , joka on koottu n :stä erillisestä alkuperäisen yhden tehtävän suorittimen kopiosta, joista jokainen toimii noin 1/ n alkuperäisestä nopeudestaan.
Yksi vanhimmista esimerkeistä rumpuprosessorista oli I/O-prosessori CDC 6000 -sarjan supertietokoneessa . Se pystyi suorittamaan yhden käskyn tai osan monimutkaisesta käskystä jokaiselta 10 erilaiselta virtuaaliprosessorilta, jota kutsutaan myös oheisprosessoriksi, ennen kuin palasi ensimmäiseen prosessoriin. [yksi]
Rumpuprosessoreita voidaan käyttää myös suurten järjestelmien keskusyksikköinä. Esimerkiksi Tera MTA :ssa (1988) oli Barrel-prosessori, jossa oli 128 säiettä ydintä kohti. [2] [3] MTA-arkkitehtuuria on kehitetty edelleen myöhemmissä tuotteissa, kuten YarcData uRiKA , joka esiteltiin vuonna 2012, ja ne keskittyvät tiedon louhintasovelluksiin . [neljä]
Tynnyriprosessoreita voidaan käyttää laitteistokustannusten vähentämiseen. Xerox Alto -mikrokoodi toimi tynnyriprosessorilla, joka toteutti kaksi CPU:ta, video-ohjaimen, Ethernet-ohjaimen, levyohjaimen ja muita I/O-laitteita. [5]
Barrel-prosessoreita löytyy myös sulautetuista järjestelmistä, joissa ne ovat erityisen hyödyllisiä niiden deterministisen reaaliaikaisen säikeen suorituskyvyn vuoksi Esimerkki on XMOS XCore XS1 (2007), tynnyriprosessori, jossa on kahdeksan säiettä ydintä kohti. XS1:tä käytetään Ethernet-, USB-, audio- ja muissa ohjaimissa, joissa I/O-suorituskyky on kriittinen. Barrel-prosessoreja käytetään myös erikoissovelluksissa, kuten Ubicom IP3023 (2004) kahdeksansäikeinen verkkoprosessori.
Yksittäinen prosessori käyttää useita jaksoja NOOP - toimintoihin tekemättä mitään hyödyllistä aina, kun välimuisti puuttuu tai liukuhihna on käyttämättömänä . Tynnyriprosessorien käytön edut yhden tehtävän prosessoreihin verrattuna ovat seuraavat:
Tynnyriprosessoreissa on useita haittoja .
prosessoritekniikat | Digitaaliset|||||||||
---|---|---|---|---|---|---|---|---|---|
Arkkitehtuuri | |||||||||
Ohjesarjan arkkitehtuuri | |||||||||
koneen sana |
| ||||||||
Rinnakkaisuus |
| ||||||||
Toteutukset | |||||||||
Komponentit | |||||||||
Virranhallinta |