2428

Как я оперативку ремонтировал

Однажды, два года назад, заказал в известном магазине недорогую планку оперативы на 4 Гб, уже после покупки заметил, что чипы китайского производства (нонейм), но планка работала вроде бы нормально. Через 2 недели (как назло) начали появляться в системе какие-то дефекты - то тема слетает, то артефакты на экране. Понял я, что дело туго - временно взял оперативку с другого своего компа и поставил к себе, а эту планку думал понести сдать по гарантии (в течение 2 недель не сдал, а потом уже возврат не принимают - только ремонт), но тут то работа, то ещё что... в общем, так и не дошла она до сервиса - осталась в ящике лежать. Два года пролежала. Недавно понадобилась оперативка здесь и сейчас, в офисный комп бедолаге одному. Решил проверить, что с ней, собственно, не так. Для начала запустил программу Memtest86+, вот что она показала:

Т.е. целая куча ошибок, но все они сконцентрированы вокруг одной области - B5E72000 или примерно 2,9 Гб от начала. Т.е. понятно, что какой-то чип имеет битые секции, и выдает по тем или иным разрядам лишние единицы, что портит выходные данные. Потому и всяческие случайные зависания возникают. Первая мысль была такой (когда я ещё толком не знал устройство стандарта): надо взять, и заменить дефектную банку. На моей карте их 8 штук.

Встал вопрос, а какую собственно банку менять? Или может можно переставить местами банки, чтобы тот блок, в котором находится дефект, ушел, например, в конец адресного пространства, и таким образом, ограничив память мы получили бы планку в 3,9 Гб и ничего не потеряли? Пришлось изучать устройство DDR. Но, вопреки ожиданиям, оказалось, что планки работают в режиме параллельной выдачи, т.е. адресная шина у них общая, и они все разом принимают данные, и разом выдают. Поэтому при замене банок местами, битые сектора лишь сдвинулись бы, но не поменяли свой адрес. Этот факт, конечно, меня удручил, но менять всё равно надо было. Судя по показаниям теста, проблемы в первых двух адресах из восьми, попробовал начать с первой банки, а там уже смотреть на результаты тестов.

В куче хлама была найдена упаянная кем-то вусмерть плата с похожими банками. Чипы, конечно, не той фирмы, но организация вроде бы соответствует. Оригинальные чипы на моей памяти нонейм и их параметры даже неизвестны. Были подобраны более-менее похожие.

После чего банк был демонтирован

Настала очередь накатать шары. Ни один из имеющихся трафаретов под память не подошел :( Но ради одного чипа было решено воспользоваться методом, который когда-то вычитал здесь, на пикабу - под чип клеится двухсторонний скотч, после чего берется хлопковая (ни в коем случае не синтетическая) нить, и ей обвязывается микросхема, создавая некое подобие решетки с нужным шагом. После чего вручную устанавливаются шары. Эта "сеточка" предотвращает шары от укатывания в момент, когда флюс становится максимально жидким и начинает плавиться припой). Только он этот метод применял для ноутбучных BGA, а я пошел дальше и смог откатать так MicroBGA (хотя, наверное, процессор айфона вряд-ли таким образом можно сообразить - но под них и трафаретов в продаже хоть одним местом ешь). Шары положено 0,45 - но оных не было, взял 0,40 - в принципе тоже по высоте можно запаять, учитывая ещё остатки на пятачках.

Вот уже проставлена часть шаров:

После запайки если какие-то шары не припаялись, то корректируются вручную. Главное, чтобы попадало меньше ворса от нитки.  Вот готовый результат. Шары ровные.

Вот эта же планка, но с готовой микросхемой.

Вопреки ожиданиям, ничего не заработало (под конец процесса я уже начал подозревать, почему). Память запаялась, звонятся все линии нормально, вот только компьютер с ней запускаться отказывается. После чего пришлось уже лезть в документы и выяснилось, что у микросхемы есть целая куча параметров (тайминги, организация битов), при несоответствии которых просто работать ничего не будет. Чтож, тот случай, когда я сначала сделал, а потом начал думать. Пришлось возвращать всё обратно, повторив вышеописанную процедуру. Но проблема ведь осталась не решена. Что делать? На памяти есть ещё одна маленькая микросхемка (на фото сверху находится над щупом мультиметра). Называется она SPD и содержит системную информацию о планке. Было решено работать в этом направлении.

План Б был таков: урезать планку хотя бы до 2048 Мб, чтобы компьютер мог запускаться и не виснуть, а остальное адресное пространство отсечь. Китайцы так часто делают, когда у них возникает брак при растравливании микросхем (например, битые флешки на 8 Гб переразмечают как на 4 Гб, отрезая битые сектора). Нечто подобное нужно было сделать и здесь. Для этого биос компьютера нужно убедить, что размер банок в памяти не 4 Мбит, а 2 Мбит, соответственно и видимый объем уменьшится. Но чтобы залезть в SPD, надо его как-то выпаять. Использовал фен и такой самопальный переходник, чтобы подключить к программатору:

Однако и тут поджидал какой-то косяк: программатор (CH341) отказывался работать со вставленной памятью, и начинал греться. Проблема была решена добавлением конденсатора на 0,15 мкФ по питанию (между 4 и 8 ножками).

И микросхема прочиталась как 24C02 (стандарт для планок). Что мы видим:

В первой половине памяти (0-127 байты) содержатся данные о памяти, во второй половине памяти - информация для пользователя (серийный номер и другие). На английской Википедии нашлась таблица с расшифровкой каждого байта и бита (каждый бит - это параметр, а теперь представьте, почему план А не получился - две разные памяти, и всё это нужно подбирать так, чтобы удолетворило и те чипы, и другие). Кстати говоря, таблица не точная - более точные данные можно узнать используя код из утилиты decode-dimms на линуксе. Конечно, с таймингами можно было поэкспериментировать, но времени на это не оставалось. Вот эта таблица:

Т.е. нам нужны 4,5,7 байты - их и будем править. В нашем дампе они составляют 04 21 и 01. Нужно перевести в двоичную систему: 04 это 0b00000100

Т.е. согласно таблице с википедии, первые 4 ноля значит 8 банков, вторые 0100 значат логарифм по основанию 2 от (4096000000 бит - примерно равен 32) 32-28 = 4. Что и записано в таблице. А нам надо уменьшить объем вдвое, т.е. до 2048000000 бит. Делаем вычисления: log 2 2048000000 = 31, 31-28 = 3. Это значение и нужно записать в память.

Записываем, и.... ничего. Комп не стартует, пищит дефектная память.

Долго искал, затем нашел статью в интернете от одного американца. Оказывается, в конце (последние 2 бита), у меня это EA 24, есть контрольная сумма всех битов. При изменении хоть какого-либо из предыдущих битов, её значение изменится радикально. Если не соответствует значение, вычисленное пк при запуске этим двум битам - значит что-то идёт не так, и память дефектная. Контрольную сумму эту можно посчитать, перенеся из Hex-редактора первые 117 байт (адреса 0-116) в онлайн CRC калькулятор. Выставляем тип ввода HEX, тип вывода HEX. Нам нужен режим CRC-16/XMODEM. Выданные им результаты записать в байты 126-127 в обратном порядке (выдало FC1E - пишем 1EFC). Перед проведением процедуры рекомендую проверить всё то же самое на оригинальном дампе, данные должны совпасть, чтобы не возникло потом ошибок.

Теперь вписываем новую контрольную сумму, шьём и проверяем. Всё запустилось нормально, в биосе объем памяти определился как 2048 Мб (2 Гб), чего я и добивался.

На этом пост можно было бы и закончить, но, запустив винду, я увидел объем памяти в те же 4096 Мб.

В общем, судя по всему, биос этот параметр (размер памяти) для справки читает, но при определении особо ему внимания не уделяет, и индексирует память, покуда она адресуется и выдаёт данные (вспоминаются старые биосы, где ждёшь, пока он оперативу посчитает). Итоговое решение я нашел на одном из форумов.
План C: В конфигурации винды (msconfig) есть такая графа (раздел Загрузка - Дополнительные параметры). И там ставим галочку "Максимум памяти", после чего пишем 2048. Перед этим поставив рабочую планку для того, чтобы это провернуть. Сохраняем всё.

Система перезагружается и мы видим 2048 Мб. После того как удался план С, мне уже вспомнился испанец хохотун

В общем в итоге всех манипуляций все довольны, планка спасена, винда больше не тупит и не вылетает при работе с этой памятью.
Всем добра, с вами был Kekovsky.

Сообщество Ремонтёров

8.1K постов44.1K подписчика

Правила сообщества

ЕСЛИ НЕ ХОТИТЕ, ЧТОБЫ ВАС ЗАМИНУСИЛИ НЕ ПУБЛИКУЙТЕ В ЭТОМ СООБЩЕСТВЕ ПРОСЬБЫ О ПОМОЩИ В РЕМОНТЕ, ДЛЯ ЭТОГО ЕСТЬ ВТОРОЕ СООБЩЕСТВО:


Посты с просьбами о помощи в ремонте создаются в дочернем сообществе: https://pikabu.ru/community/HelpRemont

К публикации допускаются только тематические статьи с тегом "Ремонт техники".

В сообществе строго запрещено и карается баном всего две вещи:

1. Оскорбления.

2. Реклама.

В остальном действуют базовые правила Пикабу.

Вы смотрите срез комментариев. Показать все
52
DELETED
Автор поста оценил этот комментарий

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

раскрыть ветку (17)
13
Автор поста оценил этот комментарий

Пожалуй лучший пост за пару недель что я читал, пользуясь случаем задам вопрос: Как правильно настроить контакты на ноутбуке для дополнительной памяти? (работает только при определённом давлении на неё)

раскрыть ветку (16)
16
DELETED
Автор поста оценил этот комментарий

Ноутбук новодельный? Там часто эта беда. Делают особо тонкие оперативки, которые потом в разъеме болтаются. Если не хочется портить планку, то лучше заменить на другую, более толстую, а ту поставить в другое место. Если хочется - есть вариант: можно пролудить все дорожки в разъеме (на самой планке конечно, а не на плате ноута) припоем, с большим количеством флюса это увеличит их толщину на 0,1 - 0,5 мм (в зависимости от требуемой), начать с одной стороны, если всё равно выпадает - то и вторую. Тогда уже он сидеть будет крепко. Но т.к. свинец - не золото и не никель, контакты могут окисляться и начнётся диффузия. Если память засунуть один раз и не высовывать - будет стоять нормально пару лет так точно. При попытках замены могут проблемы начаться. В общем такой вариант только если совсем крайний случай.

раскрыть ветку (14)
0
Автор поста оценил этот комментарий

Оригинальное решение, спасибо большое попробую сделать.


Ноуту 3 года но можно назвать новомодным, у меня планка эта на 8 гигов, без них не так и браузер и среда разработки работают (



Недавно ещё и батарея отказалась работать но там причина потому что долго на зарядке простоял без перерыва, случалось такое сама по себе из 3х банок поменьше сделана, думаю прозвонить попозже может что сделаю.


Стационарный он теперь)

Монитор разбит купил внешний больше

раскрыть ветку (10)
4
DELETED
Автор поста оценил этот комментарий

Только лезьте, если знаете, что делаете. Если закоротить две ножки или не рассчитать толщину слоя припоя - будет плохо ноуту, а мастера будут долго смеяться потом.

раскрыть ветку (9)
0
Автор поста оценил этот комментарий

Я постараюсь, паял 2 раза в жизни, иного выхода нет, всяко лучше местных "мастеров" я все так же на Шри-Ланке

раскрыть ветку (8)
7
DELETED
Автор поста оценил этот комментарий

Видимо, памяти не жить :D
На самом деле, надо нанести флюс-гель, провести паяльником не менее 40-50 Вт равномерно с одной скоростью по дорожкам, чтобы не слиплись и припой разошелся, в общем как объяснить - это руку набивать надо. Флюс потом тщательно очистить, ножки осмотреть по высоте, можно подточить наждаком мелкозернистым, если сильно большие оказались
P.s. если закоротить две ножки у памяти хоть мелкой сопелькой и не заметить, то наебнется сам чипсет ноутбука, и тут уже жалко будет. Я предупредил.

раскрыть ветку (4)
2
Автор поста оценил этот комментарий

Спасибо за инструктаж капитан, Есть! Не отступать! Будет сделано!

раскрыть ветку (3)
0
Автор поста оценил этот комментарий

Получилось?!

раскрыть ветку (2)
4
DELETED
Автор поста оценил этот комментарий

Не думаю, что он теперь ответит D:

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Руки не дошли несколько дней подряд изучаю и сразу пишу сложный проект на Django

1
Автор поста оценил этот комментарий

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

раскрыть ветку (2)
1
Автор поста оценил этот комментарий

Только добавляете адреналина, опустите это сударь я такое прошёл, что это вряд ли моя версия.

1
Автор поста оценил этот комментарий

За совет спасибо большое

0
Автор поста оценил этот комментарий

Подскажите где в Питере ноут отремонтировать, чтобы без обмана?

0
Автор поста оценил этот комментарий

А как вы определили, что именно половина (2гб) битая? У меня бсоды на 4 гб выскакивают, хотелось бы знать сколько ограничить.

раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий

Memtest программа есть

0
Автор поста оценил этот комментарий

Двусторонний скотч

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку