Procesor

Centralna procesna enota (CPU) je pomemben del vsakega računalnika. Procesor pošilja signale za nadzor drugih delov računalnika, skoraj tako kot možgani nadzorujejo telo.

Procesor je elektronski stroj, ki deluje na podlagi seznama računalniških opravil, imenovanih navodila. Prebere seznam navodil in izvede vsako navodilo po vrstnem redu. Seznam navodil, ki jih procesor lahko izvaja, je računalniški program.

Hitrost takta ali hitrost notranjih delov procesorja se meri v hercih (Hz). Sodobni procesorji pogosto tečejo tako hitro, da se namesto tega uporablja gigaherčni takt (GHz). En GHz je 1 000 000 000 000 ciklov na sekundo.

Večina procesorjev, ki se uporabljajo v namiznih (domačih) računalnikih, so mikroprocesorji podjetja Intel ali Advanced Micro Devices (običajno skrajšano na AMD). Procesorje izdelujejo tudi podjetja ARM, IBM in AMD pod okriljem podjetja ATI Technologies, ki je trenutno vodilno. Večina njihovih procesorjev se uporablja v vgrajenih sistemih za bolj specializirane stvari, kot so mobilni telefoni, avtomobili, igralne konzole ali v vojski.

Procesor Pentium v računalnikuZoom
Procesor Pentium v računalniku

Vrste procesorjev

V 20. stoletju so inženirji izumili številne različne računalniške arhitekture. Danes večina namiznih računalnikov uporablja 32-bitne ali 64-bitne procesorje. Navodila v 32-bitnih procesorjih so dobra za obdelavo podatkov, velikih 32 bitov (večina navodil v 32-bitnih procesorjih "razmišlja" v 32 bitih). Podobno velja za 64-bitni procesor, ki je dober za obdelavo podatkov, velikih 64 bitov (in pogosto dober tudi za obdelavo 32-bitnih podatkov). Velikost podatkov, ki jih procesor najbolje obdeluje, se pogosto imenuje velikost besede procesorja. Veliko starih procesorjev iz 70., 80. in zgodnjih 90. let (in veliko sodobnih vgrajenih sistemov) ima 8-bitno ali 16-bitno velikost besede. Ko so bili sredi 20. stoletja izumljeni procesorji, so imeli veliko različnih velikosti besed. Nekateri so imeli različne velikosti besed za navodila in podatke. Manj priljubljene velikosti besed so se pozneje prenehale uporabljati.

Večina procesorjev je mikroprocesorjev. To pomeni, da je procesor samo en čip. Nekateri čipi z mikroprocesorji vsebujejo tudi druge komponente in so popolni enočipni "računalniki". To se imenuje mikrokrmilnik.

Registri

Ko procesor izvaja računalniški program, mora nekje shraniti podatke, na katerih delujejo navodila (podatke, ki jih berejo in pišejo). To shranjevanje se imenuje register. Procesor ima običajno veliko registrov. Dostop do registrov (branje in pisanje) mora biti zelo hiter. Zato so del samega procesorskega čipa.

Pomnilnik

Shranjevanje vseh podatkov v registrih bi bilo za večino procesorjev preveč zapleteno (in zelo drago). Zato se v registre običajno shranjujejo le podatki, s katerimi procesor dela "prav zdaj". Ostali podatki, ki jih uporablja program, so shranjeni v pomnilniku RAM. Razen v mikrokrmilnikih je RAM običajno shranjen zunaj CPU v ločenih čipih.

Ko procesor želi prebrati ali zapisati podatke v pomnilniku RAM, pošlje naslov do teh podatkov. Vsak bajt v pomnilniku RAM ima pomnilniški naslov. Velikost naslovov je pogosto enaka velikosti besede: 32-bitni procesor uporablja 32-bitne naslove itd. Manjši procesorji, kot so 8-bitni, pa pogosto uporabljajo naslove, ki so večji od velikosti besede. V nasprotnem primeru bi bila največja dolžina programa prekratka.

Ker je velikost naslovov omejena, je omejena tudi največja količina pomnilnika. 32-bitni procesorji lahko običajno uporabljajo le do 4 GB pomnilnika RAM. To je število različnih bajtov, ki jih je mogoče izbrati z 32-bitnim naslovom (vsak bit ima lahko dve vrednosti - 0 in 1, 2 32bajta pa sta 4 GB). 64-bitni procesor lahko obdeluje do 16 EB pomnilnika RAM (16 eksabajtov, približno 16 milijard GB ali 16 milijard milijard bajtov). Operacijski sistem ga lahko omeji na uporabo manjših količin.

Informacije, ki so shranjene v pomnilniku RAM, so običajno nestalne. To pomeni, da izginejo, če računalnik izklopite.

Predpomnilnik

V sodobnih računalnikih je pomnilnik RAM veliko počasnejši od registrov, zato dostop do pomnilnika RAM upočasni delovanje programov. Da bi pospešili dostop do pomnilnika, je med pomnilnikom RAM in glavnimi deli procesorja pogosto nameščena hitrejša vrsta pomnilnika, imenovana predpomnilnik. Predpomnilnik je običajno del samega čipa procesorja in je na bajt veliko dražji od pomnilnika RAM. Predpomnilnik shranjuje enake podatke kot RAM, vendar je običajno veliko manjši. Zato se lahko zgodi, da se vsi podatki, ki jih uporablja program, ne bodo prilegali predpomnilniku. Predpomnilnik poskuša shraniti podatke, ki se bodo verjetno veliko uporabljali. Primeri vključujejo nedavno uporabljene podatke in podatke, ki so v pomnilniku blizu nedavno uporabljenih podatkov.

Pogosto je smiselno imeti "predpomnilnik za predpomnilnik", tako kot je smiselno imeti predpomnilnik za RAM. Pri večnivojskem predpomnilniku je več predpomnilnikov, imenovanih predpomnilnik L1, predpomnilnik L2 in tako naprej. Predpomnilnik L1 je najhitrejši (in najdražji na bajt) predpomnilnik in je "najbližje" procesorju. Predpomnilnik L2 je korak stran in je počasnejši od predpomnilnika L1 itd. Na predpomnilnik L1 lahko pogosto gledamo kot na predpomnilnik za predpomnilnik L2 itd.

Avtobusi

Računalniška vodila so žice, ki jih procesor uporablja za komunikacijo s pomnilnikom RAM in drugimi komponentami v računalniku. Skoraj vsi procesorji imajo vsaj podatkovno vodilo, ki se uporablja za branje in pisanje podatkov, in naslovno vodilo, ki se uporablja za izpisovanje naslovov. Druga vodila znotraj procesorja prenašajo podatke do različnih delov procesorja.

Nizi ukazov

Nabor ukazov (imenovan tudi ISA - Instruction Set Architecture) je jezik, ki ga neposredno razume določen procesor. Te jezike imenujemo tudi strojna koda ali binarni jezik. V njih je zapisano, kako procesorju naročite, naj naredi različne stvari, kot je nalaganje podatkov iz pomnilnika v register ali seštevanje vrednosti iz dveh registrov. Vsako navodilo v naboru navodil ima kodiranje, ki pomeni, kako je navodilo zapisano kot zaporedje bitov.

Programov, napisanih v programskih jezikih, kot sta C in C++, procesor ne more zagnati neposredno. Preden jih procesor lahko zažene, jih je treba prevesti v strojno kodo. Prevajalnik je računalniški program, ki opravi to prevajanje.

Strojna koda je le zaporedje 0 in 1, zato jo ljudje težko beremo. Da bi bila bolj berljiva, so programi v strojni kodi običajno napisani v jeziku zbirnika. Namesto 0 in 1 se v zbirnem jeziku uporablja besedilo: Če želite v register A naložiti vrednost 0, lahko na primer zapišete "LD A,0". Program, ki prevaja zbirni jezik v strojno kodo, se imenuje assembler.

Funkcionalnost

Naštej nekaj osnovnih stvari, ki jih lahko opravi procesor:

  • Branje podatkov iz pomnilnika in pisanje podatkov v pomnilnik.
  • Eno število dodajte drugemu številu.
  • Preverite, ali je eno število večje od drugega.
  • Premikanje števila z enega mesta na drugo (na primer iz enega registra v drugega ali med registrom in pomnilnikom).
  • Preskoči na drugo mesto na seznamu ukazov, vendar le, če je nek test resničen (na primer le, če je eno število večje od drugega).

Tudi zelo zapletene programe je mogoče izdelati z združevanjem številnih preprostih navodil, kot so ta. To je mogoče, ker vsako navodilo potrebuje zelo kratek čas. Številni današnji procesorji lahko v eni sekundi izvedejo več kot 1 milijardo (1.000.000.000.000) ukazov. Na splošno velja, da več kot lahko procesor opravi v določenem času, hitrejši je. Eden od načinov za merjenje hitrosti procesorja je MIPS (milijon ukazov na sekundo). Flops (operacije s plavajočo vejico na sekundo) in takt procesorja (običajno merjen v gigahercih) sta prav tako načina za merjenje, koliko dela lahko procesor opravi v določenem času.

Procesor je sestavljen iz logičnih vrat; nima gibljivih delov. Procesor v računalniku je elektronsko povezan z drugimi deli računalnika, kot sta grafična kartica ali BIOS. Računalniški program lahko nadzoruje te periferne naprave z branjem ali pisanjem številk na posebna mesta v pomnilniku računalnika.

Potek navodil

Vsako navodilo, ki ga izvede procesor, je običajno izvedeno v več korakih. Koraki za izvedbo ukaza "INC A" (povečanje vrednosti, shranjene v registru A, za ena) na preprostem procesorju so na primer naslednji:

  • Preberite navodilo iz pomnilnika,
  • dekodirati ukaz (ugotoviti, kaj ukaz počne) in
  • dodajte eno v register A.

Različni deli procesorja opravljajo različne naloge. Pogosto je mogoče istočasno izvesti nekaj korakov iz različnih navodil, zaradi česar je procesor hitrejši. Tako lahko na primer preberemo navodilo iz pomnilnika hkrati z dekodiranjem drugega navodila, saj ti koraki uporabljajo različne module. To si lahko predstavljamo tako, da imamo več navodil hkrati "znotraj cevovoda". V najboljšem primeru vsi moduli hkrati delajo na različnih navodilih, vendar to ni vedno mogoče.

Enote za upravljanje pomnilnika (MMU) in navidezni pomnilnik

Sodobni procesorji pogosto uporabljajo enoto za upravljanje pomnilnika (MMU). MMU je komponenta, ki prevaja naslove iz procesorja v (običajno) različne naslove pomnilnika RAM. Pri uporabi enote MMU naslovi, ki se uporabljajo v programu, (običajno) niso "pravi" naslovi, na katerih so shranjeni podatki. To se imenuje navidezni pomnilnik (nasprotno od "pravega"). Nekaj razlogov, zakaj je dobro imeti MMU, je naštetih spodaj:

  • MMU lahko pred programom "skrije" pomnilnik drugih programov. To stori tako, da med izvajanjem programa ne prevede nobenih naslovov na "skrite" naslove. To je dobro, saj pomeni, da programi ne morejo brati in spreminjati pomnilnika drugih programov, kar izboljša varnost in stabilnost. (Programi ne morejo "vohuniti" drug za drugim ali si "stopiti na prste".)
  • Številni enote MMU lahko nekatere dele pomnilnika naredijo nenapisljive, neberljive ali neizvedljive (kar pomeni, da kode, shranjene v tem delu pomnilnika, ni mogoče zagnati). To je lahko dobro zaradi stabilnosti in varnosti ter tudi iz drugih razlogov.
  • MMU-ji omogočajo različnim programom različne "poglede" na pomnilnik. To je priročno v različnih situacijah. Tako bo na primer vedno mogoče imeti "glavno" kodo programa na istem (navideznem) naslovu, ne da bi pri tem prišlo do trka z drugimi programi. Prav tako je priročno, kadar je veliko različnih delov kode (iz knjižnic), ki so v skupni rabi med programi.
  • MMU-ji omogočajo, da se koda iz knjižnic ob vsakem zagonu programa pojavi na različnih naslovih. To je dobro, saj hekerji zaradi tega, ker ne vedo, kje v pomnilniku se kaj nahaja, pogosto težje pripravijo programe do tega, da bi počeli slabe stvari. To se imenuje naključna izbira naslovnega prostora.
  • Napredni programi in operacijski sistemi lahko uporabljajo trike z MMU, da se izognejo kopiranju podatkov med različnimi mesti v pomnilniku.

Več jeder

Večjedrni procesorji so postali običajni v začetku 21. stoletja. To pomeni, da imajo na istem čipu vgrajenih več procesorjev, tako da lahko izvajajo več ukazov hkrati. Nekateri procesorji imajo lahko tudi do dvaintrideset jeder, kot na primer AMD Epyc 7601.

Proizvajalci

Naslednja podjetja izdelujejo računalniške procesorje:

  • ARM
  • Intel
  • Napredne mikro naprave
  • MCST
  • SRISA
  • Sun Microsystems

Dodatne informacije

Vprašanja in odgovori

V: Kaj je procesor?


O: Centralna procesna enota (CPU) je pomemben del vsakega računalnika. Pošilja signale za nadzor drugih delov računalnika, skoraj tako kot možgani nadzorujejo telo. Procesor je elektronski stroj, ki deluje na podlagi seznama navodil za opravljanje določenih nalog.

V: Kako deluje procesor?


O: Procesor prebere seznam navodil in izvede (izvrši) vsako navodilo po vrstnem redu. Seznam navodil, ki jih procesor lahko izvaja, je računalniški program.

V: V čem se meri takt ali hitrost procesorja?


O: Ura ali hitrost notranjih delov procesorja se meri v hercih (Hz). Sodobni procesorji pogosto delujejo tako hitro, da se namesto tega uporabljajo gigaherci (GHz) - en GHz je 1 000 000 000 000 ciklov na sekundo.

V: Kdo so nekatera podjetja, ki izdelujejo procesorje?


O: Nekatera podjetja, ki izdelujejo procesorje, so Intel, Advanced Micro Devices (AMD), ARM (nedavno ga je kupila Nvidia), IBM in AMD pod okriljem ATI Technologies, ki trenutno vodi na trgu.

V: Kje se uporablja večina procesorjev?


O: Večina procesorjev, ki se uporabljajo v namiznih računalnikih, so mikroprocesorji, ki jih izdelujeta Intel ali AMD, večina drugih pa se uporablja v vgrajenih sistemih za bolj specializirane stvari, kot so mobilni telefoni, avtomobili, konzole za videoigre ali vojaške aplikacije.

AlegsaOnline.com - 2020 / 2023 - License CC3