- Системный кэш: что это, для чего используется и как изменить его размер в Windows?
- Для чего нужен кэш, и насколько целесообразно его увеличение?
- Как увеличить системный кэш в Windows 7 или в другой системе?
- Параметры файла подкачки
- Параметры системного кэша в системном реестре
- Настройки кэша в веб-обозревателях
- Очистка кэша
- Системная память windows что это
- Системная память
- Технологии памяти
- Постоянные запоминающие устройства (Read-Only Memory — ROM)
- Память с произвольным доступом (Random Access Memory — RAM)
- Статическое RAM (Static RAM — SRAM)
- Динамические RAM (Dynamic RAM — DRAM)
- Быстродействие памяти и временная диаграмма работы
- Контроллер памяти
- Обращение к памяти и время обращения
- Асинхронные и синхронные DRAM
- Шина памяти
- Скорость DRAM и временная диаграмма
- Показатели скорости DRAM
- Смешивание скоростей DRAM
- Скорость шины памяти и требуемая скорость DRAM
- Временная диаграмма системы и состояния ожидания
- Скорость памяти и системный кэш
- Пакетный режим
- Временная диаграмма и технологии памяти
- Параметры временной диаграммы
- Интеллектуальный первый цикл
- Расслоение
- Технологии микросхем DRAM
- Обычные микросхемы DRAM
- Микросхемы Fast Page Mode (FPM) DRAM
- Микросхемы Extended Data Out (EDO) DRAM
- Микросхемы Burst Extended Data Out (BEDO) DRAM
- Микросхемы Synchronous DRAM (SDRAM)
- Микросхемы Double Data Rate SDRAM (DDR SDRAM)
- Микросхемы Direct Rambus DRAM (DRDRAM)
- Микросхемы Synchronous-Link DRAM (SLDRAM)
- Микросхемы Video RAM (VRAM)
- Сравнение временных диаграмм для разных технологий
Системный кэш: что это, для чего используется и как изменить его размер в Windows?
Большинство пользователей компьютеров слышали о понятии системного кэша, но только далеко не все четко себе представляют, что это такое и для чего нужно. А многие, до конца не разобравшись, какая роль отводится этому компоненту в операционной системе, сразу пытаются производить с ним действия, касающиеся изменения размера. Насколько целесообразно производить изменение установленных по умолчанию параметров — рассмотрим далее.
Для чего нужен кэш, и насколько целесообразно его увеличение?
Начнем с того, что есть несколько видов кэша. Системный кэш, как уже понятно, используется под нужд Windows, а кэш программ предназначен для корректного функционирования приложений. Чаще всего с понятием кэша пользователи сталкиваются при работе с интернет-браузерами. Но что это такое и для чего нужно? Кэш, вне зависимости от типа, является своеобразным хранилищем временных файлов, за счет использования которых увеличивается скорость загрузки программы или открытие тех же страниц в Интернете. То есть пользователь имеет дело с неким резервируемым на жестком диске пространством, которое используется операционной системой или отдельно взятым приложением. Как увеличить системный кэш или кэш программ, пока не рассматриваем. Для начала давайте определимся, стоит ли это вообще делать? С одной стороны, нет ничего плохого в том, чтобы зарезервировать для хранения временных файлов побольше места на диске. Так думает большинство рядовых пользователей. Но на самом деле кэш можно увеличивать только до определенной степени, поскольку установка слишком большого размера приведет к тому, что системе при выполнении какой-то операции придется перебрать слишком много объектов для загрузки, пока она найдет необходимый. Соответственно, и время запуска программ существенно снизится. Кроме того, следует обратить внимание, что кэш резервируется на жестком диске, а скорость обращения к нему может существенно снижаться, например при возникновении ошибок, фрагментации файлов и т. д.
Как увеличить системный кэш в Windows 7 или в другой системе?
Теперь перейдем непосредственно к изменению размера резервируемого пространства. Для начала рассмотрим системный кэш Windows 7.
Для автоматического увеличения его размера необходимо использовать меню свойств компьютера с переходом к дополнительным настройкам. В параметрах быстродействия на вкладке «Дополнительно» необходимо отметить пункт оптимизации работы фоновых служб и кэша. Считается, что именно таким способом можно несколько снизить нагрузку на оперативную память и ускорить запуск программ.
Параметры файла подкачки
Иногда наряду с изменением размера кэша в сторону увеличения некоторые специалисты рекомендуют произвести дополнительные действия с так называемым файлом подкачки, который отвечает за работу и использование виртуальной памяти – такого же резервируемого объема на жестком диске, но используемого для выгрузки программных компонентов в случае нехватки оперативной памяти. Как и в случае с системным кэшем, нужно быть предельно осторожным. При малом объеме ОЗУ файл подкачки действительно можно немного увеличить, установив для него значение, которое в 1,5-2 раза превышает определяемое или рекомендуемое системой по умолчанию. Но и тут следует помнить, что при установке слишком большого объема можно добиться обратного эффекта, когда программы в приоритете будут производить обращение не к оперативной, а к виртуальной памяти. Повторимся: скорость доступа к винчестеру ниже, чем к планкам ОЗУ. Из-за этого мы получаем торможение программ при запуске или в процессе работы.
Негласно считается, что при установленных объемах оперативной памяти на уровне 8 Гб и более файл подкачки можно отключить вовсе, что никаким образом не скажется на работоспособности системы в отрицательную сторону. Наоборот, иногда можно добиться повышения производительности.
Параметры системного кэша в системном реестре
Параметры виртуальной памяти или кэша можно поменять и в системном реестре. Что касается стандартного автоматизированного увеличения системного кэша Windows 10, его лучше производить как раз именно в этом редакторе (regedit). Здесь нужно использовать ветку HKLM и через раздел SYSTEM и параметры текущего контроля перейти к папке MemoryManagement.
Здесь нас интересуют два параметра: DisablePagingExecutive и LargeSystemCache, которым могут быть присвоены значения либо нуля (отключение), либо единицы (включение). Первый ключ фактически дублирует отключение виртуальной памяти, а второй увеличивает системный кэш (система будет использовать не 8 Мб, установленных по умолчанию, а всю память, за исключением последних 4 Мб).
Настройки кэша в веб-обозревателях
В браузерах тоже имеются настройки, относящиеся к кэшу. Соответственно, резервируемый объем можно изменить. Для этого используются соответствующие настройки. Правда, в зависимости от разработчика самого обозревателя они могут находиться в совершенно разных разделах.
Например, в старой версии «Оперы» опции выставляются в настройках истории. В новой модификации браузера следует использовать свойства ярлыка, а в пути к исполняемому файлу в поле типа объекта дописать сочетание —disk-cache-size=Объем и нужный размер кэша в килобайтах (например, для 1 Гб это будет 1073741824 Кб).
Очистка кэша
С изменением размера кэша вроде бы все понятно. В завершение остается добавить, что производить очистку кэша рекомендуется если не постоянно, то хотя бы периодически, поскольку накопление временных файлов может существенно замедлять работу и системы, и программ. Производить эти действия в Windows можно путем обычной очистки системного диска, в браузерах – очисткой истории посещений, кэша и файлов Cookies.
Более удобным является использование всевозможных программ-оптимизаторов, в которых необходимо просто задействовать соответствующие модули оптимизации системы и очистки конфиденциальности в разделе выполнения проверки и устранения проблем в один клик.
Системная память windows что это
Для реализации функции хранения информации в компьютере используются следующие основные типы памяти: кэш память, ПЗУ, оперативная память (ОЗУ), долговременная (внешняя) память. Первые три типа памяти образуют внутреннюю (системную) память компьютера. Основными характеристиками любого типа памяти являются объем, время доступа и плотность записи информации.
Кэш-память является элементом микропроцессора. Физически кэш-память основана на микросхемах статической памяти SRAM (Static Random Access Memory). Для создания ячейки статической памяти используется от 4 до 8 транзисторов, которые в совокупности образуют триггер.
Постоянное запоминающее устройство (ПЗУ) — энергонезависимая память, используемая только для чтения. Данный вид памяти используется для хранения только такой информации, которая обычно не меняется в ходе эксплуатации компьютера. Типичным примером использования ПЗУ является хранение в нем базового программного обеспечения, используемого при загрузке компьютера (BIOS). Микросхемы ПЗУ располагаются на материнской плате.
Оперативное запоминающее устройство (ОЗУ) — энергозависимая память, применяемая для временного хранения команд и данных, необходимых процессору для выполнения текущих операций.
Наименьшей частицей памяти является бит, в котором хранится либо 0, либо 1. Отдельные биты объединяются в ячейки, каждая из которых имеет свой адрес, поэтому процессор при необходимости может обратиться к любой ячейке за одну операцию. Минимальной адресуемой ячейкой оперативной памяти является байт. Для выбора нужной ячейки используется ее адрес, передаваемый по адресной шине. Адресация байтов начинается с нуля.
Несмотря на то, что минимальной адресуемой ячейкой оперативной памяти является байт, физически по шине передаются не отдельные байты, а машинные слова. Размер машинного слова зависит от разрядности процессора. То есть размер машинного слова определяется количеством битов, к которым процессор имеет одновременный доступ. Например, для 16-разрядного процессора размер машинного слова будет равен 2 байтам. Адрес машинного слова равен адресу младшего байта, входящего в состав это слова.
Физически ОЗУ строится на микросхемах динамической памяти DRAM (Dynamic Random Access Memory). В динамической памяти ячейки построены на основе областей с накоплением зарядов (конденсаторов), занимающих гораздо меньшую площадь, чем триггеры, и практически не потребляющих энергии при хранении. При записи бита в такую ячейку в ней формируется электрический заряд, сохраняющийся в течение 2-4 миллисекунд. Но для сохранения заряда ячейки необходимо постоянно регенерировать (перезаписывать) ее содержимое. В связи с этим скорость доступа к ячейкам ОЗУ ниже, чем к статической памяти. Для создания ячейки динамической памяти достаточно всего одного транзистора и одного конденсатора, поэтому она дешевле статической памяти и имеет большую плотность упаковки.
Оперативная память изготавливается в виде небольших печатных плат с рядами контактов, на которых размещаются интегральные схемы памяти (модули памяти, рисунок 1).
Рисунок 1 — Схема состава микропроцессора
Модули памяти различаются по размеру и количеству контактов (в зависимости от типа используемой памяти), а также по быстродействию и объему. Объемы оперативной памяти современных компьютеров могут измеряться несколькими гигабайтами (в среднем от 1 до 4 Гбайт).
Системная память
Системная память — это хранилище, в котором РС хранит текущие программы и используемые данные. Термин память (memory) является очень широким понятием, так как может относиться к множеству устройств для хранения информации. Однако обычно память подразумевает основную (оперативную) системную память, в которой находятся команды программы и обрабатываемые этими командами данные. С другой стороны, слово память (storage), точнее, запоминающее устройство, может относиться и к накопителю на жестком диске. Стандартное название основной памяти — память с произвольным доступом (Random Access Memory — RAM). Независимо от того, сколько памяти имеет РС, всегда кажется, что ее не хватает. Если раньше РС имели 1-2 МБ памяти, то сейчас минимальная емкость памяти составляет 64 МБ, а для сложных приложений требуется память емкостью 256 МБ. Системная память является важнейшим компонентом РС; она соединяется с процессором, кэшем, материнской платой и чипсетом.
Память играет важнейшую роль в следующих аспектах компьютерной системы:
- Производительность: Емкость и тип имеющейся системной памяти оказывает сильное влияние на производительность всей системы. Память даже важнее процессора, так как при недостаточной памяти процессор может работать вдвое ниже своих потенциальных возможностей. Об этом часто забывают.
- Поддержка приложений: Новые программы требуют больше памяти, чем старые. Наличие большей памяти позволит выполнять больше приложений.
- Надежность и устойчивость: Плохая память является основным источником возникающих в системе проблем. Наличие высококачественной памяти обеспечивает надежную работу РС.
- Способность к модернизации: Имеется много типов памяти, причем некоторые универсальнее других. Правильный выбор памяти позволит использовать ее даже после обновления материнской платы.
Далее приведен материал по системной памяти, включая принципы работы, используемые технологии и конструктивное оформление. Рассмотрено также, какие типы памяти применяются в различных РС.
Технологии памяти
В этом разделе обсуждаются основные типы памяти, используемой в РС, и их различия.
Постоянные запоминающие устройства (Read-Only Memory — ROM)
Это один из основных типов памяти в РС. ROM — это память, из которой можно только считывать в отличие от памяти RAM, допускающей считывание и запись. Имеются две основные причины применения ROM в РС:
- Энергонезависимость: Хранимые в ROM значения находятся там всегда независимо от того, включено питание или выключено. ROM можно вынуть из РС, продержать вне РС любое время, а затем вставить и данные останутся в памяти. Энергонезависимым является и жесткий диск, но память RAM оказывается энергозависимой.
- Безопасность: Тот факт, что содержание ROM нельзя изменить, обеспечивает безопасность от случайного или намеренного изменения содержания. Например, ROM нельзя «заразить» вирусами.
ROM чаще всего применяется для хранения системных программ, которые должны быть всегда доступны РС. Наглядным примером служит программа базовой системы ввода-вывода (Basic Input/Output System — BIOS), часто называемая системным ROM-BIOS. При включении РС может использовать BIOS для загрузки системы.
Несмотря на то, что содержание ROM считается неизменным, иногда полезно иметь возможность все же изменить его. Имеется несколько разновидностей ROM, содержание которых при определенных обстоятельствах можно изменить. Далее приведены различные типы ROM и возможности изменения их содержания:
- ROM: Обычное ROM кодируется аппаратно в самом кремнии и его содержание изменить нельзя. По существу, такие ROM похожи на компакт-диски с программным обеспечением.
- Программируемое ROM (Programmable ROM — PROM): Такие ROM можно однократно программировать (записывать) с помощью специального оборудования. Иногда процесс программирования такой памяти называется «выжиганием» (burning), так как он похож на «выжигание» лазерным лучом в рекордере CD-ROM. После программирование содержание можно считывать любое число раз.
- Стираемое программируемое ROM (Erasable Programmable ROM — EPROM): Это такое ROM, которое можно стирать и репрограммировать. На корпусе микросхемы имеется кварцевое стекло, через которое с помощью ультрафиолетового света содержание можно стереть, а затем репрограммировать микросхему. Эта технология напоминает повторно используемые («записываемые») компакт-диски CD-RW.
- Электрически стираемое программируемое ROM (Electrically Erasable Programmable ROM — EEPROM): Содержание таких микросхем можно производить программно. Это наиболее гибкий вариант ROM, который часто применяется для хранения программ BIOS. Название flash BIOS подразумевает репрограммирование BIOS EEPROM специальной программой. Программирование (запись) производится довольно редко, например раз в год, и, в основном, EEPROM выполняет операции считывания.
Примечание: Название RAM (Random Access Memory) подразумевает произвольный доступ. Может показаться, что в ROM произвольный доступ невозможен. На самом деле ячейки ROM можно считывать в любом порядке, т.е. ROM также является памятью с произвольным доступом.
Обычно ROM примерно вдвое медленнее по сравнению с RAM и это является причиной организации в компьютере теневого BIOS (shadow BIOS). В этом случае при запуске РС программа BIOS копируется в более быструю RAM и используется оттуда, что повышает производительность РС.
Память с произвольным доступом (Random Access Memory — RAM)
Для хранения программ и используемых ими данных применяется быстродействующая память с произвольным доступом RAM, которая одинаково быстро выполняет операции считывания и записи. В отличие от ROM эта память является энергозависимой, так как при выключении питания ее содержание теряется. Имеется много типов RAM, включая статические RAM (Static RAM — SRAM) и разнообразные динамические RAM (Dynamic RAM — DRAM).
Статическое RAM (Static RAM — SRAM)
Статическое RAM хранит данные без внешней регенерации (refresh) до тех пор, пока на микросхему подается питание. В то же время, динамическое RAM необходимо регенерировать много раз в секунду, чтобы хранимые данные не исчезли. Запоминающий элемент SRAM состоит из 6 транзисторов, образующих статический триггер. SRAM применяется в РС в тех ситуациях, когда их достоинства превалируют над DRAM:
- Простота: SRAM не требуют внешней схемы регенерации для хранения данных.
- Скорость: SRAM быстрее DRAM.
С другой стороны, SRAM имеют следующие недостатки по сравнению с DRAM:
- Стоимость: SRAM в несколько раз дороже DRAM (в расчете на байт).
- Емкость: Емкость микросхем SRAM намного меньше емкости микросхем DRAM (поэтому их стоимость и выше).
С точки зрения производительности SRAM превосходят DRAM и целесообразнее применять именно их. К сожалению, SRAM емкостью 32 МБ оказывается слишком большим и дорогим, поэтому в качестве системной памяти используются исключительно DRAM. Однако SRAM применяются в кэшах первого и второго уровня, которые должны иметь очень высокое быстродействие при относительно небольшой емкости.
Поскольку микросхема SRAM состоит из миллионов идентичных ячеек, производить их намного проще процессоров с неповторяющейся структурой. Именно поэтому микросхемы RAM дешевле процессоров.
Динамические RAM (Dynamic RAM — DRAM)
Динамические RAM хранят данные только при условии непрерывной регенерации (refresh), т.е. обращения к ним специальной схемой регенерации. Несколько сотен раз в секунду эта схема считывает содержание каждой ячейки памяти независимо от того, использует ячейку компьютер в данный момент времени или нет. Из-за особой конструкции ячеек действие считывания обновляет (регенерирует) содержание памяти. Если этого не делать периодически, содержание DRAM теряется даже при наличии питания. Именно из-за необходимости выполнения непрерывной регенерации такая память называется динамической. Во всех РС для основной системной памяти применяются микросхемы DRAM несмотря на то, что они медленнее микросхем SRAM и требуют схему регенерации. Причина применения микросхем DRAM проста: они намного дешевле и занимают меньше места по сравнению с микросхемами SRAM. Схемы регенерации за прошедшее время отработаны почти до совершенства.
Запоминающий элемент DRAM состоит из одного транзистора и конденсатора. Наличие заряда на конденсаторе означает хранение 1, а отсутствие — хранение 0. Транзистор используется для считывания состояния конденсатора. Конечно, конденсатор может хранить заряд непродолжительное время, по истечении которого он исчезает. Емкость конденсатора невелика и заряд «стекает» очень быстро. Именно поэтому требуется схема регенерации: считывать содержание каждой ячейки и обновлять заряд до того, как он исчезнет. Регенерации выполняется считыванием целой строки ячеек микросхемы и при считывании заряд на конденсаторе восстанавливается.
Имеется много видов технологий DRAM, обеспечивающих различное быстродействие. Они рассматриваются далее.
Быстродействие памяти и временная диаграмма работы
В этом разделе рассматривается работа системной памяти: как производится обращение к памяти, и как развиваются во времени операции памяти. Быстродействие памяти является важным фактором, определяющим производительность РС.
Контроллер памяти
Каждый РС имеет схему контроллера памяти (memory controller). Она формирует необходимые сигналы для управления операциями считывания и записи и обеспечивает интерфейс памяти с другими основными компонентами РС. Обычно контроллер памяти встроен в системный чипсет (system chipset.
Обращение к памяти и время обращения
Выполнение операции считывания или записи называется обращением, или доступом, к памяти (memory access). Для управления каждым обращением к памяти используется специальная процедура, в которой контроллер памяти формирует необходимые сигналы для определения целевой ячейки, а затем передачи содержания ячейки на шину для считывания процессором или другим устройством, запросившим считывание из памяти.
Чтобы разобраться в обращении к памяти, необходимо прежде всего иметь представление о том, как адресуются микросхемы памяти. Возьмем для примера микросхему 16 Мб с конфигурацией 4Mx4. Таким образом, имеется 4M (4 194 304) адресов ячеек по 4 бита в каждой. Число 4 194 304 равно 2^22, поэтому для однозначной адресации каждой ячейки требуется 22 бита, т.е. 22 линии адреса.
Однако на практике микросхемы памяти не имеют так много линий адреса. Логически они организованы как «квадрат» из строк (rows) и столбцов (columns). Младшие 11 битов адреса считаются «строкой», а старшие 11 битов — «столбцом». Вначале на микросхему подается адрес строки, а затем адрес столбца. Предположим, что необходимо обратиться к ячейке 2 871 405 в микросхеме, что соответствует двоичному адресу «10101111010 00001101101». Сначала подается код «00001101101» для выбора строки, а затем код «10101111010» для выбора столбца. Такая комбинация выбирает уникальную ячейку памяти с адресом 2 871 405.
Интуитивно кажется, что такой подход сложнее и медленнее, чем наличие на микросхеме контакта для каждой линии адреса — почему бы не иметь на микросхеме 22 контакта адреса? Как это не удивительно, но ответ заключается в стоимости. При использовании комбинации строка/столбец можно значительно уменьшить число контактов на корпусе микросхемы DRAM. Здесь требуется только 11 контактов адреса вместо 22, хотя и требуются два дополнительных сигнала для управления подачей адресов строки и столбца. Можно также сэкономить буферы и другие схемы, необходимые для каждой линии адреса. Конечно, подача адреса двумя «блоками» несколько замедляет процесс адресации, но размеры кристалла уменьшаются и он может работать быстрее, несколько компенсируя снижение скорости обращения.
Разумеется, в РС нет единственной микросхемы памяти; в зависимости от емкости их может быть десятки. Микросхемы объединяются в модули, а затем в банки и контроллер памяти управляет тем, какие микросхемы участвуют в операции считывания или записи. Так как современные РС одновременно считывают 64 бита, в каждой операции считывания или записи участвуют до 64 микросхем DRAM.
Рассмотрим, как происходит типичное асинхронное считывание из памяти, в котором сигналы временной диаграммы не «привязаны» к сигналам основной системной синхронизации (в синхронных DRAM применяются другие сигналы):
- На шину адреса помещается адрес ячейки памяти, из которой производится считывание.
- Контроллер памяти дешифрирует адрес памяти и определяет, к каким микросхемам производится обращение.
- В эти микросхемы подается младшая половина адреса («строка»).
- После стабилизации сигналов адреса строки контроллер устанавливает на 0 сигнал строба адреса строки (Row Address Strobe — RAS), иногда называемый выбором адреса строки (Row Address Select). Этот сигнал имеет низкий уровень активности и обозначается RAS с чертой наверху; его также обозначают как /RAS или RAS#.
- Когда сигнал /RAS установлен на 0, в микросхеме считывается вся строка (все 2^11 столбцов в приведенном ранее примере или 2048 ячеек по 4 бита каждая). Отметим, что это действие «обновляет» (регенерирует) все ячейки в этой строке.
- В выбранные микросхемы подается старшая половина адреса («столбец»).
- После стабилизации сигнала адреса столбца контроллер памяти устанавливает на нуль сигнал строба адреса столбца (Column Address Strobe — CAS) или выбора адреса столбцы (Column Address Select).
- Когда сигнал /CAS установлен на 0, выбранный столбец выводится в выходные буферы микросхемы.
- Выходные буферы всех выбранных микросхем памяти подают данные на шину данных, откуда их считывает процессор или другое устройство.
В этом упрощенном примере не затронуты все сигналы, а также модули с несколькими банками, пакетный режим и др. Процесс записи реализуется аналогично, но теперь данные помещаются в микросхему, а не выводятся из нее. Специальный сигнал R/W управляет тем, какая операция выполняется при обращении к памяти.
Временной интервал получения запрашиваемых данных от момента начала доступа до получения достоверных данных называется временем обращения (access time). Обычно время обращения измеряется в наносекундах — нс. Время обращения современной памяти составляет от 3 до 50 нс. Чтобы оценить огромную скорость RAM, можно сравнить ее со временем обращения к жесткому диску — оно составляет 10 мс, или 10 000 000 нс.
Асинхронные и синхронные DRAM
Обычные микросхемы DRAM, которые применялись еще в первом IBM PC, называются асинхронными, т.е. память не синхронизируется с системным генератором синхронизации. Начинается обращение к памяти и через некоторое время на шине появляются считанные из памяти данные. Сигналы совершенно не скоординированы с системной синхронизацией. Асинхронная память прекрасно работает с шиной памяти, имеющей невысокое быстродействие, но не пригодна для использования в быстрых (66 МГц) системах памяти.
Новый тип микросхем DRAM, называемый синхронной DRAM (SDRAM), синхронизируется с системной синхронизацией; все сигналы «привязаны» к сигналам генератора синхронизации, что позволяет лучше управлять временной диаграммой. Такая память намного быстрее асинхронной DRAM, повышает производительность системы и применяется в системе памяти новых РС.
Шина памяти
Шина памяти представляет собой набор проводников, по которым передаются адреса и данные системного RAM. Шина памяти в большинстве РС разделяется с шиной процессора, подключая системную память к процессору и системному чипсету. Шина памяти образует наиболее быстродействующий коммуникационный канал в иерархии шин РС.
Шина памяти состоит из шины адреса и шины данных. Когда люди говорят о шине памяти, они обычно имеют в виду шину данных, по которой передаются фактические данные памяти. Шина адреса используется для выбора адреса памяти, участвующего в операции считывания или записи.
Чем шире шина данных, тем больше информации можно передать одновременно, т.е. шина имеет более высокую производительность. Скорость шины определяется частотой системной синхронизации и является основным фактором производительности шины. Полоса пропускания (bandwidth) шины данных показывает, сколько информации можно передать по ней; она зависит от ширины шины и ее скорости.
Ширина шины адреса управляет адресуемостью (addressability) системной памяти, т.е. емкость памяти, к которой может обращаться процессор. Большинство РС могут адресовать намного больше памяти, чем они фактически имеют.
Шина памяти оказывается основным ограничивающим фактором производительности системы. В старых РС процессор работал с той же скоростью, что и шина памяти, но в новых РС процессор работает в 2, 4 и более раз быстрее памяти. Чем быстрее процессор работает по сравнению с памятью, тем чаще он будет ожидать информации из памяти. Вот почему так важен системный кэш, который намного быстрее основной памяти, а это означает, что процессор может выполнить больше полезной работы и меньше ожидает.
Скорость DRAM и временная диаграмма
Важно понимать взаимосвязи между двумя основными факторами, которые управляют истинной скоростью системной памяти:
- Временные параметры памяти: Настоящая скорость памяти определяется временной диаграммой (system timing), которую указано использовать системе, часто с помощью параметров в программе настройки BIOS. Эти параметры управляют тем, как быстро система будет пытаться считывать из памяти и записывать в память.
- Скорость DRAM: Это минимальное время обращения, которое физически допускают микросхемы DRAM; оно измеряется в наносекундах (нс). Отметим, что иногда скорость новых модулей SDRAM определяется частотой (МГц), а не временем обращения.
Между этими факторами имеется следующая взаимосвязь. Чем быстрее физические микросхемы DRAM, тем более быструю временную диаграмму можно установить для системы. Если ускорить временную диаграмму (уменьшая число тактов для обращения к памяти с помощью соответствующего параметра BIOS), то система будет работать быстрее, но если задать для DRAM слишком быстрый режим, будут возникать ошибки. Скорость микросхем DRAM косвенно управляет скоростью системы памяти, устанавливая верхний предел.
Из этого следует, что при замене микросхем DRAM со скоростью 70 нс на микросхемы со скоростью 60 нс система не будет работать быстрее, если не ускорить временную диаграмму системы, чтобы она стала обращаться к памяти быстрее. Справедливо и обратное утверждение относительно замены быстрой памяти на медленную; но при этом если новая память оказывается слишком медленной для временной диаграммы, будут появляться ошибки, например зависание РС.
Примечание: Некоторые системы автоматически настраивают временную диаграмму с учетом той скорости памяти, которую они могут определить.
Показатели скорости DRAM
Имеются два способа указания скорости микросхем DRAM. Для микросхем обычных асинхронных DRAM скорость указывается в наносекундах (нс), определяя минимальное время для выполнения операций считывания и записи (при этом учитывается весь цикл обращения). Сейчас скорость асинхронной памяти составляет 50, 60 или 70 нс. Системы, работающие с частотой синхронизации 60 МГц обычно для работы с пиковой эффективностью требуют память со скоростью 60 нс или выше.
Синхронная память намного быстрее обычной асинхронной памяти — 12, 10 или даже 5 нс. Однако необходимо быть осторожным в оценках. Модуль SDRAM со скоростью 10 нс совсем не обязательно в 5 раз быстрее модуля EDO со скоростью 50 нс. Так как память SDRAM синхронизируется системным генератором синхронизации, скорость SDRAM относится к максимальной скорости, с которой модуль SDRAM может «пакетировать» данные на шину. В это время не включается запаздывание адресации (которое учитывается в асинхронных DRAM), поэтому скорость оказывается столь высокой.
Скорость микросхем DRAM обычно указывается суффиксом в конце номера микросхемы, например «-6» или «-60». Эта маркировка означает 60 нс. В микросхемах SDRAM суффикс имеет вид «-12», «-10» или «-07».
Примечание: В дополнение к скорости в наносекундах, для микросхем SDRAM часто указывается скорость в МГц, что практически одно и то же. Это число МГц не означает, что микросхема SDRAM предназначена для системы с такой же скоростью; 100 МГц SDRAM может не работать в РС с системной шиной 100 МГц.
Указываемая скорость памяти представляет собой максимум. Теоретически память не может поддерживать временную диаграмму, которая требует более быстрых микросхем RAM. Однако на практике многие компании указывают параметры довольно консервативно, поэтому память может работать и быстрее. Вот почему многие РС с процессором Pentium с шиной 66 МГц работают с памятью 70 нс даже при установке временной диаграммы на 60 нс. Однако такой прием оказывается ненадежным и его нельзя рекомендовать (по существу, это разновидность «разгона» — overclocking).
Смешивание скоростей DRAM
Смешивание скоростей памяти (mixing memory speeds) означает использование в РС микросхем DRAM с несколькими скоростями. Например, можно было купить РС с памятью 70 нс, а позже расширить ее микросхемами памяти 60 нс. Конечно, в общем, этого приема следует избегать, но все же можно использовать, соблюдая некоторые предосторожности:
- Использовать идентичную память внутри банка: Обычно РС считывает из памяти слова из 32 или 64 битов и память, образующая такую ширину, называется банком (bank). Если в банке используется различная память, некоторые биты слова появляются позже других, а это вызывает разнообразные проблемы. Поэтому в банке необходимо использовать память одного типа и скорости.
- Помещать самую медленную память в первый банк: Некоторые системы памяти при настройке временной диаграммы автоматически обнаруживают скорость памяти только в первом банке. Если имеется память 60 нс в первом банке и 70 нс во втором банке, система может настроить такую временную диаграмму, которая прекрасно работает с первым банком, но вызывает проблемы при обращении ко второму банку. Отметим, что первый банк памяти часто называется «Bank 0».
Скорость шины памяти и требуемая скорость DRAM
Большинство современных РС требует, чтобы используемые в них микросхемы DRAM имели некоторую минимальную скорость. Такая требуемая скорость обычно зависит от скорости шины памяти. Более быстрые шины памяти требуют и более быстрых микросхем DRAM, а иногда и более быстрых технологий. При определении скорости памяти можно руководствоваться следующей таблицей. Конечно, можно использовать в любом РС и более медленную память, соответственно настроив временную диаграмму, но пользователи обычно хотят, чтобы РС работал с максимальной скоростью.
Поколение процессора | Скорость шины памяти (МГц) | Обычная технология DRAM | Обычная требуемая скорость DRAM (нс) | ||||||||||||||||||||||||||||
Первое и второе | |||||||||||||||||||||||||||||||
SDRAM, DDR SDRAM, DRDRAM, SLDRAM, другие? |
|
К сожалению, технология DRAM превратилась в жонглирование словами и трудно определить, какие микросхемы лучше всего использовать в конкретном РС. Практически невозможно разобраться в том, что окажется следующим «хитом» в промышленности. В таблице слева приведены основные технологии микросхем DRAM.
Самое сильное влияние на используемый на материнской плате тип памяти оказывает системный чипсет. Фактически поддержка чипсетом может способствовать быстрому и повсеместному внедрению технологии, например EDO, или затормозить ее распространение, например BEDO. Документация на материнскую плату обычно содержит сведения о том, какие типы памяти поддерживает плата.
В общем, всем желательно использовать наиболее быструю память, которую поддерживает материнская плата, если, конечно, она не слишком дорога. Некоторые пользователи приобретают дорогую память, которая всего на несколько процентов быстрее более дешевой памяти, хотя можно повысить производительность и более эффективным способом, например приобретая больше памяти. Некоторые платы поддерживают несколько типов памяти и обычно можно использовать любой совместимый тип. Необходимо учитывать, что микросхемы некоторых новых технологий значительно дороже старых, но обеспечивают только незначительное повышение производительности.
Имеются две причины, которые нужно учитывать, слыша о том, что новая технология значительно повысит производительность. Во-первых, наличие вторичного кэша скрывает скоростные достоинства памяти, так как обычно собственно из памяти удовлетворяется всего 5-10% запросов данных от процессора. Во-вторых, сейчас большинство РС работает в пакетном режиме и необходимо учитывать общее число тактов синхронизации для всего пакета их четырех циклов, а не просто максимальную скорость передачи данных.
Рассмотрим известный пример из мира Pentium. В 1996 г. наиболее популярными чипсетами были 430HX и 430VX фирмы Intel. Чипсет 430VX поддерживает микросхемы SDRAM, а 430HX не поддерживает. Многие считали, что чипсет 430VX в силу этого лучше, поскольку SDRAM может передавать данные за 1 такт синхронизации, а чипсет 430HX должен использовать микросхемы EDO, которые передают данные за 2 такта синхронизации. Кажется, что SDRAM повышает производительность в два раза! На самом деле это не так. Полная временная диаграмма пакета чипсета 430VX для микросхем SDRAM имеет вид 7-1-1-1, а чипсета 430HX для микросхем EDO имеет вид 5-2-2-2. Суммы всех тактов отличаются незначительно. Если учесть другие новинки чипсета 430HX, то окажется, что он даже быстрее чипсета 430VX, несмотря на более медленную память EDO. Действительно значительное улучшение производительности обеспечивает чипсет 430TX, который поддерживает SDRAM с диаграммой 5-1-1-1.
Наконец, переход на микросхемы новой технологию облегчает модернизацию РС, так как память можно легко использовать с другими материнскими платами. Однако приходится учитывать и то обстоятельство, что новые материнские платы часто требуют применения микросхем памяти, выполненных по новой технологии.
Обычные микросхемы DRAM
Наиболее старые и медленные микросхемы памяти выпускались по технологии, которая называется регулярной (regular), или обычной (conventional), памятью DRAM. В ней используется стандартный способ адресации памяти — вначале подается адрес строки, а затем адрес столбца. Это наиболее простой тип памяти, который не требует никакой специальной совместимости. В современных РС такие микросхемы не применяются.
Микросхемы Fast Page Mode (FPM) DRAM
Микросхемы быстрого страничного режима (Fast Page Mode — FPM) несколько быстрее обычных микросхем DRAM. Если стандартные микросхемы DRAM требуют выдачи адресов строки и столбца при каждом обращении, то в FPM адрес строки выдается только один раз для многих обращений к соседним ячейкам памяти, что улучшает время обращения. Сама память FPM является усовершенствованным вариантом ее предшественника — памяти страничного режима (page mode), которая сейчас применяется очень редко.
Несмотря на слово «fast» (быстрая) в ее названии, фактически FPM является самой медленной памятью в современных РС. Почти каждый РС, выпущенный за последние годы и рассчитанный на обычную асинхронную память DRAM, будет поддерживать и FPM. Это самая «безопасная» технология, так как использование ее не требует никакой специальной совместимости или поддержки. Однако она обеспечивает меньшую производительность по сравнению с другими технологиями памяти. Она также не подходит для шин памяти с частотой выше 66 МГц из-за необходимости введения большого числа состояний ожидания. Обычно на частоте 66 МГц память FPM DRAM обеспечивает временную диаграмму пакетного режима в виде 5-3-3-3.
Микросхемы Extended Data Out (EDO) DRAM
Самый распространенный тип асинхронных DRAM называется памятью с расширенным выходом данных (Extended Data Out — EDO). Такая память несколько быстрее памяти FPM из-за использования нового особенного приема. Говоря по-простому, схемы синхронизации памяти EDO модифицированы таким образом, что новое обращение к памяти можно начать до окончания предыдущего обращения. Выигрыш в производительности по сравнению с памятью FPM составляет всего 3-5%. Вокруг памяти EDO было много шума, но реальное повышение производительности оказалось незначительным.
Стоимость производства микросхем EDO примерно такая же как и микросхем FPM, а из-за широкого распространения на рынке более быстрые микросхемы EDO даже дешевле микросхем FPM. До недавнего времени память EDO была стандартом для РС пятого и шестого поколений, но сейчас в РС шестого поколения ее вытесняет память SDRAM. Обычно память EDO обеспечивает временную диаграмму 5-2-2-2 на частоте 66 МГц при наличии оптимизированного чипсета. Ее можно использовать и с более быстрыми шинами, соответственно настроив временную диаграмму.
Память EDO требует поддержки системного чипсета. РС с процессорами Pentium и усовершенствованные материнские платы с процессорами 486 поддерживают эту память. Более старые РС с памятью EDO обычно не работают или замедляют ее.
Предупреждение: Некоторые РС допускают использование микросхем EDO в одном банке памяти и микросхем FPM в другом, но другие в такой конфигурации не работают. Отдельные РС будут работать, но скорость всей памяти будет определяться медленными микросхемами FPM.
Микросхемы Burst Extended Data Out (BEDO) DRAM
Память BEDO представляет собой еще один эволюционный шаг в совершенствовании обычных асинхронных RAM. В этом случае память EDO объединяется с конвейерной технологией и специальные регистры-защелки обеспечивают более быстрое обращение по сравнению с обычной памятью EDO. При наличии поддерживающего чипсета временная диаграмма памяти BEDO может иметь вид 5-1-1-1.
Память BEDO не получила широкого распространения из-за отсутствия поддержки чипсетами. По производительности она конкурировала с памятью SDRAM и память SDRAM оказалась победителем. Основная причина этого заключалась в том, что память SDRAM поддерживали очень популярные чипсеты фирмы Intel, а память BEDO они не поддерживали. Поддержка чипсетами очень важна для принятия рынком новой технологии памяти.
Микросхемы Synchronous DRAM (SDRAM)
Организация памяти SDRAM |
Память SDRAM отличается от прежних типов тем, что она не работает асинхронно с системной синхронизацией, как обычные типы памяти. SDRAM «привязана» к системной синхронизации и может считывать и записывать в пакетном режиме (после запаздывания начальной операции считывания или записи) за один такт синхронизации на обращение (нуль состояний ожидания) при скорости шины памяти 100 МГц и даже выше. Память SDRAM при использовании с поддерживающим ее чипсетом обеспечивает временную диаграмму 5-1-1-1. SDRAM реализует более быстрое обращение за счет внутренних улучшений, включая внутреннее расслоение (interleaving), что позволяет половине модуля начать обращение в то время, как вторая половина заканчивает предыдущее обращение.
Память SDRAM быстро стала новым стандартом памяти для современных РС, так как поддерживает намного большие скорости шины. Однако SDRAM не дает значительного повышения «внешней» производительности, так как системный кэш маскирует различие скоростей. По мере того, как системная шина 100 МГц становится превалирующей, память SDRAM вытесняет старые технологии.
Имеется несколько важных характеристик, которые относительно уникальны для технологии SDRAM:
- Скорость и согласование скорости: Скорость модулей SDRAM обычно дается в наносекундах, например «12 нс» или «10 нс», или в мегагерцах, например «83 МГц» или «100 МГц». Поскольку микросхемы SDRAM синхронные, они должны быть достаточно быстрыми для РС, в котором они применяются. В асинхронных DRAM, например EDO или FPM, можно вводить дополнительные состояния ожидания для компенсации слишком медленной памяти. Однако вся новизна технологии SDRAM заключается в способности работать без состояний ожидания. Именно поэтому память должна быть достаточно быстрой для скорости системной шины.
- Показатель скорости: Фирма Intel разработала формальную спецификацию РС100 для памяти SDRAM, способной работать в новых РС. Такие модули обычно имеют параметр времени обращения 8 нс. Рекомендуется, чтобы используемая в РС память SDRAM удовлетворяла спецификации PC100.
- Запаздывание: Микросхемы SDRAM являются все же и DRAM, а поэтому имеют запаздывание. Скорость 12, 10 и 8 нс, о которой все говорят, относятся только ко второму, третьему и четвертому обращениям в пакете. Первое медленное обращение длится 5 тактов синхронизации, как и в обычной памяти EDO и FPM.
- Схемы 2-clock и 4-clock: Есть две незначительных разновидности в компоновке модулей SDRAM, которые обычно называются модулями 2-clock и 4-clock. Они почти одинаковы и используют одинаковые микросхемы, а отличаются расположением и обращением. Память 2-clock SDRAM структурирована так, что каждый сигнал синхронизации управляет двумя разными микросхемами DRAM в модуле, а память 4-clock SDRAM имеет сигналы синхронизации, которые управляют четырьмя микросхемами. Современная тенденция направлена на использование памяти 4-clock SDRAM.
- Микросхема Serial Presence Detect: Появились материнские платы, требующие использования специальных модулей SDRAM, которые имеют микросхему Serial Presence Detect (SPD). Она представляет собой EEPROM, которое содержит информацию о скорости и конструктивных особенностях модуля. Материнская плата получает из микросхемы информацию о модуле и соответственно корректирует работу РС. Все это в теории хорошо, но как быть, если вы купили модуль SDRAM без микросхемы SPD, а материнская плата требует наличия этой микросхемы .
- Конструктивные особенности: Обычно память SDRAM выпускается в виде модулей DIMM с различными форматами (буферированный и небуферированный, на питание +3.3 В и +5 В). Это необходимо учитывать для согласования модуля с материнской платой.
В начале 1999 г. несколько компаний, производящих чипсеты, решили выпустить чипсеты, которые поддерживали более быструю память PC133 SDRAM.
Память с виртуальными каналами |
В начале 2000 г. компания NEC выпустила первые модули памяти 128 МБ и 256 МБ на основе уникальной технологии памяти с виртуальным каналом (Virtual Channel Memory — VCM). Эти модули по конструктиву и контактам совместимы со стандартными модулями SDRAM. Архитектура VCM повышает эффективность шины памяти за счет набора быстрых статических регистров, находящихся между ядром памяти и контактами ввода-вывода. Введение этих регистров снижает запаздывание обращения к памяти. Каждый запрос данных от запросчика (Memory Master — MM) содержит отдельные и уникальные характеристики. В обычных модулях SDRAM несколько запросов от нескольких запросчиков могут вызвать пробуксовку страниц и конфликты между банками, что снижает эффективность шины памяти. В архитектуре VCM каждому запросчику присваивается виртуальный канал. Наличие отдельных характеристик запроса каждого запросчика памяти позволяет запоминающему устройству параллельно выполнять операции считывания, записи и регенерации, повышая скорость передачи данных.
Микросхемы Double Data Rate SDRAM (DDR SDRAM)
Всего несколько лет назад была разработана «обычная» память SDRAM для замены устаревших асинхронных микросхем FPM и EDO. Однако вскоре «прозвенел звонок» и для SDRAM — был предложен новый стандарт Double Data Rate SDRAM (DDR SDRAM).
DDR SDRAM функционирует как обычная память SDRAM, но удваивает полосу пропускания, передавая данные два раза в такте — по нарастающему и спадающему фронтам сигнала синхронизации. Обычно только один из фронтов использовался для инициирования передачи данных, а в памяти DDR SDRAM используются оба. Такой же прием реализован в ускоренном графическом порту (Accelerated Graphics Port — AGP) для повышения его производительности по сравнению с шиной PCI.
Микросхемы Direct Rambus DRAM (DRDRAM)
Организация памяти DRDRAM |
Еще одним конкурирующим за замену SDRAM стандартом является память Direct Rambus DRAM (DRDRAM) (ранее называлась «Rambus DRAM» или «RDRAM»). В отличие от памяти DDR SDRAM и SLDRAM, которые представляют собой эволюционный шаг в развитии обычной SDRAM, память DRDRAM является революционным шагом вперед. Она привлекла всеобщее внимание потому, что фирма Intel решила использовать эту технологию в новых чипсетах совместно с компанией Rambus (http://www.rambus.com), которая разработала эту технологию.
Работа памяти DRDRAM больше напоминает внутреннюю шину, а не обычную подсистему памяти. Она опирается на так называемый Direct Rambus Channel, представляющий собой быструю 16-битовую шину, работающую на частоте 400 МГц. Как и в памяти DDR SDRAM, передачи производятся по обоим фронтам сигнала синхронизации, что обеспечивает теоретическую полосу пропускания примерно 1.6 ГБ/с. Это подход сильно отличается от современного обращения к широкой 64-битовой шине памяти. Как и в памяти SDRAM, в памяти DRDRAM применяется специальная микросхема Serial Presence Detect (SPD) для сообщения материнской плате характеристик модуля DRDRAM при загрузке системы. Для этой памяти разработана специальная конструкция модуля, называемая Rambus Inline Memory Module (RIMM).
Память Rambus может стать следующим стандартом памяти для РС, но уверенно об этом пока говорить нельзя, так как в конкурентной борьбе маркетинг часто побеждает инжинииринг (engineering). Имеется мнение, что DRDRAM может даже оказаться не лучшим решением для будущих РС. Решение фирм Intel и Rambus взимать плату за лицензирование может привести к тому, что эта память не получит всеобщего признания, как это случилось в вое время с шиной MicroChannel Architecture (MCA).
Микросхемы Synchronous-Link DRAM (SLDRAM)
Основным «конкурентом» для стандарта DRDRAM является новый стандарт, называемый Synchronous-Link DRAM (SLDRAM). Он разработан Консорциумом SLDRAM (http://www.sldram.com/) — группой из 20 крупнейших компаний компьютерной индустрии, которая пытается превратить SDRAM в следующий стандарт быстродействующей памяти для РС.
SLDRAM значительно повышает производительность подсистемы памяти по сравнению с SDRAM, не предлагая совершенно новой архитектуры, как это реализовано в DRDRAM. Начальная спецификация SLDRAM обещает 64-битовую шину, работающую с частотой синхронизации 200 МГц. Как и в DDR SDRAM передачи данных производятся два раза в каждом такте синхронизации, обеспечивая эффективную скорость 400 МГц. В результате теоретическая полоса пропускания составляет 3.2 ГБ/с, что вдвое больше, чем в DRDRAM. Кроме того, SLDRAM является открытым стандартом, т.е. за использование этой технологии платить не нужно.
Микросхемы Video RAM (VRAM)
Современные видеоадаптеры имеют свою собственную память, отделенную от основной системной памяти. Требований к видеопамяти предъявляется гораздо больше, чем к системной памяти. К хранимому изображению для его изменения непрерывно обращается процессор (много раз в секунду, например, во время динамичной игры), а видеокарта должна также непрерывно обращаться к содержанию памяти от 50 до 100 раз в секунду для отображения информации на дисплее. Поэтому видеокарты дали толчок к разработке новых технологий памяти, многие из которых допускают одновременные обращения к памяти процессора и схемы регенерации видеокарты. Такая память называется двухпортовой (two-port memory) или Video RAM (VRAM). Микросхемы VRAM быстрее микросхем обычной памяти и дороже их. Имеется и несколько других новых технологий памяти, обеспечивающих повышение производительности видеокарт.
Сравнение временных диаграмм для разных технологий
В следующей таблице приведены идеальные, т.е. наилучшие, временные диаграммы для рассмотренных технологий при работе на частоте 66 МГц. Для достижения этих диаграмм требуется оптимизированный чипсет.