Processor Cache Tutorial

February 18

Processor Cache Tutorial

Processor cache er en form af meget høj hastighed RAM, der fungerer som en lille buffer mellem processoren og hovedlageret i moderne computere. Processor cache kører ved samme klokfrekvens som processor, som er meget hurtigere end det system bus hastighed, hvormed hovedhukommelsen kører. Processoren cachecontroller læser små segmenter af hovedhukommelsen i processoren cache før processoren faktisk kræver det, og denne operation væsentligt fremskynder operationer, når det virker, som typisk er omkring 90 procent af tiden på optimeret kode.

Instruktioner


• Main hukommelse består af forskellige typer af Dynamic Random Access Memory (DRAM) moduler, som løber på systemets bus hastighed og skal opdateres hele tiden ved hjælp af et ur signal og en kompleks controller til at undgå tab af data. DRAM er forholdsvis billig, men meget langsommere end processoren, så når processoren kører på fuld kapacitet, DRAM har svært ved at holde op med anmodninger, og må ofte sidde inaktiv mens hukommelse operationer udføres.

• Processor cache-hukommelse består af statisk Random Access Memory (SRAM). SRAM er betydeligt dyrere end DRAM, men har to store fordele. SRAM behøver ikke at blive opdateret, hvilket betyder, at det kan opbevare data uden at skulle opdateres, så længe der er tændt. SRAM er også i stand til at køre ved meget højere hastigheder, typisk kører ved samme hastighed som processoren.

• Processor cache er implementeret som en del af processoren i de fleste tilfælde ved hjælp af en dual-layer fremgangsmåde betegnes L1 og L2. L1 cache ligger lige inde i processoren selv, og er af begrænset størrelse. L1-cache holder mest sandsynlige hukommelse information, at processoren har brug for den næste instruktion. L2 cache er placeret inde i processoren boliger, men ikke inde i processoren selv, og er meget større end L1 cache. L2 cache holder data fra DRAM L1 cache sandsynligvis vil have næste.

• Processor cache er ikke altid præcise i forudsige hvilke oplysninger der vil være behov for næste. Når processoren cache har de oplysninger, der er behov for, anses det for et "hit", og når det ikke har hvad der skal til, anses det for en "miss". Under typiske forhold, processoren cache opnår hits omkring 90 procent af den tid, fremskynde systemet betydeligt.