SPD нетрадиционной ориентации

11 Янв 2017

SPD нетрадиционной ориентации

Как известно, самые главные факторы эволюции опе­ра­тив­ной па­мя­ти пер­сональных платформ связаны с так­то­выми частотами за­­по­­минающей мат­ри­цы и трактов пе­ре­дачи дан­ных, а также со­от­но­ше­нием двух этих ве­ли­чин. При этом в центре внимания не­из­менно на­хо­дится пропускная спо­соб­ность интерфейса DRAM, выраженная в гигабайтах в се­кун­ду. Но поль­зо­ва­телю совсем не­ обя­за­тельно пом­нить цифровые значения, опи­сы­ва­ю­щие про­из­во­ди­тель­ность па­мя­ти. За это отвечает крохотный чип, которым ос­на­ща­ют­ся мо­ду­ли — SPD. Фокус в том, что в бли­жайшее вре­мя на него будут возложены до­пол­ни­тельные обя­зан­ности, о ко­то­рых мало кто до­гадывается.

Немного теории

Полный набор операционных параметров современных схем оперативной памяти включает сотни величин, как цифровых, так и аналоговых, описывающих электрофизические условия и тайминги, требующие учета при иници­а­ли­за­ции DRAM-контроллера и программируемых цепей питания. Одним из этапов процедуры POST, выпол­ня­е­мой встроенным программным обеспечением (UEFI/BIOS) при старте платформы, является задание режимов схем управления DRAM, в соответствии с набором и типом установленных модулей.

Чип Serial Presence Detect на модуле DDR SDRAM

Для автоматической идентификации, каждый из модулей оперативной памяти снабжен дополнительной микро­схе­мой постоянного запоминающего устройства, хранящей его параметры. Традиционно, для этой цели ис­поль­зу­ет­ся чип 24C02 или аналог. Это запоминающее устройство с последовательным доступом и объемом 256 байт.

Термин SPD (Serial Presence Detect) широко используется в технической литературе. Его-то как раз и ожидают важ­ные нововведения, которые до последнего времени незаслуженно остаются в тени:

согласно нормативным документам комитета JEDEC (и дополнения EE1004-v) размер постоянного за­по­ми­на­ющего устройства увеличивается до 512 байт, а сама микросхема снабжается термодатчиком, что дает возможность программно прочитать температуру модуля DIMM в точке размещения SPD-чипа.

Про альтернативы

Отметим, конкурирующая технология интеграции термодатчика в кристаллы DRAM имеет несколько иное по­зи­ци­о­ни­рование: результат измерения оказывает автономное влияние на операционные параметры в пределах одной микросхемы динамической памяти. Доступ хост-процессора персональной платформы к прочитанному значению температуры с целью централизованного управления режимами подсистемы ОЗУ, в зависимости от схе­мо­тех­ни­че­ской реализации невозможен или ограничен.

Технология термокомпенсации в кристалле DRAM

Кроме термокомпенсации, реализованной в кристаллах DRAM, уже несколько десятилетий существуют Vendor-Specific решения по размещению программно-доступных термодатчиков в различных точках системы, в том числе и на модулях памяти, но упомянутый документ JEDEC, явившийся поводом для данной публикации, унифицирует подходы температурного менеджмента DRAM.

Аппаратные подробности

Максимально сходный набор сигналов «старой» и «новой» микросхем облегчил задачу адаптации печатных плат. Посигнально сравним корпуса микросхем:

Слева чип аналогичный 24C02, справа — микросхема объемом 512 байт, снабженная термодатчиком, у которой назначение 7-го контакта отличается от классической микросхемы SPD

 

  • Входные линии A0-A2/SA0-SA2 (контакты 1-3) в двоичном коде задают один из 8 фиксированных адресов, назначаемых DIMM-модулю на I2C-шине. Микросхема сравнивает этот код и адрес, поступивший по шине, в случае их совпадения, отвечает на транзакцию.
  • Двунаправленная линия SDA или Serial Data (контакт 5) используется для передачи в микросхему адреса, записываемых данных и управляющей информации, а также для выдачи читаемых данных.
  • Входная линия SCL или Serial Clock (контакт 6) тактирует информацию, передаваемую по линии Serial Data.
  • Назначение контакта 7 различается: для классического I2C EPROM — защита от записи (Write Protect). Для SPD  с термодатчиком — выход EVENT, сигнализирующий о различных событиях, например, достижении критической температуры. Тип события, а равно полярность сигнала (активный уровень), задается программно.
  • Линия VCC или VDDSPD, контакт 8, предназначена для подачи напряжения питания. Типовые I2C EPROM выпускались для работы в диапазоне рабочих напряжений от 1.8 до 5.5 вольт. Новые микросхемы, согласно нормативным документам JEDEC, опционально поддерживают диапазоны от 1.7 до 3.6 вольт.
  • GND, Ground или VSSSPD — земля источника питания.

Как видно, в новых микросхемах отсутствует аппаратный сигнал защиты записи, так как 7-й контакт используется для цепи EVENT. Операция установки и снятия защиты выполняется программно, при этом аппаратным ключом является подача на линию SA0 повышенного напряжения Vhv = 7.0-10.0 вольт. Этот трюк был необходим для рас­ши­ре­ния функциональности, без ущерба для уровня защиты при условии сохранения 8-контактного корпуса микросхемы, традиционного используемого для хранения SPD.

Адресация внутренних ресурсов микросхемы: термодатчика, запоминающего устройства и схемы управления защитой записи

При минимальных различиях в наборе аппаратных сигналов, внутренняя архитектурная модель SPD претерпела существенные изменения. Выше изображены три формата адреса для шины I2C (синоним System Management Bus), используемые при доступе к трем внутренним регистровым блокам микросхемы: термодатчика, запоминающего устройства и схемы управления защитой записи.

Программные подробности

Рассмотрим регистровые модели SPD, интегрированных в микросхему идентификации модуля памяти DDR4:

Разделение 512-байтного пространства EPROM на функционально-ориентированные области

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

Пример форматирования полей 512-байтного EPROM для размещения параметров энергонезависимых модулей NVDIMM

Совмещение оперативной и энергонезависимой памяти в одном модуле стало одной из причин для увеличения объ­ема данных, хранимых в SPD, что иллюстрируется выше приведенной таблицей.

Набор регистров термодатчика, включает регистры управления, идентификации и данных

Датчики температуры каждого из модулей, снабженные дополнительными регистрами идентификации и статуса, доступны для встроенного программного обеспечения платформы и операционной системы, как устройства, ад­ре­су­емые на шине System Management Bus. Главный параметр — Ambient Temperature — отражает текущую тем­пе­ра­ту­ру.

Вместо послесловия

Инициатива JEDEC поддержана основными производителями элементной базы. Среди которых

Очевидно, одной из особенностей переходного периода станет его разделение на этапы, что выразилось, на­при­мер, в возможности применения чипов, снабженных термодатчиком, но имеющих классический объем 256 байт.