RAM

Йерархия на RAM

Кеш паметта е буферна памет, която работи със скорост, която осигурява функциониране без режими на изчакване.

Необходимостта от създаване на кеш памет възникна, защото се появиха процесори, които работят с много висока скорост. Междувременно сложните процеси на приложение изискват много памет. Използването на голяма свръхбърза памет не е изгодно. Следователно между RAM и процесора започна да се инсталира по-малка високоскоростна буферна памет или кеш памет. Нещо повече, той беше разделен на вграден процесор (on-die) и външен (on-motherboard).

Част от инструкциите и данните, съдържащи се в основната памет, се записват в кеш паметта. В този случай често се използват два кеша, единият от които съхранява инструкции, а другият съхранява данни. Методът за избор на инструкции и данни, които се прехвърлят от RAM в кеш, определя скоростта на обработка на данните, защото може да се окаже, че в някои моменти от време кешът не съдържа необходимите инструкции или данни. В тези случаи процесорът преминава в режим на готовност и необходимата информация се прехвърля от RAM в кеш паметта.

1. Кеш на 1-во ниво (кеш ниво 1 или L1)

Кешът L1 или основният кеш се намира на платката на процесора и се използва за временно съхраняване на инструкции и данни, организирани в блокове от 32 байта. Основният кеш е най-бързата форма на паметта. Тъй като е вграден в чипа, той осигурява минимална латентност на ALU интерфейса, но е ограничен по размер.

L1-кешът е реализиран, използвайки принципа на статичната памет с произволен достъп (SRAM) и дълго време е имал среден размер от 16 KB. SRAM се произвежда по технология, подобна на микропроцесор: силициево фотогравиране. Всеки бит SRAM изисква четири до шест транзистора, което обяснява защо SRAM заема много повече място от DRAM, който изисква само един транзистор (плюс кондензатор).

P55 Pentium MMX, пуснат в началото на 1997 г., съдържа кеш от ниво 1, увеличен до 32KB. Процесорите AMD K6 и Cyrix M2, пуснати през същата година, допълнително увеличиха скоростта, осигурявайки 64KB кеш L1.

Съвременните процесори, като 2,4 GHz Intel Core 2 Duo E4600, предоставят същия L2 кеш, но два пъти повече. Двуядрен процесор.

2. Кеш на 2-ро ниво (кеш ниво 1 или L1)

L2 кешът (вторичен кеш) използва същата логика за управление като L1 кеша и също е тип SRAM.

Кешът L2 обикновено е два размера - 256 или 512 KB и се побира на системната платка в слот Card Edge Low Profile (CELP) или в кеш на стик (COAST) модул. Последният прилича на SIMM, но е малко по-къс и включва гнездо COAST, което обикновено се намира близо до процесора и прилича на PCI слот. В процесора Pentium обаче кешът L2 е поставен директно върху процесорния чип.

Този тип памет се характеризира с времена за достъп в диапазона 4,5-8 ns и има 3-1-1-1 схема за синхронизиране на пакети за шина със скорост до 133 MHz. Тези числа (или цикли на четене/запис) се отнасят до броя цикли на процесора за всеки достъп за партидно четене. Например 3-1-1-1 означава, че първата дума изисква три мерки (включително две ленти за изчакване) и една мярка за всяка следваща дума.

За скорости на шината до 66 MHz, Synchronous Burst Static RAM (Sync SRAM) предлага още по-добра производителност - 2-1-1-1. Когато обаче скоростта на шината е по-висока от 66 MHz, нейната верига пада до 3-2-2-2, което е много по-бавно от PB SRAM.

Използва се и асинхронен кеш, който е по-евтин (но по-бавен, защото не е обвързан с цикли на процесора). Асинхронният SRAM осигурява скорост от 12 до 20 ns и с честота на CPU шината от 50 до 66 MHz, пакетната диаграма изглежда така: 3-2-2-2 (два цикъла на изчакване за началния цикъл и един часовник за изчакване за следващите три трансфера).

Съвременните процесори имат кеш от 2-ро ниво от порядъка на 2048 KB.

Третото и основно ниво на системната памет на компютъра е известно като основна памет, памет с произволен достъп или RAM.

Трябва да се отбележи, че всички често срещани операционни системи, ако за работа е необходима повече памет, отколкото е физически налична в компютъра, не спират да работят, но изхвърлят неизползваното в момента съдържание на паметта в дисков файл (наречен суап) и след това при необходимост "изпреварване" на данни между RAM и суап. Това е много по-бавно от системния достъп до самата RAM, така че скоростта на системата директно зависи от количеството RAM.