Різне

Що таке кеш-память Як працює кеш Інклюзивний кеш. Ексклюзивний кеш

21.02.2017

Що таке кеш-пам’ять? Як працює кеш? Інклюзивний кеш. Ексклюзивний кеш

Що таке кеш-пам’ять комп’ютера

Як вже згадувалося раніше, статична оперативна пам’ять знайшла застосування в кеш-пам’яті. Основне гідність статичної пам’яті — це її швидкодія. Основний недолік — великий фізичний обсяг, займаний пам’яттю і високе енергоспоживання.

Нагадаємо, що осередок статичної пам’яті побудована на транзисторном каскаді, який може містити до 10 транзисторів. Оскільки, час перемикання транзистора з одного стану в інше мізерно мало, то і швидкість роботи статичної пам’яті висока.

Кеш-пам’ять має невеликий обсяг і розміщується безпосередньо на процесорному кристалі. Її швидкість роботи набагато вище, ніж у динамічній пам’яті (модулі ОЗП), але нижче, ніж працюють регістри загального призначення (РОН) центрального процесора.

Вперше кеш-пам’ять з’явилася на 386-х комп’ютерах і розташовувалася вона на материнській платі. Материнські плати 386 DX мали кеш-пам’ять об’ємом від 64 до 256 Кб. 486-е процесори вже мали кеш-пам’ять, розташовану на процесорному кристалі, але кеш-пам’ять на материнській платі була збережена. Система кеш-пам’яті стала дворівневою: пам’ять на кристалі стали називати кешем першого рівня (L1), а на материнській платі — кешем другого рівня (L2). З часом кеш другого рівня «перебрався» на кристал процесора. Першою це зробила на процесорі AMD K6-III (L1 = 64 Kb, L2 = 256 Kb).

Наявність кешей двох рівнів зажадало створення механізму їх взаємодії між собою. Існує два варіанти обміну інформацією між кеш-пам’яттю першого та другого рівня, або, як кажуть, дві кеш-архітектури: інклюзивна і ексклюзивна .

Інклюзивна кеш-пам’ять

Інклюзивна архітектура передбачає дублювання інформації, що знаходиться в L1 та L2.

Схема роботи наступна. Під час копіювання інформації з ОПЕРАТИВНОЇ пам’яті в кеш робиться дві копії, одна копія заноситься в L2, інша копія — в L1. Коли L1 повністю заповнений, інформація заміщається за принципом видалення найбільш «старих даних» — LRU (Least-Recently Used). Аналогічно відбувається і з кешем другого рівня, але, оскільки його обсяг більше, то й інформація зберігається в ньому довше.

При зчитуванні процесором інформації з кешу, вона береться з L1. Якщо потрібної інформації в кеші першого рівня немає, то вона шукається в L2. Якщо потрібна інформація в кеші другого рівня знайдена, то вона дублюється в L1 (за принципом LRU), а потім передається в процесор. Якщо потрібна інформація не знайдена і в кеші другого рівня, то вона зчитується з ОЗП за схемою, описаною вище.

Інклюзивна архітектура застосовується в тих системах, де різниця в обсягах кешу першого і другого рівня велика. Наприклад, у Pentium 3 (Coppermine): L1 = 16 Кб, L2 = 256 Kb; Pentium 4: L1 = 16 Кб, L2 = 1024 Kb. У таких системах дублюється невелика частина кеша другого рівня, це цілком прийнятна ціна за простоту реалізації інклюзивної механізму.

Ексклюзивна кеш-пам’ять

Ексклюзивна кеш-пам’ять припускає унікальність інформації, що знаходиться в L1 та L2.

При зчитуванні інформації з ОПЕРАТИВНОЇ пам’яті в кеш — інформація відразу заноситься в L1. Коли L1 заповнений, то, за принципом LRU інформація переноситься з L1 до L2.

Якщо при зчитуванні процесором інформації з L1 потрібна інформація не знайдена, то вона шукається в L2. Якщо потрібна інформація знайдена в L2, то за принципом LRU кеші першого і другого рівня обмінюються між собою рядками («стара» рядок з L1 поміщається в L2, а на її місце записується потрібна рядок з L2). Якщо потрібна інформація не знайдена і L2, то звернення йде до ОЗП за схемою, описаною вище.

Ексклюзивна архітектура застосовується в системах, де різниця між обсягами кешу першого і другого рівня відносно невелика. Наприклад, у Athlon XP: L1 = 64 Kb, L2 = 256 Kb. В ексклюзивній архітектурі кеш-пам’ять використовується більш ефективно, але схема реалізації ексклюзивного механізму набагато складніше.

Взаємодія кеш-пам’яті ОЗУ

Оскільки, кеш-пам’ять працює дуже швидко, то в кеш поміщається інформація, до якої часто звертається процесор — це значно прискорює його роботу. Інформація з ОЗП поміщається в кеш, а потім до неї звертається процесор. Існує кілька схем взаємодії кеш-пам’яті і основної оперативної пам’яті.

Кеш-пам’яті з прямим відображенням. найпростіший варіант взаємодії кешу з ОЗУ. Обсяг ОЗП ділиться на сегменти (сторінки), за обсягом рівні обсягом всього кешу (наприклад, при обсязі 64 Кб кеша і ПАМ’ЯТІ розбивається на сторінки по 64 Кб). При взаємодії кешу з ОЗП, одна сторінка ОЗП розміщується в кеш-пам’яті, починаючи з нульового адреси (тобто з самого початку кеша). При повторній операції взаємодії, наступна сторінка накладається поверх існуючої — тобто фактично колишні дані замінюються на поточні.

Гідності. проста організація масиву, мінімальний час пошуку.

Недоліки. неефективне використання всього об’єму кеш-пам’яті — адже зовсім не обов’язково, що дані будуть займати весь об’єм кешу, вони можуть займати і 10%, але наступна порція даних знищує попередню, таким чином, фактично маємо кеш з набагато меншим обсягом.

Набірно-асоціативна кеш-пам’ять. Весь об’єм кешу ділиться на кілька рівних сегментів, кратних двійці в цілій мірою (2, 4, 8). Наприклад, кеш 64 Кб може бути розділений на:

  • 2 сегмента по 32 Кб кожен;
  • 4 сегмента по 16 кілобайт;
  • 8 сегментів по 8 Кб кожний.

Pentium 3 і 4 мають 8-канальну структуру кеша (кеш розбитий на 8 сегментів); Athlon Thunderbird — 16-канальну.

При такій організації, ОЗУ ділиться на сторінки, рівні за обсягом одному сегменту кеша (одному кеш-банку). Сторінка ОЗП пишеться в перший кеш-банк; наступна сторінка — у другій кеш-банк і т. д. поки всі кеш-банки не будуть заповнені. Подальша запис інформації йде в той кеш-банк, який не використовувався найдовше (містить саму «стару».

Гідності. підвищується ефективність використання всього обсягу кешу — чим більше кеш-банків (вище асоціативність), тим вище ефективність.

Недоліки. більш складна схема управління роботою кешу; додатковий час на аналіз інформації.

Асоціативна кеш-пам’ять. Це граничний випадок попереднього варіанта, коли об’єм кеш-банку стає рівним одному рядку кеш-пам’яті (далі ділити вже нікуди). При цьому будь-яка рядок ОЗП може бути збережена в будь-якому місці кеш-пам’яті.

Запам’ятовувальний кеш-масив складається з рядків рівної довжини. Ємність такого рядка дорівнює розміру пакета, считываемого з ОЗП за 1 цикл (наприклад, Pentium 3 — 32 байта; Pentium 4 — 64 байта). Рядок завантажується в кеш і витягується тільки цілком.

Гідності. максимальна ефективність використання простору кеш-пам’яті.

Короткий опис статті: що таке кеш на андроїд Що таке кеш-пам’ять? Як працює кеш? Інклюзивний кеш. Ексклюзивний кеш кеш, кеш-пам’ять, інклюзивний кеш, ексклюзивний кеш

Джерело:
Що таке кеш-пам’ять? Як працює кеш? Інклюзивний кеш. Ексклюзивний кеш

Також ви можете прочитати