Почему ломается память DDR5
Вчера в сети появилось множество постов о проблемах материнских плат Gigabyte Z690 Z790, что они якобы "ломают и убивают память DDR5".
Об этом заявили такие издания как Tom's Hardware, Guru3D, российские 3DNews и Overclockers, а так же блогеры.
В оригинальных зарубежных сообщениях указано, что в проблеме "смерти памяти" виноваты не платы Gigabyte, а вендоры памяти и/или SPD чипов из-за ошибочной реализиации защиты записи SPD.
Однако некоторые издания, такие как 3Dnews и "Dakar Техно-Грааль", по непонятным причинам проигнорировали оригинальные сообщения о проблеме, старые новости и специфицикацию JEDEC, заявив что в проблеме виноваты Gigabyte и их материнские платы, а не производители ОЗУ и/или производители SPD чипов.
Источник: Пост на Guru3D
Однако владельцы материнских плат ASUS и MSI также сталкивались с этой проблемой, например, с модулями памяти G.Skill и Team Group, как DDR5, так и DDR4. Хотя в BIOS у ASUS пункт "SPD Write Protection" включен по умолчанию, то есть логически память не должна "слетать" и в SPD ничего не должно перезаписываться, но судя по всему данная функция на самом деле никак не защищала от перезаписи данных в SPD памяти. И это не удивительно, потому что "SPD Write Protection" в BIOS и "Write Protection" в ОЗУ - это два совершенно разных параметра. "SPD Write Protection" в BIOS - это всего лишь отключение записи в SPD памяти через шину SMBus, а кроме этого есть другие способы доступа к SPD, поэтому данный параметр в BIOS - не панацея. "Write Protection" в ОЗУ - это защита от перезаписи SPD в самой ОЗУ, которая в действительности защищает ОЗУ от выхода из строя, даже при использовании кривых программ.
Проблема "смерти" модулей памяти на платах Gigabyte (а еще на ASUS, MSI и других) - это не недоработка производителей мат. плат, а неправильное программирование производителями памяти SPD чипов и выход из строя любой ОЗУ - на их совести.
Согласно стандарту JEDEC JESD400-5A.01 в михросхеме SPD должна быть реализована защита от записи определенных блоков, отвечающих за хранение стандартных параметров памяти, однако некоторые производители, такие как Patriot, G.Skill, Team Group, Kingston и, вероятно, другие проигнорировали это, и в некоторых модулях памяти защита была отключена. Вот примеры постов об "умирающих" G.SKILL DDR5 с выключенной защитой, и внезапно даже на материнских платах ASUS:
DDR5:
- https://www.reddit.com/r/OpenRGB/comments/128ilh6/nonrgb_gskill_ddr5_spd_read_failure_after_using/
- https://www.overclock.net/threads/gskill-ddr5-spd-suddenly-stopped-working.1804882/
- https://www.overclock.net/threads/corrupted-ddr5-spd-fix-tutorial.1795935/
- https://www.overclock.net/threads/bad-batch-of-g-skill-ddr5-memory-or-something-else.1797593/
И даже DDR4 G.SKILL:
- https://www.techpowerup.com/forums/threads/rgb-ram-becomes-corrupted-over-time-causing-f8-error-fix.274212/
- https://linustechtips.com/topic/1355061-help-pelase-gskill-trident-z-lighting-control-armoury-crate-corrupts-ram-spd/
- https://rog-forum.asus.com/t5/asus-software/asus-sync-g-skill-ram-problem/m-p/766725
При этом сообщений об свежих "умирающих" модулях G.SKILL на Hynix A-die нет, т.к. в этих модулях G.SKILL уже реализовали защиту от записи в SPD.
В итоге при определённых обстоятельствах, в блоки, отвечающие за настройки памяти (JEDEC и XMP), могут записываться неправильные значения, а то и вовсе стираться. Как итог мы получаем нерабочую память или удаленный/неправильный XMP. И данная проблема касается не только DDR5, но и DDR4.
Как определить, защищена ли ваша DDR5 память от повреждения SPD?
Определить, защищена ли ваша DDR5 память от повреждения SPD можно с помощью двух программ:
- Thaiphoon Burner
- SPD-Reader-Writer
Определение с помощью Thaiphoon Burner
В программе Thaiphoon Burner можно проверить, защищен ли SPD чип памяти от записи в него (это не то же самое, что параметр в BIOS!). Для этого нужно запустить программу, выбрать в меню пункт "EEPROM" и нажать "Read SPD on...", после прочтения SPD модуля справа снизу будет пункт "Write Protection". Если он установлен "All Blocks unprotected" ("Все блоки незащищены"), значит, данные в SPD чипе могут быть перезаписаны и память может перестать запускаться или XMP может удалиться. Если же установлен "Partial Protection", значит, только часть SPD может быть перезаписана и память все еще будет запускаться в стоке, но корректность XMP никто не гарантирует.
Определение с помощью SPD-Reader-Writer
Для того, чтобы определить, защищена ли ваша DDR5 от выхода из строя, нужно отключить антивирус и скачать архив с GitHub. Если вы не отключите антивирус, он может ругаться на софт. Далее запустить программу, файл "spdrwgui.exe".
Далее нужно нажать на "Connect" и в окне в списке выбрать "Smbus" и опять нажать Connect.
Программа предупредит, что нужно закрыть все программы, которые умеют читать SPD ОЗУ и записывать в нее, например, HWinfo64, CPU-Z, GCC, MSI Center, Armoury Crate и т.д. После выполнения указаний нажать "ОК".
Далее сверху в меню выбрать "EEPROM" и "Check RSWP". В новом окне выбрать в списке любой адрес и нажать "ОК". И откроется окно с перечислением блоков SPD и защитой или ее отсутствием.
Если все блоки помечены "writeble", значит SPD вашей DDR5 не защищен и плашка памяти может слететь полностью и для ее восстановления понадобится специальное оборудование.
Если у каких-то блоков стоит "RSWP enabled", то они защищены от записи.
В зависимости от номера блока, согласно стандарту JEDEC JESD400-5A.01 можно определить, что именно защищено от записи. Например, XMP находится в блоке 10 и далее, если на этом блоке нет защиты, то XMP у вашей ОЗУ может слететь. Если же защиты нет на блоке 9 и раньше, то могут слететь базовые параметры памяти, плашка не запустится вообще.
Примеры защиты SPD у разных модулей DDR5
На примере Team Group 2x16 ГБ T-Create 6000 38, G.Skill 2x24 ГБ 7200 36 и Team Group T-FORCE DELTA RGB 2x16 ГБ 7600 36:
Итоги
Нет никаких гарантий, что память без защиты от прошивки не выйдет из строя на любой материнской плате даже с включенным в BIOS "SPD Write Protection", однако есть несколько профилактических действий, которые стоит совершить, чтобы обезопасить свою оперативную память от внезапного выхода из строя:
- Обновить BIOS на своей материнской плате.
- Удалить и не использовать вендорский софт, например, GCC (Gigabyte Control Center), MSI Center, Armoury Crate, G.SKILL и другие. Мы, кстати, данную рекомендацию давали всегда.
- Если у вас материнская плата ASUS или MSI, поставить параметр "SPD Write Disable" в "TRUE". У ASUS Z790 он скорее всего установлен так по умолчанию, а вот у ASUS Z690 и MSI Z690/Z790 нет - защита будет отключена.
- Не использовать любые программы, которые умеют управлять RGB подсветкой памяти, например OpenRGB, даже если ваша память без подсветки.
- Не разгонять память с превышением адекватных напряжений.
- Не использовать софт, функциональность которого вы не знаете.