- Suorittimen arkkitehtuurit
- RISC- ja CISC-ohjeistoarkkitehtuuri
- Monimutkainen ohjeistosarja (CISC)
- Pienennetty ohjeistosarja (RISC)
Sulautettu järjestelmä on useimpien markkinoilla olevien elektronisten tuotteiden sydän ja ydin. Se on tekniikan toteutus, jossa laitteisto täyttää ohjelmiston. Meitä ympäröi sulautettujen järjestelmien maailma, jossa minitietokoneet ovat biometrisissä ovilukkoissa, lentokoneissa, autoissa, sydämentahdistimissa jne. Nämä resurssien rajoitetut, pienet, älykkäät ja tehokkaat järjestelmät auttavat meitä päivittäisissä tehtävissämme.
Aina ajatellut kehomme toimintaa, hermostoa, aivoja ja kykyä suorittaa monia tehtäviä. Jos yhdistät kaikki nämä toiminnot, saat karkean kuvan biologisesta sulautetusta järjestelmästä. Aivomme piilottaa toimintansa monimutkaisen yksityiskohdan, joka tapahtuu sen sisällä, mutta jonka avulla voimme kuitenkin hallita sitä maksimaalisesti. Sama monimutkaisuus koskee sulautetuissa järjestelmissä käytettyä prosessoria tai ohjainta. Ne piilottavat monimutkaiset yksityiskohdat ja tarjoavat meille korkean tason käyttöliittymän työskennellä. Abstraktiotasolle voidaan viitata siihen, kuinka koodi kahden numeron lisäämiseksi korkean tason ohjelmointikielellä saa sirut käsittelemään bittejä ja antamaan lähdön takaisin käyttäjälle.
Suorittimen arkkitehtuurit
Keskusyksikkö, joka viittaa sekä mikroprosessoriin että mikro-ohjaimeen, suorittaa tiettyjä tehtäviä ohjausyksikön (CU) ja aritmeettisen loogisen yksikön (ALU) avulla. Kun ohjeet toimitetaan RAM-muistista, CPU toimii kahden avustavan yksikön avulla luomalla muuttujia ja osoittamalla niille arvot ja muistin. On todella tärkeää tietää, kuinka keskusyksikkö suorittaa kaiken tämän toiminnon arkkitehtuurinsa avulla. Jos haluat tietää enemmän mikro-ohjaimen toiminnasta, voit lukea tämän mikro-ohjaimen perustiedot.
Jokaisella suorittimella on siihen liittyvä muisti ohjelman ja tietojen tallentamiseksi. Ohjelma ja data toimivat CPU: n kanssa saadakseen tuotoksen. Ohjelma antaa ohjeet, kun taas tiedot tarjoavat työn, jota on käsiteltävä. Ohjelmaan ja tietoihin pääsemiseksi keskusyksikkö käyttää väyliä, nämä väylät ovat johtoja, tarkemmin sanottuna nämä ovat johdinjälkiä, kuten olet ehkä nähnyt piirilevyillä. Näiden vuosien aikana mikrokontrollerit ja mikroprosessorit ovat kehittyneet mukauttamalla erilaisia arkkitehtuureja, sovelluksen tai suunnitteluvaatimusten perusteella mikro-ohjaimen valintaan vaikuttaa siinä käytetty arkkitehtuurityyppi. Katsotaanpa suosittuja arkkitehtuureja.
Von-Neumannin / Princetonin arkkitehtuuri
Tapa, jolla keskusyksikkö saa pääsyn ohjelmaan ja tietoihin, kertoo suorittimen arkkitehtuurista. Aikaisemmin yhtä väylää käytettiin pääsyyn ohjelmaan ja tietoihin. Tämän tyyppinen arkkitehtuuri tunnetaan nimellä Von Neumann Architecture tai yksinkertaisemmin Princeton Architecture. Yksi väylä koodin ja datan saamiseksi tarkoittaa, että he pääsevät toistensa tielle ja hidastavat suorittimen prosessointinopeutta, koska jokaisen oli odotettava toisen lopettamista. Tämä rajoitus tunnetaan myös nimellä Von-Neumannin pullonkaulatila.
Harvardin arkkitehtuuri
Prosessin nopeuttamiseksi ehdotettiin Harvardin arkkitehtuuria. Tässä arkkitehtuurissa on erilliset tietoväylät dataa ja ohjelmaa varten. Joten se tarkoittaa, että tämä arkkitehtuuri ehdotti neljän väylän käyttöä
- Tietoväyläjoukko, joka kuljettaa tietoja keskusyksikköön ja sieltä pois.
- Joukko osoiteväylää tietojen käyttämiseen.
- Tietoväyläjoukko koodin kuljettamiseksi suorittimeen.
- Osoiteväylä koodin käyttämiseen.
Erillisen osoiteväylän ja tietoväylän käyttö tarkoitti CPU: n alhaista suoritusaikaa, mutta tämä johtaa arkkitehtuurin suunnittelun monimutkaisuuteen. Von Neumannin arkkitehtuuri saattaa kuulostaa hieman laiskalta, mutta sen etuna on yksinkertainen muotoilu.
Harvardin arkkitehtuuri on paljon helppo toteuttaa, kun keskusyksiköllä ja muistiyksiköillä on sama tila tai RAM ja ROM on sisäänrakennettu (piirissä) prosessoriyksikön kanssa, kuten mikro-ohjaimessa, jossa etäisyydet ovat mikrometreinä ja millimetreinä. Samaa arkkitehtuuria on kuitenkin vaikea toteuttaa, jos koodia sisältävä muisti on prosessoriyksikön ulkopuolella, kuten x86 IBM PC: ssä. Joukko erillisiä johtojälkiä emolevyn tiedoille ja osoitteille tekisi kortista monimutkaisen ja kalliin. Ymmärretään se esimerkillä prosessorista.
Suoritin, jossa on 64-bittinen tietoväylä ja 32-bittinen osoiteväylä, tarvitsisi noin 100 väylää (96 data- ja osoiteväylää varten ja muutama muu ohjaussignaaleille) Von-Neumannin arkkitehtuurin toteuttamiseksi. Sama rakenne, jos se toteutetaan Harvardin arkkitehtuurilla, maksaisi kaksoisjohdinjäljet noin 200, ja prosessorista tulee paljon nastoja. Samasta syystä emme näe puhdasta Harvard-arkkitehtuuria, joka olisi toteutettu tietokoneille ja työasemille. Sen sijaan käytetään muokattua Harvard-arkkitehtuuria, jossa muistin hierarkiaa CPU-välimuistilla käytetään ohjelman ja datan erottamiseen. Muistihierarkia erottaa tallennustilan prosessien vasteajan hierarkian perusteella.
Ohjesarjan arkkitehtuuri
Kun ohjelma (koodi) ladataan järjestelmän muistiin (RAM), CPU noutaa sen (viitaten sekä mikroprosessoriin että mikro-ohjaimeen) toimimaan tietojen suhteen, se on paljon samanlainen kuin annamme ohjeita koiran kouluttamiseen tietyt toiminnot ja komennot. Kun näitä ohjeita käytetään tiettyihin transistoreihin, se menee loogiselta tasolta toiselle. Joten periaatteessa ohjeiden avulla ihmisen ohjelmoija kommunikoi prosessorin kanssa. Jokaisella suorittimella on oma ohjeisto, kokoelma ohjeita, jotka perustuvat sen arkkitehtuuriin ja ominaisuuksiin.
CPU ymmärtää nämä ohjeet 0: n ja 1: n yhdistelmässä, jotka tunnetaan myös opkoodina. Ihmisen ohjelmoijalle on todella vaikeaa muistaa 0: n ja 1: n yhdistelmä jokaiselle prosessoriin liittyvälle käskylle. Jotta ihmisohjelmoijan työ olisi helppoa, meille annetaan näiden ohjeiden korkean tason käyttöliittymät, ja kääntäjä muuntaa ne 0: n ja 1: n muodossa prosessointiin. Myös jokaisen suorittimen käskysarjassa sillä on rajoitettu määrä käskyjä, jotka se voi ymmärtää.
Suorittimen suorituskyky
Olet ehkä kuullut termin CPU: n kellotaajuuden, joka liittyy suorittimen suorituskykyyn. Suorittimien kellotaajuus on yleensä MHz (Mega-Hertz) tai GHz (Giga-Hertz), kuten 25 GHz: n kellotaajuus. Kellonopeuteen liittyvä numero kertoo, kuinka monta kertaa prosessorin sisällä oleva kello napsahtaa jaksoissa sekunnissa. Kellonopeuden käytännöllisyys voidaan ymmärtää sillä, että ohjeet suoritetaan suorittimen kellosyklien perusteella, joka on verrannollinen CPU: n kerrallaan suoritettavien ohjelmien määrään.
Suorittimen riippuu määrän ohjeita, jotka on kirjoitettu ohjelmaan, enemmän ohjeita, enemmän aikaa, jonka prosessori suorittaa ne. Se riippuu myös siitä, kuinka monta kellosykliä kukin käsky suoritetaan, tietyt ohjeet tarvitsevat enemmän kellojaksoja suoritettavaksi kuin toiset, joten ne viivästyttävät suorittimen suorituskykyä. Ohjeen ohjeet ja kunkin käskyn suorittamiseen tarvittavat jaksot ovat kääntäen verrannollisia toisiinsa. Yhden muuttaminen vaikuttaa toiseen. Tässä vaiheessa CPU-teollisuus on jaettu.
RISC- ja CISC-ohjeistoarkkitehtuuri
Kuten edellä mainittiin, ohjelman suorittaminen ja suorittimen suorituskyky riippuvat ohjelman käskyjen lukumäärästä, jossa käskyt ehdotetaan kyseiselle keskusyksikölle osana käskysarjaa ja toinen tekijä on kellosyklien lukumäärä jokainen käsky suoritetaan. Näiden kahden tekijän perusteella on tällä hetkellä käytettävissä kaksi käskysarjaa. Aikaisin niistä on monimutkainen käskyjoukon laskenta (CISC), kun taas toinen on pienennetty käskyjoukon laskenta (RISC). Keskustellaan kustakin näistä arkkitehtuureista yksityiskohtaisesti, jotta ymmärretään ero RIC: n ja CISC-arkkitehtuurin välillä.
Monimutkainen ohjeistosarja (CISC)
CISC on lyhenne sanoista Complex Instruction Set Computing. CISC: n päämotiivi on vähentää ohjelman suorittamien käskyjen määrää, tämä tapahtuu yhdistämällä monia yksinkertaisia ohjeita, kuten osoitetila, lataus jne., Ja muodostamalla yhden monimutkaisen käskyn. CISC ohje sisältää joukon yksinkertaisia opetusta sekä joitakin erityisiä ohjeita kestää yli yhden vuorokauden aikana toteuttaa. CISC-käskyt voivat toimia suoraan muistissa ilman rekistereiden puuttumista, mikä tarkoittaa, että se poistaa joidenkin perusohjeiden, kuten arvojen lataamisen ja muistin (RAM), tarpeen. CISC-ohjeissa korostetaan enemmän laitteistoa kuin ohjelmistoa, mikä tarkoittaa, että kääntäjien kuormituksen sijastaCISC käyttää transistoreita laitteistona ohjeiden purkamiseen ja toteuttamiseen. Koska käsky on kuitenkin monimutkainen ja muodostuu useista vaiheista, ne suoritetaan useammalla kellojaksolla.
Yksinkertainen analogia suhteuttaa on kun käsketään avata kirjan ja lukea 3 rd Luvun 2 toinen sivu. Tässä aktiviteettisarjassa teet useita vaiheita, kuten etsit kirjaa laukustasi, kuin sekoitat sivua lukuun 3 ja siirryt sitten luvun 2. sivulle ja aloitat sitten lukemisen. Sarjassa on vaihe, jos yhdistetään yksi käsky lukemisen sivun 44 (joka on 2 toinen sivunumero 3 rd luku), saamme CISC ohje.
Pienennetty ohjeistosarja (RISC)
Ensimmäisen integroidun sirun suunnitteli Jack Kilby vuonna 1958, joka oli oskillaattori, ja vuonna 1970 ensimmäinen kaupallinen mikroprosessori tuli Inteliltä. Vaikka prosessorien alkaessa ei ollut CISC: tä. Mutta suurten laskentavaatimusten myötä CISC-arkkitehtuurista tuli monimutkaisempi ja sitä oli vaikea käsitellä. John Coke julkaisi IBM: n RISC-nimellä tunnetun CISC-arkkitehtuurin täydellisen uudistuksen. Siten näiden kahden arkkitehtuurin erottamiseksi otettiin käyttöön termit RISC ja CISC.
RISC tarkoittaa lyhennettyä käskyjoukon laskentaa. RISC: n päämotiivi oli ottaa käyttöön yhdenmukaisuus ohjeiden koossa ja toteutuksessa. Tämä tehtiin ottamalla käyttöön yksinkertainen käskyjoukko, joka voidaan suorittaa yhtenä käskynä sykliä kohden, tämä tapahtuu rikkomalla monimutkaiset käskyt, kuten lataus ja tallennus, eri käskyihin, joissa jokaisen käskyn suorittaminen vie suunnilleen yhden kellojakson. RISC sisältää yksinkertaisia ohjeita samankokoinen, joka voitaisiin suorittaa yhdessä kellojaksossa. RISC-pohjaiset koneet tarvitsevat enemmän RAM-muistia kuin CISC pitääkseen arvot, kun ne lataavat jokaisen käskyn rekistereihin. Yhden käskyn suorittaminen sykliä kohden antaa RISC-pohjaisille koneille edun putkistosta(putkisto on prosessi, jossa seuraava käsky ladataan ennen ensimmäisen käskyn suorittamista, tämä lisää suorituksen tehokkuutta) RISC-arkkitehtuuri korostaa