L1 vs L2-cache
Cachegeheugen is een speciaal geheugen dat door de CPU (Central Processing Unit) van een computer wordt gebruikt om de gemiddelde tijd die nodig is om toegang te krijgen tot het geheugen te verminderen. Cachegeheugen is een relatief kleiner en ook sneller geheugen, waarin de meest gebruikte gegevens van het hoofdgeheugen worden opgeslagen. Wanneer er een verzoek om een geheugenuitlezing is, wordt het cachegeheugen gecontroleerd om te zien of die gegevens in het cachegeheugen aanwezig zijn. Als die gegevens zich in het cachegeheugen bevinden, is het niet nodig om toegang te krijgen tot het hoofdgeheugen (het duurt langer om toegang te krijgen), waardoor de gemiddelde toegangstijd tot het geheugen kleiner wordt. Meestal zijn er aparte caches voor gegevens en instructies. Gegevenscache wordt meestal opgezet in een hiërarchie van cacheniveaus (soms multilevel caches genoemd). L1 (Niveau 1) en L2 (Niveau 2) zijn de topcaches in deze hiërarchie van caches. L1 is de cache die het dichtst bij het hoofdgeheugen ligt en is de cache die als eerste wordt gecontroleerd. L2-cache is de volgende in de rij en is de tweede die het dichtst bij het hoofdgeheugen ligt. L1 en L2 variëren in toegangssnelheden, locatie, grootte en kosten.
L1-cache
L1-cache (ook bekend als primaire cache of niveau 1-cache) is de hoogste cache in de hiërarchie van cacheniveaus van een CPU. Het is de snelste cache in de hiërarchie. Het heeft een kleiner formaat en een kleinere vertraging (zero wait-state) omdat het meestal in de chip is ingebouwd. SRAM (Static Random Access Memory) wordt gebruikt voor de implementatie van L1.
L2-cache
L2-cache (ook bekend als secundaire cache of Level 2-cache) is de cache die zich naast L1 in de cachehiërarchie bevindt. L2 wordt meestal alleen geopend als de gezochte gegevens niet in L1 worden gevonden. L2 wordt meestal gebruikt om de kloof tussen de prestaties van de processor en het geheugen te overbruggen. L2 wordt meestal geïmplementeerd met behulp van een DRAM (Dynamic Random Access Memory). Meestal wordt L2 op het moederbord gesoldeerd, heel dicht bij de chip (maar niet op de chip zelf), maar sommige processors zoals Pentium Pro weken van deze standaard af.
Wat is het verschil tussen L1- en L2-cache?
Hoewel zowel L1 als L2 cachegeheugens zijn, hebben ze hun belangrijkste verschillen. L1 en L2 zijn de eerste en tweede cache in de hiërarchie van cacheniveaus. L1 heeft een kleinere geheugencapaciteit dan L2. Ook is L1 sneller toegankelijk dan L2. L2 wordt alleen geopend als de gevraagde gegevens niet in L1 worden gevonden. L1 is meestal ingebouwd in de chip, terwijl L2 heel dicht bij de chip op het moederbord is gesoldeerd. Daarom heeft L1 een zeer kleine vertraging in vergelijking met L2. Omdat L1 is geïmplementeerd met SRAM en L2 is geïmplementeerd met DRAM, hoeft L1 niet te worden vernieuwd, terwijl L2 moet worden vernieuwd. Als de caches strikt inclusief zijn, zijn alle gegevens in L1 ook in L2 te vinden. Als de caches echter exclusief zijn, zijn dezelfde gegevens niet beschikbaar in zowel L1 als L2.