Оперативная память


Оперативная память




Михаил Тычков aka Hard



Доброго времени суток.

Введение

Слышали
ли Вы когда-либо слово "мозги" по отношению к компьютеру?
Наверно да. Так вот это есть не что иное, как оперативная память.
В ней во время работы компа хранятся программы и данные. Оперативная
память часто рассматривается как временное хранилище, так как все
что в ней есть, сохраняется до тех пор, пока есть питание. Иногда
этот тип памяти называют еще запоминающим устройством с произвольным
доступом т. к. обращение к данным не зависит от порядка их расположения
в памяти.

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

Существует несколько типов запоминающих устройств:

1. ROM (Read Only Memory) - постоянное запоминающее устройство.

2. DRAM (Dynamic Random Access Memory) - динамическое запоминающее
устройство с произвольным порядком выборки.

3. SRAM (Static RAM) - статическая оперативная память.

Но
сегодня мы поговорим только о DRAM. В этих устройствах для хранения
одного бита используется один транзистор и пара конденсаторов. Так
что в линейке 256 Mb применяется более 256 000 000 транзисторов. Круто!
Транзистор каждого регистра используется для чтения состояния смежного
конденсатора. Конденсатор заряжен - значит в ячейке записана 1, нет
- значит 0. Все просто. Но есть серьезный геморрой: заряды эти постепенно
с конденсаторов стекают и память должна постоянно регенерироваться.
Если хотя бы на долю секунды питание прекратиться или заглючит система
регенерации - все, капут. Все, что было в мозгах Вашего компа будет
безвозвратно утеряно L.

Если быстродействие процессора выражается в мегагерцах, то быстродействие
и эффективность мозгов в наносекундах. Немного цифр: наносекунда -
это 1/1 000 000 000 секунды. За одну наносекунду луч света (в темном
царстве) проходит расстояние всего 29.98 сантиметра. При увеличении
тактовой частоты продолжительность цикла уменьшается.

тактовая
частота в МГц
продолжительность
цикла в нс
60
15
100
10
133
7.5
166
6
233
4.2

Таблица
1. Зависимость между тактовой частотой и продолжительностью цикла.

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

Что бы сократить время ожидания, стандартная память DRAM разбивается
на страницы. Такой способ обеспечивает наиболее быстрый доступ ко
всем данным в пределах данной строки памяти, то есть если не изменяется
номер строки, а изменяется только номер столбца. Эта штука называется
Fast Page Mode, для незнающих английский перевожу - быстрый постраничный
режим. Есть и другие варианты постраничного режима: Static Column
и Nibble Mode (возьмите-ка словарь и поищите перевод сами). Что бы
еще увеличить скорость доступа была придумана такая фигня, как пакетный
(burst) режим доступа начиная с 486 "камня". Доступ в этом
клиническом случае является последовательным. Есть и еще один метод
ускорения памяти FPM. Называется он расслоение. Здесь используется
два отдельных банка памяти. В них распределяются четные и нечетные
байты. Когда происходит обращение к одному банку, в другом выбираются
строка и столбец. И наоборот. При этом происходит сокращение времени
на ожидание, ведь постоянно из одного банка что-то передается, а в
другом что-то ищется. Правда и тут не без греха. Эта схема хороша
для 32хразрядных запоминающих устройств 486х процессоров, а вот для
"пней" мало подходит т. к. они используют 64хразрядную память.
Устанавливать "линейки" памяти в обоих случаях надо обязательно
парно.

Начиная с 1995 года появился новый тип памяти - EDO (Extended Data
Out). В принципе это усовершенствование FPM. Разработала сей чудный
режим фирма Micron Technology. Память EDO учитывает перекрытие синхронизации
между поочередными операциями доступа. В отличие от FPM в EDO драйверы
ввода данных не выключаются, когда контроллер памяти удаляет столбец
адреса в начале следующего цикла.

А теперь, что бы сравнить два режима работы надо уяснить себе один
параметр. Называется он схема синхронизации. Возьмем пакетный режим
памяти со временем 60 нс. Схема синхронизации будет выглядеть так
- 5-3-3-3, где первая цифра означает количество циклов для первой
операции доступа, а остальные операции занимают по три цикла каждая.
Кстати, без разбивки на страницы схема выглядела бы так: 5-5-5-5.
Так вот, если FPM имеет схему синхронизации 5-3-3-3, то у EDO она
выглядит так - 5-2-2-2. Результат налицо. Ведь в EDO четыре передачи
данных занимают 11 циклов, тогда как у FPM - 14. Надо заметить, что
EDO хорош для систем с быстродействием шины не выше 66 МГц.

Но на этом прогресс не заканчивается. Продолжением EDO стал стандарт
Burst EDO или BEDO DRAM (Burst Extended Data Out Dynamic Random Access
Memory). В принципе BEDO мало, чем отличается от EDO. Разве что скорость
передачи данных стала выше. Но этот тип "мозгов" поддерживал
только один набор системной логики Intel 440FX Natoma.

И, наконец, мы подходим ко дню сегодняшнему. На смену BEDO пришел
новый тип памяти SDRAM (Synchronous DRAM). Синхронной она потому называется,
что работа ее синхронизируется с шиной памяти. SDRAM передает информацию
в высокоскоростных пакетах, использующих синхронизирующий интерфейс.
При работе этого типа памяти устраняется необходимость в большинстве
циклов ожидания, ведь сигналы, по которым работает память, синхронизированы
с тактовым генератором системной платы. Эффективность SDRAM значительно
выше, чем EDO или BEDO. Схема синхронизации выглядит так: 5-1-1-1
(т. е. четыре операции проходят всего за 8 циклов). Кроме всего прочего,
SDRAM может работать на частоте 100 МГц и выше.

Но и на SDRAM эволюция оперативной памяти не заканчивается. Не так
давно на рынке появился RDRAM (Rambus DRAM). Чипы этого типа памяти
увеличивают пропускную способность. В них предусмотрена удвоенная
16тиразрядная шина передачи данных, а частота увеличена до 800 МГц.
Максимальная пропускная способность достигает 1.6 Гб/сек. Специально
для этой памяти были внесены изменения в протокол работы шины:

1. предусмотрены независимые схемы управления

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

"Линейки"
RDRAM устанавливаются в модули RIMM (Rambus Inline Memory Modules),
который надо заметить, не совместим с DIMM (для SDRAM) хотя и похож
на него. Контроллер памяти RDRAM с единственным каналом Rambus позволяет
установить не более трех модулей. Надо заметить, что сама фирма Rambus
большой лентяй и микросхемы RDRAM не производит - это делают другие
компании, по лицензии конечно.

И, наконец, мы подошли к последнему типу оперативной памяти - DDR
SDRAM (Double Data Rate), то бишь двойная скорость передачи данных.
Удвоение скорости достигается не за счет увеличения тактовой частоты,
а за счет передачи данных два раза за один цикл. Первый раз - в начале
цикла, второй - в конце.

Вот, пожалуй, и все на сегодня. Надо сказать, что многие темы я не
затронул. В стороне остались такие виды памяти, как SRAM, ROM. По
этому назовем этот труд первой частью повествования.

С наилучшими пожеланиями.

читать еще по теме