Принцип работы памяти компьютера

Обновлено: 07.07.2024

SDRAM: Определение

Микросхемы SDRAM: Физическая организация и принцип работы

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

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

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

В современных микросхемах SDRAM схема обращения к ячейкам памяти выглядит аналогично. Далее, в связи с обсуждением задержек при доступе в память (таймингов памяти), мы рассмотрим ее более подробно.

Микросхемы SDRAM: Логическая организация

Модули SDRAM: Организация

Модули памяти: Микросхема SPD

Тайминги памяти

Схема доступа к данным микросхемы SDRAM

1. Активизация строки

Повторная активизация какой-либо другой строки того же банка не может быть осуществлена до тех пор, пока предыдущая строка этого банка остается открытой (т.к. усилитель уровня, содержащий буфер данных размером в одну строку банка и описанный в разделе «Микросхемы SDRAM: Физическая организация и принцип работы», является общим для всех строк данного банка микросхемы SDRAM). Таким образом, минимальный промежуток времени между активизацией двух различных строк одного и того же банка определяется минимальным временем цикла строки (Row Cycle Time, tRC).

2. Чтение/запись данных

Возвращаясь к чтению данных, заметим, что существует две разновидности команды чтения. Первая из них является «обычным» чтением (READ), вторая называется «чтением с автоматической подзарядкой» (Read with Auto-Precharge, «RD+AP»). Последняя отличается тем, что после завершения пакетной передачи данных по шине данных микросхемы автоматически будет подана команда подзарядки строки (PRECHARGE), тогда как в первом случае выбранная строка микросхемы памяти останется «открытой» для осуществления дальнейших операций.

3. Подзарядка строки

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

В заключение этой части, посвященной задержкам при доступе к данным, рассмотрим основные соотношения между важнейшими параметрами таймингов на примере более простых операций чтения данных. Как мы рассмотрели выше, в самом простейшем и самом общем случае — для пакетного считывания заданного количества данных (2, 4 или 8 элементов) необходимо осуществить следующие операции:

1) активизировать строку в банке памяти с помощью команды ACTIVATE;

2) подать команду чтения данных READ;

3) считать данные, поступающие на внешнюю шину данных микросхемы;

4) закрыть строку с помощью команды подзарядки строки PRECHARGE (как вариант, это делается автоматически, если на втором шаге использовать команду «RD+AP»).

Наконец, промежуток времени между четвертой операцией и последующим повтором первой операции цикла составляет «время подзарядки строки» (tRP).

В то же время, минимальному времени активности строки (от подачи команды ACTIVATE до подачи команды PRECHARGE, tRAS), по его определению, как раз отвечает промежуток времени между началом первой и началом четвертой операции. Отсюда вытекает первое важное соотношение между таймингами памяти:

Егор

Егор Морозов | 4 Декабря, 2017 - 13:44

wide_pic.jpg

Одной из первых моих статей на этом сайте был гайд по выбору ОЗУ (почитать его можно тут). Он в основном практический: что выбрать, что можно ставить и что нельзя, ну и различные полезности. Однако он не затронул, пожалуй, самую интересную часть — а как память вообще работает, и как ее тонко настроить (и разогнать). Если посмотреть, то по количеству параметров ОЗУ является чуть ли не самым сложным элементом ПК: посудите сами, для процессора вы в лучшем случае можете менять частоту тактового генератора (FSB, да и к тому же она уже лет 15 как 100 МГц и редко кто ее трогает), множитель (его как раз и меняют) и напряжение (ибо для работы на более высоких или низких частотах всегда можно подкорректировать напряжение для стабильности работы и, в некоторых случаях, меньшего энергопотребления), ну и количество рабочих ядер (хотя мало кто будет их трогать — разве что многопоточность отключают, ибо в некоторых задачах она может дать отрицательный прирост). Все остальные параметры уже индивидуальны и есть не у всех процессоров, так что зачастую их и не трогают. Что касается видеокарт, то тут параметров еще меньше — всего-то частоты GPU, памяти и напряжение GPU. Но если мы посмотрим на ОЗУ, то увидим море важных параметров: задержки, частоты, транзакции в секунду и т.д. — давайте разберемся, что это и как связано с производительностью и стабильностью работы памяти.

Снимок.PNG

Идем дальше — сочетание букв DDR SDRAM (Double Data Rate Synchronous Dynamic Random Access Memory — синхронная динамическая память с произвольным доступом и удвоенной скоростью передачи данных). Здесь нам интересна только концовка — «и удвоенной скоростью передачи данных». Смысл тут в том, что в старом типе памяти SDRAM данные считывались только при переходе из стостояния «0» в состояние «1» (по фронту сигнала). В DDR же решили считывать данные и при переходе из состояния «1» в состояние «0» (по спаду сигнала), то есть реальная частота памяти удвоилась. Однако с аппаратной точки зрения частота памяти остается той же, поэтому, например, в том же CPU-Z частота памяти будет вдвое ниже, чем в диспетчере задач:

Как я уже объяснил выше — пугаться этого не стоит, это особенность DDR.

Далее — что означает четверка в DDR4? В общем-то только одно — что это 4ое поколение памяти DDR. Отличия между всеми типами можно посмотреть на Вики, не вижу особого смысла это переписывать, но скажу, что основной прирост идет за счет роста частоты памяти.

Теперь посмотрим всю конструкцию — DDR4-3200. Очень многие после 3200 подписывают МГц — в общем-то, это не совсем правильно. На самом деле тут имеется ввиду МТ/с, или мегатранзакции в секунду. Что это за величина? Это величина, которая показывает, сколько операций в секунду может совершаться с памятью. С учетом того, что ширина шины DDR4 составляет 64 бита (или 8 байт), можно получить ее скорость в МБ/с — для этого нужно 3200 МТ/с * 8 Б = 25600 МБ/с. И тут следует сказать, что эта цифра зачастую уже пишется на самой памяти — в моем случае это PC4-17000. Вы скажете — 17000 не равно 25600. Все верно, в моем случае память разогнана, если взять ее реальную скорость в 2133 МТ/с то мы как раз получим 17000 МБ/с. Ну а PC4 в данном случае — эквивалент DDR4. То есть, как вы видите, DDR4-2133 и PC4-17000 — эквивалентные записи, поэтому для понимания того, какая у вас память, достаточно знать только одну из них.

Основная проблема при работе с ОЗУ — это задержки (latency) при доступе к ячейкам памяти. Логично, что чем меньше задержка — тем быстрее будет идти чтение/запись — тем меньше будет простаивать процессор в ожидании ответа от ОЗУ — тем быстрее будет быстродействие. Посмотрим, какие бывают задержки и за что они отвечают.

kak_uznat_tajming_operativnoj_pamyati_3.jpg

Разумеется, каждая ячейка имеет свой «адрес»: грубо говоря, это ее номер в строке и столбце таких же ячеек в двухмерном массиве. В свою очередь, некоторое количество ячеек объединяется вместе для более быстрого доступа к ним — такая группа называется банком. Теперь посмотрим, что происходит, когда контроллер памяти хочет что-то записать в определенную ячейку. Для начала он обращается в банку с адресом строки — этот сигнал называется RAS (Row Address Strobe). Соответственно, время обращения (задержка) называется RAS Latency — но этот параметр малоинформативен и очень редко пишется. Зато важен параметр RAS to CAS Delay — это процесс поиска нужной строки в банке памяти. Вот этот параметр уже нужен, и его задержка пишется второй — то есть в моем случае он составляет 18 тактов (один такт — это одна отправка данных по шине памяти). Великолепно, всего за 18 тактов мы нашли нужную строку. Но ведь нужен еще и столбец — за него отвечает еще один сигнал, CAS, и его задержка пишется первой — в моем случае это 16 тактов. Казалось бы — все, мы получили точное расположение нашей ячейки, зачем еще две цифры?

Не все так просто — зачастую бывает, что контроллеру нужно обратиться к другой ячейке этой же строки. Но для этого он должен сначала закрыть предыдущую сессию запроса (нельзя одновременно обращаться к различным ячейкам одной строки) — а на это опять же уходит время, и эта задержка называется RAS Precharge — она указывает на время закрытия и повторной активации строки. Ее пишут третьей, в моем случае это опять же 18 тактов. Последний параметр — Cycle Time — отвечает за время, необходимое для полного открытия и закрытия всего банка, иными словами — это быстродействие всей памяти. Он пишется четвертым, и у меня он 36 тактов.

Остался последний параметр — CR (Command Rate), он может быть 1 или 2. Отвечает этот параметр за время, которое должно пройти между активацией памяти и ее способности к работе — это 1 или 2 такта. Разумеется, 1 такт лучше, но тут уж как повезет с памятью.

Разумеется, такой параметр как такт не очень нагляден — интереснее узнать результат в наносекундах. Для этого узнаем, сколько времени занимает один такт — это 1 / 1200 МГц = 0.83 нс (берем, разумеется, реальную частоту памяти). Cycle Time у памяти 36 тактов, то есть задержка получается 0.83 нс * 36 = 30 нс. Тогда почему AIDA64 показывает результат около 48 нс? Все просто — сам процессор хоть и небольшой, но из-за крайне малых промежутков времени (миллиардные доли секунды) приходится учитывать время на проход сигнала внутри него, что и добавляет дополнительные 18 нс.

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

Как работает оперативная память и зачем она нужна - иконка статьи

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

Ну, а сейчас, приступаем.

  • Вводная
  • Общее
  • Как же работает оперативная память?
  • Подробнее
  • Зачем нужна эта самая оперативная память?
  • Компоновка модулей
  • Температура, лаг, энергозависимость и вообще "на пальцах"
  • Послесловие

Вводная

Перед каждым пользователем рано или поздно (или никогда) встает вопрос модернизации своего верного «железного коня». Некоторые сразу меняют «голову» - процессор, другие - колдуют над видеокартой, однако, самый простой и дешевый способ – это увеличение объема оперативной памяти.

Почему самый простой?

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

Итак, чтобы узнать чуть больше о таком простом и одновременно эффективном инструменте апгрейда, как оперативная память (далее ОП), для этого обратимся к родимой теории.

Общее

ОЗУ (оперативное запоминающее устройство), оно же RAM (" Random Access Memory " - память с произвольным доступом), представляет собой область временного хранения данных, при помощи которой обеспечивается функционирование программного обеспечения. Физически, оперативная память в системе представляет собой набор микросхем или модулей (содержащих микросхемы), которые обычно подключаются к системной плате.

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

Примечание.
Совсем новички часто путают оперативную память с памятью жесткого диска ( ПЗУ - постоянное запоминающее устройство), чего делать не нужно, т.к. это совершенно разные виды памяти. Оперативная память (по типу является динамической - Dynamic RAM ), в отличие от постоянной - энергозависима, т.е. для хранения данных ей необходима электроэнергия, и при ее отключении (выключение компьютера) данные удаляются. Пример энергонезависимой памяти ПЗУ - флэш-память, в которой электричество используется лишь для записи и чтения, в то время как для самого хранения данных источник питания не нужен.

По своей структуре память напоминает пчелиные соты, т.е. состоит из ячеек, каждая из которых предназначена для хранения мёда определенного объема данных, как правило, одного или четырех бит. Каждая ячейка оной имеет свой уникальный «домашний» адрес, который делится на два компонента – адрес горизонтальной строки ( Row ) и вертикального столбца ( Column ).

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

Для передачи на микросхему памяти адреса строки служит некий сигнал, который зовется RAS ( Row Address Strobe ), а для адреса столбца — сигнал CAS ( Column Address Strobe ).

С этим разобрались, идем дальше. Затронем еще один немаловажный вопрос:

Как же работает оперативная память?

Работа оперативной памяти непосредственно связана с работой процессора и внешних устройств компьютера, так как именно ей последние «доверяют» свою информацию. Таким образом, данные сперва попадают с жесткого диска (или другого носителя) в саму ОЗУ и уже затем обрабатываются центральным процессором (смотрите изображение).

Как работает оперативная память - Схема - взаимодействие компонентов ПК

Обмен данными между процессором и памятью может происходить напрямую, но чаще все же бывает с участием кэш-памяти.

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

Оперативной памятью управляет контроллер, который находится в чипсете материнской платы, а точнее в той его части, которая называется North Bridge (северный мост) - он обеспечивает подключение CPU (процессора) к узлам, использующим высокопроизводительные шины: ОЗУ , графический контроллер (смотрите изображение).

Как работает оперативная память - Управление оперативной памятью

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

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

Сейчас Вы поймете, о чем это я.

Подробнее

Дело в том, что современные устройства оперативной памяти являются достаточно объемными (привет двухтысячным, когда хватало и 32 Mб), чтобы в ней можно было размещать данные от нескольких одновременно работающих задач. Процессор также может одновременно обрабатывать несколько задач. Это обстоятельство способствовало развитию так называемой системы динамического распределения памяти, когда под каждую обрабатываемую процессором задачу отводятся динамические (переменные по своей величине и местоположению) разделы оперативной памяти.

Динамический характер работы позволяет распоряжаться имеющейся памятью более экономно, своевременно «изымая» лишние участки памяти у одних задач и «добавляя» дополнительные участки – другим (в зависимости от их важности, объема обрабатываемой информации, срочности выполнения и т.п.). За «правильное» динамическое распределение памяти в ПК отвечает операционная система, тогда как за «правильное» использование памяти, отвечает прикладное программное обеспечение.

Совершенно очевидно, что прикладные программы должны иметь способность работать под управлением операционной системы, в противном случае последняя не сможет выделить такой программе оперативную память или она не сможет «правильно» работать в пределах отведенной памяти. Именно поэтому не всегда удается запустить под современной операционкой, ранее написанные программы, которые работали под управлением устаревших систем, например под ранними версиями Windows (98 например).

Ещё (для общего развития) следует знать, что поддержка памяти зависит от разрядности системы, например, операционная система Windows 7, разрядностью 64 бита, поддерживает объем памяти до 192 Гбайт (младший 32 -битный собрат "видит" не больше 4 Гбайт). Однако, если Вам и этого мало, пожалуйста, 128 -разрядная Windows 8 заявляет поддержку поистине колоссальных объемов – я даже не осмеливаюсь озвучить эту цифру. Чуть подробнее про разрядность мы писали тут.

Что это такое разобрались.

Дальше, на очереди, как и гласил заголовок, у нас не менее интересный вопрос:

Зачем нужна эта самая оперативная память?

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

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

Данные, записанные в оперативной памяти, передаются в CPU (он же не раз упомянутый процессор, он же Central Processing Unit ), там обрабатываются и записываются обратно. И так постоянно: дали команду процессору взять биты по таким-то адресам (как то: обработатьих и вернуть на место или записать на новое) – он так и сделал (смотрите изображение).

Как работает оперативная память - процессор и оперативная память - взаимодействие

Все это хорошо до тех пор, пока ячеек памяти ( 1 ) хватает. А если нет?

Тогда в работу вступает файл подкачки ( 2 ). Этот файл расположен на жестком диске и туда записывается все, что не влезает в ячейки оперативной памяти. Поскольку быстродействие винта значительно ниже ОЗУ , то работа файла подкачки сильно замедляет работу системы. Кроме этого, это снижает долговечность самого жесткого диска. Но это уже совсем другая история.

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

Однако, кэш-память малоэффективна при работе с большими массивами данных (видео, звук, графика, архивы), ибо такие файлы просто туда не помещаются, поэтому все время приходится обращаться к оперативной памяти, или к HDD (у которого также имеется свой кэш).

Компоновка модулей

Кстати, давайте рассмотрим из чего же состоит (из каких элементов) сам модуль.

Так как практически все модули памяти, состоят из одних и тех же конструктивных элементов, мы для наглядности возьмем стандарт SD-RAM (для настольных компьютеров). На изображении специально приведено разное конструктивное исполнение оных (чтобы Вы знали не только «шаблонное» исполнение модуля, но и весьма «экзотическое»).

Итак, модули стандарта SD-RAM ( 1 ): DDR ( 1.1 ); DDR2 ( 1.2 ).

Как работает оперативная память - компоновка модулей памяти

  1. Чипы (микросхемы) памяти
  2. SPD ( Serial Presence Detect ) – микросхема энергонезависимой памяти, в которую записаны базовые настройки любого модуля. Во время старта системы BIOS материнской платы считывает информацию, отображенную в SPD , и выставляет соответствующие тайминги и частоту работы ОЗУ ;
  3. «Ключ» - специальная прорезь платы, по которой можно определить тип модуля. Механически препятствует неверной установке плашек в слоты, предназначенные для оперативной памяти;
  4. SMD -компоненты модулей (резисторы, конденсаторы). Обеспечивают электрическую развязку сигнальных цепей и управление питанием чипов;
  5. Cтикеры производителя - указывают стандарт памяти, штатную частоту работы и базовые тайминги;
  6. РСВ – печатная плата. На ней распаиваются остальные компоненты модуля. От качества зачастую зависит результат разгона: на разных платах одинаковые чипы могут вести себя по-разному.

Теперь обощая, упрощая.

Температура, лаг, энергозависимость и вообще "на пальцах"

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

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

Файл подкачки, который является "продолжением" этой памяти, логичным образом, хранит в себе данные на жестком диске, что, в общем случае, небезопасно.

Информация в ячейках со временем "теряется", причем, чем выше температура, тем быстрее это происходит.

Чтобы избежать потери сохранённых данных, они должны регулярно обновляться, чтобы восстановить заряд (если он есть) до первоначального уровня. Этот процесс обновления включает чтение каждого бита, а потом запись его обратно. Это происходит не целиком, а блоками. В процессе такого «обновления» память занята и не может выполнять обычные операции, такие как запись или хранение битов. В общем случае из-за этого обновления память тормозит каждые 7,8 мкс.

Послесловие

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

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

Белов Андрей (Sonikelf) Заметки Сис.Админа [Sonikelf's Project's] Космодамианская наб., 32-34 Россия, Москва (916) 174-8226

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

Строго говоря, существует две разновидности памяти – постоянная и временная. И временная память компьютера – это и есть оперативная память плюс кэш-память CPU, о которой мы уже рассказывали в отдельной статье.

оперативная память - ОЗУ

Функции ОЗУ

Информация, которую содержит временная память, как можно догадаться, не сохраняется постоянно и после выключения питания компьютера бесследно исчезает, если, разумеется, пользователь не успел сохранить ее в постоянной, то есть, на жестком диске или каком-либо сменном носителе. Однако временная память имеет одно большое преимущество перед постоянной – это высокое быстродействие. В частности, оперативная память работает в несколько сот тысяч (!) раз быстрее, чем жесткий диск. Именно поэтому во временной памяти хранятся динамично меняющиеся данные и программы, которые запускаются в течение сессии работы операционной системы.

Оперативная память (которую также иногда называют ОЗУ, что означает «оперативное запоминающее устройство») является самым большим временным хранилищем данных в компьютере. По сравнению с кэш-памятью ОЗУ обладает гораздо большим объемом, но в то же время, и меньшим быстродействием. Однако быстродействие ОЗУ, тем не менее, вполне достаточно для выполнения текущих задач прикладных программ и операционной системы.

Принцип работы оперативной памяти

В настоящее время микросхемы ОЗУ изготавливаются на основе технологии динамической памяти (DRAM, или Dynamic Random Access Memory). Динамическая память, в отличие от статической, которая используется в кэш-памяти, имеет более простое устройство, и, соответственно ее цена на единицу объема гораздо ниже. Для хранения одной единицы информации (одного бита) в DRAM используется всего лишь один транзистор и один конденсатор.

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

Максимальный объем доступной оперативной памяти, которую можно установить в системе, определяется разрядностью шины адреса процессора. С появлением 32-разрядных процессоров этот объем был равен 4 ГБ. Современные 64-разрядные процессоры способны поддерживать адресное пространство ОЗУ в 16 ТБ. Это цифра представляется сейчас совершенно фантастической, но ведь когда-то и цифра в 4 ГБ для ОЗУ казалась абсолютно невероятной, а сегодня 32-разрядные системы уже уперлись в этот потолок, ограничивающий их возможности.

Как и в случае процессора, скорость работы ОЗУ во многом определяется ее тактовой частотой. Тактовая частота современных микросхем памяти типа DDR3 в среднем составляет примерно 1600 МГц.

Физически оперативная память представляет собой длинную и невысокую плату, к которой припаяны непосредственно микросхемы памяти. Эта плата вставляется в специальные слоты на материнской плате. В настоящее время наиболее распространены модули памяти форм-фактора DIMM (Dual In-line Memory Module или двухсторонний модуль памяти).

История развития микросхем

В эпоху господства компьютеров семейства XT/AT господствовали микросхемы памяти форм-фактора DIP. Эта память представляла собой отдельную микросхему, которую нужно было вставлять в горизонтальном положении в специальный разъем на материнской плате. Оперативная память формата DIP, однако, имела несколько существенных недостатков. Во-первых, микросхема не очень крепко держалась в своем гнезде, и поэтому часть ее контактов могла не действовать, что приводило к ошибкам памяти. Кроме того, подобные микросхемы имели небольшую емкость и неэффективно использовали свободное пространство материнской платы.

Недостатки технологии DIP побудили конструкторов к разработке модулей памяти форм-фактора SIMM (Single-in-line Memory Module). Первые SIMM появились еще в системах AT. В отличие от DIP модули SIMM, как и современные DIMM, представляли собой длинные модульные платы, к которым были в один ряд прикреплены микросхемы памяти, и которые можно было вставлять в специальный разъем на материнской плате в вертикальном положении.

Модули типа SIMM стали выходить из употребления уже в системах на базе первого Pentium. Вместо них конструкторами был разработан модуль DIMM. Как можно догадаться из названия («двухсторонний модуль памяти»), этот модуль имеет два ряда контактов с обеих сторон, в то время, как в SIMM фактически был всего один ряд контактов.

Помимо этого, модуль DIMM отличается технологией изготовления самих микросхем устанавливаемых на нем. Если до появления DIMM использовались микросхемы типа EDO или FPM, то в DIMM используется более новая технология Synchronous DRAM. Кроме того, модули DIMM имеют встроенную микросхему контроля четности памяти.

Модуль DIMM первого поколения, в отличие от SIMM, имел 168 контактов, а также специальный ключ в разъеме, исключающий неправильную установку модуля.

Второе поколение DIMM, основанное на технологии DDR SDRAM, имело уже 184 контакта. Следующие поколения – современные DDR2 и DDR3 могут похвастаться наличием 240 контактов.

Технология Double Data Rate Synchronous DRAM

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

Модули ОЗУ типа DDR SDRAM были разработаны в начале 2000-х гг. и работали на тактовой частоте в 266 МГц. Первые модули DDR SDRAM появились в системах на базе AMD Athlon, а потом и на Pentium 4. По сравнению с предшественниками, микросхема DDR SDRAM позволила удвоить скорость считывания данных на одной и той же тактовой частоте, то есть скорость работы DDR SDRAM на частоте 100 МГц была эквивалентна работе простых микросхем Synchronous DRAM на частоте в 200 МГц. Удвоение скорости достигалось в DDR SDRAM за счет усовершенствования методики передачи сигнала. В преемниках технологии DDR SDRAM, технологиях DDR2 и DDR3 объем обрабатываемой за такт информации еще более увеличился.

Принципы работы современных микросхем памяти.

Память Rambus

Также стоит рассказать немного об одной интересной технологии ОЗУ, которая наделала в свое время много шума, однако так и не стала массовой. Речь идет о модулях памяти типа RIMM (Rambus in-line memory module), которые были разработаны компанией Rambus совместно с Intel в конце 90-х гг.

В основу модулей памяти RIMM Rambus положила технологию памяти, которая до этого использовалась в некоторых видеокартах. Технология RIMM до появления DIMM и DDR SDRAM казалась многообещающей и позиционировалась Rambus как замена всем старым форматам памяти. В частности, модули памяти Rambus RIMM в несколько раз превосходили своих конкурентов, предлагая пользователем скорость передачи данных в 1600 МБ/с при тактовой частоте в 400 МГц.

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

Поэтому на сегодняшний день ОЗУ, основанное на модулях памяти форм-фактора RIMM, можно встретить лишь в некоторых серверах, а не в персональных компьютерах.

Заключение

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

Читайте также: