Устройства оперативной памяти иногда называют запоминающими устройствами с произвольным доступом. Это означает, что обращение к данным, хранящимся в оперативной памяти, не зависит от порядка их расположения в ней. Когда говорят о памяти компьютера, обычно подразумевают оперативную память, прежде всего микросхемы памяти или модули, в которых хранятся активные программы и данные, используемые процессором. Однако иногда термин память относится также к внешним запоминающим устройствам, таким как диски и накопители на магнитной ленте.
Термин оперативная память часто обозначает не только микросхемы, которые составляют устройства памяти в системе, но включает и такие понятия, как логическое отображение и размещение. Логическое отображение — это способ представления адресов памяти на фактически установленных микросхемах. Размещение — это расположение информации (данных и команд) определенного типа по конкретным адресам памяти системы.
Новички часто путают оперативную память с памятью на диске, поскольку емкость устройств памяти обоих типов выражается в одинаковых единицах — мега- или гигабайтах. Попытаемся объяснить связь между оперативной памятью и памятью на диске с помощью следующей простой аналогии.
Представьте себе небольшой офис, в котором некий сотрудник обрабатывает информацию, хранящуюся в картотеке. В нашем примере шкаф с картотекой будет выполнять роль жесткого диска системы, где длительное время хранятся программы и данные. Рабочий стол будет представлять оперативную память системы, которую в текущий момент обрабатывает сотрудник, — его действия подобны работе процессора. Он имеет прямой доступ к любым документам, находящимся на столе. Однако, прежде чем конкретный документ окажется на столе, его необходимо отыскать в шкафу. Чем больше в офисе шкафов, тем больше документов можно в них хранить. Если рабочий стол достаточно большой, можно одновременно работать с несколькими документами.
Добавление к системе жесткого диска подобно установке еще одного шкафа для хранения документов в офисе — компьютер может постоянно хранить большее количество информации. Увеличение объема оперативной памяти в системе подобно установке большего рабочего стола — компьютер может работать с большим количеством программ и данных одновременно.
Впрочем, есть одно различие между хранением документов в офисе и файлов в компьютере: когда файл загружен в оперативную память, его копия все еще хранится на жестком диске. Обратите внимание: поскольку невозможно постоянно хранить файлы в оперативной памяти, все измененные после загрузки в память файлы должны быть вновь сохранены на жестком диске перед выключением компьютера. Если измененный файл не будет сохранен, то первоначальная копия файла на жестком диске останется неизменной.
Во время выполнения программы в оперативной памяти хранятся ее данные. Микросхемы оперативной памяти (RAM) иногда называют энергозависимой памятью: после выключения компьютера данные, хранимые в них, будут потеряны, если они предварительно не были сохранены на диске или другом устройстве внешней памяти. Чтобы избежать этого, некоторые приложения автоматически делают резервные копии данных.
Физически оперативная память в системе представляет собой набор микросхем или модулей, содержащих микросхемы, которые обычно подключаются к системной плате. Эти микросхемы или модули могут иметь различные характеристики и, чтобы функционировать правильно, должны быть совместимы с системой, в которую устанавливаются.
Хотя память значительно подешевела, модернизировать ее приходится намного чаще, чем несколько лет назад. В настоящее время новые типы памяти разрабатываются значительно быстрее, и вероятность того, что в новые компьютеры нельзя будет установить память устаревшего типа, как никогда велика. Поэтому при замене системной платы зачастую приходится заменять и память.
В связи с этим при выборе типа устанавливаемой памяти следует все хорошо обдумать и просчитать, чтобы минимизировать затраты на будущую модернизацию (или ремонт).
В современных компьютерах используются запоминающие устройства трех основных типов:
В памяти типа ROM (Read Only Memory), или ПЗУ (постоянное запоминающее устройство), данные можно только хранить, изменять их нельзя. Именно поэтому такая память используется только для чтения данных. ROM также часто называется энергонезависимой памятью, потому что любые данные, записанные в нее, сохраняются при выключении питания. Поэтому в ROM помещаются команды запуска персонального компьютера, т.е. программное обеспечение, которое загружает систему.
Заметьте, что ROM и оперативная память — не противоположные понятия. На самом деле ROM представляет собой часть оперативной памяти системы. Другими словами, часть адресного пространства оперативной памяти отводится для ROM. Это необходимо для хранения программного обеспечения, которое позволяет загрузить операционную систему.
Основной код BIOS содержится в микросхеме ROM на системной плате, но на платах адаптеров также имеются аналогичные микросхемы. Они содержат вспомогательные подпрограммы базовой системы ввода-вывода и драйверы, необходимые для конкретной платы, особенно для тех плат, которые должны быть активизированы на раннем этапе начальной загрузки, например видеоадаптер. Платы, не нуждающиеся в драйверах на раннем этапе начальной загрузки, обычно не имеют ROM, потому что их драйверы могут быть загружены с жесткого диска позже — в процессе начальной загрузки.
Динамическая оперативная память (Dynamic RAM — DRAM) используется в большинстве систем оперативной памяти современных персональных компьютеров. Основное преимущество памяти этого типа состоит в том, что ее ячейки упакованы очень плотно, т.е. в небольшую микросхему можно упаковать много битов, а значит, на их основе можно построить память большой емкости. Ячейки памяти в микросхеме DRAM — это крошечные конденсаторы, которые удерживают заряды. Именно так (наличием или отсутствием зарядов) и кодируются биты.
Проблемы, связанные с памятью этого типа, вызваны тем, что она динамическая, т.е. должна постоянно регенерироваться, так как в противном случае электрические заряды в конденсаторах памяти будут "стекать" и данные будут потеряны. Регенерация происходит, когда контроллер памяти системы берет крошечный перерыв и обращается ко всем строкам данных в микросхемах памяти. Большинство систем имеет контроллер памяти (обычно встраиваемый в набор микросхем системной платы), который настроен на соответствующую промышленным стандартам частоту регенерации, равную 15 мкс. Ко всем строкам данных обращение осуществляется по прохождении 128 специальных циклов регенерации. Это означает, что каждые 1,92 мс (128?15 мкс) прочитываются все строки в памяти для обеспечения регенерации данных.
Регенерация памяти, к сожалению, отнимает время у процессора: каждый цикл регенерации по длительности занимает несколько циклов центрального процессора. В старых компьютерах циклы регенерации могли занимать до 10% (или больше) процессорного времени, но в современных системах, работающих на частотах, равных сотням мегагерц, расходы на регенерацию составляют 1% (или меньше) процессорного времени. Некоторые системы позволяют изменить параметры регенерации с помощью программы установки параметров CMOS, но увеличение времени между циклами регенерации может привести к тому, что в некоторых ячейках памяти заряд "стечет", а это вызовет сбои памяти. В большинстве случаев надежнее придерживаться рекомендуемой или заданной по умолчанию частоты регенерации. Поскольку затраты на регенерацию в современных компьютерах составляют менее 1%, изменение частоты регенерации оказывает незначительное влияние на характеристики компьютера.
В устройствах DRAM для хранения одного бита используется только один транзистор и пара конденсаторов, поэтому они более вместительны, чем микросхемы других типов памяти. В настоящее время имеются микросхемы динамической оперативной памяти емкостью до 256 Мбит и больше. Это означает, что подобные микросхемы содержат 256 млн (и даже больше) транзисторов! А ведь Pentium II имеет только 7,5 млн транзисторов. Откуда такая разница? Дело в том, что в микросхеме памяти все транзисторы и конденсаторы размещаются последовательно, обычно в узлах квадратной решетки, в виде очень простых, периодически повторяющихся структур, в отличие от процессора, представляющего собой более сложную схему различных структур, не имеющую четкой организации. Сейчас разрабатываются микросхемы емкостью 256 Гбит; их производство планируется начать в 2001 или 2002 году. В таких микросхемах ширина строки будет равна 0,05 микрона.
Транзистор для каждого одноразрядного регистра DRAM используется для чтения состояния смежного конденсатора. Если конденсатор заряжен, в ячейке записана 1; если заряда нет — записан 0. Заряды в крошечных конденсаторах все время стекают, вот почему память должна постоянно регенерироваться. Даже мгновенное прерывание подачи питания или какой-нибудь сбой в циклах регенерации приведет к потере заряда в ячейке DRAM, а следовательно, и к потере данных.
Динамическая оперативная память используется в персональных компьютерах; поскольку она недорогая, то микросхемы могут быть плотно упакованы, а это означает, что запоминающее устройство большой емкости может занимать небольшое пространство. К сожалению, память этого типа не отличается высоким быстродействием, обычно она намного "медленнее" процессора. Поэтому существует множество различных типов организации DRAM, позволяющих улучшить эту характеристику.
Существует тип памяти, совершенно отличный от других, — статическая оперативная память (Static RAM — SRAM). Она названа так потому, что, в отличие от динамической оперативной памяти (DRAM), для сохранения ее содержимого не требуется периодической регенерации. Но это не единственное ее преимущество. SRAM имеет более высокое быстродействие, чем динамическая оперативная память, и может работать на той же частоте, что и современные процессоры.
Время доступа SRAM не более 2 нс; это означает, что такая память может работать синхронно с процессорами на частоте 500 МГц или выше. Однако для хранения каждого бита в конструкции SRAM используется кластер из шести транзисторов. Использование транзисторов без каких-либо конденсаторов означает, что нет необходимости в регенерации. (Ведь если нет никаких конденсаторов, то и заряды не теряются.) Пока подается питание, SRAM будет помнить то, что сохранено. Почему же тогда микросхемы SRAM не используются для всей системной памяти?
По сравнению с динамической оперативной памятью быстродействие SRAM намного выше, но плотность ее намного ниже, а цена довольно высокая. Более низкая плотность означает, что микросхемы SRAM имеют большие габариты, хотя их информационная емкость намного меньше. Большое число транзисторов и кластеризованное их размещение не только увеличивает габариты микросхем SRAM, но и значительно повышает стоимость технологического процесса по сравнению с аналогичными параметрами для микросхем DRAM. Например, емкость модуля DRAM может равняться 64 Мбайт или больше, в то время как емкость модуля SRAM приблизительно того же размера составляет только 2 Мбайт, причем их стоимость будет одинаковой. Таким образом, габариты SRAM в среднем в 30 раз превышают размер динамической оперативной памяти, то же самое можно сказать и о стоимости. Все это не позволяет использовать память типа SRAM в качестве оперативной памяти в персональных компьютерах.
Несмотря на это, разработчики все-таки применяют память типа SRAM для повышения эффективности PC. Но во избежание значительного увеличения стоимости устанавливается только небольшой объем высокоскоростной памяти SRAM, которая используется в качестве кэшпамяти. Кэш-память работает на тактовых частотах, близких или даже равных тактовым частотам процессора, причем обычно именно эта память непосредственно используется процессором при чтении и записи. Во время операций чтения данные в высокоскоростную кэш-память предварительно записываются из оперативной памяти с низким быстродействием, т.е. из DRAM.
Еще недавно время доступа динамической оперативной памяти было не менее 60 не (что соответствует тактовой частоте 16 МГц). Когда процессор персонального компьютера работал на тактовой частоте 16 МГц и ниже, DRAM могла быть синхронизирована с системной платой и процессором, поэтому кэш был не нужен. Однако, как только тактовая частота процессора поднялась выше 16 МГц, синхронизировать DRAM с процессором стало невозможно, и именно тогда разработчики начали использовать SRAM в персональных компьютерах. Это произошло в 1986 и 1987 годах, когда появились PC с процессором 386, работающим на частотах 16 и 20 МГц. Именно в этих персональных компьютерах впервые нашла применение так называемая кэш-память, т.е. высокоскоростной буфер, построенный на микросхемах SRAM, который непосредственно обменивается данными с процессором. Поскольку быстродействие кэша может быть сравнимо с быстродействием процессора, контроллер кэша может предугадывать потребности процессора в данных и предварительно загружать необходимые данные в высокоскоростную кэш-память. Тогда при выдаче процессором адреса памяти данные могут быть переданы из высокоскоростного кэша, а не из оперативной памяти, быстродействие которой намного ниже.
Эффективность кэш-памяти выражается коэффициентом совпадения, или коэффициентом успеха. Коэффициент совпадения равен отношению количества удачных обращений в кэш к общему количеству обращений. Попадание — это событие, состоящее в том, что необходимые процессору данные предварительно считываются в кэш из оперативной памяти; иначе говоря, в случае попадания процессор может считывать данные из кэш-памяти. Неудачным обращением в кэш считается такое, при котором контроллер кэша не предусмотрел потребности в данных, находящихся по указанному абсолютному адресу. В таком случае необходимые данные не были предварительно считаны в кэш-память, поэтому процессор должен отыскать их в более медленной оперативной памяти, а не в быстродействующем кэше. Когда процессор считывает данные из оперативной памяти, ему приходится какое-то время "ждать", поскольку тактовая частота оперативной памяти значительно ниже, чем процессора.
Если процессор работает на частоте 233 МГц, то продолжительность его цикла равна примерно 4 не, в то время как продолжительность цикла оперативной памяти может составлять 60 не, что соответствует тактовой частоте 16 МГц. Таким образом, каждый раз, когда процессор считывает данные из оперативной памяти, его работа замедляется. Это настолько ощутимо, что кажется, будто он работает на тактовой частоте 16 МГц! Замедление обусловлено состоянием ожидания. Если процессор находится в состоянии ожидания, то на протяжении всего цикла (такта) никакие операции не выполняются; процессор, по существу, ждет, пока необходимые данные поступят из более медленной оперативной памяти. Поэтому именно кэш-память позволяет сократить количество "простоев" и увеличить быстродействие компьютера в целом.
Чтобы минимизировать время ожидания при считывании процессором данных из медленной оперативной памяти, в современных персональных компьютерах обычно предусмотрены два типа кэш-памяти: кэш-память первого уровня (L1) и кэш-память второго уровня (L2). Кэшпамять первого уровня также называется встроенным, или внутренним кэшем; он непосредственно встроен в процессор и фактически является частью микросхемы процессора. Во всех процессорах 486 и выше кэш-память первого уровня интегрирована в микросхему процессора. Кэш-память второго уровня называется вторичным, или внешним кэшем; он устанавливается вне микросхемы процессора. Первоначально она устанавливалась на системной плате. (Так было во всех компьютерах на основе процессоров 386, 486 и Pentium.) Если кэш-память второго уровня установлена на системной плате, то она работает на ее частоте. В этом случае кэш-память второго уровня обычно находится рядом с разъемом процессора.
Для повышения эффективности в более поздних компьютерах на основе процессоров Pentium Pro, Pentium ПЛП и Athlon кэш-память второго уровня является частью процессора. Конечно же, он внешний по отношению к кристаллу центрального процессора, просто эта отдельная микросхема устанавливается внутри корпуса (картриджа) процессора. Поэтому на системных платах для процессоров Pentium Pro или Pentium II нет никакого кэша. В последних моделях процессоров PentiumIII и Athlon кэш-память второго уровня является частью микросхемы процессора (подобно кэш-памяти первого уровня) и работает на более высоких частотах (на частоте процессора, половинной или трети). В процессорах Itanium для увеличения производительности используется три уровня кэш-памяти.
Первоначально кэш-память проектировалась как асинхронная, т.е. не была синхронизирована с шиной процессора и могла работать на другой тактовой частоте. При внедрении набора микросхем системной логики 430FX в начале 1995 года был разработан новый тип синхронной кэш-памяти. Она работает синхронно с шиной процессора, что повышает ее быстродействие и эффективность. В то же время был добавлен режим pipeline burst mode (конвейерный монопольный режим). Он позволил сократить время ожидания за счет уменьшения количества состояний ожидания после первой передачи данных. Использование одного из этих режимов подразумевает наличие другого. Оба режима позволяют повысить производительность компьютера на 20%.
Контроллер кэш-памяти для современной системы содержится в микросхеме North Bridge набора микросхем системной логики в PC на основе Pentium и более простых или на плате процессора, как в случае с Pentium Pro, Pentium II/III и более новыми системами. Возможности контроллера кэш-памяти предопределяют эффективность и возможности кэш-памяти. Важная особенность состоит в том, что большинство контроллеров кэш-памяти имеют ограничение на объем кэшируемой памяти. Часто этот предел может быть очень низок, как в случае набора микросхем системной логики 430TX для компьютеров на основе Pentium. Этот набор микросхем может кэшировать данные только первых 64 Мбайт оперативной памяти системы. Если установлен больший объем памяти, работа компьютера значительно замедляется, потому что все данные вне первых 64 Мбайт никогда не попадут в кэш и при обращении к ним будут всегда необходимы все состояния ожидания, определяемые более медленной динамической оперативной памятью. Снижение эффективности зависит от программного обеспечения и от адресов, по которым хранятся данные в памяти. Например, 32-разрядные операционные системы типа Windows 9х и Windows NT загружаются сверху вниз, так что если установлена оперативная память емкостью 96 Мбайт, то и операционная система, и прикладные программы будут загружаться в верхние 32 Мбайта, которые не кэшируются. Это значительно замедлит работу компьютера в целом. В данном случае можно удалить дополнительную память, чтобы уменьшить емкость до 64 Мбайт. Другими словами, неблагоразумно устанавливать большую емкость памяти, чем позволяет кэшировать набор микросхем системной логики.
Быстродействие процессора выражается в мегагерцах (МГц), а быстродействие запоминающего устройства и его эффективность — в наносекундах (не). Наносекунда — это одна миллиардная доля секунды, т.е. очень короткий промежуток времени. Заметьте, что скорость света в вакууме равна 299792 километра в секунду. За одну миллиардную долю секунды, световой луч проходит расстояние, равное всего лишь 29,98 сантиметра, т.е. меньше длины обычной линейки!
Зависимость между тактовой частотой в мегагерцах и продолжительностью цикла в наносекундах --------------------------------------------------------------------------- Тактовая Цикл, нс Тактовая Цикл, нс Тактовая Цикл, нс частота частота частота --------------------------------------------------------------------------- 4,77 210 133 7,5 500 2,0 6 167 150 6,7 533 1,9 8 125 166 6,0 550 1,8 10 100 180 5,6 600 1,7 12 83 200 5,0 650 1,5 16 63 225 4,4 667 1,5 20 50 233 4,3 700 1,4 25 40 250 4,0 733 1,4 33 30 266 3,8 750 1,3 40 25 300 3,3 800 1,3 50 20 333 3,0 850 1,2 60 17 350 2,9 866 1,2 66 15 366 2,7 900 1,1 75 13 400 2,5 933 1,1 80 13 433 2,3 950 1,1 100 10 450 2,2 1000 1,0 120 8,3 466 2,1 ---------------------------------------------------------------------------
Как можно заметить, при увеличении тактовой частоты продолжительность цикла уменьшается, а быстродействие, соответствующее 60 нс памяти DRAM, используемой в обычном компьютере, мизерно по сравнению с процессором, работающим на частоте 400 МГц и выше. Заметьте, что до недавнего времени большинство микросхем DRAM, используемых в персональных компьютерах, имели время доступа 60 нс, которое равнозначно тактовой частоте 16,7 МГц! Поскольку эта медленная память устанавливается в системы, в которых процессор работает на частоте 300 МГц и выше, возникает несоответствие между эффективностью оперативной памяти и процессора. В современные системы устанавливается память PC 100 или PC133, которая работает на частоте 100 или 133 МГц соответственно.
Поскольку транзисторы для каждого бита в микросхеме памяти размещены в узлах решетки, наиболее рационально адресовать каждый транзистор, используя номер столбца и строки. Сначала выбирается строка, затем столбец адреса и, наконец, пересылаются данные. Начальная установка строки и столбца адреса занимает определенное время, обычно называемое временем задержки или ожиданием. Время доступа для памяти равно времени задержки для выборки столбца и строки адреса плюс продолжительность цикла. Например, память со временем доступа 60 нс обычно имеет время задержки 25 нс (чтобы выбрать строку и столбец адреса) и продолжительность цикла 35 нс (чтобы фактически передать данные). Таким образом, истинная тактовая частота памяти со временем задержки 60 нс составляла бы порядка 28,5 МГц (35 не = 28,5 МГц). Даже в этом случае для одной-единственной передачи данных требуется 60 нс, так что последовательные передачи данных могли бы осуществляться только на частоте 16,7 МГц из-за дополнительного времени ожидания.
Что же происходит, когда процессор, работающий на частоте 300 МГц, многократно считывает байты данных из памяти, работающей на частоте 16 МГц? Возникает огромная серия состояний ожидания! Состояние ожидания — это дополнительный "пустой" цикл, в котором процессор должен ожидать поступления данных. Если длительность цикла памяти равна 60 нс (16 МГц), а длительность цикла процессора — Знс (300 МГц), то процессор должен находиться в состоянии ожидания приблизительно 19 циклов — до 20-го цикла, т.е. до поступления данных. Таким образом, состояния ожидания замедляют работу процессора настолько, что он вполне может функционировать на частоте 16 МГц.
Некоторые разработчики стараются уменьшить этот разрыв в быстродействии процессоров и системной памяти.
Сравнение быстродействия системной платы и оперативной памяти --------------------------------------------------------------------------- Системная Процессор, Тип памяти Быстродействие памяти, Дата,гг. плата,МГц МГц МГц --------------------------------------------------------------------------- 5-66 5-200 FPM/EDO 5-16 1981-1996 (Fast Page Mode/Extended Data Out) 66-100 200-600 PC66 SDRAM (Synchronous DRAM) 66 1997-2000 100 500+ PC100 SDRAM 100 1998-2000 133 600+ PC133 SDRAM/РС800 RDRAM(Rambus) 133/800 1999-2000 ---------------------------------------------------------------------------
Как видно из таблицы, один тип памяти использовался на протяжении 15 лет, в то время как процессоры за это же время совершили гигантский рывок в производительности — от 5 до 200 МГц. В настоящее время этот недостаток начинает исправлять память RDRAM (Rambus DRAM).
Быстрый постраничный режим (FPM) динамической оперативной памяти Чтобы сократить время ожидания, стандартная память DRAM разбивается на страницы. Обычно для доступа к данным в памяти требуется выбрать строку и столбец адреса, что занимает некоторое время. Разбивка на страницы обеспечивает более быстрый доступ ко всем данным в пределах некоторой строки памяти, т.е. если изменяется не номер строки, а только номер столбца. Такой режим доступа к данным в памяти называется (быстрым) постраничным режимом (Fast Page Mode), а сама память — памятью Fast Page Mode. Другие вариации постраничного режима называются Static Column или Nibble Mode.
Страничная организация памяти — простая схема повышения эффективности памяти, в соответствии с которой память разбивается на страницы длиной от 512 байт до нескольких килобайтов. Электронная схема пролистывания позволяет при обращении к ячейкам памяти в пределах страницы уменьшить количество состояний ожидания. Если нужная ячейка памяти находится вне текущей страницы, то добавляется одно или больше состояний ожидания, так как система выбирает новую страницу.
Чтобы увеличить скорость доступа к памяти, были разработаны другие схемы доступа к динамической оперативной памяти. Одним из наиболее существенных изменений было внедрение пакетного (burst) режима доступа в процессоре 486 и более поздних. Преимущества пакетного режима доступа проявляются потому, что в большинстве случаев доступ к памяти является последовательным. После установки строки и столбца адреса в пакетном режиме можно обращаться к следующим трем смежным адресам без дополнительных состояний ожидания. Однако доступ в пакетном режиме обычно ограничивается четырьмя операциями.
Чтобы объяснить это, обратимся к схеме синхронизации по количеству циклов для каждой операции доступа. Схема синхронизации типичного доступа в пакетном режиме для стандартной динамической оперативной памяти выглядит следующим образом: x-y-y-y, где x — время выполнения первой операции доступа (продолжительность цикла плюс время ожидания), а у — число циклов, необходимых для выполнения каждой последующей операции доступа.
Схема синхронизации в пакетном режиме для стандартной DRAM со временем доступа 60 нс обычно выглядит так: 5-3-3-3. Это означает, что первая операция доступа занимает пять циклов на системной шине с частотой 66 МГц, что приблизительно равно 75 нс (5*15 нс; 15 нс — длительность одного цикла), в то время как последующие операции занимают по три цикла каждая (3*15 нс = 45 нс). Заметьте, что без разбивки на страницы схема доступа к памяти выглядела бы как 5-5-5-5, потому что для каждой передачи данных запоминающему устройству потребовалось бы одно и то же время ожидания. DRAM, поддерживающая разбивку на страницы и пакетный режим, называется памятью с быстрым постраничным режимом (Fast Page Memory — FPM). Этим подчеркивается, что для доступа к данным в памяти без смены страницы требуется меньшее количество циклов ожидания. В большинстве компьютеров 486 и более новых используется память FPM, а в более старые компьютеры устанавливали обычную динамическую оперативную память.
Другой метод ускорения памяти FPM называется чередованием. Этот метод использует совместно два отдельных банка памяти, распределяя четные и нечетные байты между этими банками. Когда происходит обращение к одному банку, в другом банке выбираются строка и столбец адреса. К моменту окончания выборки данных в первом банке во втором закончатся циклы ожидания и он будет готов к выборке данных. Когда данные выбираются из второго банка, в первом идет процесс выборки строки и столбца адреса для следующей операции доступа. Это совмещение (перекрытие по времени) операций доступа в двух банках приводит к уменьшению времени ожидания и обеспечивает более быстрый поиск данных. Единственная проблема состоит в том, что для использования этого метода необходимо установить идентичные пары банков, а при этом удваивается количество микросхем SIMM или DIMM. Чередование широко использовалось в 32-разрядных запоминающих устройствах для процессора 486, но малоэффективно в случае 64-разрядной памяти в процессоре Pentium. Чтобы использовать чередование памяти в Pentium, необходимо установить 128-разрядную память, т.е. четыре микросхемы SIMM с 72-мя контактами или две микросхемы DIMM.
Начиная с 1995 года в компьютерах на основе Pentium используется новый тип оперативной памяти — EDO (Extended Data Out). Это усовершенствованный тип памяти FPM; его иногда называют Hyper Page Mode. Память типа EDO была разработана и запатентована фирмой Micron Technology (позже лицензии приобрели многие другие изготовители). Память EDO собирается из специально изготовленных микросхем, которые учитывают перекрытие синхронизации между очередными операциями доступа. Как следует из названия — Extended Data Out, драйверы вывода данных на микросхеме, в отличие от FPM, не выключаются, когда контроллер памяти удаляет столбец адреса в начале следующего цикла. Это позволяет совместить (по времени) следующий цикл с предыдущим, экономя приблизительно 10 нс в каждом цикле.
Таким образом, контроллер памяти EDO может начать выполнение новой команды выборки столбца адреса, а данные будут считываться по текущему адресу. Это почти идентично использованию различных банков для чередования памяти, но, в отличие от чередования, не нужно одновременно устанавливать два идентичных банка памяти в системе.
Для оперативной памяти EDO схема синхронизации в пакетном режиме имеет вид 5-2-2-2, а не 5-3-3-3, как для стандартной памяти Fast Page Mode. Это означает, что четыре передачи данных из памяти EDO занимают 11 полных системных циклов (сравните с 14-ю полными циклами для памяти FPM). Благодаря этому при проведении специальных тестов быстродействие увеличилось на 22%, однако в фактических испытаниях памяти EDO на эталонных тестах быстродействие всей системы обычно увеличивается примерно на 5%. Хотя такое увеличение может показаться совсем небольшим, главное преимущество EDO состоит в том, что в запоминающих устройствах подобного типа используются те же самые микросхемы динамической оперативной памяти, что и в FPM. И стоимость таких запоминающих устройств равна стоимости памяти FPM. Но при этом EDO обладает более высокой эффективностью, чем FPM.
Для того чтобы использовать память EDO, набор микросхем системной логики на системной плате должен поддерживать ее. Большинство подобных наборов микросхем, начиная с набора 430FX (Triton), выпущенного фирмой Intel в 1995 году, поддерживают EDO. Поскольку микросхемы памяти EDO стоили столько же, сколько и стандартные микросхемы, фирма Intel, а вслед за ней и остальные производители стали поддерживать EDO во всех наборах микросхем системной логики.
Оперативная память EDO идеальна для систем с быстродействием шины до 66 МГц. Такие шины в персональных компьютерах использовались до 1997 года включительно; однако в течение 1998 года память EDO была заменена более новой и быстрой памятью SDRAM (Synchronous DRAM — синхронная DRAM). Эта новая архитектура стала новым стандартом оперативной памяти персонального компьютера.
Память Burst Extended-Data-Out Dynamic Random Access Memory (Burst EDO, BEDO DRAM) является разновидностью памяти EDO. Это в основном та же память, что и EDO, но с еще более быстрой передачей данных. К сожалению, только один набор микросхем системной логики (Intel 440FX Natoma) поддерживал ее, и она была быстро заменена памятью SDRAM, которая поддерживается в подавляющем большинстве наборов микросхем. Память BEDO в настоящее время не используется и не производится.
Это тип динамической оперативной памяти DRAM, работа которой синхронизируется с шиной памяти. SDRAM (Synchronous DRAM) передает информацию в высокоскоростных пакетах, использующих высокоскоростной синхронизированный интерфейс. SDRAM позволяет избежать использования большинства циклов ожидания, необходимых при работе асинхронной DRAM, поскольку сигналы, по которым работает память такого типа, синхронизированы с тактовым генератором системной платы.
Как и для оперативной памяти EDO, для памяти этого типа требуется поддержка набором микросхем системной логики. Начиная с наборов 430VX и 430TX, выпущенных в 1997 году, все наборы микросхем системной логики фирмы Intel полностью поддерживают SDRAM; это самый популярный тип памяти для новых систем. SDRAM хорошо подходит для архитектуры Pentium ПЛП и новых высокоэффективных системных плат.
Эффективность SDRAM значительно выше по сравнению с оперативной памятью FPM или EDO. Поскольку SDRAM — это тип динамической оперативной памяти, ее начальное время ожидания такое же, как у памяти FPM или EDO, но общее время цикла намного короче. Схема синхронизации пакетного доступа SDRAM выглядит так: 5-1-1-1, т.е. четыре операции чтения завершаются всего лишь за восемь циклов системной шины (сравните с 11-ю циклами для EDO и 14-ю для FPM).
Кроме этого, память SDRAM может работать на частоте 100 МГц (10 не) и выше, что стало новым стандартом для системного быстродействия начиная с 1998 года. Фактически все новые персональные компьютеры, проданные в 1998 году, имеют память типа SDRAM. Последние обновления SDRAM поддерживают рабочую частоту 133 МГц (согласно спецификации PC133).
Память SDRAM поставляется в виде модулей DIMM и, как правило, ее быстродействие оценивается в мегагерцах, а не в наносекундах.
Быстродействие памяти SDRAM ------------------------------------------------------ Длительность цикла, нс Частота, МГц Спецификация ------------------------------------------------------ 15 66 РС66 10 100 РС66 8 125 РС100 7,5 133 РС133 ------------------------------------------------------
Хотя быстродействие SDRAM существенно выше, чем у памяти предшествующих типов, стоит она не намного дороже, поэтому ей и удалось так быстро завоевать твердые позиции на рынке PC.
Радикально новый тип памяти RDRAM, или Rambus DRAM, используется в высокопроизводительных персональных компьютерах с 1999 года. Такая память непосредственно поддерживается в наборах микросхем системной логики. Аналогичный тип памяти уже использовался в игровых приставках — в популярной модели Nintendo 64.
Обычные типы памяти (FPM/RDO и SDRAM) иногда называют системами с широким каналом. Ширина канала памяти равна ширине шины данных процессора (в системах Pentium — 64 бит). Максимальная производительность памяти SDRAM в исполнении DIMM составляет 100*8 (частота * количество передаваемых данных за один такт), или 800 Мбайт/с.
Микросхемы RDRAM увеличивают пропускную способность памяти: в них предусмотрена "удвоенная" (16-разрядная) шина передачи данных, частота увеличена до 800 МГц, а пропускная способность равна 1,6 Гбайт/с. Для увеличения производительности можно использовать двух- и четырехканальные RDRAM, которые позволяют увеличить скорость передачи данных до 3,2 или 6,4 Гбайт/с соответственно.
Один канал памяти Rambus может поддерживать до 32 отдельных устройств RDRAM (микросхем RDRAM), которые устанавливаются в модули RIMM (Rambus Inline Memory Modules). Вся работа с памятью организуется между контроллером памяти и отдельным (а не всеми) устройством. Каждые 10 не (100 МГц) од