Apuprosessori: arkkitehtuuri, työskentely, tyypit ja sen sovellukset

Kokeile Instrumenttia Ongelmien Poistamiseksi





Jonkin sisällä mikroprosessori siru, uusia piirejä on lisätty erityistehtävien saavuttamiseksi ja myös numerooperaatiot prosessorin ydintyön purkamiseksi, jotta CPU voi toimia erittäin nopeasti. Täydentävää prosessoria, kuten rinnakkaisprosessoria, käytetään pääasiassa tietokoneissa erikoistehtävien, kuten graafisen näytön käsittelyn ja laajan aritmeettisen laskennan, suorittamiseen. Tämä prosessori on suunniteltu suorittamaan tällaisia ​​​​tehtäviä erittäin tehokkaasti verrattuna suorittimeen, joten tietokoneen kokonaisnopeutta voidaan lisätä. Tässä artikkelissa käsitellään yleiskatsausta a apuprosessori –arkkitehtuuri, työskentely ja sen sovellukset.


Mikä on yhteisprosessori?

Prosessori, joka toimii tietokoneen pääprosessorin, kuten CPU:n, kanssa rinnakkain, tunnetaan apuprosessorina. Tämä prosessori tunnetaan myös tietokoneen lisäprosessorina. Tätä prosessoria käyttämällä voidaan suorittaa vaikeita matemaattisia laskelmia, kuten näytöllä näkyvä grafiikka, signaalinkäsittely, merkkijonojen käsittely, liukulukuaritmetiikka, tulo-lähtöliitäntä jne.



  Apuprosessori
Apuprosessori

Apuprosessoriarkkitehtuuri

Apuprosessorin kaltainen 8087-arkkitehtuuri on esitetty alla. Yleensä tämä apuprosessori toimii rinnakkain mikroprosessorin kanssa. Tämän apuprosessorin on kehittänyt Intel, ja sitä käytettiin 16-bittisten 8086-perheen mikroprosessorien kanssa. Kun prosessori toimii yhdessä mikroprosessorin kanssa, prosessori yksinkertaisesti hoitaa laskentaosuuden ja tämä antaa prosessorille mahdollisuuden käyttää resursseja useiden muiden toimintojen suorittamiseen.

Seuraava kuva esittää 8087-apuprosessorin arkkitehtuuria. Tämä arkkitehtuuri sisältää kaksi pääyksikköä, kuten ohjausyksikön ja numeerisen suoritusyksikön, jota kutsutaan myös NEU:ksi.



  8087 rinnakkaisprosessoriarkkitehtuuri
8087 rinnakkaisprosessoriarkkitehtuuri

Ohjausyksikössä on erilaisia ​​yksiköitä, kuten datapuskuri, ohjaus- ja tilasanarekisteri, jaettu operandijono, poikkeusosoitin sekä osoite- ja väyläseurantayksikkö. Numeerinen suoritusyksikkö tai NEU sisältää pääasiassa mikrokoodiohjausyksikön, rekisteripinon, ohjelmoitavan vaihtajan, väliaikaisen rekisterit , aritmeettinen moduuli, eksponenttimoduuli ja jaettu operandijono.

Apuprosessorissa oleva ohjausyksikkö ohjaa käskyjen suoritusta (IE), josta numeerinen suoritusyksikkö on vastuussa. Useimmiten numeerisen suoritusyksikön mikrokoodiohjausyksikkö (CU) saa numeeriset käskyt apuprosessorin ohjausyksiköltä. Tässä apuprosessorissa on täydet 8 80 bitin rekisteriä, ja jokaista näistä käytetään LIFO-pinossa. Operandit, joiden yli apuprosessorin käskyt esiintyvät, ovat rekisteripinossa.

  PCBWay

Olemassa oleva pino osoitetaan 3-bittisen SP:n (pinoosoitin) kautta, joka sisältää binääriarvot, jotka vaihtelevat välillä 000–111, jotta voidaan näyttää 8 pinorekisteriä. Se toimii pyöreässä pinossa LIFO-tilassa. Mutta kun nollaustoiminto tapahtuu, osoitin voidaan alustaa binääriarvolla '000'.

Numeeriset tiedot sisältävät kolme luokitusta, joissa apuprosessorin toiminnot ovat pakattuja desimaalilukuja, reaalilukuja ja binäärisiä kokonaislukuja. Binääriset kokonaisluvut ovat kolmen tyyppisiä 16-bittinen sana kokonaisluku, 32-bittinen lyhyt kokonaisluku ja 64-bittinen kokonaisluku. 80-bittinen BCD-muoto tarkoittaa pakattuja desimaalilukuja, kun taas reaaliluvut ovat 3 tyyppiä; 32-bittinen lyhyt real, 64-bittinen pitkä todellinen ja 80-bittinen väliaikainen real.

Numeeristen tietojen siirtämiseksi apuprosessorissa joko a Käytetään 16-bittistä eksponenttiväylää tai 64-bittistä mantissaväylää . Apuprosessori sisältää 16-bittisen ohjaussanan ja 16-bittisen tilasanan.

Ohjaussana kirjoitetaan ohjausrekisteriin ja tämä tapahtuu siten, että apuprosessori kirjoittaa aluksi ohjaussanan muistipaikkaan. Tämän jälkeen apuprosessori yksinkertaisesti lukee ohjaussanan käyttämällä muistipaikkaa ja tallentaa sen ohjausrekisteriin.

Vastaavasti tilasana lukee siten, että prosessori lähettää tilarekisterin tiedot kohti muistipaikkaa. Lisäksi tämä apuprosessori lukee tilarekisterin tästä tietystä muistipaikasta. Tämä tarkoittaa siis sitä, että prosessori ja mikroprosessori kommunikoivat keskenään päämuistin kautta.

Miten rinnakkaisprosessori toimii?

Apuprosessori on pääasiassa suunniteltu toimimaan sekä 8086- että 8088-suorittimien kanssa. Apuprosessoria käytetään auttamaan järjestelmää toimimaan tehokkaammin purkamalla tiettyjä suorittimen tehtäviä. Kun tämä prosessori toimii yhdessä mikroprosessorin kanssa, sekä mikroprosessorin että apuprosessorin ohjeet integroidaan sisään ohjelmaa kirjoitettaessa. Assembly-ohjelman käskyjen alussa on 'F', joka edustaa apuprosessorin ohjeita, kun taas ohjeet ilman 'F'-etuliitettä osoittavat mikroprosessorin ohjeita.

Aluksi mikroprosessori hakee ohjeet muistipaikasta ja lataa ne peräkkäin jonoon, samalla 8087-apuprosessori myös lukee ja tallentaa ohjeet sisäiseen jonoon. Tämä tarkoittaa siis sitä, että jokainen käsky voidaan lukea sekä apuprosessorin että prosessorin kautta, mutta suoritusaikana sekä apuprosessori että mikroprosessori voivat suorittaa tiettyjen ohjeidensa suorittamisen. Tämä tarkoittaa, että ohje luetaan ja dekoodataan. Jos mikroprosessori tarkistaa, että apuprosessorin käsky on olemassa, käskyä käsitellään ei-toimintona. Vastaavasti, jos tämä apuprosessori lähestyy mitä tahansa mikroprosessorin käskyä, sitä käsitellään ei-toimintona.

Apuprosessorin tyypit

Saatavilla on erilaisia ​​apuprosessoreja valmistajien mukaan, kuten seuraavat.

Intel 8087 -apuprosessori

Intel 8087 on erityisesti suunniteltu apuprosessori, jota käytetään suorittamaan matemaattisia laskelmia, jotka sisältävät liukuluku- ja kokonaislukuarvoja. Joskus se tunnetaan myös numeerisena tietojenkäsittelynä ja matemaattisena prosessorina. Tämä on numeerinen apuprosessori Intel 80188-, 8086-, 80186- ja 8088-prosessoreille. 8087-apuprosessori sisältää kahdeksan 80-bittistä yleisrekisteriä, jotka suoritetaan pinona. Joten kaikki liukulukutoiminnot suoritetaan yksinkertaisesti pinon ja ulkoisen muistin tiedoilla.

  Intel 8087 -apuprosessori
Intel 8087 -apuprosessori

Intel 8087 -apuprosessori yksinkertaisesti tukee BCD-, kokonaisluku-, yksi- ja kaksinkertaisen tarkkuuden liukulukulukuja sekä laajennettuja tarkkoja liukulukulukuja. Kun 8087-prosessori lataa tiedot muistista, se muuntaa sisäisesti tarkkuusluvun laajentamiseksi ja kaikki laskelmat suoritetaan tämän numeron kautta.

Vaihtaminen kaksinkertaisesta tarkkuudesta yksitarkkuuteen, muuten 64-bittisestä kokonaisluvusta – 32-bittiset/16-bittiset kokonaisluvut eivät paranna suorituskykyä merkittävästi. Intel ei valmistanut vain 8087-apuprosessoreita, vaan myös AMD, Cyrix ja IBM valmistavat näitä apuprosessoreja.

Motorola 68881

Motorola 68881 on apuprosessori, jota käytetään pääasiassa Motorola 68K:n toisen sukupolven kanssa. mikroprosessorit kuten Motorola 68030 & 68020. Teoriassa tätä apuprosessoria käytetään oheislaitteena aikaisempien 68000- tai 68010-suorittimien kanssa.

  Motorola 68881
Motorola 68881

Motorola 68881 -apuprosessori toimii yksinkertaisesti kuin muistikartoitettu laite. Kun pääprosessori lataa apuprosessorin käskyt, se kirjoittaa käskykoodin CIR:iin (Co-processor Interface Registers), jotka kartoitetaan CPU:n osoiteavaruuteen, ja sen jälkeen se lukee prosessorin vastauksen. apuprosessori jostakin CIR-rekisteristä.

Motorola 68881/68882 -apuprosessoreita käytettiin IBM RT PC -työasemissa, Sun Microsystems Sun-3 -työasemissa, NeXT Computerissa, Apple Computer Macintosh II -perheessä, Amiga 3000:ssa, Sharp X68000:ssa, Convergent Technologies MightyFramessa, TT:ssä, Atari Mega STE:ssä ja Falcon Mega STE:ssä. Näitä prosessoreita käytetään myös joissakin kolmannen osapuolen Atari- ja Amiga-tuotteissa, kuten 68000:n muistiin yhdistetyissä laitteissa.

Applen liikkeen rinnakkaisprosessorit

Applen M-sarjan apuprosessorit tunnetaan liikkeen apuprosessoreina, joita käytetään Applen mobiililaitteissa. Ensimmäinen apuprosessori suunniteltiin vuonna 2013, ja sitä käytettiin keräämään anturitietoja integroiduista gyroskoopeista, kiihtyvyysmittareista ja kompasseista sekä siirtämään kerätyt anturitiedot pääsuorittimen avulla.

  Applen liikkeen rinnakkaisprosessorit
Applen liikkeen rinnakkaisprosessorit

M-sarjan Applen apuprosessorit yksinkertaisesti keräävät prosessin ja tallentavat anturin tiedot, vaikka laite olisi lepotilassa, ja sovellukset voivat palauttaa tiedot, kun laite käynnistetään uudelleen. Tämä siis vähentää laitteen ottama tehoa ja säästää akun käyttöikää.

Ero prosessorin ja rinnakkaisprosessorin välillä

Prosessorin ja rinnakkaisprosessorin välinen ero on seuraava.

Prosessori

Apuprosessori

Prosessori on tietokoneen pääkäsittelyyksikkö, joka suorittaa erilaisia ​​aritmeettisia, logiikkaa ja ohjaustoimintoja ohjeiden perusteella. Apuprosessori on erityinen prosessori, joka tukee pääprosessoria.

Prosessori hoitaa kaikki päätyöt

Apuprosessori hoitaa vain joitain muita asioita, kuten grafiikkaa ja aritmeettisia laskelmia.
Se käsittelee loogisia operaatioita ja matemaattisia laskelmia ja luo ohjaussignaaleja muille komponenteille tehtävien synkronointia varten. Se suorittaa signaalinkäsittelyä, matemaattisia operaatioita, verkottumista ja kryptografiaa tyypin mukaan.
Prosessori ylläpitää koko tietokoneen asianmukaista toimintaa. Tämä prosessori auttaa lisäämään järjestelmän suorituskykyä ja purkaa vaikeita tehtäviä suorittimelta.

Edut

Apuprosessorin etuja ovat seuraavat.

  • Apuprosessori yksinkertaisesti käsittelee erikoistuneita tehtäviä nopeammin kuin ydinprosessori
  • Nämä prosessorit ovat helppokäyttöisiä ja suosituimpia.
  • Se vähentää mikroprosessorin rasitusta ottamalla suorittimelta erityisiä prosessointitehtäviä, jotta se toimii suuremmalla nopeudella.
  • Tämä prosessori auttaa laajentamaan CPU:n prosessointiominaisuuksia laajentamalla käskysarjaa tai tarjoamalla konfiguraatiorekistereitä.

Haitat

Apuprosessorien haittoja ovat seuraavat.

  • Apuprosessori ei pysty palauttamaan käskyjä muistista, suorittamaan käskyjä suoraan, hallitsemaan muistia, suorittamaan I/O-toimintoja
  • Se riippuu pääprosessorista, saako se takaisin apuprosessorin ohjeet ja huolehtii kaikista muista toiminnoista, jotka eivät liity apuprosessoriin.
  • Tämä ei ole järjestelmän tärkein prosessori.
  • Apuprosessori ei voi toimia ilman päämikroprosessoria.

Sovellukset

Apuprosessorien sovelluksia ovat seuraavat.

  • Apuprosessoria käytetään suorittamaan joitain erikoisempia tehtäviä, kuten graafisen näytön käsittelyä tai monimutkaisia ​​matemaattisia laskelmia.
  • Apuprosessoria käytetään yksinkertaisesti vähentämään tietokoneen suorittimen kuormitusta.
  • Tämä prosessori toimii tietokoneen CPU:n kanssa rinnakkain.
  • Tämä prosessori suorittaa korkean tason matemaattisia operaatioita paljon nopeammin kuin pääprosessori, kuten juuret, logaritmit, trigonometriafunktiot jne.
  • Apuprosessori lisää ensisijaisen prosessorin toimintoja.
  • Apuprosessori suorittaa erilaisia ​​toimintoja, kuten signaalinkäsittelyä, liukulukuaritmetiikkaa, merkkijonojen käsittelyä, grafiikkaa, I/O-liitäntää oheislaitteiden kautta, kryptografiaa jne.
  • Nämä prosessorit ovat erillisiä siruja aikaisemmissa pöytätietokoneissa, jotka oli kytketty emolevyyn.
  • Apuprosessori hoitaa suorittimen tehtävät yleisen suorituskyvyn parantamiseksi.

Näin ollen tämä on yleiskatsaus apuprosessorista – työ ja sen sovellukset. Tämä prosessori tunnetaan myös nimellä Math Processor. Apuprosessori suorittaa erilaisia ​​tehtäviä paljon nopeammin kuin ydinprosessori. Siten tietokonejärjestelmän yleinen nopeus kasvaa. Tämä prosessori voidaan liittää ARM-prosessoriin. Kun se on lisätty, meidän on lisättävä Core CPU: n käskyjoukkoa tai sisällytettävä konfiguroitavat rekisterit käsittelytehon lisäämiseksi. Tässä on kysymys sinulle, mikä on mikroprosessori?