Тема 4. Основні типи динамічної пам’яті

3. Синхронні динамічні ОЗП

В мікросхемах, де реалізований синхронний принцип, процеси читання і запису виконуються одночасно з тактовими сигналами контролера пам’яті, а це дозволяє взяти усе від пропускної здатності шини «процесор-пам’ять» і уникнути циклів очікування. Адресна і управляюча інформація фіксується в ІМС пам’яті. Після чого відповідна реакція мікросхеми відбудеться через чітко визначене число тактових імпульсів, і цей час процесор може використовувати для інших дій, які не зв’язані зі зверненням до пам’яті. SDRAM – пам’ять Першим поширеним типом синхронного ОЗП стала SDRAM (Synchronous DRAM) – пам’ять. Вона з’явилася тому, що пам’ять типу EDO не могла задовольнити зрослі запити процесорів з частотою вище 200 МГц у плані ефективної системи «підкачування» даних. Крім того, завдяки переходу на прогресивну технологію виробництва ціни модулів пам’яті EDO і SDRAM зрівнялися, і остання завоювала весь ринок. Саме SDRAM стала «відправною точкою» для інших технологій, у яких використовуються переваги синхронного обміну. Кардинальні відмінності SDRAM від попередніх типів пам’яті такі: синхронний метод передачі даних на шину; конвеєрний механізм пересилання burst-пакета; використання кількох (двох або чотирьох) внутрішніх банків пам’яті; передача частини функцій контролера пам’яті логіці, що вкладена в саму ІМС. Оскільки SDRAM зараз стала домінуючим типом пам’яті, розглянемо всі ці відмінності докладніше. 7 Найзначнішою відмінністю SDRAM від більш ранніх типів пам’яті стала прив’язка (синхронізація) її роботи до тактових імпульсів системної шини. А оскільки частота процесора прямо зв’язана з частотою системної шини, то синхронізація дуже прискорює обмін даними між ОЗП і процесором. Синхронність дозволяє контролеру пам’яті точно «знати», коли дані готові, що знижує затримки в циклах чекання і пошуку даних. При синхронній роботі дані з’являються на виходах ІМС пам’яті разом з тактовими імпульсами. При цьому немає тимчасової неузгодженості в роботі різних пристроїв, які беруть участь у передачі даних, що спрощує їх взаємодію. Наступним за важливістю нововведенням можна вважати застосування конвеєрного механізму з пересилання пакета даних (Burst Pipelining). На відміну від простого механізму передачі пакетів, реалізованого в BEDO, конвеєр дозволяє передавати весь пакет потактно, забезпечуючи безперебійну роботу ОЗП навіть на багато більш високих частотах. Його переваги особливо виявляються при збільшенні довжини пакета з 4 слів до розміру всього рядка банку. Ще більше збільшення продуктивності SDRAM досягається завдяки поділу масиву комірок на незалежні внутрішні банки пам’яті. Коли відбувається обмін даними з одним з банків, інші можуть готуватися до наступної операції. Коли ж перший банк завершить обмін, другий уже готовий передати наступний блок даних (це так званий почерговий доступ – interleaved). Таким чином, можна без затримок, зв’язаних з вибором рядка ядра, виконувати швидке послідовне читання даних з різних областей пам’яті. Для того щоб синхронізувати пам’ять ззовні, у чіп була вмонтована логіка керування. Таким чином, вузли пам’яті перебрали ряд функцій контролера ОЗП. У пам’ять надходять команди, що обробляються безпосередньо в чіпі . Синхронізм дозволяє мікросхемі SDRAM виконувати функції незалежно від затримок зовнішніх сигналів керування. Впровадження в чіп механізму керування і спрощення схемотехніки скоротили накладні витрати часу доступу до ОЗП. Отже, чіп SDRAM представляє деяку подобу мікроконтролера з вбудованими елементами динамічної пам’яті. Мікросхема містить швидкісну 8 синхронну шину даних. Для доступу до даних використовується триступенева конвеєрна архітектура з інтерлівом. Структура SDRAM подана на рис. 2. SDRAM містить запам’ятовуючий масив, регістри, дешифратори і лічильник адреси стовпців. На відкритому рядку лічильник послідовно перебирає адреси стовпців, і за кожен такт із регістрів даних шлюзу вводу-виводу у вихідний буфер переміщається по вісім байтів даних. Таким чином, за чотири звертання до пам’яті читається повний рядок (32 байти). Перше звертання до восьми байтів (при промаху кеш) займає 9–11 тактів. На кожне наступне витрачається по такту. Буфер адреси стовпчика A0-A7 Лічильник адреси стовпчика Дешифратор адреси стовпчика Підсилювачі зчитування та шина вводу/ виводу Дешифратор адреси рядка Ядро (масив комірок) банк 0 4096 рядків 256 стовпчиків Дешифратор адреси 16 розрядів стовпчика Підсилювачі зчитування та шина вводу/ виводу Ядро (масив комірок) банк 1 4096 рядків 256 стовпчиків 16 розрядів A0-A13 Дешифратор адреси рядка Буфер адреси рядка Дешифратор адреси рядка Ядро (масив комірок) банк 2 4096 рядків 256 стовпчиків Дешифратор адреси 16 розрядів стовпчика Підсилювачі зчитування та шина вводу/ виводу A0-A13 Лічильник регенерації Дешифратор адреси рядка Ядро (масив комірок) банк 3 4096 рядків 256 стовпчиків 16 розрядів Дешифратор адреси стовпчика Підсилювачі зчитування та шина вводу/ виводу DQ0 – DQ15 Вихідний буфер Вхідний буфер Керуюча логіка та вбудований генератор CKE RAS CAS WE DOMU / DOML Рис. 2. Структура SDRAM Команди завантажуються в пам’ять SDRAM через програмувальний регістр режиму. Регістр дозволяє запрограмувати пам’ять для вибору режиму регенерації, автоматичної вибірки суміжно розташованих комірок пам’яті у межах банку, а також застосування інтерліву. Може бути запрограмована довжина пакету і змінений час затримки стробів CAS#. Настроювання цієї затримки позначається на продуктивності системи. 9 Конвеєрна обробка пакетів даних дозволяє виключити зі списку тимчасових втрат дуже істотні позиції. Внутрішнє виконання команд знімає із системних шин частину навантаження і прискорює процес доступу до даних. Архітектура синхронної пам’яті має модифікації. DDR SDRAM (Double Data Rate SDRAM) – тип пам’яті, що «ріднить» з SDR SDRAM (Single Data Rate SDRAM) загальний тракт обробки адрес і сигналів керування, однакова конструкція банків пам’яті і загальних методів регенерації. Інше позначення DDR SDRAM пам’яті – SDRAM II (тобто SDRAM другого покоління). У табл. 1 приводяться відмінні риси SDRAM архітектури SDR і DDR. Основні відмінності цих технологій – в організації інтерфейсу даних і системі синхронізації. DDR працює на подвоєній частоті. Таблиця 1 Особливості, що відрізняють SDRAM архітектури SDR та DDR Особливості SDR SDRAM Особливості DDR SDRAM Інформація тактується тільки фронтом зовнішнього синхроімпульсу Ввід команд тактується фронтом зовнішнього синхроімпульсу, а дані тактуються як фронтом, так і зрізом Внутрішня та зовнішня шини даних однакової ширини, дані потрапляють на внутрішню шину через буфер вводу-виводу Внутрішня шина даних ширше зовнішньої вдвічі, що дозволяє надсилати дані з комірок до буферу вводу-виводу попарно Для скорішого завершення операції читання використовується команда Burst Terminate, у звичайному режимі читання вихідний буфер закритий За допомогою сигналу DQM (Data Strobe Mask) маскуються дані при записуванні, та керується вихідний буфер при читанні За допомогою сигналу DQM (Data Strobe Mask) маскуються дані під час запису За допомогою сигналу DQS (Data Strobe) відбувається захоплення даних За принципами роботи DDR SDRAM пам’ять схожа на SDRAM, але, на відміну від неї, може приймати і передавати дані на обох фронтах тактових 10 імпульсів. Це подвоює швидкість передачі даних. Крім того, у DDR SDRAM використовується протокол DLL (Delay Locked Loop), що дозволяє пересунути у часі інтервал дійсного значення вихідних даних. У такий спосіб скорочуються простої системної шини при читанні даних на ній з декількох модулів пам’яті. SLDRAM - пам’ять SLDRAM (Synchronous Link DRAM) – це також синхронна пам’ять. Як і DDR, вона синхронізує дані фронтом і зрізом тактового імпульсу. Керуюча інформація, як і дані, передається в пам’ять пакетами, що зменшує латентність. Пам’ять SLDRAM містить розширений файл програмувальних регістрів і справляється з великою кількістю команд. Підвищення продуктивності досягається за рахунок поширення пакетного протоколу передачі даних на сигнали керування (від чого і пішла назва цього типу пам’яті Linked SDRAM). У SLDRAM адреси, команди, а також сигнали керування передаються в пакетному режимі по односпрямованій шині Command Link, і теж у пакетному режимі, передаються дані, причому передача відбувається на обох фронтах тактових імпульсів, як і у випадку з DDR SDRAM. Величина всього пакета даних може дорівнювати цілій сторінці (рядку ядра). Оскільки пропускна здатність обох шин (команд і даних) однакова, можна перемикатися на іншу сторінку пам’яті без втрати продуктивності. Порівняно з SDRAM набір команд у SLDRAM значно збільшений, що дуже полегшує роботу контролера. Команда представляє собою чотири 10-бітних пакети (це і є Link) і містить всю інформацію для проведення наступної операції. Таким чином, зростає ефективність керування пам’яттю – усього за 4 такти передається вся інформація, що описує цілий масив даних. Це викликає стрибок у продуктивності SLDRAM. Максимальна досяжна для нинішніх поколінь SLDRAM швидкість передачі не перевищує 1 Гб/с на кожен розряд при частоті 400 МГц. Треба відзначити, що при такій частоті дуже важливо, щоб усі сигнали точно синхронізувалися з тактовими імпульсами системної шини, і щоб усі мікросхеми пам’яті в межах 11 одного модуля мали близькі тимчасові затримки. Для цього контролер програмує всі ІМС модуля пам’яті так, щоб вони видавали дані на шину одночасно, незалежно від розкиду їх параметрів і ступеня віддалення мікросхем від контролера. У результаті найвіддаленіша мікросхема видає дані без затримки, а найближча - через проміжок часу, що потрібний для того, щоб сигнал розповсюдився від найвіддаленішої до найближчої. Ці значення визначаються в момент подачі живлення на ІМС і постійно коректуються під час роботи. Нові технології синхронної пам’яті, багатобітні модулі ОЗП, а також оптимізовані цикли групового обміну даними і пакетна передача сигналів керування дійсно дозволили підвищити продуктивність системи. Хоча на доступ до ОЗП витрачається і менше тактів синхронізації, відсоток тактів чекання процесора, як і раніше, великий. Перебороти обмеження, властиві архітектурі традиційної DRAM, стало можливим завдяки технології DR DRAM. DR DRAM – пам’ять DR DRAM (Direct Rambus DRAM) — різновид швидкої динамічної пам’яті (RD RAM – Rambus Direct RAM) з довільним доступом. Основа архітектури Rambus — банки пам’яті, «пронизані» швидкісним каналом. Канал являє собою електричну шину, що під’єднує елементи пам’яті до контролера і роз’ємів (рис. 3). Канал входить у модуль на одному його кінці, проходить через усі чіпи і виходить на іншому кінці модуля. Шина даних синхронізується від зовнішнього джерела 400 МГц, як і DDR SDRAM, фронтом і зрізом, завдяки чому тактова частота синхронізації пам’яті — 800 МГц. Контролер пам’яті RDRAM RDRAM RDRAM Інтерфейс Rambus RDRAM Канал Rambus Uживл Термінатор Тактова частота 800 МГц Рис. 3. Принцип організації пам’яті DR DRAM 12 Структурні відмінності модулів SDRAM і DR DRAM ілюструє рис.4. Значні удосконалення в DR DRAM торкнулися структури й організації банків пам’яті. Якщо модуль DIMM SDRAM містить усього лише 4 банки, то чіп 128 Мбіт DR DRAM має 32 банки. Контролер ОЗП DIMM0 DIMM1 DIMM2 DIMM3 SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM SDRAM DDR SDRAM Ctr Ctr Ctr Ctr RAS,CAS,CS RAS,CAS,CS RAS,CAS,CS RAS,CAS,CS Контролер ОЗП RDRAM RDRAM RDRAM RDRAM RDRAM RDRAM RDRAM RDRAM DR DRAM Адреса даних Рис.4. Відмінності організації ОЗП на базі SDRAM і DR DRAM Щоб забезпечити нормальне функціонування системи із сигналами, що вимірюються частками наносекунд (1,25 нс), була розроблена спеціальна топологія шини модуля пам’яті. Цей модуль назвали RIMM – Rambus In-line Memory Module (за аналогією з SIMM і DIMM). Сучасні RIMM можуть містити до 128 банків пам’яті. Особливість цього модуля – однакова довжина всіх сигнальних доріжок, завдяки цьому до всіх ІМС модуля сигнали приходять одночасно. Справа в тому, що при роботі на частоті 800 МГц величина RIMM рівняється з довжиною хвилі (близько 37 см), що ставить певні вимоги до розташування елементів на модулі. Чітка робота на восьмикратній швидкості досягається завдяки цілому комплексу заходів: малій амплітуді сигналів (Rambus Signaling Logic з 0,8 В); добре продуманої топології шини; 13 щільній установці мікросхем на модулі; установки термінаторів на кінцях доріжок, щоб гасити відображення. Застосування декількох тактових імпульсів, які розповсюджуються в протифазі, зводить до мінімуму вплив перешкод. Спеціальна схема тактування мікросхем дає можливість погодити напрямок поширення тактових імпульсів. Це дозволяє надійно читати інформацію з ІМС незалежно від того, наскільки вони віддалені від контролера (рис.4). Контролер Direct Rambus посилає керуючі сигнали по шині і подає команди для регенерації ядра. Складається він із двох окремих функціональних блоків: Rambus Application Specific Integrated Circuit Cell (RAC) і контролера Rambus. Роль RAC – забезпечити фізичний і електричний інтерфейс контролера з зовнішньою шиною, а 8-розрядний контролер Rambus служить ядром 16- розрядного контролера Direct Rambus. Шина Direct Rambus Channel з’єднує чіпи пам’яті один з одним і модулі RIMM з контролером. Вона складається з трьох незалежних шин: 16-розрядної шини даних і двох шин адреси (окремо для рядків і для стовпців) загальною «шириною» 8 бітів. Передбачено і резервні розряди для адрес, що дозволяє нарощувати об’єм встановленої в комп’ютері пам’яті до максимуму – 1 Гб. Сигнали керування внутрішньою логікою передаються пакетами по 8 слів. А мінімальний пакет даних складається з 16 байтів, завдяки чому, як і у випадку з SDRAM, підвищується продуктивність при послідовному читанні великих масивів даних. Однак при читанні врозкид ефективність RDRAM падає (RDRAM – модуль пам’яті). Кожен рядок ядра RDRAM, на відміну від рядків інших типів пам’яті, має 128-розрядну «глибину». Це дозволяє за одне звертання заповнити відразу всю шину даних. 16 внутрішніх банків пам’яті дають можливість регенерувати вміст неактивних банків, не сповільнюючи роботу інших. Завдяки конвеєру, потік даних малими порціями розподіляється між банками таким чином, що втрати часу при звертанні до пам’яті мінімальні. Розподіл даних залежить від швидкості заповнення кожного банку. Велике число 14 банків дозволяє ефективно використовувати синхронну внутрішню високошвидкісну магістраль даних. Два канали даних (кожен шириною по одному байту) дозволяють одержати пікову пропускну здатність вихідної шини даних до 3,2 Гб/с.

Доступність

Шрифти Шрифти

Розмір шрифта Розмір шрифта

1

Колір тексту Колір тексту

Колір тла Колір тла

Кернінг шрифтів Кернінг шрифтів

Видимість картинок Видимість картинок

Інтервал між літерами Інтервал між літерами

0

Висота рядка Висота рядка

1.2

Виділити посилання Виділити посилання

Вирівнювання тексту Вирівнювання тексту

Ширина абзацу Ширина абзацу

0