Энциклопедия современной памяти | КомпьютерПресс

Основные понятия

Оперативная память, или RAM-память (Random Access Memory), — это память с произвольным доступом.

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

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

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

Адресация памяти

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

С учетом того, что в модуле памяти используется несколько чипов памяти, а в каждом чипе — несколько банков памяти, прежде всего необходимо указать, в каком чипе и банке находится ячейка. Для этого применяются специальные сигналы: CS, BA0 и BA1.

Сигнал CS (Chip Select) позволяет выбрать требуемый чип памяти. Когда сигнал активен, возможен доступ к чипу памяти, то есть чип активируется. В противном случае чип памяти недоступен.

Сигналы BA0 и BA1 (Bank Active) позволяют адресовать один из четырех банков памяти. Учитывая, что каждый сигнал может принимать одно из двух значений: 0 или 1, — комбинации 00, 01, 10 и 11 позволяют задать адрес четырех банков памяти.

Когда выбраны чип и банк памяти, можно получить доступ к требуемой ячейке памяти, задав адрес столбца и строки. Исходя из соображений минимизации размера упаковки микросхемы и сокращения количества выводов, адреса строк и столбцов передаются по одним и тем же адресным линиям, образующим мультиплексированную адресную шину (Multiplexed Address, MA).

Предлагаем ознакомиться  Настройка панели задач в ОС Windows

То есть первоначально передается адрес строки, а затем, через некоторый промежуток времени, по той же шине передается адрес столбца. Ширина мультиплексированной шины адреса составляет 14 линий (A0, A1 … A13), однако, в зависимости от логической организации чипа памяти, часть линий может не использоваться. Кроме того, некоторые линии зарезервированы для служебных нужд.

Запись таймингов памяти

Описанные задержки — RAS-to-CAS Delay (tRCD), CAS Latency (tCL), RAS Precharge (tRP), Active-to-precharge delay (tRAS) и Command Rate — определяют тайминги памяти, обычно записываемые в виде последовательности tCL-tRCD-tRP-tRAS-Command Rate. К примеру, для модуля DDR400 (PC3200) тайминги могут быть следующими: 2-3-4-5-(1T).

Немного истории

Традиционно производители памяти внедряют новую архитектуру с периодичностью в 4-5 лет. Помимо архитектуры памяти, каждые год-два изменяется и техпроцесс производства чипов памяти.

Синхронная память SDRAM появилась в середине 1990-х годов. Именно тогда в массовое производство была внедрена синхронная память SDR SDRAM PC66, которая вскоре была заменена на память PC100, а затем и PC133.

В 2000 году на смену памяти SDR SDRAM пришла память DDR SDRAM, отличающаяся большей пропускной способностью при меньшем энергопотреблении.

Вслед за памятью DDR была внедрена память DDR2, которая в настоящий момент является наиболее распространенной. Первоначально существовала только память DDR2-400, на смену которой довольно быстро пришла память DDR2-533. Затем появилась память DDR2-667, DDR2-800 и даже DDR2-1066. А в будущем году нас ждет постепенный переход на память стандарта DDR3.

Итак, что представляет собой новый тип памяти и чем он кардинально отличается от памяти DDR2? Чтобы ответить на этот вопрос, нам прежде всего придется разобраться с тем, как вообще функционирует синхронная память и в чем отличие памяти SDR от DDR.

Отложенная операция cas

Для того чтобы избежать пропусков данных, в DDR2-памяти используются отложенные операции CAS. Суть заключается в том, что операции активации банка и команда на выбор столбца (CAS) следуют непосредственно друг за другом с разницей в один цикл. Это позволяет избежать конфликта команд, поскольку команда CAS уже не совпадает с командой активации банка.

Предлагаем ознакомиться  Главная> Популярный> Компьютерная и офисная техника >"оперативной памяти ddr3"6,544 результатов

Команда CAS поступает в буфер команд и хранится там требуемое количество циклов в зависимости от значения tRCD. После этого она считывается, но шина команд остается незанятой и может быть использована для команды активации очередного банка. В результате достигается непрерывный поток данных на шине и увеличивается пропускная способность памяти.

Хранение команды CAS в буфере эквивалентно введению дополнительной задержки (Additive Latency, AL), поэтому данный способ известен также как Additive Latency или как способ отложенного чтения (Posted CAS).

Проблема терминирования сигналов

Распространение любого сигнала вдоль шины неизбежно приводит к его частичному отражению от любых неоднородностей вдоль пути его распространения. Для того чтобы такого отражения сигнала не происходило, необходимо, во-первых, чтобы на пути распространения сигнала не было неоднородностей, а во-вторых, чтобы сам путь был бесконечным.

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

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

В случае памяти DDR2 используется принципиально иной метод терминирования сигналов, получивший название ODT (On-Die-Termination). В данном случае терминальные сопротивления устанавливаются непосредственно на самих модулях памяти, а для того, чтобы предотвратить поглощение сигнала в активном модуле памяти, используется технология отключения терминальных сопротивлений от активных модулей.

Пропускная способность

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

Предлагаем ознакомиться  Оперативная память | База знаний

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

К примеру, память DDR400, функционирующая на эффективной частоте 400 МГц, имеет пропускную способность 400 МГц x 8 байт = 3,2 Гбайт/с, а память DDR2-800, функционирующая на эффективной частоте 800 МГц, — 800 МГц x 8 байт = 6,4 Гбайт/с.

Кроме того, необходимо учесть, что синхронная память DDR и DDR2 может функционировать в двухканальном режиме и в этом случае максимальная пропускная способность удваивается.

Соотношения между таймингами памяти

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

В простейшем случае для чтения данных из памяти необходимо выполнить последовательность следующих операций:

  • активировать строку в банке памяти (команда ACTIVE);
  • подать команду чтения данных (команда READ);
  • считать данные, поступающие на внешнюю шину данных;
  • закрыть активированную строку (команда PRECHARGE);
  • активировать строку в банке памяти (команда ACTIVE).

Временной промежуток между активацией строки и командой чтения определяется как tRCD, а временной промежуток между командой чтения и появлением данных на шине — как tCL. Временной промежуток между началом считывания данных и закрытием активной строки (tRAS) зависит от длины передаваемого пакета, причем должно выполняться соотношение tRAS > tRCD tCL.

Минимальное значение tRAS должно быть больше суммы tRCD и tCL на столько, на сколько велика длительность третьей операции, определяемая длиной передаваемого пакета. В качестве примера рассмотрим память типа SDR с величинами задержек tCL = 2 и tRCD = 2 (tRAS > 4). При длине пакета BL = 2 необходимо затратить не менее 2 тактов для передачи всего пакета, поэтому минимальное значение tRAS должно быть равным 6.

Оцените статью
Техничка
Adblock detector