RAM (Random Access Memory)

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

Оперативная память (англ. Random Access Memory, RAM, память с произвольным доступом; ОЗУ (оперативное запоминающее устройство); комп. жарг. память, оперативка) — энергозависимая часть системы компьютерной памяти, в которой во время работы компьютера хранится выполняемый машинный код (программы), а также входные, выходные и промежуточные данные, обрабатываемые процессором[1].

История

В 1834 году Чарльз Бэббидж начал разработку аналитической машины. Одну из важных частей этой машины он называл «складом» (store), эта часть предназначалась для хранения промежуточных результатов вычислений. Информация в «складе» запоминалась в чисто механическом устройстве в виде поворотов валов и шестерней. ЭВМ первого поколения можно считать ещё полуэкспериментальными, поэтому в них использовалось множество разновидностей и конструкций запоминающих устройств, основанных на различных физических принципах:

В первых конфигурациях, в так называемых компьютерах, разработчики использовали реле, механические счетчики или линии задержки в роли основной памяти.
В качестве ОЗУ использовались также магнитные барабаны, обеспечивавшие достаточно малое для ранних компьютеров время доступа; также они использовались в качестве основной памяти для хранения программ и данных[2].

Второе поколение требовало более технологичных, дешёвых и быстродействующих ОЗУ. Наиболее распространённым видом ОЗУ в то время стала память на магнитных сердечниках.

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

В 1968 году Роберт Деннард изобрел динамическую память с произвольным доступом (DRAM). Примененные им технологии памяти на основе магнитных сердечников значительно увеличила в 1070-х плотность памяти и как следствие ее скорость работы[3].

Начиная с третьего поколения большинство электронных узлов компьютеров стали выполнять на микросхемах, в том числе и ОЗУ. Наибольшее распространение получили два вида ОЗУ:

  • динамическая память; информация сохраняется с помощью заряда конденсаторов;
  • статическая память; информация сохраняется с помощью триггеров.

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

Ячейка памяти

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

  • 1- хранение информации (высокий уровень напряжения)
  • 0 - логический сброс данных (низкий уровень напряжения).

Оперативное запоминающее устройство,

ОЗУ - Техническое устройство, реализующее функции оперативной памяти.

ОЗУ может изготавливаться как отдельный внешний модуль или располагаться на одном кристалле с процессором, например, в однокристальных ЭВМ или однокристальных микроконтроллерах.

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

DRAM

Экономичный вид памяти. Для хранения разряда (бита или трита) используется схема, состоящая из одного конденсатора и одного транзистора (в некоторых вариантах два конденсатора). Такой вид памяти, во-первых, дешевле (один конденсатор и один транзистор на 1 бит дешевле нескольких транзисторов триггера), и, во-вторых, занимает меньшую площадь на кристалле (там, где в SRAM размещается один триггер, хранящий 1 бит, можно разместить несколько конденсаторов и транзисторов для хранения нескольких бит). Но DRAM имеет и недостатки. Во-первых, работает медленнее, поскольку, если в SRAM изменение управляющего напряжения на входе триггера сразу очень быстро изменяет его состояние, то для того, чтобы изменить состояние конденсатора, его нужно зарядить или разрядить. Перезаряд конденсатора гораздо более длителен (в 10 и более раз), чем переключение триггера, даже если ёмкость конденсатора очень мала. Второй существенный недостаток — конденсаторы со временем разряжаются. Причём разряжаются они тем быстрее, чем меньше их электрическая ёмкость и больше ток утечки, в основном, утечка через ключ.

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

SRAM

ОЗУ, которое не надо регенерировать (обычно схемотехнически выполненное в виде массива триггеров), называют статической памятью с произвольным доступом или просто статической памятью. Достоинство этого вида памяти — скорость. Поскольку триггеры являются соединением нескольких логических вентилей, а время задержки на вентиль очень мало, то и переключение состояния триггера происходит очень быстро. Данный вид памяти не лишён недостатков. Во-первых, группа транзисторов, входящих в состав триггера, обходится дороже, чем ячейка динамической памяти, даже если они изготавливаются групповым методом миллионами на одной кремниевой подложке. Кроме того, группа транзисторов занимает гораздо больше площади на кристалле, чем ячейка динамической памяти, поскольку триггер состоит минимум из 2 вентилей (шести-восьми транзисторов), а ячейка динамической памяти — только из одного транзистора и одного конденсатора. Используется для организации сверхбыстродействующего ОЗУ, обмен информацией с которым критичен для производительности системы.

Различие SRAM и DRAM

По сравнению с DRAM быстродействие SRAM намного выше, но плотность ее гораздо ниже, а цена довольно высока. Более низкая плотность означает, что микросхемы SRAM имеют большие габариты, хотя их информационная емкость намного меньше. Большое число транзисторов и кластеризованное их размещение не только увеличивает габариты микросхем SRAM, но и значительно повышает стоимость технологического процесса по сравнению с аналогичными параметрами для микросхем DRAM. Например, емкость модуля DRAM может равняться 64 Мбайт или больше, в то время как емкость модуля SRAM приблизительно того же размера составляет только 2 Мбайт, причем их стоимость будет одинаковой. Таким образом, габариты SRAM в среднем в 30 раз превышают размеры DRAM, то же самое можно сказать и о стоимости. Все это не позволяет использовать память типа SRAM в качестве оперативной памяти в персональных компьютерах.

Несмотря на это разработчики все-таки применяют память типа SRAM для повышения эффективности ПК. Но во избежание значительного повышения стоимости устанавливается только небольшой объем высокоскоростной памяти SRAM, которая используется в качестве кэш-памяти. Кэш-память работает на тактовых частотах, близких или даже равных тактовым частотам процессора, причем обычно именно эта память непосредственно используется процессором при чтении и записи. Во время операций чтения данные в высокоскоростную кэш-память предварительно записываются из оперативной памяти с низким быстродействием, т.е. из DRAM. Еще недавно время доступа DRAM было не менее 60 нс (что соответствует тактовой частоте 16 МГц). Для преобразования времени доступа из наносекунд в мегагерцы используется следующая формула:

  • 1/наносекунды × 1000 = МГц.

Обратное вычисление осуществляется с помощью такой формулы:

  • 1/МГц × 1000 = наносекунды

Сегодня память может работать на частоте 1 ГГц и выше, однако до конца 1990-х годов память DRAM была ограничена быстродействием 16 нс (16 МГц). Когда процессор ПК работал на тактовой частоте 16 МГц и ниже, DRAM могла быть синхронизирована с системной платой и процессором, поэтому кэш был не нужен. Как только тактовая частота процессора поднялась выше 16 МГц, синхронизировать DRAM с процессором стало невозможно, и именно тогда разработчики начали использовать SRAM в персональных компьютерах. Это произошло в 1986 и 1987 годах, когда появились компьютеры с процессором 386, работающим на частотах 16 и 20 МГц. Именно в этих ПК впервые нашла применение так называемая кэш-память, т.е. высокоскоростной буфер, построенный на микросхемах SRAM, который непосредственно обменивается данными с процессором. Поскольку быстродействие кэша может быть сравнимо с процессорным, контроллер кэша может предугадывать потребности процессора в данных и предварительно загружать необходимые данные в высокоскоростную кэш-память. Тогда при выдаче процессором адреса памяти данные могут быть переданы из высокоскоростного кэша, а не из оперативной памяти, быстродействие которой намного ниже..

Тенденция развития

Сейчас в компьютерах используются модули памяти, которые называются DIMM (Dual-In-line-Memory-Module). Благодаря тому, что эти 168-контактные модули имеют разрядность данных 64 бита (а если модуль с четностью, то 72 бита) , их можно устанавливать в компьютер по одному. Память, которая используется в модулях DIMM называется синхронной (SDRAM). Основное преимущество синхронной памяти перед памятью FPM и EDO, которая использовалась ранее, заключается в том, что память SDRAM “умеет” выполнять операции чтения и записи последовательных данных за один такт системной шины. Память EDO или FPM требует для этого 2 или 3 такта.

Современные технологии RAM

SPD (Serial Presence Detect)

SPD - это небольшой чип, находящийся на модуле памяти и хранящий некоторые его параметры (рабочее напряжение, число банков, тип, емкость, время доступа и т. д.) . Информация записывается в микросхемы EEPROM, позволяющие запоминать 2048 бит. Первые 128 байт не могут быть перезаписаны и отводятся под некоторую специальную информацию производителя, а оставшееся место доступно пользователю и содержит данные модуля. На модулях "безымянного" производства, как правило, SPD отсутствует, хотя некоторые материнские платы требуют его наличия (например, платы на чипсете 440LX). Возможно, это сделано, чтобы исключить использование "левой" продукции или чтобы избавить пользователя от необходимости делать вручную настройку памяти в BIOS.

Virtual Channel Memory

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

Примечание

  1. SRAM-memory [Электронный ресурс] : Материал из Википедии — свободной энциклопедии: — Режим доступа: http://ru.bmstu.wiki/SRAM_(Static_Random_Access_Memory)
  2. Эволюция RAM - устройств [Электронный ресурс] : Материал из http://www.colocat.ru/: — Режим доступа: http://www.colocat.ru/texts/ram.html
  3. Random Access Memory [Электронный ресурс] : Материал из Википедии — свободной энциклопедии: — Режим доступа: https://en.wikipedia.org/wiki/Random-access_memory