Predpomnilnik

Iz MaFiRaWiki

Problem hitrosti

Mikroprocesor dela pri zelo visoki frekvenci (3,2 GHz) in noben RAM temu ne more slediti, saj so običajne hitrosti RAMa med 266 in 533 MHz, kar predstavlja približno od šestinke so desetinke hitrosti mikroprocesorja.

Nima smisla povečevati hitrosti mikroprocesorja, če ne rešimo problema ujemanja hitrosti med mikroprocesorjem in RAMom.

Rešitev

Rešitev so našli v hitrem RAMu. Ta, t.i. cache RAM predstavlja ustrezen prehod med hitrim mikroprocesojem in počasnim RAMom.

Cache predaja podatke registrom mikroprocesorja. Registri so majhne pomnilniške celice znotraj mikroprocesorja.

Mikroprocesor lahko prenaša podatke v različno velikih paketih, npr. v bajtih (8 bitov), besedah (16 bitov), dvojnih besedah (ang.dwords)(32 bitov) ali blokih. Ti podatki se neprestano prenašajo sem in tja:

  • iz mikroprocesorja v L1 cache (Level 1 cache)
  • iz L1 cache v registre
  • iz enega v drugi register
  • iz L1 cache v L2 cache
  • ...

Krasno bi bilo, če bi mikroprocesor izvedel en korak pri vsakem "tik-taku" ure. V resnici je izkoristek le 35 %, a brez cacheja bil bi še slabši.

L1 in L2 cache

Standardni računalniki so mikroprocesorji z L1 in L2 cacheji.

L1 cache je vgrajen v sredico mikroprocesorja in dela na isti frekvenci kot mikroprocesor. Je RAM velikosti 8, 16, 20, 32, 64 ali 128 kB.

L1 je običajno razdeljen na dva dela, eden je za podatke, drugi pa za navodila.

L2 cache je običajno precej večji, velikosti 256, 512 ali 1024 kB. Namen L2 cacheja je, da neprestano bere podatke iz RAMa, da so so vedno na voljo L1 cacheju.

Mikroprocesor Pentium 4 ima L2 cache integriran, prvi Pentium pa je imel L2 cache na matični plošči.

Integrirani cache uporablja statični RAM (SRAM) za razliko od normalnega RAMa, ki je dinamični RAM (DRAM). DRAM potrebuje za en bit en tranzistor (in kondenzator), SRAM pa šest tranzistorjev. Torej 256 kB L2 cacheja potrebuje 256x1000x8x6 ali več kot 12 milijonov tranzistorjev.

Na tem naslovu dobite program (cpu-z-136.zip, avgust 2006), ki med drugim prebere podatke za cache na vašem računalniku.

--LidijaBabic 13:32, 25 september 2006 (CEST)

Osebna orodja