Не запускаются совместно 4 модуля DDR2

Всех приветствую!
Не нашёл специального раздела про память, потому пишу в этом разделе. Итак, имеется 4 модуля по 4 ГБ ДДР2-667. Куплены в Китае, сделаны на микросхемах Hynix H5PS2G43AFR-Y5. Модули прекрасно работают при установке по 2 штуки (в любой из двух банков), гонятся без поднятия напряжения чуть ли не до 400 МГц с таймингами 5-5-5-15 1Т (!), проходят МемТест86+. Но если установить все 4 модуля вместе - не работают. Несовместимость с материнкой, процессором и т.п. исключена - другие 4 ГБ модули, но на 1 Гбит чипах (т.е. аж 32-чиповые) - стабильно работают на номинальной частоте и даже немного гонятся. Пробовал с процессорами Phenom X3, Phenom II X4, на двух материнских платах. Что ещё пробовал:

1. Устанавливал только три модуля. Если их поставить в ближайшие к процессору слоты, то работает, если в три дальних слота - не работает.
2. Снижал частоту - не помогло.
3. Снижал тайминги до 6-6-6-18-24, так же увеличивал на 1 такт tRRD, tWR, tWTR и tRTP - не помогло.
4. Ставил 2 модуля по 4 ГБ и два модуля по 2 ГБ - работает.
5. Исправил в SPD параметр Error Checking SDRAM Width - он почему-то был равен 8, хотя модули коррекции не имеют. Не повлияло ни на что.

Чего я не могу понять, так это почему 32-чиповые модули работают, а 16-чиповые - нет. По идее, 16-чиповые даже стабильнее работать должны - линии-то меньшим количеством чипов нагружены. Но - фиг, не работает. Судя по поведению трёх модулей, проблема возникает в распространении сигнала - он "не доходит" до последнего модуля при установке 3-х и более модулей. Или доходит не вовремя. Тут, как я понимаю, косяк либо в терминации сигналов, либо в таймингах. Читал статьи про тайминги - ничего интересного не нашёл. А вот в даташитах обратил внимание на пикосекундные тайминги - "Address and control input setup/hold time" (tIS и tIH) и "DQ and DM input setup/hold time" (tDS и tDH). Они привязаны к скорости нарастания фронтов сигналов, т.е., судя по всему, как раз и призваны учитывать нагрузку на линии памяти - чем больше нагрузка, тем менее крутые фронты. Нашёл в даташите таблицы для расчёта этих таймингов. Оказалось, что поправки для каждого тайминга свои и находятся в зависимости и от скорости нарастания сигналов DQS, и от скорости нарастания сигналов DQ. Причём зависят ещё и нелинейно. Всё это делает, как я понимаю, затруднённой попытку тупо подобрать их. Измерить времена нарастания наносекундных импульсов для меня вообще из области фантастики.

Есть ли у кого-нибудь опыт решения подобной проблемы или хотя бы какие-то соображения, советы?

P.S. И ещё не могу разобраться с таймингом tRFC, а точнее - с его расчётом и особенно с его редактированием в SPDTool, но это уже другая сказка)))

Вопрос ещё актуален)))

Аватар пользователя zaiganpc

Знаете, а у меня тоже не работают! Но я знаю почему.
И открою для Вас огромную тайну. Тут не клуб экстрасенсов.
А Вас пытать или сами скажете: Какая материнская плата (производитель, модель и ревизия), процессор, версия Bios-а?

Ах да, про мои. Мои на полке лежат ...:)

Модели процессоров указаны, но специально для Вас повторю: Phenom X3 (8750), Phenom II X4 (905e). Материнские платы, на которых пробовал - m3a и m2a-vm. Свои соображения я высказал, хотел услышать их критику или подтверждение, а так же, возможно, и какие-то соображения или опыт.

Аватар пользователя zaiganpc

Прежде чем вставлять желательно почитать документацию.
Если Ваши платы Asus
то для m2a-vm:
4 x 240-pin DIMM, support max. 8GB DDR2 800/667/533 ECC and Non-ECC,un-buffered memory
а для m3a:
4 x DIMM, max. 8GB, DDR2 1066 / 800 / 667 / 533, ECC and non-ECC, un-buffered memory
т.е. максимум 8Гб.

Простите за некоторую грубость, но всё-таки, отвечая на вопрос, лучше сначала его полностью прочитать. Если бы вы прочитали, то, во-первых, не переспрашивали бы модели процессоров, а во-вторых, увидели бы вот это:

Цитата:
другие 4 ГБ модули, но на 1 Гбит чипах (т.е. аж 32-чиповые) - стабильно работают на номинальной частоте и даже немного гонятся.

вот это:

Цитата:
Устанавливал только три модуля. Если их поставить в ближайшие к процессору слоты, то работает

и вот это:
Цитата:
Ставил 2 модуля по 4 ГБ и два модуля по 2 ГБ - работает

Контроллер памяти находится в процессоре, так что механизм ограничения объёма памяти (если бы таковое ограничение в реальности существовало) материнской платой мне даже придумать сложно. Что касается ограничения в мануалах, то, как я понимаю, оно означает только, что данная плата не тестировалась с 4ГБ модулями и в списке совместимости таких модулей нет.

Вопрос1. Не работают 4 модуля как - не определяется последний модуль, вообще не определяется
память или сбоит?

Вопрос2. Есть возможность снизить частоту работы памяти(установив CPU с минимальной
FSB)? Если на какой то частоте все же работает, то проблема с электрическими,характеристиками,
иначе возможен баг в BIOS(неправильное распознавание модулей определенной органтзации при
установке 4 планок). Маловероятно правда. Было бы хорошо проверить на плате не от ASUS.

3. У 32-чиповых модулей наверняка больше емкость по адресным входам, а вот по входам


данных - не факт(тк каждый физический банк на модуле для каждого входа/выхода данных
использует вход/выход только от одной микросхемы).

В некоторых случаях возможно, что немного увеличенная емкость оказывают благоприятное
влияние(снижают амплитуду паразитных осцилляций). Ну или импеданс 32-чиповых модулей лучше
согласован с характеристиками конкретной линии(меньше размах отраженных сигналов). Ответ на
этот вопрос может дать очень скоростной осциллограф(как его правильно подключить тоже подумать
надо). Если есть еще какие CPU, проверить не помешает.

Цитата:
. Исправил в SPD параметр Error Checking SDRAM Width - он почему-то был равен 8, хотя модули коррекции не имеют. Не повлияло ни на что.

Не скажу за Вашу плату, но многие старые платы(Pentium2-3 от ASUS конкретно) определяют
ECC модуль по факту (пробнам циклом вероятно) и наличие/отсутствие информации в SPD об
ECC не мешает правильно распознать ECC модуль.

i8088, спасибо за ответ. Отвечаю на ваши вопросы по пунктам:
Вопрос1. При четырёх модулях система вообще не стартует, зависает на пост-коде С1 (если не ошибаюсь). Более того, сегодня ещё раз попробовал поставить эти модули (я их снимал), так и три модуля в первых трёх слотах запускаться перестали. Возможно, они запускались только когда были в определённой последовательности, которая случайно удачно сложилась, а сейчас я их "перемешал".
Вопрос2. Снижал до 200 МГц (DDR2-400) - ноль эффекта. Правда, делал это делителем памяти, а не FSB. Возможно, за счёт автоматически снижающихся таймингов снижение частоты не даёт эффекта.
Вопрос3. Насколько я понимаю, если бы увеличенная входная ёмкость сказывалась в данном случае благоприятно, то, наоборот, 4 модуля работали бы, а 2 - нет.
Осцилографа такого адского, чтобы можно было посмотреть, у меня, конечно, нет. Думаю, что из аналоговых советских даже С1-75 не факт, что справился бы. А вот процессор я сегодня достал ещё один - первый Атлон Х2 5400+. Результат - тот же, что и с феномами.
Ещё сегодня попробовал изменить тайминги tIS, tIH, tDS и tDH. Т.к. данных о скорости нарастания сигналов, к которым они привязаны (DQS и DQ, CK и Command/Address), у меня нет, то я предположил, что при четырёх модулях она вряд ли больше, чем при двух. Снизил тайминги по табличкам из даташита (у них худшим частотным характеристикам системы соответсвуют меньшие значения) - толку ноль, всё так же, как и было. То ли мало снизил, то ли не в них дело.
Прочитал ещё в даташите, что тайминг tAC тоже может увеличиваться в зависимости от джиттера. Вот думаю ещё попробовать его увеличить.

Да, 32-чиповые модули, понятно, двухранговые. А 16-чиповые - одноранговые. Правда, имеющиеся у меня 2-х гигабайтные модули тоже одноранговые, но работают прекрасно в любых количествах и соотношениях. Сравнивал даташиты одно- и двухгигабитных чипов (оба от hynix) - при беглом осмотре параметры, кроме объёма, вроде как один в один.

Цитата:
Более того, сегодня ещё раз попробовал поставить эти модули (я их снимал), так и три модуля в первых трёх слотах запускаться перестали

В связи с этим у меня большое подозрение, что один из модулей частично бракованый - увеличенная
емкость, сниженный импеданс какого-то(или всех входов). Или недостаточная нагрузочная способность
линий данных, когда память работает на выход (из-за нагрузки другими модулями фронты/спады
заваливаются, снижается размах сигналов). Те один 1-2 таких модуля могут работать вместе, а 3-4 под
вопросом. Если модули noname, то вполне могут быть сделаны из чипов, не прошедших контроль по
какому-то из параметров.

Цитата:
Насколько я понимаю, если бы увеличенная входная ёмкость сказывалась в данном случае благоприятно, то, наоборот, 4 модуля работали бы, а 2 - нет.

Вроде бы так, однако возможно что c 32-чиповыми модулями меньше размах осцилляций(паразитных
резонансов) , а с 16-чиповыми амплитуда их больше(это может быть связано не только с емкостью) и
при 4 модулях просто попадаем на "неудачный" резонанс и/или отражение. Однако согласен, это весьма сомнительно.

Из скоростных осциллографов - у меня есть С1-70 со стробоскопическим блоком(только для повторяющихся сигналов, синхронизация только внешняя, 3.5Ghz со входа, 1.5GHz со щупом).
Однако к сожалению материнки и модулей памяти, подобных Вашим, чтобы попробовать
воспроизвести Вашу ситуацию у меня нет.

Цитата:
В связи с этим у меня большое подозрение, что один из модулей частично бракованый

Да, вот я вчера написал вам ответ, а потом тоже в голову эта мысль пришла. Попробую путём перестановок выявить бракованный модуль.
Цитата:
С1-70 со стробоскопическим блоком

Про стробоскопический принцип-то я и забыл. Кстати, мне интересно: тактовые сигналы понятно, что периодические. А вот сигналы адресов, данных и всякие другие - они-то по идее непериодические. Как их осциллографом-то смотреть? Или есть какие-то программы, которые могут циклически выдавать на нужный модуль один и тот же адрес/данные?

Цитата:

Про стробоскопический принцип-то я и забыл. Кстати, мне интересно: тактовые сигналы понятно, что периодические. А вот сигналы адресов, данных и всякие другие - они-то по идее непериодические. Как их осциллографом-то смотреть? Или есть какие-то программы, которые могут циклически выдавать на нужный модуль один и тот же адрес/данные?

Вообще говоря строгая периодичность не обязательна - надо чтобы интересующая нас часть
сигала повторялась относительно точки синхронизации, те например посмотреть фронт-спад.
(те необязательно чтобы сигнал имел стабильный период повторения). Главное здесь решить, что
выбрать в качестве источника синхронизации. Теоретически можно даже например для просмотра
сигнала на линиях данных использовать его же для синхронизации, но здесь будет нагрузка двух
входов С1-70. Можно использовать для синхронизации другой сигнал данных, написав программу
которая например запишет всю память нулями, единицами или 0x55AA.. а потом непрерывно читать.
Ну и подумать, как лучше подключить, чтобы обеспечить предельно малую длину земли и безопасность
для материнки. Здесь конечно только щупом-делителем, тк основной вход 50 Ohm и нельзя
подавть большое напряжение.

Я пока не озадачивался этим вопросом, тк проблемы подобной Вашей пока не было. Есть однако
проблема с недостаточной стабильностью памяти на одной из плат при установке двух CPU
(Tyan Tiger 200), но это надо поймать момент сбоя. Случается только в определенных условиях,
здесь даже с запоминающим прибором сложно поймать. Впрочем это уже другая история.

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • You can use BBCode tags in the text. URLs will automatically be converted to links.

Подробнее о форматировании текста

Антибот - введите цифру.
Ленты новостей