- Arhitekture procesorjev
- Arhitektura kompleta navodil RISC in CISC
- Komplicirano računalništvo z navodili (CISC)
- Zmanjšano računanje nabora navodil (RISC)
Vgrajeni sistem je srce in jedro večine elektronskih izdelkov, ki so na voljo na trgu. Gre za izvedbo inženiringa, pri katerem strojna oprema ustreza programski opremi. Obdaja nas svet vgrajenih sistemov z mini računalniki v biometričnih ključavnicah, letali, avtomobili, spodbujevalniki itd. Ti omejeni viri, majhni, pametni in zmogljivi sistemi, nam pomagajo pri vsakodnevnih opravilih.
Vedno sem razmišljal o tem, kako deluje naše telo, živčni sistem, možgani in sposobnost večopravilnosti. Če združite vse te funkcije, boste dobili grobo sliko biološkega vgrajenega sistema. Naši možgani skrivajo zapletene podrobnosti svojega delovanja, ki se odvijajo znotraj njih, vendar nam omogočajo, da jih nadzorujemo v največji možni meri. Enaka zapletenost velja za procesor ali krmilnik, ki se uporablja v vdelanih sistemih. Skrivajo zapletene podrobnosti in nam zagotavljajo vmesnik na visoki ravni za delo. Za stopnjo abstrakcije lahko povemo, kako koda za dodajanje dveh številk v programskem jeziku na visoki ravni povzroči, da registri v čipih obdelujejo bitove in dajejo izhod uporabniku.
Arhitekture procesorjev
Centralna procesorska enota, ki se nanaša na mikroprocesor in mikrokrmilnik, izvaja posebne naloge s pomočjo nadzorne enote (CU) in aritmetične logične enote (ALU). Ker so navodila dostavljena iz RAM-a, CPU deluje s pomočjo svojih dveh pomožnih enot tako, da ustvarja spremenljivke in jim dodeljuje vrednosti in pomnilnik. Resnično je pomembno vedeti, kako CPU s pomočjo svoje arhitekture izvede vse to dejanje. Če želite izvedeti več o delovanju mikrokrmilnika, lahko preberete ta osnovni članek o mikrokrmilniku.
Vsak CPU ima povezan pomnilnik za shranjevanje programa in podatkov. Program in podatki sodelujejo s CPU, da dobijo izhodne podatke. Program vsebuje navodila, podatki pa informacije, ki jih je treba obdelati. Za dostop do programa in podatkov CPU uporablja vodila, ta vodila so žice, natančneje to so sledi žic, kot ste jih morda videli na tiskanih vezjih. V teh letih so se mikrokrmilniki in mikroprocesorji razvili s prilagajanjem različnih arhitektur, na podlagi zahtev ali zahtev zasnove na izbiro mikrokrmilnika vpliva vrsta uporabljene arhitekture. Oglejmo si priljubljene arhitekture.
Von-Neumannova / Princetonska arhitektura
Način, kako CPU dobi dostop do programa in podatkov, govori o arhitekturi CPU. Prej so za dostop do programa in podatkov uporabljali eno vodilo. Ta vrsta arhitekture je znana kot Von Neumannova arhitektura ali bolj preprosto Princeton Architecture. Eno samo vodilo za pridobivanje kode in podatkov pomeni, da se znajdejo drug drugemu in upočasnijo hitrost obdelave CPU-ja, ker je moral vsak počakati, da drugi konča pridobivanje. Ta omejitev je znana tudi kot Von-Neumannovo ozko grlo.
Harvardska arhitektura
Za pospešitev postopka je bila predlagana Harvard Architecture. V tej arhitekturi so prisotni ločeni podatkovni vodili za podatke in program. Torej to pomeni, da je ta arhitektura predlagala uporabo štirih avtobusov
- Nabor podatkovnih vodilov, ki prenašajo podatke v CPU in iz njega.
- Komplet naslovnega vodila za dostop do podatkov.
- Nabor podatkovnih vodilov za prenos kode v CPU.
- Naslovno vodilo za dostop do kode.
Uporaba ločenega naslovnega vodila in podatkovnega vodila je CPU-ju pomenila skrajšani čas izvedbe, vendar to privede do stroškovne zapletenosti pri oblikovanju arhitekture. Arhitektura Von Neumann se morda sliši nekoliko lenobno, vendar ima prednost v svoji preprosti zasnovi.
Harvardsko arhitekturo je zelo enostavno uporabiti, če si CPU in pomnilniške enote delijo isti prostor ali pa sta RAM in ROM vgrajena (na čipu) z procesorsko enoto, na primer v mikrokrmilnik, kjer so razdalje v mikronih in milimetrih. Vendar je težko uporabiti isto arhitekturo, kadar je pomnilnik, ki vsebuje kodo, zunaj procesorske enote, kot je ta v x86 IBM PC. Nabor ločenih sledov žic za podatke in naslov na matični plošči bi ploščo naredil zapleteno in drago. Razumimo na primeru procesorja.
Procesor s 64-bitnim podatkovnim vodilom in 32-bitnim naslovnim vodilom bi potreboval približno 100 vodilov (96 za podatkovno in naslovno vodilo ter nekaj drugih za krmilne signale) za izvedbo Von-Neumannove arhitekture. Ista struktura, če bi bila izvedena s Harvardsko arhitekturo, bi stala dvojne žice približno 200 z velikim številom nožic, ki prihajajo iz procesorja. Iz istega razloga ne vidimo čiste arhitekture Harvarda, ki bi bila uporabljena za osebne računalnike in delovne postaje. Namesto tega se uporablja spremenjena arhitektura Harvarda, v kateri se za ločevanje programa in podatkov uporablja hierarhija pomnilnika s predpomnilnikom CPU. Pomnilniška hierarhija ločuje pomnilnik glede na hierarhijo odzivnega časa procesov.
Arhitektura kompleta navodil
Ko je program (koda) naložen v pomnilnik sistema (RAM), ga CPU (ki se nanaša tako na mikroprocesor kot na mikrokrmilnik) pridobi za delovanje s podatki, je zelo podoben, saj dajemo navodila, ko psa dresiramo določena dejanja in ukaze. Ker ta navodila delujejo na nekaterih tranzistorjih, se to zgodi z ene logične ravni na drugo. V bistvu s pomočjo navodil človeški programer komunicira s procesorjem. Vsak CPU ima svoj nabor navodil, zbirko navodil, ki temelji na njegovi arhitekturi in zmožnostih.
CPU ta navodila razume v kombinaciji 0-jev in 1-jev, ki so znane tudi kot opcode. Za človeškega programerja si je res težko zapomniti kombinacijo 0 in 1 za vsako navodilo, povezano s CPU. Za lažje delo človeškega programerja imamo vmesnike teh navodil na visoki ravni, ki jih prevajalnik pretvori v obliki 0 in 1 za njihovo obdelavo. Tudi v naboru navodil vsakega CPU ima omejeno število navodil, ki jih lahko razume.
Zmogljivost CPU
Morda ste že slišali izraz takt CPU, povezan z zmogljivostjo CPU. Procesorji imajo na splošno takt v MHz (Mega-Hertz) ali GHz (Giga-Hertz), na primer 25 GHz. Število, povezano s taktom, pove, kolikokrat ura znotraj CPU-ja odklopi v ciklih na sekundo. Praktičnost takta lahko razumemo z dejstvom, da se navodila izvajajo na podlagi taktnih ciklov CPU, kar je sorazmerno s številom programov, ki jih lahko CPU izvaja hkrati.
Zmogljivost procesorja odvisna od števila navodil, ki so napisani v programu, več navodil, več časa, ki ga CPU potreben za njihovo izvedbo. Prav tako je odvisno od števila urnih ciklov, v katerih se izvede vsako navodilo, nekatera navodila potrebujejo več urnih ciklov kot druga, tako da zaostajajo v zmogljivosti CPU. Navodila v programu in cikli, potrebni za izvedbo vsakega navodila, so obratno sorazmerni drug drugemu. Spreminjanje enega bo vplivalo na drugega. To je točka, kjer je CPU industrija razdeljena.
Arhitektura kompleta navodil RISC in CISC
Kot je navedeno zgoraj, je izvajanje programa in zmogljivost CPU odvisna od števila navodil v programu, pri čemer so navodila predlagana temu CPU kot del nabora ukazov, drugi dejavnik pa je število urnih ciklov v ki se izvede vsako navodilo. Na podlagi teh dveh dejavnikov sta trenutno na voljo dva sklopa navodil. Najzgodnejši od njih je kompleksno računalništvo z navodili (CISC), drugo pa zmanjšano računalništvo z nabori navodil (RISC). Podrobno se pogovorimo o vsaki od teh arhitektur, da bomo razumeli razliko med arhitekturo RIC in CISC.
Komplicirano računalništvo z navodili (CISC)
CISC je kratica za Complex Instruction Set Computing. Glavni motiv CISC je zmanjšati število navodil, ki jih program izvrši, in sicer tako, da kombinira veliko preprostih navodil, kot so naslovni način, nalaganje itd., In tvori eno samo kompleksno navodilo. Navodilo CISC vključuje vrsto preprostih navodil in nekaj posebnih navodil, za izvajanje katerih je potreben več kot en urni cikel. Navodila CISC lahko neposredno delujejo na pomnilnik brez posredovanja registrov, kar pomeni, da odpravlja potrebo po nekaterih osnovnih navodilih, kot so nalaganje vrednosti in zahteva po pomnilniku (RAM). Navodila CISC bolj poudarjajo strojno opremo kot programsko opremo, kar pomeni, da namesto obremenitve prevajalnikovCISC uporablja tranzistorje kot strojno opremo za dekodiranje in izvajanje navodil. Ker je navodilo zapleteno in je sestavljeno iz več korakov, se izvajajo v več številu urnih ciklov.
Preprosta analogija povezati, ko ste povedali, da odpre knjigo in branje na 3 RD Chapter 2 nd stran. V tej seriji dejavnosti naredite več korakov, kot je iskanje knjige iz torbe, kot pa prestavljanje strani do 3. poglavja, nato prehod na 2. stran poglavja in začetek branja. Serija korak, če so združeni v en sam pouk branja stran 44 (ki je 2 nd stran številka 3 tretjem poglavju), smo dobili navodila CISC.
Zmanjšano računanje nabora navodil (RISC)
Prvi integrirani čip je leta 1958 zasnoval Jack Kilby, ki je bil oscilator, v Intelu pa je leta 1970 izšel prvi komercialni mikroprocesor. Čeprav ob zagonu procesorjev ni bilo CISC. Toda z velikimi računalniškimi zahtevami je arhitektura CISC postajala vse bolj zapletena in težko obvladljiva. John Coke je od IBM-a izdal popolno prenovo arhitekture CISC, imenovano RISC. Tako sta bila za razlikovanje med obema arhitekturama uvedena izraza RISC in CISC.
RISC pomeni skrajšano računalništvo nabora ukazov. Glavni motiv RISC je bil uvesti enotnost v velikosti in izvajanju navodil. To je bilo storjeno z uvedbo enostavnega nabora ukazov, ki ga je mogoče izvesti kot eno ukaz na cikel, to pa z razbijanjem zapletenih navodil, kot je nalaganje in shranjevanje v različna navodila, pri čemer vsako navodilo potrebuje približno en urni cikel. RISC arhitektura vključuje preprostim navodilom enake velikosti, ki se lahko izvrši v enem taktu. Stroji, ki temeljijo na RISC, potrebujejo več RAM-a kot CISC, da hranijo vrednosti, ko nalagajo vsako navodilo v registre. Izvajanje posameznih navodil na cikel daje strojem na osnovi RISC prednost cevovoda(cevovod je postopek, pri katerem se naslednje navodilo naloži pred izvedbo prvega ukaza, to poveča učinkovitost izvajanja). RISC arhitektura poudarja