Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Кеш-пам'ять

Реферат Кеш-пам'ять





му обсязі кешу схема з повною асоціативністю буде найменш швидкої, але найбільш ефективною. p> Повністю асоціативний кеш зустрічається на практиці, але, як правило, у нього дуже невеликий обсяг. Наприклад, у ЦП Cyrix 6x86 використовувалося 256 байт такого кеша для команд перед уніфікованим 16-або 64-Кбайт кешем L1. Часто полноассоціатівную схему застосовують при проектуванні TLB (про них буде розказано нижче), кешей адрес переходів, буферів читання-запису і т. д. Як правило, рівні асоціативності I-cache і D-cache досить низькі (до чотирьох каналів) - їх збільшення недоцільно, оскільки призводить до збільшення затримок доступу і в результаті негативно відбивається на продуктивності. В якості деякої компенсації збільшують асоціативність S-cache (зазвичай до 16 каналів), оскільки затримки при доступі до цього кешу неважливі. Наприклад, згідно з результатами досліджень часто використовуваних цілочисельних завдань, у Intel Pentium III 16 Кбайт чотириканального D-cache було достатньо для покриття близько 93% запитів, а 16-Кбайт чотириканального I-cache - 99% запитів. br/>

Розмір рядки і тега кеш-пам'яті


Важлива характеристика кеш-пам'яті - розмір рядка. Як правило, на один рядок покладається один запис адреси (так званий тег), яка вказує, якому адресою в оперативній пам'яті відповідає дана лінія. Очевидно, що нумерація окремих байтів недоцільна, оскільки в цьому випадку обсяг службової інформації в кеші в кілька разів перевищить обсяг самих даних. Тому один тег зазвичай покладається на один рядок, розмір якої зазвичай 32 або 64 байта (Реально існуючий максимум 1024 байти), і еквівалентний чотирьом (іноді восьми) Розрядному системної шини даних. Крім того, кожен рядок кеш-пам'яті супроводжується деякою інформацією для забезпечення відмовостійкості: одним або декількома бітами контролю парності (parity) або вісьмома і більше байтами виявлення і корекції помилок (ЕСС, Error Checking and Correcting), хоча в масових рішеннях часто не використовують ні того, ні іншого. p> Розмір тега кеш-пам'яті залежить від трьох основних чинників: обсягу кеш-пам'яті, максимального кешувального об'єму оперативної пам'яті, а також асоціативності кеш-пам'яті. Математично цей розмір розраховується за формулою:


Stag = log2 (Smem * A/Scache),


де Stag - розмір одного тега кеш-пам'яті, в бітах; Smem - максимальний Кешована обсяг оперативної пам'яті, в байтах; Scache - обсяг кеш-пам'яті, в байтах; А - асоціативність кеш-пам'яті, в каналах. br/>

Звідси випливає, що для системи з 1-Гбайт оперативної пам'яттю і 1-Мбайт кеш-пам'яттю з двоканальної асоціативністю потрібно 11 біт для кожного тега. Примітно, що власне розмір рядка кеш-пам'яті ніяк не впливає на розмір тега, але назад пропорційно впливає на кількість тегів. Слід розуміти, що розмір рядка кеш-пам'яті не має сенсу робити менше розрядності системної шини даних, але багаторазове збільшення розміру призведе до надмірного засмічення кеш-пам'яті непотрібною інформацією і зайвого навантаження на системну шину і шину пам'яті. Крім того, максимально Кешована об'єм кеш-пам'яті не зобов'язаний відповідати максимально можливого встановлюється обсягом оперативної пам'яті в системі. Якщо виникне ситуація, коли оперативної пам'яті виявиться більше, ніж може бути кешуватися, то в кеш-пам'яті буде присутній інформація тільки з нижнього сегмента оперативної пам'яті. Саме такою була ситуація з платформою Socket7/Super7. Набори мікросхем для цієї платформи дозволяли використовувати великі обсяги оперативної пам'яті (від 256 Мбайт до 1 Гбайт), в той час як Кешована обсяг часто був обмежений першими 64 Мбайт (Йдеться про B-cache, що знаходиться на системній платі) через використання дешевих 8-біт мікросхем тегів SRAM (2 біта з яких резервувалося під покажчики дійсності і измененности рядка). Це призводило до відчутного падіння продуктивності. p> Яка інформація міститься в тегах кеш-пам'яті? Це інформація про адреси, але як можна точно відобразити розташування рядка кеш-пам'яті на всьому просторі кешувального об'єму оперативної пам'яті, використовуючи настільки незначна кількість адресних бітів? Це поняття є фундаментальним в розумінні принципів функціонування кеш-пам'яті. Розглянемо попередній приклад, з 11-біт тегами. Враховуючи логічне сегментування завдяки двоканальної асоціативності, можна трактувати дану кеш-пам'ять як що складається з двох незалежних сегментів по 512 Кбайт кожен. Уявімо оперативну пам'ять як складається з "Сторінок" по 512 Кбайт кожна - їх буде відповідно 2048 штук. Далі, Iog2 (2048) = 11 (підстава логарифма дорівнює 2, так як можливі тільки два логічних стану кожного біта). Це означає, що фактично тег - не номер окремого рядка кеш-пам'яті, а номер "Сторінки" яті, на яку відображається та чи інша рядок. Іншими словами, в межах "сторінки" зберігається пряме в...


Назад | сторінка 11 з 16 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Створення базового класу &Рядок&, рядки ідентифікатора і десяткової рядка. ...
  • Реферат на тему: Соціальні пенсії. Поняття і розмір
  • Реферат на тему: Розробка програм по створенню бази даних приладів і додавання першого рядка ...
  • Реферат на тему: Розрахунок індексів ціни та вартості. Розмір показника реалізованої продук ...
  • Реферат на тему: Пристрій оперативної пам'яті статичного типу ємністю 12 Кб для мікропро ...