Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Схемотехніка підручник.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
13 Мб
Скачать
☆

Організація кеш пам’яті

Кеш пам’ять забезпечує копіювання і зберігання блоків даних основної пам’яті динамічного типу в процесі виконання програми. Це потребує підвищеної швидкодії і доступу до даних. Для організації перевірки записаних даних в кеш, використовують так званий ТЕГ, де розміщуються повні адреси скопійованих даних з оперативної пам’яті. Обмін з оперативною пам’яттю може відбуватися двома способами:

  1. При зверненні до оперативної пам’яті проводиться одночасний пошук інформації за адресою, записаною в ТЕГ. При співпаданні адрес і даних, запит до оперативної пам’яті анулюється і використовуються дані з кешу.

  2. З вертання до оперативної пам’яті проводиться тільки після виявлення відсутності даних в кеші. Якщо дані присутні в кеш, генерується сигнал кеш попадання Hit, в іншому випадку – сигнал промаху.

Використання кеш значно підвищує продуктивність циклічних програм, де використовуються одні і ті ж дані. Розрізняють кеш І рівня, розміщену на одному кристалі з процесором, і кеш ІІ рівня, розміщену на материнській платі.

За гарвардською архітектурою кеш даних і команд розділяють. За принципом адресації і доступу до даних кеш розрізняють:

  1. повністю асоціативний кеш;

  2. кеш з прямим розміщенням;

  3. набірно – асоціативний кеш.

Повністю асоціативний кеш

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

П ри звертанні до кеш відбувається порівняння адреси даних з адресою, записаною в тег кожного рядка. В результаті співпадання цих адрес, генерується сигнал Hit і дані через буфер передаються на шину даних. Рядки кеша завантажуються адресами та даними при звертанні до оперативної пам’яті.

Дані без копії в кеші записуються тільки в оперативну пам'ять. Дані, що мають копію в кеші можуть бути записані в оперативній пам’яті прямим (наскрізним) або оберненим методом. В І випадку вони відразу дублюються в кеш, в ІІ – після завершення виконуваної операції. Перевагою другого методу є більша швидкодія при математичних операціях, але це потребує схемотехнічного ускладнення пристрою, що є недоліком цього методу. Повністю асоціативна кеш є найбільш функціонально гнучкою, але разом з тим найбільш складна.

Кеш з прямим розміщенням

При прямому розміщенні оперативну пам’ять умовно розбивають на сторінки. Розмір кожної сторінки повинен збігатися з розміром кеш пам’яті. Дані в кеш зберігаються в рядках, що є наборами байтів (найчастіше по 32 байти). Таким чином, якщо кеш має 256 рядків, то її об’єм повинен дорівнювати 8кбайт, при цьому об’єм оперативної пам’яті дорівнює добутку кількості сторінок на об’єм кеш, тобто 8кбайт при 512 сторінках дасть 4мбайт. В рядках кешу можуть зберігатися дані з будь-якої сторінки оперативної пам’яті.

З агальна адреса, що задається процесором при звертанні до пам’яті ділиться на 3 частини. Молодші розряди її задають зміщення даних в рядку. Середні розряди задають номер рядка. Молодший і середній разом називаються індексом. Інформація про номер сторінки оперативної пам’яті, з якої зчитуються дані, записаний в тег і задається старшими розрядами. Кожний тег займає комірку пам’яті, зв’язану з певним рядком, тому його розрядність повинна бути достатньою для відображення сторінки, наприклад для 256 сторінок, довжина сторінки тега має бути 8біт, для 512 – 9біт, для 1024 – 10біт.

При звертанні до оперативної пам’яті зчитується спочатку рядок кеша з заданим індексом, а потім іде порівняння значення тегів даного рядка та адреси, заданої процесором. Співпадання їх генерує одиничний сигнал Hit. Якщо Hit=0, то дані з оперативної пам’яті перезаписуються в кеш. Використання адресації, аналогічної до 2DM пам’яті, має просту схему, малу розрядність тега, але не допускає розміщення в кеші рядків з однаковими індексами, але різними тегами. Відповідно це призводить до великої кількості промахів, оскільки основна розрядність адресації відноситься до зміщення та номера рядка. Цей недолік усувається в набірно – асоціативній кеш.