Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
компьютерная схемотехника.doc
Скачиваний:
43
Добавлен:
09.11.2019
Размер:
8.25 Mб
Скачать

4.2. Постійні та оперативні запам’ятовувальні пристрої

Постійні запам’ятовувальні пристрої

ПЗП – це адресні, з довільним доступом, енергонезалежні ЗП. У позначенні ПЗП застосовується абревіатура ROM, яка відображає його функціональне призначення: (Read-Only Memory) – пам’ять тільки для читання.

Для читання даних із ПЗП необхідно сформувати адресу на вході ПЗП і подати сигнал дозволу читання (CS або RD - Read Data), який відповідно до логіки керування мікросхеми змінює стан вихідних тристабільних буферних підсилювачів (рис. 4.7). Вони можуть знаходитися в трьох станах: логічного 0, логічної 1 і в стані високого вихідного опору – z-стані, наявність якого дозволяє відключати ПЗП від зовнішньої шини даних. Буферні підсилювачі переходять в z-стан при пасивному рівні сигналу дозволу читання.

Рис. 4.7. Структура та часова діаграма ПЗП

На часовому інтервалі t0 – t1 встановлюється нова адреса, після фіксації якої подається активний рівень сигналу читання. Після встановлення сигналу читання – момент часу t2, виходи буферних підсилювачів починають змінюватися із z-стану в стан, залежний від даних, які зберігаються в комірках пам’яті ПЗП і на момент часу t3 на виході з’являються доступні для читання дані. Відповідно до часової діаграми роботи розрізняють наступні часові параметри мікросхем ПЗП: час зміни стану буферних підсилювачів (tОЕ = t3t2 – Output Enable Time) і час доступу (tАСС = t3 – t1 – Access Time), порядок величин яких у залежності від технології виготовлення складає десятки – сотні нс.

На мікросхему ПЗП для організації запису (перезапису) інформації можуть також подаватися додаткові керуючі сигнали.

За способом запису (перезапису) інформації в ПЗП існуюча на цей час класифікація подана на рисунку 4.8.

Рис. 4.8. Класифікація ПЗП за способом запису (перезапису) інформації

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

Більш складний варіант одноразово програмовані ПЗП – Programmed ROM. Мікросхема PROM має практично ту ж саму структуру, що й масочні ПЗП, але у неї є суттєва відмінність: вона виготовляється виробниками "порожньою" і розробники різноманітної комп’ютерної техніки можуть записувати інформацію до неї самостійно (звичайно за умов наявності спеціального обладнання). Програмування таких ПЗП відбувається шляхом електричного перепалення перемичок у мікросхемі або шляхом випалення керуючого переходу у транзисторах.

Програмовані ПЗП виявилися дуже зручними для мало- і середньо- серійного виробництва. Але ж при розробці радіоелектронних пристроїв часто доводиться змінювати записану в ПЗП програму. Тому з’явився наступний варіант – репрограмовані ПЗП (Erasable PROM), які дозволяють багаторазово змінювати записану у них інформацію за умов попереднього стирання старої.

Структурна схема даних ПЗП не відрізняється від попередніх. Але ж замість перемички використовується елемент пам’яті у вигляді МОН транзистора з плаваючим затвором. При програмуванні мікросхеми в плаваючий затвор за рахунок тунельного ефекту індукуються заряди. Після зняття напруги програмування індукований заряд залишається і може зберігатися десятки років.

Стирання записаної інформації – зникнення заряду із плаваючого затвора можливе шляхом опромінюванням світлом кристалу через спеціальний отвір у вигляді скляного віконця – мікросхеми ЕРROM, або за допомогою імпульсу відносно високої напруги на відповідний вхід мікросхеми – Еlectrical ЕРROM.

На відміну від ЕРROM у деяких ПЗП типу ЕЕРROM є можливість часткової заміни інформації.

Подальший розвиток ПЗП з електричним стиранням інформації втілився в розробці флеш-пам’яті (Flash-Memory), яка має ряд архітектурних особливостей. На відміну від ЕЕРROM у масивах флеш-пам’яті використовується один транзистор на один ЕП, що дозволяє значно збільшити щільність розміщення ЕП на кристалі. По-друге, у схемах флеш-пам’яті не передбачено стирання окремих слів, стирання інформації здійснюється або для всієї пам’яті одночасно, або для досить великих блоків. ЕП флеш-пам’яті за технологією виготовлення подібний ЕП репрограмованих ПЗП. Але ж за рахунок застосування надтонкого шару діелектрика між плаваючим затвором і підкладкою МОН транзистора, запис (інжекція заряду) та стирання (його екстракція) здійснюється існуючими в МПС рівнями напруг під керуванням центрального МП. Тобто зникла необхідність використовувати для програмування спеціальне обладнання, а тим більше виймати мікросхему із монтажної плати. Один ЕП зберігає один біт інформації (в сучасних розробках два, так звані багаторівневі комірки MLC – Multi Level Cell) і, як правило, наявність заряду сприймається як логічний 0, відсутність як логічна 1.

Можна виділити три групи мікросхем флеш-пам’яті: мікросхеми, виконані у вигляді єдиного блока, що цілком стирається (BULK-ERASE), мікросхеми з поділом масиву пам’яті на блоки різного розміру, що мають різний рівень захисту від випадкового стирання та запису (BOOT-BLOCK) і мікросхеми з масивом пам’яті, поділеним на блоки однакового розміру з незалежним стиранням (FLASH-FILE).

У складі блоків мікросхеми BOOT-BLOCK є блок для збереження програмного забезпечення базової системи введення-виведення МПС вміст якого апаратно захищений від випадкового стирання. Блоки параметрів зберігають параметри, які відносно часто змінюються, головні блоки зберігають керівніі програми. За своїм функціонуванням мікросхеми BULK-ERASE і BOOT-BLOCK подібні: операції стирання-програмування здійснюються під керуванням внутрішнього автомата, вхідною інформацією якого є команди МП.

Мікросхеми FLASH-FILE орієнтовані на заміну жорстких дисків, тому блоки однакової інформаційної ємності, на які поділяється масив пам’яті цього типу флеш-пам’яті, можна вважати аналогами секторів магнітних дисків. Програмні засоби забезпечують інформаційний обмін між ними. Для зменшення часу очікування при проведенні операцій запису, які виконуються достатньо часто, організовується сторінковий (Page) режим запису сторінками по 4 або 8 слів, що забезпечує швидкий довільний доступ у межах поточної сторінки.

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

Оперативні запам’ятовувальні пристрої

До даних, які знаходяться в ОЗП МП має безпосередній доступ. Тому ця пам’ять класифікується як пам’ять з довільним доступом – RAM (Random Access Memory). Нагадаємо, також, що час доступу до будь-якої комірки пам’яті ОЗП не залежить від місця розташування цієї комірки.

За принципом функціонування оперативні запам’ятовувальні пристрої поділяються на статичні (SRAM) та динамічні (DRAM).

ОЗП має блочну структуру і будується на великих інтегральних схемах - ВІС, які мають малу розрядність (1 ¸ 4 розрядів) та, як правило, відносно недостатню ємність. Шляхом об’єднання адресних входів ВІС утворюються модулі пам’яті, з яких складається фізичний банк пам’яті ОЗП.

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

Основою побудови статичних ЗП є RS-тригери, реалізовані у МОН технології. Наявність бістабільного елементу дозволяє приймати та видавати дані на відповідні шини ЕОМ у будь-який момент часу майже без затримки, тобто швидкодія таких ЗП є достатньо високою.

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

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

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

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

Порядок пошуку інформації у кеш-пам’яті з прямим відображенням інформації ілюструється рисунком 4.9. Кожному рядку кеш-пам’яті ємністю L + 1 слів, ставиться у відповідність k строго фіксованих блоків ОП.

Рис. 4.9. Організація кеш-пам’яті з прямим відображенням інформації

Для визначення номера блока оперативної пам’яті, який відображений у відповідному рядку кеш-пам’яті, кількість яких дорівнює N+1, використовується спеціальний код – тег (ознака), що розміщується в пам’яті тегів. Формат адреси, що виставляється МП для читання необхідних даних із кеш-пам’яті вміщує три поля: тег, номер рядка і зміщення в рядку, тобто номер слова в блоці. При наявності відповідного тега в пам’яті тегів схема порівняння виробляє сигнал дозволу читання шуканих даних.

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

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

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

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

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

М етод наскрізного запису припускає наявність відразу двох копій даних– однієї в ОЗП, а іншої в кеш-пам’яті, що забезпечує високу надійність зберігання даних. При необхідності передавання даних з МП у пам’ять відбувається одночасний їхній запис в кеш-пам’ять і оперативну пам’ять (рис. 4.10). Такий метод уповільнює роботу МП, бо він повинен очікувати завершення циклу запису в ОЗП.

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

М етод зворотного запису (рис. 4.12) передбачає запис інформації в ОЗП лише у тому разі, якщо вона змінюється в кеш-пам’яті. Для цього кожному рядку кеш-пам’яті зіставляється спеціальний службовий біт, що вказує на зміну вмісту рядка. Якщо МП записує нові дані в рядок, цей розряд отримує значення логічної 1, якщо запису нових даних за час зберігання в кеш-пам’яті в цей рядок не проводилося, то розряд зберігає значення логічного 0.

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

Заміщення даних в кеш-пам’яті проводиться за алгоритмом LRU (Last Recently Used) - витискуються рядки, що найбільш давно використовуються в наборі і до яких було найменше звернень.

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

На відміну від SRAM N-розрядна адреса комірки DRAM за допомогою мультиплексування передається в два кроки – спочатку адреса рядка – N/2 молодші розряди, а потім і стовпця – N/2 старші розряди (рис. 4.13).

Рис. 4.13. Організація динамічного ОЗП

Це дає можливість зменшити кількість виводів шини адреси вдвічі, але ж, безумовно, відбивається на швидкодії, тому що для передавання адреси потрібно вдвічі більше часу. Для вказівки, яка саме частина адреси передається у визначений момент часу, служать два допоміжних сигнали – (Row Address Strobe – строб адреси рядка) і – строб адреси стовпця).

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

Слідом за цим на шину адреси виставляють адресу стовпця і видається сигнал . Це, у залежності від стану ще однієї додаткової лінії – , приводить або до читання даних з комірки по виходу ( = 1), або до їх запису (підведений по входу DI біт інформації фіксується на вхідному тригері у випадку = 0). Інтервал між установленням адреси і видачею сигналів або обумовлюється технічними характеристиками мікросхеми. Таким чином, для читання чи запису однієї комірки динамічної пам’яті необхідно мінімум п’ять тактів (адреса рядка → → адреса стовпця → → операція читання/запис), у той час як статична пам’ять вимагає всього два такти.

а)

б

Рис. 4.14. Часові діаграми динамічних ОЗП

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

Для забезпечення надійного зберігання записаної в ОЗП інформації, реалізовують режим примусової регенерації. Регенерація відбувається зверненням до кожного з рядків, при цьому формується адреса рядка і сигнал , а сигнал = 1. Процес регенерації припиняється при зверненні МП до ОЗП. Тоді обробляється запит МП, після чого режим регенерації продовжується з тієї адреси, на якій його було припинено.

Така схема застосовувалася в асинхронній пам’яті типу Page Mode DRAM. Для зменшення часу циклу запису (зчитування) застосували більш удосконалену організацію пам’яті із швидким сторінковим доступом – FPM DRAM (Fast Page Mode DRAM), яка реалізовує звертання до ОЗП за адресою рядка, з вибіркою елементів пам’яті рядка зміною адреси стовпців (рис. 4.14б). При читанні даних з оперативної пам’яті типу FPM працює схема 5 - 3 -3 - 3, що означає, що на зчитування першого блока даних (одного, двох чи чотирьох байтів) необхідно п’ять циклів шини, а на зчитування трьох наступних – по три цикли (досить часто відбувається читання чотирьох суміжних ЕП, що пов’язано із середньою довжиною команд універсального МП).

Подальше удосконалення асинхронних ОЗП втілилося у створенні пам’яті EDO (Enhanced Data Output) DRAM, яка відрізнялася від FPM модифікацією процесу виводу даних: дані запам’ятовуються в буферному регістрі і не зникають при зміні рівня сигналу на пасивний. Це дозволило подавати адресу наступного стовпчика з одночасним читанням даних і організувати схему 5 - 1 - 1 - 1.

Пам’ять типу BEDO (Burst Extended Data Out) – результат подальшого розвитку технології EDO-пам’яті. Основна її відмінність від попередньої - дані зчитуються в пакетному режимі, і при цьому діє схема 5 - 1 - 1 - 1.

Подальший розвиток ОЗП пов’язаний із створенням пам’яті типу SDRAM (Synchronous DRAM) читання і запис даних в якій синхронізовані з генератором тактової частоти шини, тому даний тип пам’яті застосовується в системах з будь-якою „розумною” тактовою частотою. Варіантами пам’яті SDRAM із більшою продуктивністю є типи пам’яті із вбудованою кеш-пам’яттю (ESDRAM), із роздільними адресними лініями для кеш-пам’яті і динамічного ядра (CDRAM), спеціалізована пам’ять для відеоадаптерів.

Сучасна пам’ять стандарту DDR RAM (SDRAM II) працює також як і SDRAM, але дані передаються двічі за один такт шини даних. Такий режим роботи можна реалізувати або збільшивши удвічі внутрішню частоту функціонування мікросхеми пам’яті, або збільшивши у два рази розрядність внутрішньої шини даних по відношенню до зовнішньої. Виходячи з технологічних і економічних міркувань при організації пам’яті DDR застосовують друге рішення: кожна команда читання призводить до видачі на зовнішню шину даних двох елементів, розрядність яких, як і в SDR SDRAM, дорівнює розрядності зовнішньої шини даних

У пам’яті DDR2 те ж подвійна швидкість передавання даних за один такт зовнішньої шини даних – тобто, на кожному такті зовнішньої шини даних отримується не менше двох елементів даних (з розрядністю шини даних) при читанні, і завантажується в мікросхему не менше двох елементів даних при запису. У той же час, внутрішня частота функціонування мікросхем DDR2 складає половину від частоти її зовнішнього інтерфейсу. Таким чином, на один „внутрішній” такт мікросхеми пам’яті припадає два „зовнішніх” такти, на кожний з яких, у свою чергу, припадає зчитування/запис двох елементів. Таким чином, на кожний „внутрішній” такт мікросхеми пам’яті, випадає зчитування/запис відразу чотирьох елементів даних, тобто всі внутрішні операції мікросхеми пам’яті здійснюються на рівні „4-елементних” блоків даних. У загальному випадку архітектурі „2n-prefetch” завжди відповідає мінімальна величина пакета (Burst Length), яка дорівнює 2n (n = 0 відповідає DDR; n = 1 - DDR2; n = 2 - DDR3).

Суттєва відмінність мікросхем SDRAM від мікросхем типу DRAM полягає в розбитті масиву пам’яті на декілька логічних банків (як мінімум 2, звичайно 4). Зовнішня шина даних кожного логічного банка (на відміну від фізичного, якій складається з декількох мікросхем пам’яті для „заповнення” шини даних) характеризується тією ж розрядністю (шириною), що і розрядність зовнішньої шини даних мікросхеми пам’яті в цілому (x4, x8 або x16). Інакше, логічний розподіл масиву мікросхеми на банки здійснюється на рівні кількості елементів у масиві, але ж не розрядності елементів. Розбиття масиву пам’яті SDRAM на банки було введено, головним чином, із міркувань мінімізації системних затримок — затримок надходження даних у систему. Перевагою багатобанкових мікросхем SDRAM є те, що можна звертатися до рядка одного банку, поки рядок іншого банку регенерується. Така схема доступу до пам’яті називається „доступом з чередуванням банків” (Bank Interleave).

Для отримання потрібної ємності ОЗП декілька банків пам’яті з’єднуються певним способом. На рисунку 4.15 ілюструється реалізація блочної структури чотирибанкового ОЗП, де номер банка визначають старші розряди N-розрядної адреси, а адресу комірки пам’яті всередині банку - молодші розряди адреси.

Рис. 4.15. Блочна структура ОЗП