Cхема последовательного детектирования.

Перевод с английского: Хачатуров А.М.


Источник

: http://en.wikipedia.org/wiki/Serial_presence_detect


Cхема последовательного детектирования.

[1]

Когда обычный современный компьютер включен, он запускается, делая самотестирование при включении питания (POST). С середины 1990-х, этот процесс включает автоматически конфигурирование установленых аппаратных средств. SPD - аппаратная функция памяти, которая позволяет компьютеру определить присутствие памяти , а также тайминги, для доступа к памяти.
 

Некоторые компьютеры адаптируются к аппаратным изменениям полностью автоматически. В большинстве случаев есть специальная дополнительная функции для того, чтобы получить доступ к параметрам BIOS, просмотреть и  произвести изменения в настройках. Может быть возможным управлять, использыванием памяти при помощи данныех SPD — чтобы выбрать определенные настройки, выборочно изменить синхронизации памяти, или возможно полностью переопределить данные SPD.


Хранимая информация

Для поддержки SPD модулями памяти, по стандартам JEDEC требуется размещение параметров  в младших 128 байтах EEPROM расположенных на модуле памяти. Эти байты содержат временные параметры, производитель, серийный номер и другую полезную информацию о модуле. This data allows a device utilizing the memory to automatically determine key parameters of the module. Эти данные позволяют устройству использования памяти для автоматического определения основных параметров модуля.Например, SPD данные в SDRAM модуле можуг предоставить информацию о латентность CAS, что позволяет  правильно установлен этот параметр, без вмешательства пользователя.

SPD EEPROM доступен с помощью SMBus, вариант протокола I²C. Это сокращает количество коммуникационных контактов на модуле к двум: синхросигнал и сигнал данных. Совместно используются заземляющие выводы с RAM, имеет собственный контакт питания, и имеет три дополнительных контакта (SA0–2), чтобы идентифицировать слот, которые используются, чтобы присвоить EEPROM уникальный адрес в диапазоне 0x50–0x57. Линии связи могут быть совместно использованы 8 модулями памяти, так же  SMBus обычно используется на системных платах для контрольных задач, таких как чтение напряжений источника питания, температура ЦП, и скорость вентилятора.

(SPD EEPROMs так же отвечают на  I²C адреса 0x30–0x37 если они не были защищены от записи и расширение, используются адреса  0x18–0x1F, чтобы получить доступ к дополнительному температурному датчику на микросхеме.[2])

Первая спецификация SPD была выпущена JEDEC и использована Intel, как часть его спецификации памяти  PC100 .[3] Большинство определенных значений находится в форме двоично-десятичного числа.Старшее значащее  может содержать значения от 10 до 15, и в некоторых случаях расширяется выше. В таких случаях кодировки  1, 2 и 3  используются, чтобы закодировать 16, 17 и 18. Старшее значащее  0 зарезервировано, чтобы представить "неопределенность".

ROM SPD определяет до трех синхронизаций DRAM для трех задержек CAS, определенных битами набора в байте 18. Сначала  самая высокая задержка CAS (самые быстрые часы), тогда две более низких задержки CAS с прогрессивно более низкими тактовыми частотами.

SPD SDRAM SDR   SDRAM[4]
Byte,d Byte,x b7 b6 b5 b4 b3 b2 b1 b0 Notes
0 0x00 Размер Обычно 128
1 0x01 log2(размер SPD EEPROM) Обычно 8 (256 bytes)
2 0x02 Тип памяти (4 = SPD SDRAM)
3 0x03 Банк 2 адрес строк биты (0–15) Банк 1 адрес строк биты (1–15) Банк 2, 0 если такой же как и банк 1
4 0x04 Банк 2 адреса колонок биты (0–15) Банк 1 адреса колонок биты (1–15) Банк 2, 0 если такой же как и банк 1
5 0x05 Количество RAM в модуле (1–255) Обычно 1 or 2
6 0x06 ширина данных младший байт Обычно 64, или 72 для ECC DIMMs
7 0x07 ширина данных старший байт  0 если ширина ≥ 256 bits
8 0x08 Интерфейс уровня напряжения  (не  V cc напряжения питания) (0-4) Расшифровано в Table lookup
9 0x09 Наносекунды (0–15) Десятые доли наносекунды (0.0–0.9) Такт времени на самом высоком задержки
10 0x0a Наносекунды (0–15) Десятые доли наносекунды  (0.0–0.9) SDRAM время доступа (tAC)
11 0x0b DIMM тип конфигурации (0–2): non-ECC, четность, ECC Table lookup
12 0x0c Self Период регенерации (0–5): 64, 256, 128, 32, 16, 8 kHz Период регенарации
13 0x0d Банк 2 2× Банк 1 первичный ширина  (1–127, usually 8) Ширина банк данных устройства 1 SDRAM.  Банк 2, может быть такой же ширины, или 2 × ширина, если бит 7 установлен.
14 0x0e Банк 2 2× Банк 1 ECC SDRAM Ширина  (0–127) Ширина банка 1 ECC / четность устройств SDRAM.  Банк 2, может быть такой же ширины, или 2 × ширина, если бит 7 установлен.
15 0x0f Задержка для чтения случайных колонок Обычно 1
16 0x10 Страница 8 4 2 1 Burst длины поддерживаются (растровые)
17 0x11 Банков в  SDRAM (1–255) Обычно 2 or 4
18 0x12 7 6 5 4 3 2 1 CAS
19 0x13 6 5 4 3 2 1 0 CS 
20 0x14 6 5 4 3 2 1 0 WE)
21 0x15 Избыточность Diff clock Регистрове данные Буферные данные On-card PLL Регистровый адрес Буферный адрес Модуль памяти растровые функции
22 0x16 Верхняя V cc  Нижняя Vcc 
Все Precharge
 RAS  Память чипа функции поддержки растровых операций
23 0x17 Наносекунды (4–18) Десятые доли наносекунды (0.0–0.9) Такт времени на средних задержки CAS.
24 0x18 Наносекунды (4–18) Десятые доли наносекунды (0.0–0.9) Доступ к данным время от часов (tAC)
25 0x19 Наносекунды (1–63) 0.25 ns (0–0.75) Такт с короткими задержками CAS.
26 0x1a Наносекунды (1–63) 0.25 ns (0–0.75) Доступ к данным  (tAC)
27 0x1b Наносекунды (1–255) Минимальное время подзарядки строки  (tRP)
28 0x1c Наносекунды (1–255) Минимальный строк активного ряда активных задержки  (tRRD)
29 0x1d Наносекунды (1–255) Минимальная RAS в  CAS задержки (tRCD)
30 0x1e Наносекунды (1–255) Минимальное время подзарядки  (tRAS)
31 0x1f 512 MiB 256 MiB 128 MiB 64 MiB 32 MiB 16 MiB 8 MiB 4 MiB Плотность
32 0x20 Sign (1=neg) Наносекунды (0–7) Десятые доли наносекунды (0.0–0.9) Адрес / команду установки времени из часов
33 0x21 Sign (1=neg) Наносекундыs (0–7) Десятые доли наносекундыs (0.0–0.9) Адрес / команду провести время после часы
34 0x22 Sign (1=neg) Наносекунды (0–7) Десятые доли наносекунды (0.0–0.9) Ввод данных установки времени из часов
35 0x23 Sign (1=neg) Наносекунды (0–7) Десятые доли наносекунды (0.0–0.9) Ввод данных провести время после часы
36–61 0x24–0x3d Зарезервировано Зарезервировано
62 0x3e Ревизия (0–9) Ревизия (0.0–0.9) SPD ревизия
63 0x3f Контрольная сумма Сумма байт 0-62, не отрицается
64–71 0x40–47  JEDEC ID Хранимые прямой порядок байтов, уступая нулевой позиции.
72 0x48 Место производства Поставщик
73–90 0x49–0x5a Номер партии ASCII
91–92 0x5b–0x5c Код ревизии
Поставщик
93 0x5d Десятки лет (00–90) год (0–9) Дата изготовления  (YYWW)
94 0x5e Десятки недель (00–50) неделя (0–9)
95–98 0x5f–0x62 Серийный номер Поставщик
99–125 0x63–0x7f Данные производителя
Данные производителя
126 0x7e 0x66 for 66 MHz, 0x64 for 100 MHz Поддерживаемые частоты
127 0x7f CLK0 CLK1 CLK3 CLK3 90/100°C CL3 CL2 Concurrent AP Intel функции

DDR SDRAM

The DDR DIMM SPD format is an extension of the SDR SDRAM one. Mostly, parameter ranges are rescaled to accommodate higher speeds.

DDR SDRAM[5]

Байт, d Байт, x b7 b6 b5 b4 b3 b2 b1 b0 Примечания
0 0x00 Число записанных байтов Обычно 128
1 0x01 log2 (размер SPD EEPROM) Обычно 8 (256 байтов)
2 0x02 Основной тип памяти (7 = SDRAM DDR)
3 0x03 Банк 2 адресных бита (0-15) строки Банк 1 адресный бит (1-15) строки Банк 2 0 если то же самое как банк 1.
4 0x04 Адресные биты (0-15) 2 столбцов банка Адресные биты (1-15) 1 столбца банка Банк 2 0 если то же самое как банк 1.
5 0x05 Число RAM полагается на модуль (1–255) Обычно 1 или 2
6 0x06 Младший байт ширины данных модуля Обычно 64, или 72 для ECC DIMMs
7 0x07 Ширина данных модуля высокий байт Нуль, если ширина ≥ 256 битов
8 0x08 Интерфейсный уровень напряжения этого блока (не то же самое как напряжение питания Vcc) (0–5) Декодируемый поиском по таблице
9 0x09 Наносекунды (0–15) Десятые части наносекунд (0.0–0.9) Время такта в самой высокой задержке CAS.
10 0x0a Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Время доступа SDRAM от часов (tAC)
11 0x0b Тип (0-2) конфигурации DIMM: не-ECC, четность, ECC Поиск по таблице
12 0x0c Сам Период обновления (0–5): 64, 256, 128, 32, 16, 8 кГц Требования обновления
13 0x0d Банк 2 2× Банк 1 основная ширина SDRAM (1–127) Ширина банка 1 устройство SDRAM данных. Банк 2 может быть той же самой шириной, или 2× ширина, если бит 7 установлен.
14 0x0e Банк 2 2× Банк 1 ширина SDRAM ECC (0–127) Ширина банка 1 устройство SDRAM ECC/четности. Банк 2 может быть той же самой шириной, или 2× ширина, если бит 7 установлен.
15 0x0f Задержка часов случайных чтений столбца Обычно 1
16 0x10 Страница 8 4 2 1 Пакетные поддерживаемые длины (побитово отображают)
17 0x11 Банки на устройство SDRAM (1–255) Обычно 4
18 0x12 4 3.5 3 2.5 2 1.5 1 Поддерживаемые задержки CAS (побитово отображают)
19 0x13 6 5 4 3 2 1 0 Поддерживаемые задержки CS (побитово отображают)
20 0x14 6 5 4 3 2 1 0 МЫ поддерживаемые задержки (побитово отображаем)
21 0x15 x Различные часы Переключатель FET внешнее включение Переключатель FET встроенное включение PLL на карте Зарегистрированный Буферизованный Битовый массив функции модуля памяти
22 0x16 Быстрый AP Параллельный автоматический предварительный заряд Верхний Vcc (напряжение питания) допуск Понизьте Vcc (напряжение питания) допуск Включает слабый драйвер Битовый массив функции микросхемы памяти
23 0x17 Наносекунды (0–15) Десятые части наносекунд (0.0–0.9) Время такта в средней задержке CAS.
24 0x18 Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Время доступа к данным от часов (tAC)
25 0x19 Наносекунды (0–15) Десятые части наносекунд (0.0–0.9) Время такта в короткой задержке CAS.
26 0x1a Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Время доступа к данным от часов (tAC)
27 0x1b Наносекунды (1–63) 0.25 нс (0–0.75) Минимальное время предварительного заряда строки (tRP)
28 0x1c Наносекунды (1–63) 0.25 нс (0–0.75) Минимальная активная строка строки активная задержка (tRRD)
29 0x1d Наносекунды (1–63) 0.25 нс (0–0.75) Минимальный RAS к задержке CAS (tRCD)
30 0x1e Наносекунды (1–255) Минимум, активный ко времени предварительного заряда (tRAS)
31 0x1f 512 мебибайт 256 мебибайт 128 мебибайт 64 мебибайт 32 мебибайт 16 мебибайт /
4 гибибайта
8 мебибайт /
2 гибибайта
4 мебибайт /
1 гибибайт
Плотность банка модуля (битовый массив). Набор на два бита, если различные банки размера.
32 0x20 Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Адресуйте/управляйте время установки от часов
33 0x21 Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Адресуйте/управляйте время задержки после часов
34 0x22 Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Время установки ввода данных от часов
35 0x23 Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Время задержки ввода данных после часов
36–40 0x24–0x28 Зарезервированный Информация о надмножестве
41 0x29 Наносекунды (1–255) Минимум, активный к активному времени / времени обновления (tRC)
42 0x2a Наносекунды (1–255) Минимальное обновление к активному времени / времени обновления (tRFC)
43 0x2b Наносекунды (1–63) 0.25 нс (0–0.75) Максимальное время такта (tCK максимальный)
Если все-, нет никакого максимума.
44 0x2c Сотые части наносекунд (0.01–2.55) Максимальный скос, DQS к любому DQ. (tDQSQ максимальный)
45 0x2d Десятые части наносекунд (0.0–1.2) Сотые части наносекунд (0.00–0.09) Читайте данные содержат скошенный фактор (tQHS)
46 0x2e Зарезервированный Для будущей стандартизации
47 0x2f Высота Высота модуля DIMM, поиска по таблице
48–61 0x30–0x3d Зарезервированный Для будущей стандартизации
62 0x3e Главная версия (0-9) Незначительная версия (0.0–0.9) Уровень версии SPD, 0.0 или 1.0
63 0x3f Контрольная сумма Сумма байтов 0–62, не отрицаемый
64–71 0x40–47 Производитель ID JEDEC Сохраненный прямой порядок байтов, запаздывающая нулевая клавиатура.
72 0x48 Модуль производственное расположение Специфичный для поставщика код
73–90 0x49–0x5a Число части модуля ASCII, дополненный пространством
91–92 0x5b–0x5c Код версии модуля Специфичный для поставщика код
93 0x5d Десятки лет (00–90) годы (0–9) Производственная дата (YYWW)
94 0x5e Десятки недель (00–50) недели (0–9)
95–98 0x5f–0x62 Порядковый номер модуля Специфичный для поставщика код
99–127 0x63–0x7f Специфичные для производителя данные профиль производительности

DDR2 SDRAM

DDR2 SPD стандарт производит много изменений, но примерно подобен вышеупомянутому. Одной полезной вещью, которую это удаляет, является запутывающая и мало-используемая поддержка DIMMS с двумя разрядами различных размеров. Для полей времени цикла (байты 9, 23, 25 и 49), которые закодированы в BCD, некоторые дополнительные кодировки определены для цифры десятых частей, чтобы представить некоторые общие синхронизации точно:

Шестнадцатеричный Двоичный файл Значение
A 1010 0.25
B 1011 0.33
C 1100 0.66
D 1101 0.75
E 1110 0.875 (nVidia расширение XMP)
F 1111 Зарезервированный, не использовать

 SPD для SDRAM DDR2 [6]
Байт (Шестнадцатеричный) байт b7 b6 b5 b4 b3 b2 b1 b0 Примечания
0 0x00 Число записанных байтов Обычно 128
1 0x01 log2 (размер SPD EEPROM) Обычно 8 (256 байтов)
2 0x02 Основной тип памяти (8 = SDRAM DDR2)
3 0x03 Зарезервированный, нуль Адресные биты (1-15) строки
4 0x04 Зарезервированный, нуль Адресные биты (1-15) столбца
5 0x05 Вертикальная высота Стек? ConC? Ranks−1 (1–8) Обычно 0 или 1, означая 1 или 2
6 0x06 Ширина данных модуля Обычно 64, или 72 для ECC DIMMs
7 0x07 Зарезервированный, нуль
8 0x08 Интерфейсный уровень напряжения этого блока (не то же самое как напряжение питания Vcc) (0–5) Декодируемый поиском по таблице.
Обычно 5 = SSTL 1.8 V
9 0x09 Наносекунды (0–15) Десятые части наносекунд (0.0–0.9) Время такта в самой высокой задержке CAS.
10 0x0a Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Время доступа SDRAM от часов (tAC)
11 0x0b Тип (0-2) конфигурации DIMM: не-ECC, четность, ECC Поиск по таблице
12 0x0c Сам Период обновления (0–5): 64, 256, 128, 32, 16, 8 кГц Требования обновления
13 0x0d Основная ширина SDRAM (1–255) Обычно 8 (модуль, созданный из ×8 частей) или 16
14 0x0e Ширина SDRAM ECC (0–255) Ширина устройств SDRAM ECC/четности банка. Обычно 0 или 8.
15 0x0f Зарезервированный, нуль
16 0x10 8 4 Пакетные поддерживаемые длины (побитово отображают)
17 0x11 Банки на устройство SDRAM (1–255) Обычно 4 или 8
18 0x12 7 6 5 4 3 2 Поддерживаемые задержки CAS (побитово отображают)
19 0x13 Зарезервированный, нуль
20 0x14 Mini-UDIMM Mini-RDIMM Micro-DIMM ТАКИМ-ОБРАЗОМ-DIMM, UDIMM RDIMM Тип DIMM этого блока (битовый массив)
21 0x15 Модуль - аналитический зонд Переключатель FET внешнее включение Битовый массив функции модуля памяти
22 0x16 Включает слабый драйвер Битовый массив функции микросхемы памяти
23 0x17 Наносекунды (0–15) Десятые части наносекунд (0.0–0.9) Время такта в средней задержке CAS.
24 0x18 Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Время доступа к данным от часов (tAC)
25 0x19 Наносекунды (0–15) Десятые части наносекунд (0.0–0.9) Время такта в короткой задержке CAS.
26 0x1a Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Время доступа к данным от часов (tAC)
27 0x1b Наносекунды (1–63) Нс 1/4 (0–0.75) Минимальное время предварительного заряда строки (tRP)
28 0x1c Наносекунды (1–63) Нс 1/4 (0–0.75) Минимальная активная строка строки активная задержка (tRRD)
29 0x1d Наносекунды (1–63) Нс 1/4 (0–0.75) Минимальный RAS к задержке CAS (tRCD)
30 0x1e Наносекунды (1–255) Минимум, активный ко времени предварительного заряда (tRAS)
31 0x1f 512 мебибайт 256 мебибайт 128 мебибайт 16 гибибайт 8 гибибайт 4 гибибайта 2 гибибайта 1 гибибайт Размер каждого разряда (битовый массив).
32 0x20 Десятые части наносекунд (0.0–1.2) Сотые части наносекунд (0.00–0.09) Адресуйте/управляйте время установки от часов
33 0x21 Десятые части наносекунд (0.0–1.2) Сотые части наносекунд (0.00–0.09) Адресуйте/управляйте время задержки после часов
34 0x22 Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Время установки ввода данных от строба
35 0x23 Десятые части наносекунд (0.0–0.9) Сотые части наносекунд (0.00–0.09) Время задержки ввода данных после строба
36 0x24 Наносекунды (1–63) 0.25 нс (0–0.75) Минимальное время восстановления записи (tWR)
37 0x25 Наносекунды (1–63) 0.25 нс (0–0.75) Внутренняя запись, чтобы считать задержку команды (tWTR)
38 0x26 Наносекунды (1–63) 0.25 нс (0–0.75) Внутреннее чтение, чтобы предварительно заряжать задержку команды (tRTP)
39 0x27 Зарезервированный, нуль Зарезервированный для "анализа памяти зондируют характеристики"
40 0x28 tRC дробный нс (0–5):
0, 0.25, 0.33, 0.5, 0.66, 0.75
tRFC дробный нс (0–5):
0, 0.25, 0.33, 0.5, 0.66, 0.75
tRFC + 256 нс Расширение байтов 41 и 42.
41 0x29 Наносекунды (1–255) Минимум, активный к активному времени / времени обновления (tRC)
42 0x2a Наносекунды (1–255) Минимальное обновление к активному времени / времени обновления (tRFC)
43 0x2b Наносекунды (0–15) Десятые части наносекунд (0.0–0.9) Максимальное время такта (tCK максимальный)
44 0x2c Сотые части наносекунд (0.01–2.55) Максимальный скос, DQS к любому DQ. (tDQSQ максимальный)
45 0x2d Десятые части наносекунд (0.0–1.2) Сотые части наносекунд (0.00–0.09) Читайте данные содержат скошенный фактор (tQHS)
46 0x2e Микросекунды (1–255) Время переблокировки PLL
47–61 0x2f–0x3d Зарезервированный Для будущей стандартизации.
62 0x3e Главная версия (0-9) Незначительная версия (0.0–0.9) Уровень версии SPD, обычно 1.0
63 0x3f Контрольная сумма Сумма байтов 0–62, не отрицаемый
64–71 0x40–47 Производитель ID JEDEC Сохраненный прямой порядок байтов, запаздывающая нулевая клавиатура.
72 0x48 Модуль производственное расположение Специфичный для поставщика код
73–90 0x49–0x5a Число части модуля ASCII, дополненный пространством (ограниченный (-,), A-Z, a-z, 0-9, пространство)
91–92 0x5b–0x5c Код версии модуля Специфичный для поставщика код
93 0x5d Годы с 2000 (0–255) Производственная дата (YYWW)
94 0x5e Недели (1–52)
95–98 0x5f–0x62 Порядковый номер модуля Специфичный для поставщика код
99–127 0x63–0x7f Специфичные для производителя данные Мог быть улучшенный профиль производительности


DDR3 SDRAM

Стандарт SDRAM DDR3 значительно перестраивает и упрощает расположение содержания SPD. Вместо многих закодированных BCD полей наносекунды, некоторые "timebase" модули определены к высокой точности, и различные параметры синхронизации закодированы как сеть магазинов той основной единицы. [7] Далее, практика определения различных временных стоимостей в зависимости от задержки CAS была отброшена; теперь есть только единственный набор параметров синхронизации.


Содержание SPD для SDRAM DDR3 [8]
Байт b7 b6 b5 b4 b3 b2 b1 b0 Примечания
0 0x00 CRC исключает 117–125 Общее количество байтов SPD (undef/256) Байты SPD использовали (undef/128/176/256) Бит 7 указывает на порядковый номер, исключенный из CRC
1 0x01 Главная версия SPD SPD незначительная версия Обычно 1.0
2 0x02 Основной тип памяти (11 = SDRAM DDR3) Тип микросхем RAM
3 0x03 Зарезервированный, нуль Тип модуля Тип модуля, например, 2 = Небуферизованный DIMM, 3 =, ТАКИМ-ОБРАЗОМ-DIMM,
4 0x04 Адрес банка bits−3 log2 (биты на микросхему) −28 Нуль означает 8 банков, 256 Mibit.
5 0x05 Адрес строки bits−12 Адрес столбца bits−9
6 0x06 зарезервированный 1.2x V 1.35 V НЕ 1.5 V Напряжения модулей поддерживаются. 1.5V значение по умолчанию.
7 0x07 log2 (разряды) log2 (биты/микросхема ввода-вывода) −2 Организация модуля
8 0x08 Биты ECC (001=8) log2 (биты данных) −3 0x03 для 64-разрядного, не-ECC DIMM.
9 0x09 Дивиденд FTP (1–15) Делитель FTP (1–15) Прекрасная Основа Времени = постскриптум дивиденда/делителя.
10 0x0a Средний дивиденд основы времени (1–255) MTB = нс дивиденда/делителя, обычно 1/8
11 0x0b Средний делитель основы времени (1–255)
12 0x0c Минимальное время цикла tCKmin В сети магазинов MTB
13 0x0d зарезервированный
14 0x0e 11 10 9 8 7 6 5 4 Поддерживаемые задержки CAS (побитово отображают)
15 0x0f 18 17 16 15 14 13 12
16 0x10 Минимальное время задержки CAS tAAmin  например, 80/8 нс.
17 0x11 Минимальное время восстановления записи tWRmin например, 120/8 нс.
18 0x12 Минимальные RAS к CAS задерживают время tRCDmin например, 100/8 нс.
19 0x13 Минимальная строка, чтобы расположить активное время задержки в ряд tRRDmin   например, 60/8 нс.
20 0x14 Минимальное время предварительного заряда строки tRPmin   например, 100/8 нс.
21 0x15 tRCmin, биты 11:8 tRASmin, биты 11:8 Верхние 4 бита байтов 23 и 22
22 0x16 Минимум, активный ко времени tRASmin, биты 7:0   например, 280/8 нс.
23 0x17 Минимум, активный к активному / обновлению tRCmin, биты 7:0   например, 396/8 нс.
24 0x18 Минимальное восстановление обновления задерживает tRFCmin, биты 7:0   например, 1280/8 нс.
25 0x19 Минимальное восстановление обновления задерживает tRFCmin, биты 15:8
26 0x1a Минимальная внутренняя запись, чтобы считать задержку tWTRmin   например, 60/8 нс.
27 0x1b Минимальное внутреннее чтение, чтобы предварительно заряжать задержку tRTPmin   например, 60/8 нс.
28 0x1c зарезервированный tFAWmin, биты 11:8   например, 240/8 нс.
29 0x1d Минимальные четыре активируют задержку окна tFAWmin, биты 7:0
30 0x1e DLL - прочь RZQ/7 RZQ/6 Дополнительные функции SDRAM поддерживают битовый массив
31 0x1f PASR ODTS ASR ETR 1× ETR (95°C) Тепловой SDRAM и опции обновления
32 0x20 Существующий Точность (TBD; в настоящий момент 0 = неопределенный) DIMM тепловой существующий датчик?
33 0x21 Nonstd. Нестандартный тип устройства Нестандартный тип устройства SDRAM (например, сложенный умирают),
34–59 0x22–0x3b Зарезервированный Для будущей стандартизации.
60 0x3c Высота модуля, перекройте (MMS) −15 Высота номинала модуля (31 = Высота> 45 MMS)
61 0x3d Обратная толщина Передняя толщина Толщина модуля, value=ceil (MMS) −1
62 0x3e Проект Версия JEDEC разрабатывают число Ссылочная модель JEDEC, используемая (11111=none)
63–116 0x3f–0x74 Специфичный для модуля раздел Отличается между, регистрировался/небуферизовал
117 0x75 ID производителя модуля, lsbyte Присвоенный JEP-106
118 0x76 ID производителя модуля, msbyte
119 0x77 Модуль производственное расположение Специфичный для поставщика код
120 0x78 Десятилетия Годы Производственный год (BCD)
121 0x79 Десятки недель недели Производственная неделя (BCD)
122–125 0x7a–0x7d Порядковый номер модуля Специфичный для поставщика код
126–127 0x7e–0x7f CRC SPD 16 Включает байты 0–116 или 0–125; см. байт 0 битов 7
128–145 0x80–0x91 Число части модуля Подмножество ASCII, дополненное пространством
146–147 0x92–0x93 Код версии модуля Определенный поставщиком
148–149 0x94–0x95 ID производителя DRAM В отличие от производителя модуля
150–175 0x96–0xAF Специфичные для производителя данные

Емкость памяти модуля может быть вычислена из байтов 4, 7 и 8. Ширина модуля (байт 8) разделенный на число битов на микросхему (байт 7) дает число микросхем на разряд. Это может тогда быть умножено на емкость на микросхему (байт 4) и число разрядов микросхем на модуле (обычно 1 или 2 от байта 7).

Расширения

Стандарт JEDEC только определяет некоторые из байтов SPD. Действительно критические данные вписываются в первые 64 байта, [5][6][8][9][10], в то время как часть остатка предназначена для идентификации производителя. Однако, 256-байтовый EEPROM обычно обеспечен. Много использования были сделаны из остающегося пространства.

Улучшенная Производительность Профилирует (EPP)

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

Улучшенные Профили Производительности - расширение SPD, разработанного NVIDIA и Corsair, который включает дополнительную информацию для работы более высокой производительности SDRAM DDR2, включая напряжения питания и информацию синхронизации команды, не включенную в JEDEC SPD спецификация. Информация EPP хранится в том же самом EEPROM, но в байтах 99-127, которые неиспользованы по стандарту DDR2 SPD. [11]

EPP использование ROM SPD
Байты Размер Полные профили Сокращенные профили
99–103 5 Заголовок EPP
104–109 6 Профиль FP1 Профиль AP1
110–115 6 Профиль AP2
116–121 6 Профиль FP2 Профиль AP3
122–127 6 Профиль AP4

Параметры особенно разработаны, чтобы соответствовать контроллеру памяти на nForce 5, nForce 6 и чипсетах nForce 7. NVIDIA поощряет поддержку EPP в BIOS для его высокопроизводительных чипсетов системной платы. Это предназначено, чтобы обеспечить "один щелчок, разгоняющийся", чтобы получить лучшую производительность с минимальным усилием.

Имя Nvidia для памяти EPP, которая была пригодна для производительности и устойчивости, является "готовой к SLI памятью". [12] термин "готовая память SLI" вызвал некоторый беспорядок, поскольку это не имеет никакого отношения к видео SLI. Можно использовать память EPP/SLI с единственной видеокартой (даже карта неNvidia), и можно выполнить установку видео SLI мультикарты без памяти EPP/SLI.

Расширенная версия, EPP 2.0, поддерживает память DDR3 также. [13]

Экстремальный Профиль Памяти (XMP)

Подобный, разработанный Intel JEDEC SPD расширение для SDRAM DDR3 DIMMs. Это использует байты 176–255, которые освобождены JEDEC, чтобы закодировать синхронизации памяти более высокой производительности. [14]

XMP использование ROM SPD
Байты Размер Использовать
176–184 10 Заголовок XMP
185–219 33 Профиль XMP 1 (настройки "энтузиаста")
220–254 36 Профиль XMP 2 ("экстремальные" настройки)

Заголовок содержит следующие данные. Что наиболее важно это содержит "носитель timebase" MTB значения, как рациональное число наносекунд (общие ценности - 1/8, 1/12 и 1/16 нс). Много других более поздних значений синхронизации выражены как целое число модулей MTB.

Также включенный в заголовок число DIMMS на канал памяти, который профиль разработан, чтобы поддерживать; включая большее количество DIMMS, возможно, не работает хорошо.

Байты Заголовка XMP [15]
Байт Биты Использовать
176 7:0 Байт магического числа XMP 1 0x0C
177 7:0 Байт магического числа XMP 2 0x4A
178 0 Профилируйте 1, включал (если 0, отключенный)
1 Профилируйте 2, включал
3:2 Профилируйте 1 DIMMS на канал (1–4 закодированный как 0–3)
5:4 Профилируйте 2 DIMMS на канал
7:6 Зарезервированный, должен быть нуль
179 3:0 Номер вспомогательной версии XMP (x.0 или x.1)
7:4 Номер основной версии XMP (0.x или 1.x)
180 7:0 Носитель timebase дивиденд для профиля 1
181 7:0 Носитель timebase делитель для профиля 1 (MTB = нс дивиденда/делителя)
182 7:0 Носитель timebase дивиденд для профиля 2 (например, 8)
183 7:0 Носитель timebase делитель для профиля 2 (например, 1, давая MTB = 1/8 нс)
184 7:0 Зарезервированный, должен быть нуль
Байты профиля XMP [15]
Байт 1 Байт 2 Биты Использовать
185 220 4:0 Модуль часть напряжения Vdd (x.00–x.95 закодированный как 0–19)
6:5 Модуль модули напряжения Vdd (0–2)
7 Зарезервированный, должен быть нуль
186 221 7:0 Минимальный период часов SDRAM tCKmin (модули MTB)
187 222 7:0 Минимальное время задержки CAS tAAmin (модули MTB)
188 223 7:0 Поддерживаемые задержки CAS (битовый массив, 4–11 закодированный как биты 0–7)
189 224 6:0 Поддерживаемые задержки CAS (битовый массив, 12–18 закодированный как биты 0–6)
7 Зарезервированный, должен быть нуль
190 225 7:0 Минимальные CAS время задержки tCWLmin (модули MTB)
191 226 7:0 Минимальный предварительный заряд строки задерживает время tRPmin (модули MTB)
192 227 7:0 Минимальные RAS к CAS  tRCDmin (модули MTB)
193 228 7:0 Минимальное время восстановления записи tWRmin (модули MTB)
194 229 3:0 tRASmin (биты 11:8)
7:4 tRCmin  (биты 11:8)
195 230 7:0  время задержки tRASmin биты 7:0 
196 231 7:0  время задержки обновления tRCmin биты 7:0  
197 232 7:0 tREFI lsbyte  
198 233 7:0  tREFI msbyte  
199 234 7:0  tRFCmin lsbyte  
200 235 7:0  tRFCmin msbyte  
201 236 7:0  tRTPmin  
202 237 7:0 д tRRDmin  
203 238 3:0 tFAWmin верхнее откусывание (биты 11:8)
7:4 Зарезервированный, должен быть нуль
204 239 7:0 т время задержки окна tFAWmin биты 7:0  
205 240 7:0 Минимальное время чтения команды tWTRmin  
206 241 2:0  (0–7 тактов)
3  знак корректировки команды (0=pull-in, 1=push-out)
6:4 срок исолнения команды записи (0–7 тактов)
7 знак корректировки команды записи (0=pull-in, 1=push-out)
207 242 2:0 Компенсационная корректировка (0–7 тактов)
3 Компенсационный оборотный знак корректировки (0=pull-in, 1=push-out)
7:4 Зарезервированный, должен быть нуль
208 243 7:0 Системный режим уровня CMD. Значение по умолчанию 0=JTAG, иначе в специфических модулях MTB × tCK/ns.
Например, если MTB - 1/8 нс, то это находится в модулях 1/8 такта.
209 244 7:0 SDRAM, автоматический сам, обновляет производительность.
Стандартная версия 1.1 говорит, что документация - TBD.
210–218 245–253 7:0 Зарезервированный, должен быть нуль
219 254 7:0 Зарезервированный, специфичный для поставщика код индивидуальности.

Специфичная для поставщика память

Очень общее (неправильное) использование - запись информации к определенным областям памяти, чтобы связать специфичные для поставщика модули памяти с определенной системой. Один поставщик, который, как известно, сделал, это - Fujitsu Siemens Computers. Добавление различного модуля памяти к системе обычно приводит к отказу или другим контрмерам (как нажатие F1 на каждой начальной загрузке).

02 0E 00 01-00 00 00 EF-02 03 19 4D-BC 47 C3 46........... M.G.F
53 43 00 04-EF 4F 8D 1F-00 01 70 00-01 03 SC CF C1... O.... p.....

Это - вывод модуля памяти на 512 Мбайт от Micron Technologies, выпущенной под брендом для Fujitsu Siemens Computers, отметьте строку "FSC". Модулям памяти, у которых нет этой информации, запускающейся при смещении 128-ой, откажет BIOS системы.

Чтение и запись информация о SPD

Производители модуля памяти пишут информацию SPD в EEPROM на модуле. BIOS системной платы читают информацию SPD, чтобы сконфигурировать контроллер памяти. Там существуйте несколько программ, которые в состоянии считать и изменить информацию SPD о больше всего, но не все чипсеты системной платы.

Источники.

  1. Thomas P. Koenig; Nathan John (1997-02-03), "Serial Presence Detection poised for limelight", Electronic News 43 (2153), http://findarticles.com/p/articles/mi_m0EKF/is_n2153_v43/ai_19102210/ 
  2. JEDEC Standard 21-C section 4.1.4 "Definition of the TSE2002av Serial Presence Detect (SPD) EEPROM with Temperature Sensor (TS) for Memory Module Applications"
  3. Application note INN-8668-APN3: SDRAM SPD Data Standards, memorytesters.com
  4. PC SDRAM Serial Presence Detect (SPD) Specification, 1.2A, December 1997, pp. 28, http://www.softnology.biz/pdf/SPDSDRAM1.2a.pdf 
  5. JEDEC Standard 21-C section 4.1.2.4 "SPDs for DDR SDRAM"
  6. JEDEC Standard 21-C section 4.1.2.10 Specific SPDs for DDR2 SDRAM
  7. Understanding DDR3 Serial Presence Detect (SPD) Table
  8. JESD21-C Annex K: Serial Presence Detect for DDR3 SDRAM Modules, SPD Revision 1.0
  9. JEDEC Standard 21-C section 4.1.2 "SERIAL PRESENCE DETECT STANDARD, General Standard"
  10. JEDEC Standard 21-C section 4.1.2.5 "Specific PDs for Synchronous DRAM (SDRAM)"
  11. DDR2 UDIMM Enhanced Performance Profiles Design Specification
  12. NVIDIA 2006-05-12
  13. http://www.nvidia.com/content/epp/epp_specifications.pdf
  14. http://www.nvidia.com/docs/CP/45121/sli_memory.pdf
  15. Enhanced Performance Profiles 2.0 (pages 2–3)
  16. Intel Extreme Memory Profile (Intel XMP) DDR3 Technology
  17. Intel® Extreme Memory Profile (XMP) Specification, Rev 1.1, October 2007, http://www.softnology.biz/pdf/IntelXMP_Rev1.1.pdf
  18. http://www.linux.com/archive/articles/40412 dmidecode: What's it good for?
  19. http://www.lm-sensors.org/browser/i2c-tools/trunk/eeprom/decode-dimms decode-dimms.pl Perl program
  20. http://www.lm-sensors.org/
  21. Page on memory upgrades for HP printers
  22. Making Standard SIMMs Work – Memory Upgrade on the HP LaserJet 6MP/5MP