Тема 3. Архітектура основної пам’яті комп’ютера
1. Структура основної пам’яті комп’ютера
Пам’ять комп’ютера призначена для запису, зберігання та читання інформації, яка бере участь в інформаційно-обчислювальному процесі. Пам’ять завжди була критичним ресурсом комп’ютерів. Недаремно, щоб досягти компромісу між ціною і продуктивністю, в обчислювальних системах вбудована ціла ієрархія пам’яті, що розрізняється за швидкодією. Вона включає зовнішню пам’ять - найдешевшу, але і найповільнішу, оперативні запам’ятовуючі пристрої (ОЗП) - вони швидкісні, але дорожчі, кеш (на сьогодні вже є до трьох її рівнів) - найшвидший, але і найдорожчий ресурс. Розглянемо принцип побудови основної пам’яті. Призначення основної пам’яті : зберігання програм початкового завантаження ПК, базової системи введення-виведення (BIOS), програм тестування ПК (ці програми зберігаються в постійному запам’ятовуючому пристрої – ПЗП); оперативний запис, зберігання та читання інформації (програм і даних), безпосередня участь в інформаційно-обчислювальному процесі, який виконується ПК у поточний період часу (ця пам’ять має назву оперативний запам’ятовуючий пристрій – ОЗП). Інформація, яка зберігається на зовнішніх запам’ятовуючих пристроях, стає доступною процесору тільки після того, як буде переписана в ОЗП. ОЗП бувають статичні (надоперативні) і динамічні. Статичні приблизно в 13 разів швидкісніші, ніж динамічні (4,5 нс проти 60 нс), однак сьогодні вони занадто дорогі і споживають занадто багато енергії, щоб використовувати їх в обсягах, які відповідають вимогам сучасних ОЗП. Тому застосування статичної пам’яті, як правило, обмежене щодо невеликої за об’ємом кеш-пам’яттю. Основну пам’ять створюють оперативні запам’ятовуючі пристрої з довільним доступом. Запам’ятовуючий пристрій з довільним доступом, як правило, містить багато запам’ятовуючих елементів, які утворюють запам’ятовуючий масив (ЗМ). Масив розділений на окремі комірки; кожна з них служить для зберігання двійкового коду, число розрядів в якому визначається 3 шириною вибірки пам’яті (іноді це може бути одне, половина або кілька машинних слів). Кожна комірка має унікальну адресу, яка дозволяє звертатися до них для виконання операцій запису та читання. Ємність основної пам’яті сучасних комп’ютерів достатньо велика, щоб її можна було реалізувати на одній інтегральній мікросхемі (ІМС). Необхідність об’єднання декількох ІМС виникає також, коли розрядність комірок в мікросхемі запам’ятовуючого пристрою (ЗП) менше розрядності слів комп’ютера. Збільшення розрядності ЗП реалізується за рахунок об’єднання адресних входів ІМС ЗП, які об’єднуються. Таку об’єднану сукупність мікросхем називають модулем пам’яті. Модулем можна називати і одну мікросхему, якщо вона вже має необхідну розрядність. Один або декілька модулів утворюють банк пам’яті. Для отримання потрібної ємності ЗП потрібно певним чином об’єднати декілька банків пам’яті меншої ємності. В загалі основна пам’ять комп’ютера практично завжди має блочну структуру, тобто містить декілька банків. При використанні блочної пам’яті, яка складається з В банків, адреса комірки А перетворюється в пару ( b, w ), де b - номер банку, w - адреса комірки всередині банка. Відомі три схеми розподілу розрядів адреси А між b і w : блочна; циклічна; блочно-циклічна. Типова структура блочної пам’яті показана на рис. 1. Адресний простір пам’яті розбитий на групи послідовних адрес, і кожна така група забезпечується окремим банком пам’яті. Для звернення до пам’яті використовується 9 - розрядна адреса, сім молодших розрядів якої (А6 – А0) надходять паралельно на усі банки пам’яті і вибирають у кожному з них одну комірку. Два старших розряди адреси (А8, А7) містять номер банку. Вибір банку забезпечується або за допомогою дешифратора номеру банка пам’яті, або шляхом мультиплексування інформації (на рис. 1. показані обидва варіанти). 4 Рис. 1. Структура основної пам’яті блочного типу У функціональному відношенні така пам’ять може розглядатись як єдиний ЗП, ємність якого дорівнює сумі ємностей складових, а швидкодія – швидкодії окремого банку. Блочний принцип побудови оперативної пам’яті має ще одну перевагу – дозволяє зменшити час доступу до інформації. Це стає можливим завдяки потенціальному паралелізму, який є властивим для блочній організації. Більшу швидкість доступу можна досягти за рахунок одночасного доступу до багатьох банків пам’яті. Одна з використовуваних для цього методик називається розшаруванням пам’яті. В її основу покладене так зване чергування адрес (address interleaving – інтерлів), яке полягає в зміні системи розподілу адрес між банками пам’яті. Причому чергування адрес базується на властивості локальності по зверненню, відповідно до якого послідовний доступ у пам’ять звичайно виконується до комірок, які мають суміжні адреси. Іншими словами, якщо в даний момент виконується звернення до комірки з адресою 5, то наступне звернення найвірогідніше буде до комірки з адресою 6, а потім 7 і т.д. Чергування адрес забезпечується за рахунок циклічного розбиття адреси (для вибору банку використовуються два розряди адреси, а інші розряди – для вибору комірки в банку). У пам’яті з інтерлівом кожен наступний рядок Дешифратор номеру банка пам’яті Банк 0 000000 00 Мультиплексор / демультиплексор Банк 1 000000 00 Банк 2 000000 00 Банк 3 000000 00 0 127 • • • 128 • • • 255 383 • • • 256 384 • • • 511 Регістр адреси Блок управління Запит Шина адреси Шина даних А8… А0 А6…А0 А8, А7 Дешифратор номеру банка пам’яті Банк 0 000000 00 Мультиплексор / демультиплексор Банк 1 000000 00 Банк 2 000000 00 Банк 3 000000 00 0 127 • • • 128 • • • 255 383 • • • 256 384 • • • 511 Регістр адреси Блок управління Запит Шина адреси Шина даних А8… А0 А6…А0 А8, А7 Дешифратор номеру банка пам’яті Банк 0 000000 00 Мультиплексор / демультиплексор Банк 1 000000 00 Банк 2 000000 00 Банк 3 000000 00 0 127 • • • 128 • • • 255 383 • • • 256 384 • • • 511 Регістр адреси Блок управління Запит Шина адреси Шина даних А8… А0 А6…А0 А8, А7 5 вибирається в новому банку, що дозволяє запам’ятовуючим елементам рядка з попереднього банку відновлювати свій стан (рис. 2). Рис. 2. Нумерація комірок в банках пам’яті з циклічною адресацією Оскільки в кожному такті на шині адреси може бути присутнім адреса тільки однієї комірки, паралельне звернення до декількох банків неможливе, однак воно може бути організоване зі зсувом на один такт. При великій кількості банків середній час доступу до основної пам’яті скорочується в N разів ( N - кількість банків), але при умові, що комірки, до яких проводиться звернення, відносяться до різних банків. Якщо ж запити до одного й того ж банку слідкують один за одним, то кожний наступний запит повинен очікувати завершення обслуговування попереднього. Така ситуація називається конфліктом по доступу. При частому виникненні конфліктів по доступу метод стає неефективним. У блочно-циклічній схемі розшарування пам’яті кожний банк складається з декількох модулів, що адресуються за круговою схемою (рис. 3). Рис. 3. Блочно-циклічна схема розшарування пам’яті Модуль 0 Модуль 1 Банк 0 Модуль 2 Модуль 3 Банк 1 0 1 2 3 • • • 126 • • • 127 128 129 130 131 254 255 • • • • • • Банк 0 Банк 1 Банк 2 Банк 3 0 1 2 3 508 • • • • • • 509 510 • • • • • • 511 6 Адреси між банками розподілені по блочній схемі. Таким чином, адреса комірки розбивається на три частини. Старші біти визначають номер банку, наступна група розрядів адреси вказує на комірку в модулі, а молодші біти адреси вибирають модуль в банку. В багатопроцесорних системах з загальною пам’яттю, де запити на доступ до пам’яті достатньо незалежні, у систему включають декілька контролерів пам’яті, що дозволяє окремим банкам функціонувати абсолютно автономно.
Шрифти
Розмір шрифта
Колір тексту
Колір тла
Кернінг шрифтів
Видимість картинок
Інтервал між літерами
Висота рядка
Виділити посилання
Вирівнювання тексту
Ширина абзацу