Последовательное обнаружение присутствия

Стандартизированный способ автоматического доступа к информации о модуле памяти

В вычислительной технике последовательный детектор присутствия ( SPD ) — это стандартизированный способ автоматического доступа к информации о модуле памяти . Ранее 72-контактные SIMM включали пять контактов, которые обеспечивали пять бит данных параллельного детектора присутствия (PPD), но стандарт 168-контактных DIMM изменился на последовательный детектор присутствия для кодирования большего количества информации. [1]

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

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

Сохраненная информация

Для поддержки SPD модулем памяти стандарты JEDEC требуют, чтобы определенные параметры находились в нижних 128 байтах EEPROM, расположенного на модуле памяти. Эти байты содержат параметры синхронизации, производителя, серийный номер и другую полезную информацию о модуле. Устройства, использующие память, автоматически определяют ключевые параметры модуля, считывая эту информацию. Например, данные SPD на модуле SDRAM могут предоставлять информацию о задержке CAS , чтобы система могла правильно установить ее без вмешательства пользователя.

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

SPD EEPROM также отвечают на адреса I 2 C 0x30–0x37, если они не защищены от записи, а расширение (серия TSE) использует адреса 0x18–0x1F для доступа к дополнительному датчику температуры на кристалле. Все эти значения являются семибитными адресами I 2 C , сформированными префиксом кода идентификатора типа устройства (DTIC) с SA0-2: для чтения (1100) из слота 3 используется 110 0011 = 0x33. С последним битом R/W он формирует 8-битный код выбора устройства. [2] Обратите внимание, что семантика slot-id отличается для операций защиты от записи: для них они вообще не могут передаваться выводами SA. [3]

До SPD чипы памяти распознавались с помощью параллельного обнаружения присутствия (PPD). PPD использовал отдельный штифт для каждого бита информации, что означало, что из-за ограниченного пространства для штифтов можно было сохранить только скорость и плотность модуля памяти.

SDR-SDRAM-память

Устройство памяти на модуле SDRAM , содержащее данные SPD (обведено красным)

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

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

Содержимое SPD для SDR SDRAM [7]
БайтКусочекПримечания
(реш.)(шестнадцатеричный)76543210
00x00Количество присутствующих байтовОбычно 128
10x01log 2 (размер SPD EEPROM)Обычно 8 (256 байт)
20x02Базовый тип памяти (4: SPD SDRAM)
30x03Биты адреса строки банка 2 (0–15)Биты адреса строки банка 1 (1–15)Банк 2 равен 0, если такой же, как банк 1
40x04Биты адреса столбца банка 2 (0–15)Биты адреса столбца банка 1 (1–15)Банк 2 равен 0, если такой же, как банк 1
50x05Количество банков ОЗУ на модуле (1–255)Обычно 1 или 2
60x06Младший байт ширины данных модуляОбычно 64 или 72 для ECC DIMM
70x07Ширина данных модуля, старший байт0, если ширина не ≥ 256 бит
80x08Уровень напряжения интерфейса этой сборки (не совпадает с напряжением питания V cc ) (0–4)Расшифровано с помощью поиска по таблице
90x09Наносекунды (0–15)Десятые доли наносекунды (0,0–0,9)Время тактового цикла при максимальной задержке CAS
100x0aНаносекунды (0–15)Десятые доли наносекунды (0,0–0,9)Время доступа SDRAM от часов (t AC )
110x0bТип конфигурации DIMM (0–2): без ECC, четность, ECCПоиск в таблице
120x0cСебяПериод обновления (0–5): 64, 256, 128, 32, 16, 8 кГцОбновить требования
130x0dБанк 2 2×Ширина первичной SDRAM-памяти банка 1 (1–127, обычно 8)Ширина данных SDRAM-устройств банка 1. Банк 2 может иметь ту же ширину или ширину в 2 раза больше, если установлен бит 7.
140x0eБанк 2 2×Ширина ECC SDRAM банка 1 (0–127)Ширина устройств SDRAM ECC/четности банка 1. Банк 2 может иметь ту же ширину или ширину в 2 раза больше, если установлен бит 7.
150x0fЗадержка часов для случайного чтения столбцовОбычно 1
160x10Страница8421Поддерживаемые длины пакетов (растровое изображение)
170x11Банки на устройство SDRAM (1–255)Обычно 2 или 4
180x127654321Поддерживаемые задержки CAS (растровое изображение)
190x136543210Поддерживаемые задержки CS (битовое изображение)
200x146543210Поддерживаемые задержки WE (растровое изображение)
210x15ИзбыточныйДифференциальные часыЗарегистрированные данныеБуферизованные данныеPLL на картеЗарегистрированный адрес.Буферизованный адрес.Битовая карта модуля памяти
220x16Верхний допуск V cc (напряжение питания)Более низкий допуск V cc (напряжение питания)Запись/1 пакет чтенияПредварительно зарядить всеАвтоматическая предварительная зарядкаРанняя предварительная зарядка RASПоддержка функции чипа памяти bitmap
230x17Наносекунды (4–18)Десятые доли наносекунды (0–9: 0,0–0,9)Время тактового цикла при средней задержке CAS
240x18Наносекунды (4–18)Десятые доли наносекунды (0–9: 0,0–0,9)Время доступа к данным от часов (t AC )
250x19Наносекунды (1–63)0,25 нс (0–3: 0,00–0,75)Время тактового цикла при короткой задержке CAS.
260x1aНаносекунды (1–63)0,25 нс (0–3: 0,00–0,75)Время доступа к данным от часов (t AC )
270x1бНаносекунды (1–255)Минимальное время предварительной зарядки ряда (t RP )
280x1cНаносекунды (1–255)Минимальная задержка между активными строками (t RRD )
290x1dНаносекунды (1–255)Минимальная задержка RAS - CAS (t RCD )
300x1eНаносекунды (1–255)Минимальное время активности для предварительной зарядки (t RAS )
310x1f512 МБ256 МБ128 МБ64 МБ32 МБ16 МБ8 МБ4 МБПлотность банка модуля (битовая карта). Два бита устанавливаются, если банки разного размера.
320x20Знак (1: −)Наносекунды (0–7)Десятые доли наносекунды (0–9: 0,0–0,9)Время установки адреса/команды с часов
330x21Знак (1: −)Наносекунды (0–7)Десятые доли наносекунды (0–9: 0,0–0,9)Время удержания адреса/команды после часов
340x22Знак (1: −)Наносекунды (0–7)Десятые доли наносекунды (0–9: 0,0–0,9)Время настройки ввода данных с часов
350x23Знак (1: −)Наносекунды (0–7)Десятые доли наносекунды (0–9: 0,0–0,9)Время удержания ввода данных после часов
36–610x24–0x3dСдержанныйДля будущей стандартизации
620x3eОсновная редакция (0–9)Незначительная доработка (0–9)Уровень пересмотра SPD; например, 1.2
630x3fКонтрольная суммаСумма байтов 0–62, затем не инвертируется
64–710x40–47Идентификатор производителя JEDEC.Сохранено с прямым порядком байтов, с добавлением конечных нулей
720x48Место производства модуляКод поставщика
73–900x49–0x5aНомер детали модуляASCII, с пробелами
91–920x5b–0x5cКод ревизии модуляКод поставщика
930x5dДесятки лет (0–9: 0–90)Годы (0–9)Дата изготовления (ГГНН)
940x5eДесятки недель (0–5: 0–50)Недели (0–9)
95–980x5f–0x62Серийный номер модуляКод поставщика
99–1250x63–0x7fДанные производителяВозможно улучшение профиля производительности
1260x7e0x66 [ sic ] для 66 МГц, 0x64 для 100 МГцПоддержка частот Intel
1270x7fCLK0CLK1CLK3CLK390/100 °СCL3CL2Одновременный APБитовая карта функций Intel

DDR-SDRAM-память

Формат DDR DIMM SPD является расширением формата SDR SDRAM. В основном диапазоны параметров масштабируются для обеспечения более высоких скоростей.

Содержимое SPD для DDR SDRAM [8]
БайтКусочекПримечания
(реш.)(шестнадцатеричный)76543210
00x00Количество записанных байтовОбычно 128
10x01log 2 (размер SPD EEPROM)Обычно 8 (256 байт)
20x02Базовый тип памяти (7 = DDR SDRAM)
30x03Биты адреса строки банка 2 (0–15)Биты адреса строки банка 1 (1–15)Банк 2 равен 0, если он такой же, как банк 1.
40x04Биты адреса столбца банка 2 (0–15)Биты адреса столбца банка 1 (1–15)Банк 2 равен 0, если он такой же, как банк 1.
50x05Количество банков ОЗУ на модуле (1–255)Обычно 1 или 2
60x06Младший байт ширины данных модуляОбычно 64 или 72 для ECC DIMM
70x07Ширина данных модуля, старший байт0, если ширина не ≥ 256 бит
80x08Уровень напряжения интерфейса этой сборки (не совпадает с напряжением питания V cc ) (0–5)Расшифровано с помощью поиска по таблице
90x09Наносекунды (0–15)Десятые доли наносекунды (0,0–0,9)Время тактового цикла при максимальной задержке CAS.
100x0aДесятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время доступа SDRAM от часов (t AC )
110x0bТип конфигурации DIMM (0–2): без ECC, четность, ECCПоиск в таблице
120x0cСебяПериод обновления (0–5): 64, 256, 128, 32, 16, 8 кГцОбновить требования
130x0dБанк 2 2×Ширина первичной SDRAM-памяти банка 1 (1–127)Ширина данных SDRAM-устройств банка 1. Банк 2 может иметь ту же ширину или ширину в 2 раза больше, если установлен бит 7.
140x0eБанк 2 2×Ширина ECC SDRAM банка 1 (0–127)Ширина устройств SDRAM ECC/четности банка 1. Банк 2 может иметь ту же ширину или ширину в 2 раза больше, если установлен бит 7.
150x0fЗадержка часов для случайного чтения столбцовОбычно 1
160x10Страница8421Поддерживаемые длины пакетов (растровое изображение)
170x11Банки на устройство SDRAM (1–255)Обычно 4
180x1243.532.521.51Поддерживаемые задержки CAS (растровое изображение)
190x136543210Поддерживаемые задержки CS (битовое изображение)
200x146543210Поддерживаемые задержки WE (растровое изображение)
210x15хДифференциальные часыВнешнее включение переключателя FETВстроенный переключатель FET включаетсяPLL на картеЗарегистрированБуферизованныйБитовая карта модуля памяти
220x16Быстрый APОдновременная автоматическая предварительная зарядкаВерхний допуск V cc (напряжение питания)Более низкий допуск V cc (напряжение питания)Включает слабый драйверБитовая карта характеристик микросхемы памяти
230x17Наносекунды (0–15)Десятые доли наносекунды (0,0–0,9)Время тактового цикла при средней задержке CAS.
240x18Десятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время доступа к данным от часов (t AC )
250x19Наносекунды (0–15)Десятые доли наносекунды (0,0–0,9)Время тактового цикла при короткой задержке CAS.
260x1aДесятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время доступа к данным от часов (t AC )
270x1бНаносекунды (1–63)0,25 нс (0–0,75)Минимальное время предварительной зарядки ряда (t RP )
280x1cНаносекунды (1–63)0,25 нс (0–0,75)Минимальная задержка между активными строками (t RRD )
290x1dНаносекунды (1–63)0,25 нс (0–0,75)Минимальная задержка RAS - CAS (t RCD )
300x1eНаносекунды (1–255)Минимальное время активности для предварительной зарядки (t RAS )
310x1f512 МБ256 МБ128 МБ64 МБ32 МБ16 МБ/
4 ГиБ
8 МБ/
2 ГиБ
4 МБ/
1 ГиБ
Плотность банка модуля (битовая карта). Два бита устанавливаются, если банки разного размера.
320x20Десятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время установки адреса/команды с часов
330x21Десятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время удержания адреса/команды после часов
340x22Десятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время настройки ввода данных с часов
350x23Десятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время удержания ввода данных после часов
36–400x24–0x28СдержанныйИнформация о суперсете
410x29Наносекунды (1–255)Минимальное время от активного до активного/обновления (t RC )
420x2aНаносекунды (1–255)Минимальное обновление до активного состояния/время обновления (t RFC )
430x2bНаносекунды (1–63 или 255: без максимума)0,25 нс (0–0,75)Максимальное время тактового цикла (t CK макс.)
440x2cСотые доли наносекунды (0,01–2,55)Максимальный перекос, DQS к любому DQ. (t DQSQ макс.)
450x2dДесятые доли наносекунды (0,0–1,2)Сотые доли наносекунды (0,00–0,09)Коэффициент перекоса при чтении данных (t QHS )
460x2eСдержанныйДля будущей стандартизации
470x2fВысотаВысота модуля DIMM, поиск по таблице
48–610x30–0x3dСдержанныйДля будущей стандартизации
620x3eОсновная редакция (0–9)Незначительная доработка (0–9)Уровень ревизии SPD, 0.0 или 1.0
630x3fКонтрольная суммаСумма байтов 0–62, затем не инвертируется
64–710x40–47Идентификатор производителя JEDEC.Сохранено с прямым порядком байтов, с добавлением конечных нулей
720x48Место производства модуляКод поставщика
73–900x49–0x5aНомер детали модуляASCII, с пробелами
91–920x5b–0x5cКод ревизии модуляКод поставщика
930x5dДесятки лет (0–90)Годы (0–9)Дата изготовления (ГГНН)
940x5eДесятки недель (0–50)Недели (0–9)
95–980x5f–0x62Серийный номер модуляКод поставщика
99–1270x63–0x7fДанные производителяВозможно улучшение профиля производительности

DDR2 SDRAM

Стандарт DDR2 SPD вносит ряд изменений, но в целом похож на вышеизложенное. Одно заметное удаление — запутанная и малоиспользуемая поддержка DIMM с двумя рангами разных размеров.

Для полей времени цикла (байты 9, 23, 25 и 49), которые кодируются в формате BCD , определены некоторые дополнительные кодировки для десятых цифр, чтобы точно представлять некоторые общие временные параметры:

Расширения DDR2 BCD
ШестигранникДвоичныйЗначение
А10100,25 ( 14 )
Б10110,33 ( 13 )
С11000,66 ( 23 )
Д11010,75 ( 34 )
Э11100,875 ( 78 , расширение Nvidia XMP)
Ф1111Сдержанный
Содержимое SPD для DDR2 SDRAM [9]
БайтКусочекПримечания
ДекабрьШестигранник76543210
00x00Количество записанных байтовОбычно 128
10x01log 2 (размер SPD EEPROM)Обычно 8 (256 байт)
20x02Базовый тип памяти (8 = DDR2 SDRAM)
30x03СдержанныйБиты адреса строки (1–15)
40x04СдержанныйБиты адреса столбца (1–15)
50x05Вертикальная высотаКуча?КонС?Ранги−1 (1–8)Обычно 0 или 1, что означает 1 или 2
60x06Ширина данных модуляОбычно 64 или 72 для ECC DIMM
70x07Сдержанный
80x08Уровень напряжения интерфейса этой сборки (не совпадает с напряжением питания V cc ) (0–5)Расшифровывается с помощью таблицы поиска.
Обычно 5 = SSTL 1,8 В
90x09Наносекунды (0–15)Десятые доли наносекунды (0,0–0,9)Время тактового цикла при максимальной задержке CAS.
100x0aДесятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время доступа SDRAM от часов (t AC )
110x0bТип конфигурации DIMM (0–2): без ECC, четность, ECCПоиск в таблице
120x0cСебяПериод обновления (0–5): 64, 256, 128, 32, 16, 8 кГцОбновить требования
130x0dШирина первичной SDRAM (1–255)Обычно 8 (модуль собран из ×8 деталей) или 16
140x0eШирина ECC SDRAM (0–255)Ширина банка ECC/четности SDRAM устройств. Обычно 0 или 8.
150x0fСдержанный
160x1084Поддерживаемые длины пакетов (растровое изображение)
170x11Банки на устройство SDRAM (1–255)Обычно 4 или 8
180x12765432Поддерживаемые задержки CAS (растровое изображение)
190x13Сдержанный
200x14Мини-UDIMMМини-RDIMMМикро-DIMMSO-DIMMUDIMMRDIMMТип DIMM этой сборки (битовая карта)
210x15Модуль - это аналитический зондВнешнее включение переключателя FETБитовая карта модуля памяти
220x16Включает слабый драйверБитовая карта характеристик микросхемы памяти
230x17Наносекунды (0–15)Десятые доли наносекунды (0,0–0,9)Время тактового цикла при средней задержке CAS.
240x18Десятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время доступа к данным от часов (t AC )
250x19Наносекунды (0–15)Десятые доли наносекунды (0,0–0,9)Время тактового цикла при короткой задержке CAS.
260x1aДесятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время доступа к данным от часов (t AC )
270x1бНаносекунды (1–63)1/4 нс (0–0,75)Минимальное время предварительной зарядки ряда (t RP )
280x1cНаносекунды (1–63)1/4 нс (0–0,75)Минимальная задержка между активными строками (t RRD )
290x1dНаносекунды (1–63)1/4 нс (0–0,75)Минимальная задержка RAS - CAS (t RCD )
300x1eНаносекунды (1–255)Минимальное время активности для предварительной зарядки (t RAS )
310x1f512 МБ256 МБ128 МБ16 ГиБ8 ГиБ4 ГиБ2 ГиБ1 ГиБРазмер каждого ранга (растровое изображение).
320x20Десятые доли наносекунды (0,0–1,2)Сотые доли наносекунды (0,00–0,09)Время установки адреса/команды с часов
330x21Десятые доли наносекунды (0,0–1,2)Сотые доли наносекунды (0,00–0,09)Время удержания адреса/команды после часов
340x22Десятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время установки ввода данных от строба
350x23Десятые доли наносекунды (0,0–0,9)Сотые доли наносекунды (0,00–0,09)Время удержания ввода данных после строба
360x24Наносекунды (1–63)0,25 нс (0–0,75)Минимальное время восстановления записи (t WR )
370x25Наносекунды (1–63)0,25 нс (0–0,75)Внутренняя задержка команды записи на чтение (t WTR )
380x26Наносекунды (1–63)0,25 нс (0–0,75)Внутренняя задержка команды чтения для предварительной зарядки (t RTP )
390x27СдержанныйЗарезервировано для «характеристик зонда анализа памяти»
400x28t RC дробные ns (0–5):
0, 0,25, 0,33, 0,5, 0,66, 0,75
t RFC дробные ns (0–5):
0, 0,25, 0,33, 0,5, 0,66, 0,75
т RFC + 256 нсРасширение байтов 41 и 42.
410x29Наносекунды (1–255)Минимальное время от активного до активного/обновления (t RC )
420x2aНаносекунды (1–255)Минимальное обновление до активного состояния/время обновления (t RFC )
430x2bНаносекунды (0–15)Десятые доли наносекунды (0,0–0,9)Максимальное время тактового цикла (t CK max)
440x2cСотые доли наносекунды (0,01–2,55)Максимальный перекос, DQS к любому DQ. (t DQSQ макс.)
450x2dСотые доли наносекунды (0,01–2,55)Коэффициент перекоса при чтении данных (t QHS )
460x2eМикросекунды (1–255)Время повторной блокировки ФАПЧ
47–610x2f–0x3dСдержанныйДля будущей стандартизации.
620x3eОсновная редакция (0–9)Незначительная доработка (0.0–0.9)Уровень ревизии SPD, обычно 1.0
630x3fКонтрольная суммаСумма байтов 0–62, не инвертируется
64–710x40–47Идентификатор JEDEC производителяСохранено с прямым порядком байтов, с завершающим нулем
720x48Место производства модуляКод поставщика
73–900x49–0x5aНомер детали модуляASCII, с пробелами (ограничено (,-,), A–Z, a–z, 0–9, пробел)
91–920x5b–0x5cКод ревизии модуляКод поставщика
930x5dГоды с 2000 (0–255)Дата изготовления (ГГНН)
940x5eНедели (1–52)
95–980x5f–0x62Серийный номер модуляКод поставщика
99–1270x63–0x7fДанные производителяВозможно улучшение профиля производительности

DDR3 SDRAM

Стандарт DDR3 SDRAM значительно перестраивает и упрощает структуру содержимого SPD. Вместо ряда полей наносекунд, закодированных в BCD, некоторые единицы «базы времени» указаны с высокой точностью, а различные параметры синхронизации закодированы как кратные этой базовой единицы. [10] Кроме того, практика указания различных значений времени в зависимости от задержки CAS была отменена; теперь есть только один набор параметров синхронизации.

Версия 1.1 позволяет некоторым параметрам быть выраженными как значение "средней временной базы" плюс (со знаком, −128 +127) коррекция "точной временной базы". Обычно средняя временная база составляет 1/8 нс (125 пс), а точная временная база составляет 1, 2,5 или 5 пс. Для совместимости с более ранними версиями, в которых отсутствует коррекция, число средней временной базы обычно округляется, а коррекция становится отрицательной. Значения, которые работают таким образом:

Двухчастные параметры синхронизации DDR3 SPD
MTB байтFTB-байтЦенить
1234t CK min, минимальный тактовый период
1635t AA min, минимальное время задержки CAS
1836t RCD мин, минимальная задержка RAS# к CAS#
2037t RP min, минимальная задержка предварительной зарядки строки
21, 2338t RC min, минимальная задержка от активного состояния до активного/предзарядного состояния
Содержимое SPD для DDR3 SDRAM [11] [12]
БайтКусочекПримечания
ДекабрьШестигранник76543210
00x00Исключить серийный номер из CRCВсего байт SPD (undef/256)Использовано байтов SPD (undef/128/176/256)
10x01Основная редакция SPDНезначительная ревизия СПД1.0, 1.1, 1.2 или 1.3
20x02Базовый тип памяти (11 = DDR3 SDRAM)Тип микросхем оперативной памяти
30x03СдержанныйТип модуляТип модуля; например, 2 = DIMM без буферизации, 3 = SO-DIMM, 11 = LRDIMM
40x04Банковский адрес бит−3log 2 (бит на чип)−28Ноль означает 8 банков, 256 Мибит.
50x05Биты адреса строки−12Биты адреса столбца−9
60x06Сдержанный1,25 В1,35 ВНе 1,5 ВПоддерживаемые напряжения модулей. По умолчанию 1,5 В.
70x07ранги−1log 2 (биты ввода-вывода/чип)−2Организация модуля
80x08Биты ECC (001=8)log 2 (биты данных)−30x03 для 64-битной памяти DIMM без ECC.
90x09Дивиденд, пикосекунды (1–15)Делитель, пикосекунды (1–15)Точная временная база, делимое/делитель
100x0aДивиденд, наносекунды (1–255)Средняя временная база, делимое/делитель; обычно 1/8
110x0bДелитель, наносекунды (1–255)
120x0cМинимальное время цикла t CK минВ кратности MTB
130x0dСдержанный
140x0e1110987654Поддерживаемые задержки CAS (растровое изображение)
150x0f18171615141312
160x10Минимальное время задержки CAS, t AA минКратно MTB; например, 80/8 нс.
170x11Минимальное время восстановления записи, t WR минКратно MTB; например, 120/8 нс.
180x12Минимальное время задержки RAS-CAS, tRCD минКратно MTB; например, 100/8 нс.
190x13Минимальное время активной задержки между строками, t RRD минКратно MTB; например, 60/8 нс.
200x14Минимальное время предварительной зарядки ряда, t RP минКратно MTB; например, 100/8 нс.
210x15t RC мин, бит 11:8t RAS мин, бит 11:8Старшие 4 бита байтов 23 и 22
220x16Минимальное активное время, t RAS мин, бит 7:0Кратно MTB; например, 280/8 нс.
230x17Минимальный активный для активного/обновления, t RC min, биты 7:0Кратно MTB; например, 396/8 нс.
240x18Минимальная задержка восстановления обновления, t RFC min, бит 7:0Кратно MTB; например, 1280/8 нс.
250x19Минимальная задержка восстановления обновления, t RFC min, бит 15:8
260x1aМинимальная внутренняя задержка записи-чтения, t WTR minКратно MTB; например, 60/8 нс.
270x1бМинимальная задержка внутреннего чтения для предварительной зарядки, t RTP мин.Кратно MTB; например, 60/8 нс.
280x1cСдержанныйt FAW мин, бит 11:8Кратно MTB; например, 240/8 нс.
290x1dМинимальная задержка окна активации t FAW min, бит 7:0
300x1eDLL-выкл.РЗК/7РЗК/6Дополнительные функции SDRAM поддерживают растровые изображения
310x1fПАСРОДТСАСРЭТР 1×ЭТР (95 °С)Возможности термообработки и обновления SDRAM
320x20ПодарокТочность (TBD; в настоящее время 0 = не определено)Присутствует ли термодатчик DIMM?
330x21Нестандартно.Количество кубиковНагрузка сигналаНестандартный тип устройства SDRAM (например, многослойный кристалл)
340x22t CK min коррекция (новое для 1.1)Знаковое кратное FTB, добавленное к байту 12
350x23t AA min коррекция (новое для 1.1)Знаковое кратное FTB, добавленное к байту 16
360x24t RCD мин коррекция (новое для 1.1)Знаковое кратное FTB, добавленное к байту 18
370x25t RP min коррекция (новое для 1.1)Знаковое кратное FTB, добавленное к байту 20
380x26t RC min коррекция (новое для 1.1)Знаковое кратное FTB, добавленное к байту 23
39–400x27–0x28СдержанныйДля будущей стандартизации.
410x29Зависит от поставщикат МАВМаксимальное количество активаций (MAC) (непроверено/700k/600k/.../200k/зарезервировано/∞)Для смягчения удара молотком
42–590x2a–0x3bСдержанныйДля будущей стандартизации.
600x3cВысота модуля, мм (1–31, >45)Номинальная высота модуля
610x3dТолщина спинки, мм (1–16)Толщина фасада, мм (1–16)Толщина модуля, значение = ceil(мм) − 1
620x3eДизайнПересмотрНомер проекта JEDECИспользован референсный дизайн JEDEC (11111=нет)
63–1160x3f–0x74Раздел, посвященный конкретному модулюРазличается между зарегистрированным/небуферизованным
1170x75Идентификатор производителя модуля, lsbyteНазначено JEP-106
1180x76Идентификатор производителя модуля, мсбайт
1190x77Место производства модуляКод поставщика
1200x78Десятки летГодыГод производства (BCD)
1210x79Десятки недельНеделиПроизводственная неделя (BCD)
122–1250x7a–0x7dСерийный номер модуляКод поставщика
126–1270x7e–0x7fСПД КПР-16Включает байты 0–116 или 0–125; см. байт 0 бит 7
128–1450x80–0x91Номер детали модуляПодмножество ASCII, дополненное пробелами
146–1470x92–0x93Код ревизии модуляОпределено поставщиком
148–1490x94–0x95Идентификатор производителя DRAMВ отличие от производителя модуля
150–1750x96–0xАФДанные производителя
176–2550xB0–0xFFДоступно для использования клиентами

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

DDR4 SDRAM

Стандарт DDR4 SDRAM "Annex L" для SPD изменяет используемый модуль EEPROM. Вместо старых 256-байтовых EEPROM, совместимых с AT24C02, JEDEC теперь определяет новый нестандартный тип EE1004 с двумя страницами на уровне SMBus, каждая из которых имеет 256 байт. Новая память по-прежнему использует старые адреса 0x50–0x57, но два дополнительных адреса в 0x36 (SPA0) и 0x37 (SPA1) теперь используются для получения команд на выбор текущей активной страницы для шины, форма переключения банков . [13] Внутри каждая логическая страница далее делится на два физических блока по 128 байт каждый, что в сумме составляет четыре блока и 512 байт. [14] Другая семантика для диапазонов "специальных" адресов остается прежней, хотя защита от записи теперь адресуется блоками, и для изменения ее статуса теперь требуется высокое напряжение на SA0. [15]

Приложение L определяет несколько различных макетов, которые могут быть включены в 512-байтовый (из которых определены максимум 320 байт) шаблон, в зависимости от типа модуля памяти. Определения битов аналогичны DDR3. [14]

Содержимое SPD для DDR4 SDRAM [16]
БайтКусочекПримечания
ДекабрьШестигранник76543210
00x00Использовано байтов SPD
10x01Ревизия СПД nОбычно 0x10, 0x11, 0x12
20x02Базовый тип памяти (12 = DDR4 SDRAM)Тип микросхем оперативной памяти
30x03СдержанныйТип модуляТип модуля; например, 2 = DIMM без буферизации, 3 = SO-DIMM, 11 = LRDIMM
40x04Банковская группа битыБанковский адрес бит−2Общая емкость SDRAM на кристалл в мегабитахНоль означает отсутствие банковских групп, 4 банка, 256 Мибит.
50x05СдержанныйБиты адреса строки−12Биты адреса столбца−9
60x06Тип первичного пакета SDRAMКоличество кубиковСдержанныйЗагрузка сигнала
70x07СдержанныйМаксимальное окно активации (tMAW)Максимальное количество активаций (MAC)Дополнительные функции SDRAM
80x08СдержанныйВозможности термообработки и обновления SDRAM
90x09Последующий ремонт упаковки (PPR)Мягкий ППРСдержанныйДругие дополнительные функции SDRAM
100x0aТип пакета SDRAMКоличество кубиков−1Коэффициент плотности DRAMЗагрузка сигналаТип вторичного пакета SDRAM
110x0bСдержанныйНесокрушимый флагДействующий флагНоминальное напряжение модуля, VDD
120x0cСдержанныйРанговый миксРанги пакетов на DIMM−1Ширина устройства SDRAMОрганизация модуля
130x0dСдержанныйРасширение ширины автобусаШирина первичной шиныШирина шины памяти модуля в битах
140x0eТепловой датчикСдержанныйМодуль термодатчика
150x0fСдержанныйТип расширенного базового модуля
160x10Сдержанный
170x11СдержанныйСредняя временная база (MTB)Точная временная развертка (FTB)Измеряется в пс.
180x12Минимальное время цикла SDRAM, t CKAVG минКратно MTB; например, 100/8 нс.
190x13Максимальное время цикла SDRAM, t CKAVG maxКратно MTB; например, 60/8 нс.
200x141413121110987Поддерживаемые битовые маски задержек CAS
210x152221201918171615Поддерживаемые битовые маски задержек CAS
220x163029282726252423Поддерживаемые битовые маски задержек CAS
230x17Низкий диапазон CLСдержанный363534333231Поддерживаемые битовые маски задержек CAS
240x18Минимальное время задержки CAS, t AA минКратно MTB; например, 1280/8 нс.
250x19Минимальное время задержки RAS-CAS, tRCD минКратно MTB; например, 60/8 нс.
260x1aМинимальное время задержки предварительной зарядки ряда, t RP минКратно MTB; например, 60/8 нс.
270x1бВерхние полубайты для t RAS min и t RC min
280x1cМинимальное время задержки от активного до предварительного заряда, t RAS min младший значащий байтВ кратности MTB
290x1dМинимальное время задержки от активного до активного/обновляющего состояния, t RC min младший значащий байтВ кратности MTB
300x1eМинимальное время задержки восстановления обновления, t RFC1 min младший значащий байтВ кратности MTB
310x1fМинимальное время задержки восстановления обновления, t RFC1 min старший байтВ кратности MTB
320x20Минимальное время задержки восстановления обновления, t RFC2 min младший значащий байтВ кратности MTB
330x21Минимальное время задержки восстановления обновления, t RFC2 min старший байтВ кратности MTB
340x22Минимальное время задержки восстановления обновления, t RFC4 min младший значащий байтВ кратности MTB
350x23Минимальное время задержки восстановления обновления, t RFC4 min старший байтВ кратности MTB
360x24Сдержанныйt FAW min наиболее значимый полубайт
370x25Минимальное время задержки четырех окон активации, t FAW min младший значащий байтВ кратности MTB
380x26Минимальное время задержки активации, t RRD_S мин, другая группа банковВ кратности MTB
390x27Минимальное время задержки активации, t RRD_L мин, та же группа банковВ кратности MTB
400x28Минимальное время задержки CAS-CAS, t CCD_L мин, одна и та же группа банковВ кратности MTB
410x29Верхний полубайт для t WR мин.
420x2aМинимальное время восстановления записи, t WR минВ кратности MTB
430x2bВерхние полубайты для t WTR мин.
440x2cМинимальное время записи для чтения, t WTR_S мин, другая группа банковВ кратности MTB
450x2dМинимальное время записи для чтения, t WTR_L мин, та же группа банковВ кратности MTB
49–590x2e–0x3bСдержанныйРаздел базовой конфигурации
60–770x3c–0x4dРазъем для битового отображения SDRAM
78–1160x4e–0x74СдержанныйРаздел базовой конфигурации
1170x75Точное смещение для минимального времени задержки CAS-CAS, t CCD_L мин, тот же банкДополнительный множитель для единиц FTB
1180x76Точное смещение для минимального времени задержки активации, t RRD_L мин, та же группа банковДополнительный множитель для единиц FTB
1190x77Точное смещение для минимального времени задержки активации, t RRD_S мин, другая группа банковДополнительный множитель для единиц FTB
1200x78Точное смещение для минимального времени задержки от активного к активному/обновляющему, t RC мин.Дополнительный множитель для единиц FTB
1210x79Точное смещение для минимального времени задержки предварительной зарядки строки, t RP мин.Дополнительный множитель для единиц FTB
1220x7aТочное смещение для минимального времени задержки RAS-CAS, t RCD мин.Дополнительный множитель для единиц FTB
1230x7бТочное смещение для минимального времени задержки CAS, t AA мин.Дополнительный множитель для единиц FTB
1240x7cТочное смещение для максимального времени цикла SDRAM, t CKAVG maxДополнительный множитель для единиц FTB
1250x7dТочное смещение для минимального времени цикла SDRAM, t CKAVG мин.Дополнительный множитель для единиц FTB
1260x7eЦиклический код избыточности (CRC) для раздела базовой конфигурации, младший байтАлгоритм CRC16
1270x7fЦиклический код избыточности (CRC) для раздела базовой конфигурации, старший байтАлгоритм CRC16
128–1910x80–0xbfРаздел, посвященный конкретному модулюВ зависимости от семейства модулей памяти (UDIMM, RDIMM, LRDIMM)
192–2550xc0–0xffПараметры, характерные для архитектуры гибридной памяти
256–3190x100–0x13fРасширенный блок параметров функции
320–3210x140–0x141Производитель модуляСм. JEP-106
3220x142Место производства модуляКод места производства, определенный производителем
3230x143Год изготовления модуляПредставлено в двоично-десятичном коде (BCD)
3240x144Неделя производства модулейПредставлено в двоично-десятичном коде (BCD)
325–3280x145–0x148Серийный номер модуляОпределенный производителем формат уникального серийного номера для всех номеров деталей
329–3480x149–0x15cНомер детали модуляНомер детали ASCII, неиспользуемые цифры должны быть установлены на 0x20
3490x15дКод ревизии модуляКод ревизии, определенный производителем
350–3510x15e–0x15fИдентификационный код производителя DRAMСм. JEP-106
3520x160степпинг DRAMШаг, определенный производителем, или 0xFF, если не используется
353–3810x161–0x17dДанные производителя
382–3830x17e–0x17fСдержанный

DDR5 SDRAM

Предварительная таблица для DDR5, основанная на спецификации JESD400-5. [17]

DDR5 расширяет таблицу SPD до 1024 байт. SPD DDR5 использует шину I3C .

Содержимое SPD для DDR5 SDRAM
БайтКусочекПримечания
ДекабрьШестигранник76543210
00x00Количество байтов в устройстве SPD
10x01Пересмотр SPD для параметров базовой конфигурации
20x02Тип протокола команд байта ключа/хост-шины
30x03Ключевой байт/тип модуля
40x04Первая плотность и корпус SDRAM
50x05Первая адресация SDRAM
60x06Ширина первого ввода-вывода SDRAM
70x07Первые группы банков SDRAM и банки в каждой банковской группе
80x08Вторая плотность SDRAM и корпус
90x09Вторая адресация SDRAM
100x0aШирина второго SDRAM ввода-вывода
110x0bГруппы банков второго SDRAM и банки в каждой группе банков
120x0cДополнительные функции SDRAM
130x0dВозможности термического и освежающего режима
140x0eСдержанный
150x0fСдержанный
160x10Номинальное напряжение SDRAM, VDD

Расширения

Стандарт JEDEC определяет только некоторые байты SPD. Действительно критические данные помещаются в первые 64 байта, [8] [9] [18] [19] [20] , а часть оставшейся части предназначена для идентификации производителя. Однако обычно предоставляется 256-байтовая EEPROM. Оставшееся пространство используется в различных целях.

Расширенные профили производительности (EPP)

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

Enhanced Performance Profiles — это расширение SPD, разработанное Nvidia и Corsair , которое включает дополнительную информацию для более производительной работы DDR2 SDRAM , включая напряжение питания и информацию о времени выполнения команд, не включенную в спецификацию JEDEC SPD. Информация EPP хранится в той же EEPROM, но в байтах 99–127, которые не используются стандартным DDR2 SPD. [21]

Использование EPP SPD ROM
БайтыРазмерПолные профилиСокращенные профили
99–1035Заголовок EPP
104–1096Профиль FP1Профиль AP1
110–1156Профиль AP2
116–1216Профиль FP2Профиль AP3
122–1276Профиль AP4

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

Название Nvidia для EPP-памяти, которая была квалифицирована для производительности и стабильности, - "SLI-ready memory". [22] Термин "SLI-ready-memory" вызвал некоторую путаницу, так как он не имеет ничего общего с SLI-видео . Можно использовать EPP/SLI-память с одной видеокартой (даже не-Nvidia), и можно запустить многокарточную SLI-видеонастройку без EPP/SLI-памяти.

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

Профиль экстремальной памяти Intel (XMP)

Аналогичное, разработанное Intel расширение JEDEC SPD было разработано для DDR3 SDRAM DIMM, позже использованное также в DDR4 и DDR5 SDRAM . XMP использует байты 176–255, которые не распределены JEDEC, для кодирования более производительных таймингов памяти. [24]

Позже AMD разработала AMP, эквивалентную XMP технологию, для использования в своей линейке модулей памяти «Radeon Memory», оптимизированных для использования на платформах AMD. [25] [26] Кроме того, разработчики материнских плат внедрили собственные технологии, позволяющие их материнским платам на базе AMD считывать профили XMP: MSI предлагает A-XMP, [27] ASUS имеет DOCP (Direct Over Clock Profile), а Gigabyte имеет EOCP (Extended Over Clock Profile). [28]

Использование XMP SPD ROM [29]
Байты DDR3РазмерИспользовать
176–18410Заголовок XMP
185–21933Профиль XMP 1 (настройки «энтузиаст»)
220–25436Профиль XMP 2 («экстремальные» настройки)

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

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

Байты заголовка XMP [29]
DDR3 байтБитыИспользовать
1767:0Байт магического числа XMP 1 0x0C
1777:0Байт 2 магического числа XMP 0x4A
1780Профиль 1 включен (если 0, отключен)
1Профиль 2 включен
3:2Профиль 1 DIMM на канал (1–4 кодируется как 0–3)
5:4Профиль 2 DIMM на канал
7:6Сдержанный
1793:0Номер младшей версии XMP (x.0 или x.1)
7:4Номер основной версии XMP (0.x или 1.x)
1807:0Средний временной дивиденд для профиля 1
1817:0Средний делитель временной развертки для профиля 1 (MTB = делимое/делитель ns)
1827:0Средний временной дивиденд для профиля 2 (например, 8)
1837:0Средний делитель временной развертки для профиля 2 (например, 1, что дает MTB = 1/8 нс)
1847:0Сдержанный
Байты профиля XMP [29]
DDR3 Байт 1DDR3 Байт 2БитыИспользовать
1852200Двадцатые доли напряжения модуля Vdd (0,00 или 0,05)
4:1Модуль Vdd напряжения десятые доли (0,0–0,9)
6:5Единицы напряжения модуля Vdd (0–2)
7Сдержанный
1862217:0Минимальный период синхронизации SDRAM t CK min (единицы MTB)
1872227:0Минимальное время задержки CAS t AA мин (единицы MTB)
1882237:0Поддерживаемые задержки CAS (битовая карта, 4–11 закодированы как биты 0–7)
1892246:0Поддерживаемые задержки CAS (битовая карта, 12–18 закодированы как биты 0–6)
7Сдержанный
1902257:0Минимальное время задержки записи CAS t CWL мин (единицы MTB)
1912267:0Минимальное время задержки предварительной зарядки ряда t RP мин (единицы MTB)
1922277:0Минимальное время задержки RAS-CAS t RCD мин (единицы MTB)
1932287:0Минимальное время восстановления записи t WR min (единицы MTB)
1942293:0t RAS мин. верхний полубайт (биты 11:8)
7:4t RC мин. верхний полубайт (биты 11:8)
1952307:0Минимальное время задержки между активным и предзарядным режимом t RAS min бит 7:0 (единицы MTB)
1962317:0Минимальное время задержки от активного состояния до активного/обновления t RC мин бит 7:0 (единицы MTB)
1972327:0Максимальный средний интервал обновления t REFI lsbyte (единицы MTB)
1982337:0Максимальный средний интервал обновления t REFI мсбайт (единицы MTB)
1992347:0Минимальное время задержки восстановления обновления t RFC min lsbyte (единицы MTB)
2002357:0Минимальное время задержки восстановления обновления t RFC min msbyte (единицы MTB)
2012367:0Минимальное время задержки команды внутреннего считывания для предварительной зарядки t RTP мин (единицы MTB)
2022377:0Минимальное время задержки между активными рядами t RRD мин (единицы MTB)
2032383:0t FAW мин. верхний полубайт (биты 11:8)
7:4Сдержанный
2042397:0Минимальное время задержки окна активации t FAW мин. бит 7:0 (единицы MTB)
2052407:0Минимальное время задержки внутренней команды записи-чтения t WTR мин (единицы MTB)
2062412:0Регулировка времени выполнения команды «запись-чтение» (0–7 тактов)
3Запись в команду чтения знака регулировки поворота (0=втягивание, 1=выталкивание)
6:4Регулировка времени выполнения команды чтения-записи (0–7 тактов)
7Знак регулировки поворота команды чтения-записи (0=втягивание, 1=выталкивание)
2072422:0Регулировка времени выполнения команд подряд (0–7 тактов)
3Знак регулировки обратного поворота (0=втягивание, 1=выталкивание)
7:4Сдержанный
2082437:0Режим скорости системной CMD. 0=JTAG по умолчанию, в противном случае в особых единицах MTB × t CK /нс.
Например, если MTB составляет 1/8 нс, то это в единицах 1/8 тактового цикла.
2092447:0Производительность автоматического самообновления SDRAM.
В версии Standard 1.1 указано, что документация будет определена.
210–218245–2537:0Сдержанный
2192547:0Зарезервированный , индивидуальный код поставщика.

Все приведенные выше данные относятся к DDR3 (XMP 1.1); спецификации DDR4 пока недоступны.

Расширенные профили AMD для разгона (EXPO)

Расширенные профили AMD для разгона (EXPO) — это расширение JEDEC SPD, разработанное для модулей DDR5 DIMM для применения профиля автоматического разгона одним щелчком мыши к системной памяти. [30] [31] Сертифицированные AMD EXPO модули DIMM включают оптимизированные тайминги, которые оптимизируют производительность процессоров Zen 4. [32] В отличие от закрытого стандарта XMP от Intel, стандарт EXPO является открытым и бесплатным. [31] Его можно использовать на платформах Intel. [31] На момент запуска в сентябре 2022 года будет доступно 15 комплектов оперативной памяти от партнеров с сертификацией EXPO, достигающих скорости до 6400 МТ/с. [33]

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

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

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

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

Некоторые ноутбуки Packard Bell AMD также используют этот метод, в этом случае симптомы могут различаться, но это может привести к миганию курсора, а не к звуковому сигналу. Кстати, это также может быть симптомом повреждения BIOS. [34] Хотя обновление 2 ГБ до 4 ГБ также может привести к проблемам.

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

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

  • Программа dmidecode, которая может декодировать информацию о памяти (и других вещах) и работает в Linux , FreeBSD , NetBSD , OpenBSD , BeOS , Cygwin и Solaris . dmidecode не имеет прямого доступа к информации SPD; она сообщает данные SMBIOS о памяти. [35] Эта информация может быть ограниченной или неверной.
  • В системах Linux и FreeBSD программа пользовательского пространства decode-dimms, предоставляемая i2c-tools, декодирует и выводит информацию о любой памяти с информацией SPD в компьютере. [36] [37] Для этого требуется поддержка контроллера SMBus в ядре, драйвер ядра EEPROM, а также подключение SPD EEPROM к SMBus. В старых дистрибутивах Linux decode-dimms.pl был доступен как часть lm_sensors .
  • OpenBSD включает драйвер (spdmem(4)) с версии 4.3 для предоставления информации о модулях памяти. Драйвер был перенесен из NetBSD, где он доступен с версии 5.0.
  • Coreboot считывает и использует информацию SPD для инициализации всех контроллеров памяти в компьютере с указанием времени, размера и других свойств.
  • Системы Windows используют такие программы, как HWiNFO , [38] CPU-Z и Speccy , которые могут считывать и отображать информацию о модуле DRAM из SPD.

Независимое от чипсета чтение и запись информации SPD осуществляется путем прямого доступа к EEPROM памяти с помощью аппаратного и программного обеспечения программатора EEPROM.

Не столь распространенное использование старых ноутбуков — это обычные считыватели SMBus, поскольку внутренняя EEPROM на модуле может быть отключена после того, как BIOS ее прочитает, так что шина по сути будет доступна для использования. Используемый метод заключается в том, чтобы понизить уровень линий A0, A1, чтобы внутренняя память отключилась, позволяя внешнему устройству получить доступ к SMBus. После этого пользовательская сборка Linux или приложение DOS могут получить доступ к внешнему устройству. Распространенное использование — восстановление данных с чипов памяти ЖК-панели для модернизации обычной панели в фирменный ноутбук. На некоторых чипах также хорошей идеей является разделение линий защиты от записи, чтобы встроенные чипы не стирались во время перепрограммирования. Связанная с этим технология — перезапись чипа на веб-камерах, которые часто входят в комплект многих ноутбуков, поскольку скорость шины существенно выше и даже может быть изменена так, чтобы совместимые с 25x чипы можно было считать обратно для последующего клонирования uEFI в случае отказа чипа.

К сожалению, это работает только на DDR3 и ниже, так как DDR4 использует другую безопасность и обычно может быть только прочитана. Можно использовать инструмент типа SPDTool или аналогичный и заменить чип на тот, у которого линия WP свободна, чтобы его можно было изменить на месте. На некоторых чипсетах может появиться сообщение "Несовместимый драйвер SMBus?", поэтому чтение также предотвращается.

Управление светодиодами RGB

Некоторые модули памяти (особенно на игровых ПК ) [39] поддерживают светодиоды RGB, которые управляются фирменными командами SMBus. Это позволяет управлять цветом светодиодов без дополнительных разъемов и кабелей. Драйверы ядра от нескольких производителей, необходимые для управления подсветкой, были использованы для получения доступа, начиная от полного доступа к памяти ядра и заканчивая управлением MSR и портами ввода-вывода, много раз только в 2020 году. [40] [41] [42]

На старом оборудовании

Некоторое старое оборудование требует использования SIMM с параллельным обнаружением присутствия (чаще называемым просто обнаружением присутствия или PD). Часть этого оборудования использует нестандартное кодирование PD, в частности, компьютеры IBM и Hewlett-Packard LaserJet и другие принтеры.

Смотрите также

Ссылки

  1. Томас П. Кениг; Натан Джон (3 февраля 1997 г.), «Обнаружение серийного присутствия готово к освещению», Electronic News , 43 (2153)
  2. ^ Стандарт JEDEC 21-C, раздел 4.1.4 «Определение последовательного обнаружения присутствия (SPD) EEPROM TSE2002av с датчиком температуры (TS) для приложений модуля памяти»
  3. ^ "TN-04-42: Защита от записи с обнаружением последовательного присутствия модуля памяти" (PDF) . Micron .
  4. Дин Кент (24 октября 1998 г.). "Руководство по Ram". Tom's Hardware .
  5. ^ Шимпи, Ананд Лал. "PC100 SDRAM: Введение". www.anandtech.com .
  6. ^ Примечание по применению INN-8668-APN3: Стандарты данных SDRAM SPD, memorytesters.com
  7. ^ Спецификация обнаружения последовательного присутствия (SPD) ПК SDRAM (PDF) , 1.2A, декабрь 1997 г., стр. 28, архивировано из оригинала (PDF) 31 мая 2014 г. , извлечено 30 мая 2014 г.
  8. ^ ab Стандарт JEDEC 21-C, раздел 4.1.2.4 «SPD для DDR SDRAM»
  9. ^ ab Стандарт JEDEC 21-C, раздел 4.1.2.10 «Специальные SPD для DDR2 SDRAM»
  10. ^ "Understanding DDR3 Serial Presence Detect (SPD) Table". Архивировано из оригинала 22 декабря 2015 года . Получено 29 мая 2010 года .
  11. ^ JESD21-C Приложение K: Определение наличия последовательного порта для модулей DDR3 SDRAM, выпуск 4, SPD Revision 1.1
  12. ^ JESD21-C Приложение K: Определение наличия последовательного порта для модулей DDR3 SDRAM, выпуск 6, SPD Revision 1.3
  13. ^ Дельваре, Жан. "[PATCH] eeprom: Новый драйвер ee1004 для памяти DDR4". LKML . Получено 7 ноября 2019 г.
  14. ^ ab JEDEC. "Приложение L: Serial Presence Detect (SPD) для модулей DDR4 SDRAM" (PDF) .
  15. ^ JEDEC. "Спецификация устройств EE1004 и TSE2004 (черновик)" (PDF) . Получено 7 ноября 2019 г.
  16. ^ JESD21-C Приложение L: Определение наличия последовательного порта для модулей DDR4 SDRAM, выпуск 5
  17. ^ «JESD400-5B (JESD400-5B)» . джедек . 2023 . Проверено 31 декабря 2023 г.
  18. ^ Стандарт JEDEC 21-C, раздел 4.1.2.11 «Обнаружение последовательного присутствия (SPD) для модулей DDR3 SDRAM»
  19. ^ Стандарт JEDEC 21-C, раздел 4.1.2 «СТАНДАРТ ОБНАРУЖЕНИЯ ПРИСУТСТВИЯ ПОСЛЕДОВАТЕЛЬНОГО НОМЕРА, Общий стандарт»
  20. ^ Стандарт JEDEC 21-C, раздел 4.1.2.5 «Специальные PD для синхронной DRAM (SDRAM)»
  21. ^ Спецификация дизайна расширенных профилей производительности DDR2 UDIMM (PDF) , Nvidia , 12 мая 2006 г. , получено 5 мая 2009 г.
  22. ^ "Техническое описание - SLI-Ready Memory с улучшенными профилями производительности. Повышение производительности памяти одним щелчком мыши без проблем" (PDF) . Архивировано из оригинала (PDF) 7 декабря 2008 г.
  23. ^ Расширенные профили производительности 2.0 (стр. 2–3)
  24. ^ "Что такое Intel Extreme Memory Profile (Intel XMP)?". Intel . Получено 26 сентября 2022 г. .
  25. ^ "Memory Profile Technology - AMP up your RAM". AMD . 2012 . Получено 8 января 2018 .
  26. ^ Мартин, Райан (23 июля 2012 г.). "AMD представляет свой XMP-эквивалент AMP - eTeknix". eTeknix . Получено 8 января 2018 г.
  27. ^ "MSI — первый в мире бренд, который включил A-XMP на Ryzen для лучшей производительности DDR4, запускает новые модели". MSI . 21 марта 2017 г. . Получено 8 января 2018 г. .
  28. ^ Tradesman1 (26 августа 2016 г.). "Что означает XMP, DOCP, EOCP - Решено - Память". Форумы оборудования Тома . Получено 8 января 2018 г.{{cite web}}: CS1 maint: числовые имена: список авторов ( ссылка )
  29. ^ abc "Спецификация Intel Extreme Memory Profile (XMP), версия 1.1" (PDF) . Intel . Октябрь 2007 г. Архивировано из оригинала (PDF) 6 марта 2012 г. Получено 25 мая 2010 г.
  30. ^ "AMD Extended Profiles for Overclocking". AMD . Получено 26 сентября 2022 г. .
  31. ^ abc Roach, Jacob (6 сентября 2022 г.). «Что такое AMD EXPO и должна ли она быть у моей DDR5?». Digital Trends . Получено 26 сентября 2022 г.
  32. ^ Боншор, Гэвин (30 августа 2022 г.). «Технология памяти AMD EXPO: профили разгона одним щелчком для Ryzen 7000». AnandTech . Получено 26 сентября 2022 г. .
  33. ^ "AMD анонсирует технологию EXPO для разгона памяти DDR5". VideoCardz . 30 августа 2022 г. . Получено 26 сентября 2022 г. .
  34. ^ "Обновление ОЗУ Packard Bell LJ65". Форум оборудования Тома . 9 января 2014 г.
  35. ^ "dmidecode: Для чего он нужен?". Linux.com | Источник информации о Linux . 29 ноября 2004 г.
  36. ^ "декодирование-dimms(1)" . Страница руководства Debian . Проверено 16 декабря 2020 г.
  37. ^ "decode-dimms". www.freebsd.org . Получено 24 января 2021 г. .
  38. ^ "HWiNFO - Профессиональная системная информация и диагностика". HWiNFO .
  39. ^ "Память VENGEANCE RGB PRO series DDR4 | Память для настольных ПК | CORSAIR". www.corsair.com . Получено 26 ноября 2020 г. .
  40. ^ ActiveCyber. Повышение локальных привилегий драйвера Viper RGB (технический отчет). CVE - 2019-18845 – через MITRE Corporation.
  41. ^ ActiveCyber. Повышение локальных привилегий драйвера CORSAIR iCUE (CVE-2020-8808) (технический отчет). CVE - 2020-8808 – через MITRE Corporation.
  42. ^ ActiveCyber. ACTIVE-2020-003: локальное повышение привилегий драйвера управления освещением Trident Z (технический отчет). CVE - 2020-12446 – через MITRE Corporation.
  • Стандарт обнаружения последовательного присутствия, общий стандарт
  • SPD Rev1.0 для DDR SDRAM
  • SPD Rev1.2 для DDR2 SDRAM
  • SPD Rev1.3 для DDR2 SDRAM
  • СПЕЦИАЛЬНАЯ DDR2-1066 SDRAM
  • Linux-пакет i2c-tools
  • Инструкции по использованию lm-sensors или i2c-tools для считывания данных Архивировано 19 мая 2007 г. на Wayback Machine
  • Производительность памяти: 16 ГБ DDR3-1333 до DDR3-2400 на Ivy Bridge IGP с G.Skill — объяснение различных значений таймингов
Взято с "https://en.wikipedia.org/w/index.php?title=Serial_presence_detect&oldid=1267402188#Enhanced_Performance_Profiles_(EPP)"