Сделай Сам Свою Работу на 5

Синхронная память — SDRAM и DDR SDRAM





Микросхемы синхронной динамической памяти SDRAM (Synchronous DRAM) представляет собой конвейеризированные устройства. По составу сигналов интер­фейс SDRAM близок к обычной динамической памяти: кроме входов синхрони­зации здесь есть мультиплексированная шина адреса, линии RAS#, CAS#, WE# (разрешение записи) и CS# (выбор микросхемы) и линии данных (табл. 7.3). Все сигналы стробируются по положительному перепаду синхроимпульсов, ком­бинация управляющих сигналов в каждом такте кодирует определенную коман­ду. С помощью этих команд организуется та же последовательность внутренних сигналов RAS и CAS, которая рассматривалась и для памяти FPM.


7.1. Динамическая память



Таблица 7.3.Назначение сигналов в микросхемах SDRAM


Сигнал

CLK СКЕ

CS#

RAS#, CAS#, WE#

BSD, BS1 или BAD, BA1

А[0:12]

DQx DQM

Vss,VOD VSSQI VDDQ


I/O

I/O


Назначение

Clock Input—синхронизация, действует по положительному перепаду

Clock Enable — разрешение синхронизации (высоким уровнем). Низкий

уровень переводит микросхему в режим Power Down, Suspend или Self

Refresh

Chip Select — разрешение декодирования команд (низким уровнем).

При высоком уровне новые команды не декодируются, но выполнение



начатых продолжается

Row Address Strobe, Column Address Strobe, Write Enable — сигналы,

определяющие операцию (код команды)

Bank Selects или Bank Address — выбор банка, к которому адресуется

команда

Address — мультиплексированная шина адреса. В циклах Bank Activate

определяют адрес строки. В циклах Read/Write линии А[0:9] и А11 задают

адрес столбца. Линия А10 в циклах Read/Write включает режим

автопредзаряда (при А10=1), в цикле Precharge A10=1 задает предзаряд

всех банков (независимо от BSO, BS1)

Data Input/Output — двунаправленные линии данных

Data Mask — маскирование данных. В цикле чтения высокий уровень переводит шину данных в высокоимпедансное состояние (действует через 2 такта). В цикле записи высокий уровень запрещает запись текущих данных, низкий — разрешает (действует без задержки)

Общий провод и питание ядра

Общий провод и питание выходных буферов. Изолированы от питания ядра для снижения помех


Данные для первой передачи пакета записи устанавливаются вместе с командой WR. Данные для остальных передач пакета передаются в следующих тактах. Пер­вые данные пакета чтения появляются на шине через определенное количество тактов после команды. Это число, называемое CAS Latency (CL), определяется временем доступа ТСАС и тактовой частотой. Остальные данные пакета выдаются в последующих тактах. Временные диаграммы работы SDRAM приведены на рис. 7.6. Здесь показана команда записи WR, за которой следует команда чтения RD из той же страницы, предварительно открытой командой ACT. Далее страница за­крывается командой PRE. Длина пакета 2, CL - 3.



Регенерация (цикл CBR с внутренним счетчиком адреса регенерируемой строки) выполняется по команде REF, которую можно вводить только при состоянии по­коя (idle) всех банков.

Микросхемы SDRAM оптимизированы для пакетной передачи. У них при иници­ализации программируется длина пакета (burst length=l, 2, 4, 8 элементов), поря­док адресов в пакете (wrap mode: interleave/linear — чередующийся/линейный) и операционный режим. Пакетный режим может включаться как для всех опера­ций (normal), так и только для чтения (Multiple Burst with Single Write). Этот выбор позволяет оптимизировать память для работы либо с WB, либо с WT-кэшем.



Глава 7. Интерфейсы электронной памяти


Обратим внимание, что внутренний счетчик адреса работает по модулю, равному запрограммированной длине пакетного цикла (например, при burst length=4 он не позволяет перейти границу обычного четырехэлементного пакетного цикла).

 


 


Рис. 7.6. Временные диаграммы пакетных циклов SDRAM: А и В — данные для записи по адресу RO/CO и RO/CO+1, С и D — данные, считанные по адресу RO/C1 и RO/C1 +1

Пакетные циклы могут прерываться (принудительно завершаться) последующи­ми командами. При этом оставшиеся адреса отбрасываются, и прерывающий па­кет будет иметь полную длину (если его самого не прервут).



В команде Wri te имеется возможность блокирования записи данных любого эле­мента пакета — для этого достаточно в его такте установить высокий уровень сигна­ла DQM. Этот же сигнал используется и для перевода в высокоимпедансное состо­яния буферов данных при операции чтения.

Микросхемы SDRAM имеют средства энергосбережения, для управления ими используется вход разрешения синхронизации СКЕ.

В режиме саморегенерации (Self Refresh) микросхемы периодически выполняют циклы регенерации по внутреннему таймеру и не реагируют на внешние сигналы, поэтому внешняя синхронизация может быть остановлена.

Режимы пониженного потребления (Power Down Mode) устанавливаются при пе­реводе СКЕ в низкий уровень командой NOP или INHBT. В этих режимах микросхе­ма не воспринимает команд. Поскольку в данных режимах регенерация не выпол­няется, длительность пребывания в них ограничена периодом регенерации.

Если во время выполнения команды чтения или записи установить CKE=L, то микросхема перейдет в режим Clock Suspend Mode, в котором «замораживается» внутренняя синхронизация (нет продвижения данных) и не воспринимаются но­вые команды.


7.1. Динамическая память



Для памяти SDRAM ключевыми параметрами являются:

♦ допустимая тактовая частота;

♦ CL (Cas Latency) — число скрытых тактов (2 или 3);

♦ TRCD — задержка RAS-CAS, выраженная в тактах (2 или 3);

♦ TRP — время предварительного заряда RAS;

♦ TRC — минимальное время цикла обращений к строкам одного банка;

♦ ТАС — время задержки появления данных на выходе относительно фронта син­
хросигнала.

По тактовой частоте для SDRAM, применяемой в качестве ОЗУ PC-совместимых компьютеров, имеется три градации: РС66 (поначалу ее так не называли, посколь­ку другойинебыло),РС100иРС133 для максимальных частот 66,6, 100и 133 МГц соответственно. Их ключевые параметры приведены в табл. 7.4. В обозначении быстродействия микросхем SDRAM обычно фигурирует ТАС; период частоты син­хронизации, естественно, не может быть меньше этой задержки. Микросхемы со спе­цификацией -10 могут устойчиво работать в модулях лишь на частоте 66 МГц. Мик­росхемы -8 могут работать на частоте 100 МГц, но, в зависимости от модификации, с разной латентностью. Так, например, для памяти Micron микросхемы с маркиров­кой -8А...-8С могут работать на частоте 100 МГц с CL = 3, a -8D или -8Е — с CL = 2. Естественно, память может работать и на частотах ниже максимальной. Для мик­росхем SDRAM, применяемых, например, в графических адаптерах, существуют и иные спецификации быстродействия.

Таблица 7.4.Ключевые параметры временной диаграммы SDRAM Спецификация CL TRCD Т„Р Твс Примечание

РС66 3 2 3 8 Медленный вариант

2 2 2 7 Самый быстрый вариант

РС100 3 3 3 8 Медленный вариант

3 2 2 7 Средний вариант

2 2 2 7 Самый быстрый вариант

PC 133 3 3 3 9 Медленный вариант

3 2 2 8 Средний вариант
2 3 2 8 Средний вариант

2 2 2 8 Самый быстрый вариант

Синхронный интерфейс позволяет довольно эффективно использовать шину и обеспечить на частоте 100 МГц пиковую производительность 100 Мбит/с на 1 вывод шины данных. SDRAM используют в составе модулей DIMM с 8-байт-ной разрядностью, что дает производительность 800 Мбайт/с. При частоте шины 133 МГц пиковая производительность уже достигла 1064 Мбайт/с. Однако эта теоретическая производительность не учитывает накладные расходы на регенера­цию и подразумевает, что требуемые страницы уже открыты. Из-за указанных выше ограничений на реальном произвольном потоке запросов производитель­ность, конечно же, будет ниже. Потенциальные возможности почти одновременно-


244 Глава 7. Интерфейсы электронной памяти

го обслуживания множества запросов, предоставляемые микросхемами SDRAM, будут реализованы лишь при достаточно «умном» контроллере памяти. От его предусмотрительности эффективность памяти зависит, пожалуй, больше, чем у простых модулей FPM и EDO DRAM.

Память DDR SDRAM представляет собой дальнейшее развитие SDRAM. Как и следует из названия (Dual Data Rate — удвоенная скорость данных), у микро­схем DDR SDRAM данные внутри пакета передаются с удвоенной скоростью — они переключаются по обоим фронтам синхроимпульсов (рис. 7.7). На частоте 100 МГц DDR SDRAM имеет пиковую производительность 200 Мбит/с на вывод, что в составе 8-байтных модулей DIMM дает производительность 1600 Мбайт/с. На высоких тактовых частотах (100 МГц) двойная синхронизация предъявляет очень высокие требования к точности временных диаграмм. Для повышения точ­ности синхронизации предпринят ряд мер.

♦ Сигнал синхронизации микросхемы подается в дифференциальной форме по
двум линиям CLK и CLK# (Differential clock inputs). Это позволяет снизить
влияние смещения уровней на точность определения момента синхрониза­
ции — дифференциальный приемник срабатывает в момент равенства уровней напряжения.

♦ Для синхронизации данных в интерфейс введен новый двунаправленный стро-
бирующий сигнал DQS. Стробы генерируются источником данных: при опера­циях чтения DQS генерируется микросхемой памяти, при записи — контрол­лером памяти (чипсетом). При чтении фронты и спады этого сигнала точно центруются в моменты смены данных, приемник должен стробировать дан­ные с небольшой задержкой относительно переключений DQS. При записи фронты и спады центруются точно посередине окна действительности данных и масок DQM.

♦ Для синхронизации DQS с системной тактовой частотой (CLK) микросхемы имеют встроенные схемы DLL (Delay Locked Loop) для автоподстройки задерж­ки сигнала DQS относительно CLK. Эта схема работает наподобие фазовой ав­топодстройки и способна выполнять синхронизацию (обеспечивать совпаде­ние фронтов DOS и CLK) лишь в некотором ограниченном диапазоне частот синхронизации.

Есть микросхемы DDR SDRAM с возможностью отключения схем DLL; для это­го они имеют дополнительный расширенный регистр режима. Отключение DLL необходимо при снижении тактовой частоты (в целях энергосбережения). При отключенной схеме DLL стробы DQS не привязаны к синхросигналу CLK, и у раз­ных микросхем, работающих в одной системе, они будут иметь разные частоты.

В отличие от обычных микросхем SDRAM, у которых данные для записи переда­ются одновременно с командой, в DDR SDRAM данные для записи (и маски DQM) подаются с задержкой на один такт (write latency). Значение CAS Latency может быть и дробным (CL = 2, 2,5, 3).

В перспективе ожидается появление микросхемы DDR-II SDRAM, в которой обмен будет на четырехкратной частоте синхронизации.


7.1. Динамическая память


 


Рис. 7.7. Временные диаграммы пакетных циклов DDR SDRAM: a — чтение, CL = 2, длина пакета 4; б — запись, длина пакета 4, данные D1 не записываются

Перед «штатным» использованием микросхем SDRAM их требуется инициали­зировать. После подачи питания и установления синхросигнала должен быть вы­полнен предварительный заряд всех банков, после чего запрограммирован регистр режима. Параметр CL (CAS Latency) выбирают, исходя из спецификации микро­схем и тактовой частоты так, чтобы задержка, обусловленная CL, была бы мини­мальной, но не меньше ТСАС. В DDR SDRAM возможны и дробные значения CL, так что настройка может быть более тонкой. В DDR SDRAM из-за необходимо­сти настройки DLL программирование сложнее.

По причине существенного отличия интерфейса от традиционной асинхронной памяти микросхемы SDRAM не могут быть установлены в модули SIMM; они применяются в DIMM или устанавливаются прямо на системную (или графиче­скую) плату. Интерфейс DDR SDRAM сильно отличается и от обычных микросхем SDRAM. Возможность использования этих типов памяти определяется чипсетом системной платы. Память SDRAM в конце 90-х годов стала самой распространен­ной, поддержка DDR SDRAM появилась лишь сравнительно недавно.

Память Rambus DRAM

Память RDRAM (Rambus DRAM) имеет синхронный интерфейс, существенным образом отличающийся от вышеописанного. Запоминающее ядро этой памяти по­строено на все тех же КМОП-ячейках динамической памяти, но пути повышения производительности интерфейса совершенно иные. Подсистема памяти (ОЗУ) RDRAM состоит из контроллера памяти, канала и собственно микросхем памяти. По сравнению с DDR SDRAM, при той же производительности RDRAM имеет более компактный интерфейс и большую масштабируемость. Разрядность ОЗУ RDRAM (16 байт) не зависит от числа установленных микросхем, а число банков,



Глава 7. Интерфейсы электронной памяти


доступных контроллеру, и объем памяти суммируются по всем микросхемам канала. При этом в канале могут присутствовать микросхемы разной емкости в любых сочетаниях.

Запоминающее ядро микросхем имеет многобанковую организацию — 64-мегабит-ные микросхемы имеют 8 банков, 256-мегабитные — 32 банка. Каждый банк име­ет собственные усилители считывания, благодаря чему в микросхеме может быть активировано несколько банков. Для сокращения числа усилителей применяют и их разделение (совместное использование) парой смежных байт, что накладывает ограничения на их совместную активацию (до активации банка его смежник дол­жен быть заряжен). Разрядность ядра 16 байт — 128 или 144 (с контрольными разрядами) бит. Ядро работает на 1/8 частоты канала, взаимодействие с ядром осуществляется по внутренним сигналам RAS и CAS. В современных RDRAM при­меняются ячейки памяти с временем доступа 40-53 нс.

Канал RDRAM (Rambus Channel) представляет собой последовательно-парал­лельную шину. Такая организация позволяет ограничить количество линий интерфейса, что, в свою очередь, позволяет упорядочить разводку проводников ради повышения частоты передачи сигналов. Небольшое количество сигналов дает возможность выровнять задержки распространения сигналов по разным линиям и применить сверхбыстродействующие интерфейсные схемы. Тактовая частота канала — до 400 МГц, стробирование информации осуществляется по обо­им фронтам синхросигнала. Таким образом, пропускная способность одной ли­нии составляет 800 Мбит/с. Канал состоит из 30 основных линий с интерфейсом RSL (Rambus System Logic) и 4 вспомогательных линий КМОП, используемых для инициализации микросхем. Структура канала изображена на рис. 7.8. На канале может быть установлено до 32 микросхем, все микросхемы соединяются парал­лельно. Для того чтобы контроллер мог адресоваться к определенной микросхе­ме, каждой из них назначается уникальный адрес DEVID. Нумерация микросхем (Device Enumeration) осуществляется в процессе инициализации, который выпол­няется с использованием вспомогательного последовательного КМОП-интерфейса. Этот интерфейс имеет линии синхронизации SCK, команд CMD данных SIO.

Рис. 7.8. Память Direct RDRAM


7.1. Динамическая память_____________________________________________ 247

Синхросигнал вводится в канал с «дальнего конца» и распространяется в сторону контроллера по линии СТМ (Clock To Master). По этому сигналу микросхемы па­мяти стробируют данные, посылаемые к контроллеру (при чтении). Дойдя до кон­троллера, синхросигнал выходит на линию CFM (Clock From Master) и идет по ка­налу до терминатора, установленного на конце. По этой линии синхронизируется информация, посылаемая от контроллера к микросхемам памяти. Микросхемы привязывают данные чтения к синхросигналу с помощью встроенных схем DLL (Delay Locked Loop) для автоподстройки задержки сигнала DQS относительно CLK. Физический уровень интерфейса учитывает волновой характер процессов рас­пространения сигналов в канале. Интерфейс RSL имеет малый размах сигна­ла: уровню логический 0 соответствует потенциал терминаторов VTERM = 1,8 В, лог. 1 — потенциал 1,0 В. Передатчики имеют выход типа «открытый сток N-МОП» и активны при передаче логической единицы. Передатчики управляют значением генерируемого тока с тем, чтобы обеспечить требуемый уровень сигнала (падение напряжения на сопротивлении терминатора). Уровень переключения приемника Vref = 1,4 В задается делителем напряжения VteRm. Сигнал синхронизации переда­ется в дифференциальной форме по линиям СТМ, CTMN к контроллеру и по лини­ям CFM, CFMN от него. Дифференциальная форма снижает погрешность строби-рования, вызванную смещением уровней сигналов.

Канал разделен на три независимые шины: 3-битная шина строк ROW[2:0], 5-битная шина колонок СОЦ4:0] и двухбайтная (2x9 бит) шина данных DQA[8:0] и DQB[8:0]. Дополнительный бит байта данных (имеется не у всех микросхем RDRAM) может использоваться для контроля достоверности. По каждой шине информация пере­дается пакетами, занимающими 4 такта (8 интервалов) синхронизации (10 не). Пакет содержит 8 элементов; пакет строк имеет емкость 24 бит, колонок — 40 бит и данных — 16 байт по 8 или 9 бит.

Высокая производительность шины управления (строк и колонок) позволяет от­казаться от пакетных (в терминологии BEDO и SDRAM) передач и упростить протокол шины. Память может одновременно обслуживать до четырех транзак­ций на полной скорости передачи данных.

Транзакции чтения приведены на рис. 7.9, по виду они аналогичны транзакциям SDRAM с тем лишь отличием, что за время одного такта (SDRAM) передается пакет. Пакет ROW для второй транзакции пропущен, поскольку страницу остави­ли открытой. Транзакция чтения со стороны контроллера представляет собой петлю: он посылает пакеты ROWA и COLC, которые за некоторое время достигают целевой микросхемы и ею обрабатываются за время ТСАС. Далее микросхема от­вечает пакетом данных, которому для достижения контроллера также требуется некоторое время. Пакетам для путешествий к дальним микросхемам и от них тре­буется больше времени, чем для путешествий к ближним, и эта разница оказыва­ется большей, чем длительность периода синхронизации. Для того чтобы контрол­лер получал ответ на транзакцию чтения от любой микросхемы через одно и то же число тактов, у микросхем памяти устанавливают разную задержку данных отно­сительно пакетов COLC. Группы соседних микросхем, у которых программируется одинаковая задержка, называют доменами синхронизации. В канале может быть несколько доменов синхронизации.



Глава 7. Интерфейсы электронной памяти


Рис.7.9. Транзакции чтения RDRAM

Транзакции записи (рис. 7.10) являются однонаправленными и для них проблем син­хронизации не возникает. В отличие от стандартных микросхем DRAM и SDRAM, где данные для записи передаются одновременно с адресом колонки, в RDRAM данные задерживают относительно пакета COLC на TCWD (несколько тактов). Эта задержка соответствует задержке между пакетами COLC и данными при чтении (на стороне контроллера). Задержка записи позволяет сократить вынужденные про­стои шины данных при переключении с записи на чтение (в SDRAM они равны CAS Latency и длятся 2-3 такта по 10 не). Контроллер может посылать данные для записи уже в такте, следующим за последними данными предыдущей транз­акции чтения. Однако если за записью следует чтение,- то на шине данных будет вынужденная пауза в 1-5 тактов в зависимости от длины канала. За это время последние данные записи дойдут от контроллера до самой дальней микросхемы памяти.

Рис. 7.10.Транзакции записи RDRAM

В микросхемах RDRAM применяется механизм отложенной, или буферирован­ной, записи. Данные для записи (принятый пакет D) сначала помещаются в буфер, из которого несколько позже они выгружаются в усилители считывания-записи (sens amp) по явной команде выгрузки (retire) или автоматически. Буфер записи хранит сами данные, а также номер банка и адрес столбца (но не строки). Буфери­зация записи позволяет контроллеру посылать команду записи на TRTR раньше, чем этого требует параметр TRCD, что повышает коэффициент использования шины.

Конвейерное выполнение операций RDRAM обеспечивается многобанковой орга­низацией с отдельными усилителями считывания. Пакеты команд по линиям ROW и COL могут идти сплошным потоком, при этом на шине может присутство-


7.1. Динамическая память_____________________________________________ 249

вать до четырех транзакций. При произвольных обращениях увеличению произ­водительности способствует большое количество банков, практически недостижи­мое в памяти SDRAM.

Регенерация осуществляется по команде, адресуемой к определенному банку од­ной или всех микросхем; за период регенерации эта команда должна выдаваться для всех банков.

Память RDRAM отличается высоким энергопотреблением. Средства управления энергопотреблением отключают питание неиспользуемых узлов, однако за 100-крат­ное снижение мощности в самом экономичном режиме приходится расплачивать­ся 250-кратным увеличением времени доступа. Микросхемы RDRAM требуют периодической (раз в 100 мс) подстройки выходного тока и термокалибровки; для этих целей имеются специальные команды. Во время подстройки тока микросхе­мы способны сообщать о своем перегреве.

Вспомогательная шина с сигналами SCK, CMD и SIO служит для обмена данными с управляющими регистрами и вывода микросхем из состояний пониженного по­требления (PDN и NAP). Информация по этой шине тоже передается пакетами.

Управляющие регистры хранят информацию об адресе микросхемы, управляют работой микросхемы в различных режимах, содержат счетчики регенерации для банков и строк, параметры настройки временных циклов. В них же можно прочитать информацию о конкретной микросхеме — организация, версия протокола и т. п. В составе управляющих есть и тестовые регистры.

Инициализация памяти включает определение наличия микросхем на шине, на­значение им идентификаторов и программирование их параметров. После сброса микросхемы не имеют собственных адресов, а линии SIOO и SI01 у них соединены. В таком состоянии контроллер по шине CMD посылает широковещательную ко­манду на разъединение линий, после чего для него по линии SIO оказывается до­ступной только ближайшая микросхема канала. Ей назначается адрес (SDEVID) и дается команда на соединение линий, в результате к контроллеру подключается вторая микросхема. Она будет пронумерована очередной командой, заставляющей все доступные ненумерованные микросхемы (то есть именно ее) принять указан­ный номер. Далее замыкаются ее линии SIO, и этот процесс продолжается до самой дальней микросхемы.

После завершения этого «переучета» включается нормальная синхронизация, и дается время для установления режима схем DLL. После двукратной активации и предварительного заряда каждого банка каждой микросхемы память готова к определению доменов синхронизации и назначению каждой микросхеме соответ­ствующих параметров задержек. Также им должны быть присвоены идентифика­торы в канале (DEVID), которые могут и не совпадать со значениями SDEVID (иден­тификатором на последовательной шине).

Обязательным «фирменным» компонентом ОЗУ на RDRAM является контрол­лер памяти. В его задачу входит обслуживание микросхем памяти, установлен­ных в канале, по запросам, поступающим со стороны интерфейса системной шины компьютера. Часть контроллера, обращенная к каналу, инвариантна к архитекту-


250___________________________ Глава 7. Интерфейсы электронной памяти

ре компьютера. Именно она «знает» протокол RDRAM и является продуктом фирмы Rambus. Контроллер RDRAM встраивается в чипсеты для процессоров Р6 (например, 1820, 1840), Pentium 4 (1850 с 32-разрядным каналом, то есть уже под пары модулей RIMM) и других архитектурных линий.

В соответствии со спецификацией RDRAM в одном канале может быть до трех слотов под RIMM, и их интерфейсные линии соединяются змейкой. В слоты мо­гут устанавливаться RIMM различной емкости (сейчас они выпускаются на 64, 96, 128 и 256 Мбайт). Однако пока что фирме Intel не удалось достичь устой­чивой работы канала с тремя модулями и пришлось ограничиться двумя. Теперь в памяти появился новый элемент-пустышка Continuity module. Это как бы модуль RIMM, но без микросхем памяти, и нужен он для того, чтобы замыкать цепь кана­ла Rambus. Такая «заглушка» должна устанавливаться во все слоты канала, не занятые под модули RIMM. Если используются не все слоты, то память выгоднее ставить ближе к контроллеру — она будет работать быстрее (см. выше).

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.