ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.12.2021
Просмотров: 6821
Скачиваний: 22
312
Ця пам'ять є найшвидшою та простою в реалізації. Як видно з рис. 9.6, де показано інтерфейс пам'яті з послідовним доступом з розділеними та об'єднаними входом і виходом, в цій пам'яті відсутній адресний вхід.
Пам'ять з розділеними входом і виходом може одночасно приймати вхідні дані та видавати попередньо прийняті дані, які рухаються з входу до виходу за допомогою тактових імпульсів ТІ. Коли ж вхід і вихід об'єднані, то дані вводяться в пам'ять тактовими імпульсами, які поступають по входу режиму роботи "вверх", а виводяться з пам'яті тактовими імпульсами, які поступають по входу режиму роботи "вниз".
Недоліком пам'яті з послідовним доступом є значний час доступу до конкретної одиниці інформації. В гіршому випадку для такого доступу може виникнути потреба в перегляді всього об'єму пам'яті.
Пам'ять з асоціативним доступом (або асоціативна пам'ять) зберігає разом з даними і їх ознаки, в ролі якої може бути і саме дане. Ядро пам'яті з асоціативним доступом показане на рис. 9.7. Роль комірок цієї пам'яті виконують регістри. Числа записуються в довільні вільні регістри пам'яті. Дані вибираються з такої пам'яті на основі збігу їх ознак з заданою. Для цього ознаки даних з усіх регістрів пам'яті поступають на схему порівняння, де порівнюються з заданою ознакою із регістра ознаки, і на вихід пам'яті поступають дані, ознаки яких збігаються з заданою.
313
В паралельній асоціативній пам'яті одночасно порівнюються з аргументом всі розряди всіх полів ознак пам'яті (так званий одночасний пошук по слову). В послідовній асоціативній пам'яті одночасно порівнюються з бітом аргументу по одному біту кожного поля ознаки (так званий порозрядний пошук). Можливість паралельної роботи є основною перевагою асоціативної пам'яті. З неї можна одночасно зчитати всі дані з однаковими ознаками. Можливість швидкого одночасного перегляду даних в такій пам'яті забезпечує їй широке використання в комп'ютерах, зокрема за принципом пам'яті з асоціативним доступом часто будується кеш пам'ять.
Пам'ять буває енергозалежною та енергонезалежною. У енергозалежній пам'яті інформація може бути спотворена або втрачена при відключенні джерела живлення. У енергонезалежній пам'яті записана інформація зберігається і при відключенні напруги живлення. Магнітна і оптична пам'ять є енергонезалежними. Напівпровідникова пам'ять може бути як енергозалежною, так і енергонезалежною.
Залежно від технології виготовлення розрізняють наступні основні типи пам'яті: напівпровідникова пам'ять, пам'ять з магнітним носієм інформації, використовувана в магнітних дисках і стрічках, та пам'ять з оптичним носієм - оптичні диски.
9.1.3. Основні характеристики пам'яті
До основних характеристик пам'яті належать: ємність, організація, швидкодія та вартість.
Ємність виражають числом бітів або байтів, які можуть зберігатися в пам'яті. Добавлення до одиниці виміру множника К означає множення на 210 = 1024, множника М -множення на 220 = 1048576, а множника Г - множення на 230 = 1073741824.
Важливою характеристикою пам'яті є її організація, тобто кількість комірок в пам'яті М = 2m та розрядність кожної комірки п. Хоча організація пам'яті вказує на її ємність, це є самостійна характеристика, оскільки при тій же ємності організація пам'яті може бути різною.
Для кількісної оцінки швидкодії пам'яті використовують наступні характеристики:
■ Час зчитування та час запису, або час зчитування/запису. Час зчитування - це інтервал часу між моментами подачі сигналу зчитування та появи слова на виході пам'я-
314
ті. Час запису - це інтервал часу після моменту подачі сигналу запису, достатній для запам'ятовування слова в пам'яті. Мінімально допустимий інтервал між послідовними зчитуванням та записом називається часом зчитування/запису Цей час може перевищувати час зчитування або запису, оскільки після виконання цих операцій може бути потрібний час на відновлення початкового стану пам'яті.
-
Час доступу. Для пам'яті з довільним доступом час доступу рівний інтервалу часу від моменту надходження адреси до моменту, коли дані заносяться в пам'ять або стають доступними. Для пам'яті з рухомим носієм інформації - це час, що витрачається на установку головки запису/зчитування (або носія) в потрібну позицію.
-
Тривалість циклу пам'яті або період звернення. Дане поняття застосовується до пам'яті з довільним доступом, для якої воно означає мінімальний час між двома послідовними зверненнями до пам'яті. Період звернення включає час доступу плюс деякий додатковий час. Додатковий час може бути потрібен для затухання сигналів на лініях, а в деяких типах пам'яті, де зчитування інформації приводить до її руйнування, - для відновлення зчитаної інформації.
Вартість пам'яті прийнято оцінювати відношенням її загальної вартості до ємності в бітах або байтах, тобто вартістю зберігання одного біта або байта інформації. На рис. 9.8 показана зміна з роками вартості зберігання одного MB інформації та часу доступу до одиниці інформації в не для трьох типів пам'яті: статичної напівпровідникової пам'яті з довільним доступом (SRAM), динамічної напівпровідникової пам'яті з довільним доступом (DRAM) та пам'яті на магнітних дисках (Disk).
Як бачимо, ціна зберігання одного MB інформації в статичній пам'яті залишається досить високою (більше, ніж в 10 разів вищою, ніж в динамічній пам'яті). Але, і час доступу до даних в цій пам'яті є значно меншим (майже в 100 разів). При цьому, як видно з рисунку, зберігається суттєвий розрив між ціною зберігання одного MB інформації та часом доступу до даних в статичній та динамічній пам'яті, і дисковій пам'яті.
375
9.2 Регістровий файл процесора
9.2.1. Типи регістрових файлів
Регістровий файл (надоперативна пам'ять) - це набір програмно-доступних регістрів, які знаходяться в регістровій пам'яті процесора. В сучасних процесорах регістровий файл займає одне з центральних місць. Він використовується для локального збереження операндів, адрес команд та даних, індексів, а також дозволяє організовувати ефективний обмін даними між операційними пристроями процесора та основною пам'яттю. Вибір ефективної організації регістрового файла є одним із підходів, що дозволяє підвищити продуктивність комп'ютера. Як правило, організація регістрового файла належить до технічних характеристик комп'ютера.
Розглянемо деякі історичні аспекти розвитку організації регістрового файла процесора. Програмно-доступні регістри почали використовуватися з початку 1960-х років. В 1964 році фірма IBM розробила серію універсальних комп'ютерів ІВМ/360 для наукових та комерційних розрахунків, в процесорах яких був використаний регістровий файл, що включав 16 32-розрядних цілочисельних регістрів та 16 64-розрядних регістрів з рухомою комою. Також в 1964 році був виготовлений перший суперкомп'ютер для наукових розрахунків CDC 6600, процесор якого мав регістровий файл, що включав 24 регістри. В 1977 році був спроектований перший векторний суперкомп'ютер Сгау-1, регістровий файл якого мав ієрархічну структуру. Його було поділено на файл основних регістрів і файл другорядних (фонових) регістрів. Кількість основних регістрів була меншою, що дозволяло забезпечити швидкий доступ до них, тоді як кількість другорядних регістрів була більшою, проте доступ до них був повільнішим. Операнди тривалого зберігання розміщувалися в другорядних регістрах і переміщувалися в основні регістри при потребі їх використання. Сгау-1 загалом містив 656 регістрів даних і адрес (включаючи векторні регістри, але не враховуючи регістрів керування). На особливу увагу заслуговує група з восьми векторних регістрів. Кожний такий регістр міг вміщувати 64-х елементний вектор з рухомою комою. Однією 16-ти розрядною командою можна було додати, відняти чи перемножити два вектори.
З наведених прикладів видно, що для організації високопродуктивних обчислень важливо не тільки мати велику кількість регістрів, але і забезпечити швидкий доступ до даних, які в них зберігаються, за рахунок ефективної організації регістрового файлу.
Розглянемо наведені на рис. 9.9 типи
регістрових файлів детальніше.
На рис. 9.9 приведена
класифікація типів регістрових файлів
процесора. В них використовується
статична організація збереження даних,
тобто при записі і читанні даних
вказується безпосередня адреса регістра,
яка є незмінною під час виконання
програми.
316
9.2.2. Інтегрований багатопортовий регістровий файл
В інтегрованому багатопортовому регістровому файлі забезпечується доступ до будь-якого регістру з кожного його порта. На рис. 9.10 показана структура інтегрованого регістрового файла з двома портами зчитування (rdl, rd2), та одним портом запису (wd), який містить 32 32-розрядних регістри (R0-R31). В регістр R0 запис заборонений, оскільки в ньому зберігається константа нуль. Вихід кожного регістра під'єднаний до відповідних інформаційних входів мультиплексорів МП1 та МП2. Адреси (rsl, rs2), що подаються на входи керування мультиплексорів, визначають номери регістрів, з яких читаються дані. Для запису використовується демультиплексор ДМП, через який на відповідний регістр подається сигнал запису даних (we), що поступає з вхідної шини, та адреса регістра ws. Процес запису синхронізується тактовими імпульсами, що подаються на вхід сlk. Кожний з регістрів має вхід дозволу запису даних En, інформаційний вхід D, та інформаційний вихід Q.
Із збільшенням кількості регістрів регістрового файла зростає час доступу до даних, так як ускладнюються мультиплексори та демультиплексори, а також відповідно збільшується розмір кристалу процесора.
Збільшення кількості портів зчитування та запису призводить до збільшення кількості відповідно мультиплексорів та демультиплексорів, а також суттєво збільшує кількість шин передачі даних, що ускладнює реалізацію регістрового файла. Крім того, з'являється можливість виникнення конфліктних ситуацій при спробі запису даних до тих самих регістрів. Тому інтегрований регістровий файл доцільно використовувати в комп'ютерах, де не вимагається велика кількість портів. Наприклад, регістрові файли комп'ютерів RS/6000 фірми IBM, та SuperSPARC фірми Sun, містять 4 порти для зчитування і 2 порти для запису.
9.2.3. Розподілений регістровий файл
Використання розподілених регістрових файлів дозволяє зменшити площу кристала, яку займає регістрова пам'ять процесора. Розподілення регістрового файла здійснюється шляхом поділу функціональних елементів процесора на групи, кожна з яких має свій