Cache procesora: Vrste i načela rada

Procesor na računalu je jedna od glavnih komponenti, bez kojih ništa neće raditi. Njegov je zadatak čitati informacije i prenositi ih na druge komponente koje se odnose na matičnu ploču. Procesor se sastoji od nekoliko elemenata, a predmemorija procesora je jedan od njih.

Cache memorija

Predmemorija procesora je jedna komponenta koja utječe na izvedbu, odnosno volumen, razinu i izvedbu. Ovaj se parametar odavno koristi u proizvodnji procesora, što je dokaz njegove korisnosti. Evo što je cache u jednostavnim riječima. Ako koristite programski jezik, onda je cache memorija sa super brzom razmjenom podataka, čiji je zadatak pohranjivanje i prijenos privremenih informacija. Okidači na kojima se izrađuje cache procesora sastoji se isključivo od tranzistora. Međutim, tranzistori imaju svojstvo zauzeti veliku količinu prostora, za razliku od RAM-a, koji se sastoji od kondenzatora. U tom smislu postoje znatne poteškoće koje ograničavaju količinu memorije. Unatoč tako malom iznosu, predmemorija procesora je prilično skupa opcija. Ali u isto vrijeme, takva struktura ima istu kvalitetu, brzinu. Okidači koji podupiru ne zahtijevaju regeneraciju, ali njihov prijelaz iz jednog stanja u drugo događa se s minimalnim zakašnjenjem. To je taj pokazatelj koji omogućuje da cache procesora radi na svojim frekvencijama.


U početku, predmemorija je bila postavljena na matičnu ploču. Sada se nalazi predmemorija procesorana sam CPU, što uvelike smanjuje vrijeme pristupa.

Svrha

Kao što je prethodno opisano, glavni zadatak cache-a procesora je puferiranje podataka i njihovo privremeno pohranjivanje. To daje dobre performanse kada se koriste aplikacije gdje je to potrebno. Za bolji opis jednostavnih riječi da je to takva cache i načelo rada, možete nacrtati analogiju s uredom. RAM igra ulogu police s datotekama, gdje računovođa s vremena na vrijeme dolazi da pokupi potrebne datoteke, a radna površina računovođe je cache. Na radnoj površini računovođe su stvari koje je više puta kontaktirao. Te stvari leže samo na stolu jer zahtijevaju brz pristup njima. Te se stavke povremeno prilažu podacima koji su uklonjeni s police. Kada ti podaci postanu nepotrebni, vraćaju se u stalak. Ova manipulacija vam omogućuje da očistite predmemorijsku memoriju tako da je pripremite za nove podatke.


Tako se ispostavlja da CPU provjerava svoju prisutnost u cacheu prije nego što zatraži podatke iz RAM-a. Evo što je ovaj keš jednostavnim riječima.

Razine memorije

Većina modernih procesora predstavlja nekoliko razina keš memorije. Često postoje dva ili tri od njih: L1 L2 cache L3. Prva razina cachea ima svojstvo brzog pristupa jezgri procesora, radeći na istim frekvencijama kao procesor. Također igra ulogu međuspremnika između procesora i druge memorije računala. L2 cache ima snažnije podatke, koji nažalost smanjuju njegovu brzinu. Njegov je zadatak osigurati prijelaz iz prvog utreću razinu. Budući da na svakoj razini pada brzina rada, mikroprocesorska memorija treće razine ima još sporiju brzinu pristupa. Međutim, njegova je brzina pristupa produktivnija, za razliku od standardnog RAM-a. U prethodnim verzijama, jezgra se nalazi na različitim razinama, ali L3 cache je dizajniran za cijeli procesor.

Nezavisni

Uređaj za predmemoriju sastoji se od nekoliko razina i kategorija. Mikroprocesori za poslužitelje i računala imaju tri neovisna spremnika: skup uputa, podataka i asocijativni bafer za emitiranje. Zato je superoperativna memorija podijeljena u tri razine.

Set uputa

Skup instrukcija, cache je potreban za učitavanje strojnog koda, ali što je to? Strojni kod se može nazvati sustavom naredbi određenog stroja za izračunavanje, koje interpretira središnji procesor ovog računala. Svaki program koji je napisan na strojnom jeziku izvršava se u binarnom kodu, s tim kompajliranim strojnim uputama. Čak se i ovaj proces može nazvati "opcode" - binarni kod. Što čini cache s uputama? Ova vrsta predmemorije može izvršiti samo određeni zadatak u obliku podatkovne operacije. To jest, cache sadrži skup uputa, od kojih se svaka bavi svojim "radom". To može biti računanje, premještanje iz jednog u drugo ili kopiranje. Svaka instrukcija stroja sadrži dvije vrste operacija: jednostavne i složene. Kada se jedna od tih operacija izvodi, ona ih dekodira u nizu za njihuređaje na koje je namijenjen.

Predmemorija podataka

Predmemorija podataka namijenjena je za pohranu podataka koje CPU zahtijeva mnogo češće od RAM-a. Zbog male količine procesorske predmemorije tamo se pohranjuju samo često tražene informacije. Međutim, lokacija ove vrste pohrane, tj. Na čipu procesora, omogućuje vam skraćivanje vremena upita, minimizirajući ga. Većina modernih procesora koristi veličinu predmemorije do 16 megabajta, ali u procesorima namijenjenim poslužiteljima, maksimalna memorija procesora doseže 20 megabajta i više.

Povezani međuspremnik za prevođenje

Ovaj tip se koristi za predmemoriju kako bi se ubrzao proces prijenosa podataka iz virtualne memorije u fizički. Asocijativna memorija ima fiksni skup zapisa. Svaki od tih zapisa pohranjuje informacije o prijenosu podataka iz virtualne memorije u fizičke. U nedostatku takvih informacija, procesor samostalno pronalazi put i ostavlja podatke o njemu, ali je potrebno puno više vremena nego korištenje već spremljenih podataka.

Neuspjesi u radu

Poput vrsta predmemorije, pogreške se također dijele u tri kategorije. Prva vrsta se zove instrukcija čitanja predmemorije. To izaziva veliko kašnjenje, jer će procesoru biti potrebno puno vremena za učitavanje potrebnih uputa za memoriju. Čitanje iz predmemorije podataka također ima kvarove. Za razliku od prvog, pogreške čitanja podataka nisu tako spore, jer druge upute koje se ne odnose na zahtjevmogu nastaviti svoj rad. Zauzvrat, traženi resurs proći će obradu u glavnoj memoriji.

Snimanje u podatkovnu memoriju također ne prolazi bez kvarova. Praznine u dosjeu ne oduzimaju mnogo vremena, jer se one mogu staviti u red. To vam omogućuje rad s drugim uputama, bez prekida cjelokupnog procesa. Otpis s dovršenim redom jedina je prepreka u normalnom radu CPU-a.

Varijante promašaja

Prva vrsta pogreške koja se naziva Obvezni propusti prikazuje se samo ako se adresa prvi put traži. Ispravlja ovu odredbu na prethodni uzorak, koji može biti hardver ili softver. Neuspjeh u propuštanju kapaciteta zove se zbog konačne veličine predmemorije, koja ne ovisi o asocijativnoj memoriji ili veličini linije. Nema razumijevanja za punu ili gotovo punu predmemoriju, budući da su njezine linije u zauzetom stanju. Novi redak predmemorije može se stvoriti kada se iskoristi bilo koji zauzet. Propust sukoba je, kao što možete vidjeti iz naslova, pogreška koja je nastala kao rezultat sukoba. To se događa kada procesor zatraži podatke koje je predmemorija već zamijenila.

Adresa za emitiranje i njezine varijante

Većina procesora instaliranih računala temelji se na određenoj vrsti virtualne memorije. To jest, svaki program koji se izvršava na stroju prepoznaje svoju pojednostavljenu adresu, koja specificira jedinstveni kod i podatke koji pripadaju isključivo ovom programu. Virtualni adresni prostor je stvoren tako da ga svaki program može koristiti, a neOvisno o lokaciji u fizičkoj memoriji.
Zbog prijevoda iz virtualne fizičke memorije (OZP), takve manipulacije se izvode s nevjerojatnom brzinom. Proces prevođenja adrese:
  • Generator adresa šalje fizičku adresu uređaju za upravljanje memorijom, ali na kraju nekoliko ciklusa. Ta se značajka zove "Odgoda".
  • "Učinak nametanja" može se smatrati procesom u kojem jedna fizička adresa ima nekoliko virtualnih adresa. Procesori ih reproduciraju u određenom redoslijedu koji kontrolira program. Međutim, da biste izvršili ovu opciju, morate zatražiti provjeru jedne kopije predmemorije.
  • Virtualno adresno okruženje podijeljeno je na fiksne memorijske blokove, čiji početak odgovara adresi s njezinom veličinom. Ta se značajka naziva "Prikazna jedinica".
  • Keshi i njihova hijerarhija

    Prisutnost nekoliko međusobno povezanih spremnika jedan je od kriterija većine suvremenih procesora. Procesori koji podržavaju paralelne upute dobivaju pristup informacijama o transporteru: upute za čitanje, proces prevođenja virtualnih adresa u fizičke adrese i upute za čitanje. Metoda rada transportera pomaže u raspoređivanju zadataka između tri odvojena spremnika, tako da možete izbjeći sukobe s pristupom. Ovo mjesto u hijerarhiji naziva se "Specialized Cache", a procesi s takvom značajkom su Harvardska arhitektura. Intenzitet udaraca i kašnjenja jedan je od glavnih problema u radu s superoperativnimmemorije. Činjenica je da što je više cachea i njegov postotak pogodaka, to će više biti kašnjenja. Često, kako bi se optimizirao rad i riješio ovaj sukob, koristi se razina spremnika korištenih za međusobno međusobno pohranjivanje. Plus sustav razina je da oni rade u nizu rasta. Prvo, prva razina računalne memorije, koja je brza, ali s malim volumenom, određuje brzinu procesora na njegovim frekvencijama. U neuspjehu prve razine, procesor se okreće u predmemoriju drugog stupnja, koja ima veći volumen, ali manje brzine. To se nastavlja sve dok procesor ne dobije odgovor na RAM zahtjev. Ta se pozicija u hijerarhiji naziva "Multi-level cache". Jedinstvene ili ekskluzivne predmemorije imaju svojstvo pohranjivanja podataka samo na jednoj određenoj razini. Uključujući prikaz može pohraniti informacije na nekoliko razina superaktivne memorije, stavljajući ih u metodu kopiranja. Razina hijerarhije, pod nazivom "Cache traces", eliminira rad dekodera, jer promiče brzo učitavanje instrukcija, smanjujući prijenos topline CPU-a. Njegova glavna značajka je mogućnost spremanja dekodiranih podataka. Spremljene upute podijeljene su u dvije skupine: dinamičke staze i osnovne blokove. U nekim slučajevima, dinamička ruta može biti izgrađena na nekoliko osnovnih jedinica, grupiranih zajedno. Dakle, dinamička staza može pohraniti blokove obrađene podacima.

    Povezane publikacije