SDRAM (Synchronous Dynamic Random Access Memory)

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 10:10, 6 июня 2019.

SDRAM (Synchronous Dynamic Random Access Memory)- это синхронная динамическая память с произвольным доступом. SDRAM основана на основе стандартной DRAM и работает почти также, как стандартная DRAM, но она имеет несколько отличительных характеристик, которые и делают ее более прогрессивной.

История

Появилась она в 1997 году, и начиная с чипсетов i430VX и i430TX, выпущенных в том же году, все наборы системной логики поддерживают этот тип памяти. Первоначально, SDRAM была предложена в качестве более дешевой по стоимости альтернативы для дорогой видеопамяти VRAM, используемой в графических подсистемах. Тем не менее, она быстро получила применение во многих приложения и стала кандидатом номер один на роль основной памяти для следующих поколений PC. [Источник 1]

Описание

Синхронная оперативная память (SDRAM) — это первая технология оперативной памяти со случайным доступом (DRAM) разработанная для синхронизации работы памяти с тактами работы центрального процессора с внешней шиной данных. SDRAM основана на основе стандартной DRAM и работает почти также, как стандартная DRAM, но она имеет несколько отличительных характеристик, которые и делают ее более прогрессивной.Синхронная работа SDRAM в отличие от стандартной и асинхронной DRAMs, имеет таймер ввода данных, таким образом системный таймер, который пошагово контролирует деятельность микропроцессора, может также управлять работой SDRAM. Это означает, что контроллер памяти знает точный цикл таймера на котором запрошенные данные будут обработаны. В результате, это освобождает процессор от необходимости находится в состоянии ожидания между моментами доступа к памяти (см. рисунок 1).

Рисунок 1 – Внешний вид SDRAM

Свойства

  • Общие свойства SDRAM:
  1. Синхронизированна по тактам с CPU.
  2. Основана на стандартной DRAM, но значительно быстрее — вплоть до 4 раз.
  • Специфические свойства:
  1. Синхронное функционирование.
  2. Чередование банков ячеек.
  3. Возможность работы в пакетно-конвейерном режиме.

Банки ячеек

Банки ячеек — это ячейки памяти внтри чипа SDRAM, которые разделяются на два, независимых банка ячеек. Поскольку оба банка могут быть задействованны одновременно, непрерывный поток данных может обеспечиваться простым переключением между банками. Этот метод называется чередованием, и он позволяет снизить общее количество циклов обращения к памяти и увеличить, в результате, скорость передачи данных. пакетный режим ускорения — это техника быстрой передачи данных, при которой автоматически генерируется блок данных (серия последовательных адресов), в каждый момент, когда процессор запрашивает один адрес. Исходя из предположения о том, что адрес следующих данных, которые будут запрошенных процессором, будет следующим, по отношению к предыдущему запрошенному адресу, который обычно истиный (это такое же предсказание, которое используется в алгоритме работы кэш-памяти). Пакетный режим может применятся как при операциях чтения (из памяти), так и при операциях записи (в память).

Память

У SDRAM более быстрая память,чем у других видов памяти. Даже при том, что SDRAM основана на стандартной DRAM архитектуре, комбинация указанных выше трех характеристик позволяет получит более быстрый и более эффективный процесс передачи данных. SDRAM уже может передавать данные со скоростью вплоть до 100MHz, что почти в четыре раза быстрее работы стандартной DRAM. Это ставит SDRAM в один ряд с более дорогой SRAM (статическое ОЗУ) используемой в качестве внешней кэш-памяти.

Принцип работы

SDRAM производится на основе стандартной DRAM и работает также, как стандартная DRAM — осуществляя доступ с строкам и колонкам ячеек данных. Только SDRAM объединяет свои специфичные свойства синхронного функционирования банков ячеек, и пакетной работы, для эффективного устранения состояний задержек-ожидания. Когда процессору необходимо получить данные из оперативной памяти, он может получить их в требуемый момент. Таким образом, фактическое время обработки данных непосредственно не изменилось, в отличии от увеличения эффективности выборки и передачи данных. Для того, чтобы понять как SDRAM ускоряет процесс выборки и поиска данных в памяти, представьте себе, что центральный процессор имеет посыльного, который возит тележку по зданию оперативной памяти, и каждый раз ему нужно бросать или подбирать информацию. В здании оперативной памяти клерк, отвечающий за пересылку/получение информации, обычно тратит около 60ns, чтобы обработать запрос. Посыльный знает только, сколько требуется времени, чтобы обработать запрос, после того, как он получен. Но он не знает будет ли готов клерк, когда он приедет к нему, так что обычно он отводит немного времени на случай ошибки. Он ждет, пока клерк не будет готов получить запрос. Затем он ожидает обычное время, требующееся для обработки запроса. А затем, он задерживается, чтобы проверить, что запрошенные данные загружены в его тележку, прежде, чем отвезти тележку с данными обратно центральному процессору. Предположим, с другой стороны, что каждые 10 наносекунд пресылающий клерк в здании оперативной памяти должны быть снаружи и готовым получить другой запрос или ответить на запрос, который был получен ранее. Это делает процесс более эффективным, поскольку посыльный может прибыть именно в нужное время. Обработка запроса начинается в момент его получени. Информация посылается в CPU, когда она готова (см. рисунок 2).
Рисунок 2 – Принцип работы SDRAM

Особенности

Время доступа (комманды по адресу до выбора данных) одинаково для всех типов памяти, поскольку их внутренняя архитектура в основном одинакова. Более показательным параметром является время цикла, который показывает, насколько быстро могут быть осуществлены два последовательных доступа в чипе. Первый цикл считывания одинаков для всех четырех типов памяти — 50ns, 60ns или 70ns. Но реальные различия можно увидеть, посмотрев как быстро осуществляется второй, третий, четвертый, и т.д. цикл считывания. Наиболее значимые улучшения производительностьи при использовании SDRAM:

  • Более быстрая и более эффективная — почти в четыре раза производительнее, чем стандартная DRAM
  • Заменила более дорогостоящую в использовании комбинацию EDO/L2-кэш.
  • "При синхронном" функционировании — избавляет от ограничений по времени и не тормозит работу новейших процессоров.
  • Внутреннее чередование операций с двойными банками способствует непрерывному потоку данных.
  • Возможность пакетного режима работы вплоть до полной страницы (используя до х16 микросхем).
  • Конвейерная адресация позволяет осуществлять доступ к запрошенным вторыми данными, до завершения обработки запрошенных первыми данными.[Источник 2]

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

При синхронной работе с памятью SDRAM обеспечивается синхронизация всех входных и выходных сигналов с тактами системного генератора. Однако управле­ние памятью усложняется, так как приходится вводить дополнительные регистры- защелки, которые хранят адреса, данные и управляющие сигналы, в то время как процессор, передав их в память, продолжает работать с другими устройствами. После определенного числа тактовых циклов, количество которых считает специ­альный счетчик, данные становятся доступными и процессор может получить их с системной шины. Помимо организации синхронного доступа к данным, память SDRAM имеет еще ряд принципиальных отличий от асинхронной памяти. Весь массив памяти SDRAM модуля разделен на два независимых банка. Такое решение позволяет совмещать выборку данных из одного банка с установкой ад­реса в другом банке, то есть иметь одновременно две открытые страницы. Доступ к этим страницам чередуется (bank interleaving), и соответственно устраняются задержки, что обеспечивает создание непрерывного потока данных. В SDRAM-памяти, как и в BEDO-памяти, организована конвейерная обработка данных, что позволяет производить обращение по новому адресу столбца ячейки памяти на каждом тактовом цикле. В микросхеме SDRAM имеется счетчик для наращивания адресов столбцов ячеек памяти с целью обеспечения быстрого до­ступа к ним. Существовало два типа синхронной динамической SDRAM-памяти: РС100 и РС133. Числа 100 и 133 определяют частоту системной шины, которую поддерживает эта память. Соответственно, память PC 100 поддерживает максимальную частоту 100 МГц, а РС133 — 133 МГц. По своей внутренней архитектуре, способам управ­ления и внешнему дизайну модули памяти РС100 и РС133 были полностью иден­тичны. Можно сказать, что память PC 133 — это разогнанный вариант PC 100. Память принято характеризовать различными параметрами, среди которых основ­ным (точнее, первым из называемых) является пропускная способность канала данных — максимальное количество байт, передаваемых по каналу данных за еди­ницу времени (за одну секунду). Память PC 100 и PC 133 имеет 64-битную (восьмибайтную) шину данных, то есть за каждый такт можно передать 8 байт данных. Следовательно, чтобы определить пропускную способность памяти, нужно умно­жить количество тактов передачи за одну секунду на количество байт, передаваемых за один такт. Количество тактов обращений к памяти за одну секунду — это часто­та работы памяти. Таким образом, пропускная способность канала памяти опреде­ляется по формуле:

  • Пропускная способность (Мбайт/с) = Частота системной шины (МГц) • 8 байт.
  • Для памяти РС100 пропускная способность составит 100 МГц • 8 байт = 800 Мбайт/с, а для памяти РС133 — 1064 Мбайт/с, или приблизительно 1 Гбайт/с.

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

  • DDR SDRAM –эта память представляет собой дальнейшее развитие синхронной памяти (переводится - удвоенная скорость данных. Синхронизация осуществляется по переднему и заднему фронтам синхросигналов. На частоте 100МГц эта память в составе 8-байтных модулей DIMM дает производительность 1600Мбайт/с.С шиной на 133 МГц при 64 битной шине производительность обмена составляет 2128 Мбайт/сек
  • DDR2 SDRAM - Микросхемы DDR2 SDRAM обеспечивают обмен данными на четырехкратной частоте синхронизации. Поэтому скорость передачи данных возрастает в два раза. Память DDR 2 отличается и более низким напряжением питания:1,8 В вместо 2.5.В. Модули этой памяти имеют 230 контактов против 184 у DDR.
  • SLDRAM экономически выгодна при объеме ОЗУ не менее 256 Мбайт. В этом типе памяти адреса, команды, сигналы управления передаются в пакетном режиме по однонаправленной шине команд. Одновременно по другой , двунаправленной шине передаются данные, причем передача происходит на обоих фронтах тактовых импульсов. Всего за 4 такта передается вся информация , описывающая массив данных. Максимальная скорость передачи у этих микросхем превышает 1 Гбайт/сек на каждый разряд при частоте 400 МГц.

Версии

  • ESDRAM – улучшенная синхронная память является более быстрой версией синхронной памяти. Принцип ее работы заключается в том, что из динамической памяти в кэш целиком переносится вся строка, в которой находится считываемая ячейка. После этого считывание производится уже из кэш, а в основной памяти можно выбирать нужную строку или производить регенерацию. Недостаток этой памяти – усложнение контроллера, он должен учитывать возможность подготовки к чтению новой строки.
  • CDRAM – динамическая память с кэш-памятью. Это улучшенный вариант ESDRAM. Эта память имеет раздельные адресные линии для статического кэша и динамического ядра памяти. Кэш расположен внутри микросхемы, поэтому его эффективность выше. Объем одного блока данных, помещаемого в кэш, уменьшен до 128 бит.
  • RDRAM (Rambus DRAM) – микросхемы синхронной памяти, имеющей интерфейс, отличающийся от SDRAM. Первые микросхемы RDRAM имели 1-байтный интерфейс, работали на частоте 250-300 МГц и обеспечивали производительность 600Мбайт/с. Дальнейшим развитием стал фирменный стандарт DRDRAM, обеспечивающий производительность до 1600Мбайт/с на двухбайтной шине данных при частоте 400МГц. Подсистема памяти RDRAM состоит из контроллера памяти, канала и микросхем памяти. Двухбайтная шина данных и разрядность памяти не зависит от числа установленных микросхем. Эти микросхемы появились потому, что обычные динамические ОЗУ достигают потолка при частоте в 300 МГц. Микросхемы представляют собой высокоскоростную динамическую память с произвольным доступом, интегрированную на системном уровне.
  • VCM - память с виртуальной шиной. В ней можно обращаться к памяти одновременно с несколькими процессами (запись данных ,перенос содержимого на жесткий диск, обращения графического процессора). Каждый процесс использует виртуальную шину, которая взаимодействует с реальной, что повышает производительность на 25 %. Данные при записи не сразу заносятся в память, а помещаются в буфер, виртуальный канал, кв котором хранятся , пока память не будет готова их принять.
  • IRAM - Технология IRAM предполагает размещение процессора и памяти в одном кристалле. Это дает возможность считывания и записи данных длинными словами (в пределах 16384 бит), что обеспечивает высокую производительность системы.
  • MRAM – магнитная оперативная память, принцип действия которой заключается в том , что запоминающим элементом служит магнитная среда, заключенная между металлическими пленками, образующими линии записи и чтения данных. Такую память можно применять в виде и динамической и статической памяти. [Источник 3]

Время доступа

Время доступа (RAS to active time, Tras) — это время, проходящее с мо­мента обращения к памяти до момента считывания данных. Данная величина приблизительно одинакова для всех типов динамической памяти и составляет примерно 50 не. Время доступа актуально при случайном доступе к памяти, то есть когда последовательные считываемые ячейки памяти принадлежат различным стро­кам. Если же говорить о блочной передаче, то более показательной характеристикой является время цикла, то есть время между двумя последовательными обращениями к ячейкам памяти. Первый цикл обращения всегда равен времени доступа, то есть около 50 Не. Но при последующих циклах обращения в пределах одной страницы время существенно меньше и составляет 10 Не для памяти РС100 и 7,5 Не для РС133 (7,5 не — длительность одного такта при частоте шины 133 МГц). Например, при цепочке 5-1-1-1 данные появляются без задержек, то есть с каждым тактовым импульсом. Сумма всех цифр цепочки показывает количество тактов, необходимых для получения четырех элементов. Так, для памяти PC 133 реализуется схема 5-1-1-1, которая означает, что для до­ступа к данным требуется восемь тактов. Для рассмотренной ранее памяти EDO реализуется схема 5-2-2-2 и для доступа требуется 11 тактов, а для памяти FPM схема 5-3-3-3 дает 14 тактов. Микросхемы SDRAM-памяти каждый раз перед началом процесса чтения настра­иваются (подготовительный период) посредством установки специальных регистров. Регистр режимов устанавливается перед первым обращением к памяти и затем переустанавливается по мере необходимости. После такта записи в регистр режи­мов обязательно должен следовать пустой такт. Настройке посредством установки регистров подлежат следующие параметры: длина пакетного цикла, порядок счета адресов внутри пакетного цикла, CAS-латентность и тип операции с памятью. Длина пакетного цикла (Burst Length, BL) — это количество обращений к после­довательным ячейкам памяти в пределах одной страницы, когда адресация колонок осуществляется за счет использования внутреннего счетчика адресов. В соответ­ствии с параметром BL настраивается цикл работы счетчика адресов. Длина пакет­ного цикла может быть равна 1, 2, 4, 8 или Full Page (последнее значение опреде­ляется длиной строки и обычно равно 256). Порядок счета адресов внутри пакетного цикла может быть либо последовательный, либо чередующийся (interleave). CAS-латентность (CAS latency) определяет задержку по времени в тактах, которая происходит с момента подачи сигнала CAS (с момента получения адреса столбца) до выдачи первого слова данных на шину. Для SDRAM-памяти эта задержка может составлять два или три такта.

Тип операции

Тип операции с памятью (Operation Mode) может быть либо нормальным, когда используется пакетный режим для чтения и записи, либо специальным, когда применяется режим пакетного чтения и одиночных операций записи. Порядок обращения к памяти начинается, как уже отмечалось, с установки реги­стров управления. На это уходит два такта, после чего начинается активизация нужного банка памяти, то есть ввод адреса строки и подача стробирующего сигна­ла RAS. С приходом положительного фронта тактового импульса открывается доступ к нужной строке, а адрес строки помещается в адресный буфер строки, где он может удерживаться столько времени, сколько нужно. Через промежуток времени, называемый RAS to CAS delay (tRCD) — то есть за­держка в тактах подачи сигнала CAS относительно сигнала RAS, подается строби- рующий импульс CAS. При установке CAS в низкий уровень после прихода поло­жительного фронта тактирующего импульса происходит выборка адреса столбца, который присутствует в данный момент на шине адреса, и открывается доступ к нужному столбцу матрицы памяти. Затем, через время CAS latency (tCL), на шине данных появляется первое слово, которое может быть считано процессором. Каждое последующее слово (их коли­чество определяется длиной пакетного цикла) появляется на шине данных в оче­редном такте. Завершение цикла обращения к банку памяти осуществляется подачей команды деактивации RAS Pre charge (tRP). Эта команда подается за один (при CAS latency = 2) или за два (при CAS latency = 3) такта перед выдачей последнего слова данных. Время деактивации также измеряется в тактах и может быть равно двум или трем. Описанные промежутки времени RAS to CAS delay (tRCD), CAS latency (tCL) и время деактивации RAS Pre charge (tRP) определяют тайминг памяти, записы­ваемый в виде последовательности tCL —»tRCD -> tRP. Понятно, что чем меньше тайминг, тем более быстродействующей является память. Часто в характеристиках памяти указываются не все тайминги, а только показатель tCL (например, tCL7 или tCL8 для модулей памяти DDR3 SDRAM) [Источник 4].

Источники

  1. SDRAM // Proffy. [2014]. Дата обновления: 12.08.2012. URL:http://proffy.info/mem/1.html (дата обращения 04.06.2019).
  2. Synchronouse DRAM // iXBT. [1997-2019]. Дата обновления: 02.11.2009. URL:https://www.ixbt.com/mainboard/sdram.html (дата обращения 04.06.2019).
  3. SDRAM // Proffy. [2014]. Дата обновления: 12.08.2012. URL: (дата обращения 06.06.2019).
  4. SDRAM // dammlab. [2019]. Дата обновления: 15.03.2019. URL:http://dammlab.com/osnovi-pk/companenty_pc/sinxronnaya-pamyat-sdram.html (дата обращения 04.06.2019).