logo
Лекции_ТСКС

1.10 Быстрота памяти

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

Когда кэш второго уровня оказывается неспособен выдать данные, затребованные процессором, чипсет добавляет такт ожидания - команду процессору «ничего не делать, пока запрошенные данные не станут доступны». Из кэша данные считываются в 32-байтовых блоках, называемых строками, а действия с оперативной памятью производятся в 64-разрядных (8-байтовых) последовательных блоках, поэтому на передачу одной строки кэша уходит четыре отдельных операции чтения или записи в оперативную память. Первая операция является самой медленной из четырех, поскольку требует передачи адреса, блокирования и обращения к нему. Дополнительная задержка называется временем ожидания (latency). Следующие три операции выполняются гораздо быстрее, потому что данные считываются из или записываются в ячейки, идущие подряд, на основании адреса, использованного при первой передаче, что исключает дополнительную задержку.

Перечисленные временные параметры памяти записываются в форме X-Y-Y-Y, где X - количество тактов на первую передачу (вместе с временем ожидания), a Y - количество тактов на каждую из последующих передач. Это соотношение зависит от конкретного чипсета, скорости шины памяти, а также типа памяти. Например, чипсет Intel 430VX с памятью FPM использует соотношение 5-3-3-3 при работе на 60 МГц и 6-3-3-3 при работе на 66 МГц, тогда как более поздний 430ТХ характеризуется соответственно соотношениями 4-3-3-3 и 5-3-3-3. При установке памяти EDO для чипсета 430VX временные параметры будут записываться как 5-2-2-2 (60 МГц) и 6-2-2-2 (66 МГц), а для 430ТХ - 4-2-2-2 (60 МГц) и 5-2-2-2 (66 МГц). Наконец, если поставить BEDO или SDRAM, соотношения для 430VX (60/66 МГц) и 430ТХ (60/66 МГц) составят 6-1-1-1/7-1-1-1 и 5-1-1-1/5-1-1-1 соответственно.

Некоторые программы настройки BIOS позволяют выбирать только из предустановленных вариантов соотношений тактов. В таких программах вы выбираете единственный параметр. Другие программы позволяют настраивать время первого обращения независимо от времени последующих обращений. В таком случае параметров настройки становится два. Первый из них имеет вид Х-2-2-2 и задает время первого обращения (X). Второй выглядит как 4-Y-Y-Y и задает единственное значение, определяющее одновременно длительности всех последующих обращений. Каков бы ни был тип программы настройки, выбирать всегда следует самый быстрый режим из поддерживаемых вашей памятью и чипсетом. Современные чипсеты, включая чипсеты шестого и седьмого поколений, автоматически определяют тип, размер, скорость и оптимальные параметры циклов для установленной памяти, после чего настраивают ее соответствующим образом. Эта процедура называется автоматическим обнаружением памяти (memory autodetection). Однако для этого им требуется помощь самой памяти. Микросхемы памяти обеспечивают им поддержку со своей стороны посредством специальной функции, которая называется последовательное обнаружение присутствия (serialpresence detect - SPD). Для этого используется память EEPROM (энергонезависимая), физически являющаяся частью модуля памяти. В ней хранятся сведения о типе и конфигурации этого модуля. Все современные чипсеты шестого поколения для процессоров Intel и AMD оптимизированы под память SDR-SDRAM или DDR-SDRAM, за исключением Intel 820 и Intel 840, которые оптимизированы под RDRAM. Первый чипсет седьмого поколения (Intel 850) поддерживает Pentium 4 с памятью RDRAM. Следующий чипсет Intel 845 поддерживает Pentium 4 с SDR-SDRAM и DDR-SDRAM.