Часть
вторая. С пояснениями. Для тех, кто не слишком крут,
но хочет разобраться и понять.
Главные моменты - основные отличия PPGA/FCPGA/FCPGA2.
Данная глава предназначена уже для тех, кто хоть
немного разбирается, что-то читал в интернете, а так
же для тех, кто слишком;) много читал о невозможности/некорректности/опасности
осуществления данных переделок и хочет найти ошибки
в материале данной статьи (или, наоборот, статей о
"невозможности";)
Опять же, по порядку: PPGA=>FCPGA.
Что появилось принципиально нового в процессорах
на ядре Coppermine с точки зрения "невозможности"
("опасности") работы процессоров, сделанных
по новой тогда 0.18-ой технологии? Ровным счётом -
ничего. Добавленные инструкции SSE никак не мешают
работать процессору в старой плате и требуют лишь
небольшой доработки со стороны поддержки БИОСом (но
это решается программно). По большому счёту повторилась
ситуация, аналогичная такому же надуманному переходу
в своё время (Socket5->Socket7) на процессоры с
"MMX"-питанием (правильней - раздельным).
Как и тогда, главный "аргумент" - пониженное
питание ядра. Собственно, на этом длинный список "проблем"
заканчивался. Поэтому все утверждения о "принципиальной
несовместимости" звучащие в то время по отношении
процессоров на ядре Coppermine к старым платам - чистой
воды маркетинговый ход. Главным подтверждением этого
является тот факт, что самые первые процессоры Celeron
Coppermine (566/600MHz, CPUID=683, Vcc=1.5V) совершенно
благополучно (без переделки сокета) работали на PPGA
платах (и при этом очень неплохо разгонялись).
Однако, дабы прекратить этот "беспредел";)
Intel поступила по "ломовому" просто: для
того, чтоб новые процессоры не работали в старых платах,
сигнал сброса (RESET#, X4) был "перемещён"
на место AH4, который в старых платах был заземлён.
В результате, при установке Coppermine-процессора
в PPGA-плату он "зависалв бесконечном ресете".
Плюс к этому ножка AM2 стала "ключом" для
FCPGA-процессоров, в которых она должна быть "в
воздухе" - NotConnected/Reserved, в то время
как в PPGA-платах она "сидит на земле" (на
неё тоже завели "ресет", аналогично AH4).
Т.е., по большому счёту, для того, чтоб уговорить
работать Coppermine-процессор в старой плате нужно
всего лишь разобраться с "размножившимися"
"ресетами" - X4, мигрировавший в ножку AH4
(которую поэтому и надо соединить - "главным"
стал AH4, а в самом процессоре эти ноги не соединены)
плюс "обезвредить" совершенно не нужный
ресет AM2, подло "коротящий на землю" в
PPGA-платах.
Потому способ переделки достаточно прост - изолируем
AM2 (обычно выпаевается контакт из сокета) и бросаем
перемычку между AH4 и X4.
Что касается питания, то тут тоже всё достаточно просто.
За его установку отвечают ножки VID0, VID1, VID2,
VID3 и VID4 (последний, вообще-то, помечен как Vss-"земля",
чтоб не было возможности выставить напряжение выше
2.05V, однако, как правило, в большинстве PPGA-плат
он на ней не "сидит"). Исходя из комбинации
сигналов ("0" - земля или "1"
- не соединён) на этих ногах блок питания процессора,
установленный на плате выставляет нужное напряжение.
Таблица1. Совмещённая таблица напряжений для
процессоров Slot1/Socket370.
* - для FCPGA2 это VID25mV
** - в случае единиц на всех "VID-ах" напряжение
не выставляется вообще (расценивается как отсутствие
процессора) - 0 Volt.
Первые платы Slot1/PPGA (с подачи Intel о том, что
она не будут делать Slot1/Socket370-процессоров с
напряжением Vcc меньше 1.8V) были оснащены БП-CPU,
не поддерживающими установку процессоров с питанием
ниже 1.8V (т.е. при установке процессора с меньшим
Vcc, комбинация на его ножках VID0-VID4 интерпретировалась
как 1/1/1/1/1, т.е. в результате выставлялся "0").
Поэтому, чтоб обойти такую проблему придётся "принудительно"
установить Vcc>=1.8V. В случае возможности регулировки
напряжения (на переходнике/плате) надо просто выставить
нужную комбинацию перемычками (см.табл.1). Если такой
возможности нет, то тогда придётся это сделать "вручную".
Например, если у вас процессор с питанием 1.7V, значит
конфигурация "VID-ов" - 0/0/1/1/1, тогда,
замкнув VID1 "на землю" (или даже на тот
же, уже заземлённый в таком процессоре, VID4 или VID3),
получим комбинацию 0/0/1/0/1, что соответствует 1.8V,
которое БП-CPU "знает" и правильно выставит.
Конечно, в таком случае процессор будет работать на
завышенном напряжении, однако, во-первых, многие его
(Vcc) всё равно специально повышают ("для разгона"),
а, во-вторых, это (больший нагрев) всегда можно побороть
с помощью просто более качественного кулера.
FCPGA => FCPGA2 (Tualatin).
Если с коппермайном, в принципе, "неверующих"
;) практически не осталось, то с туалатинами всё (надеюсь
- пока;) сложней. Процессоры с ядром Tualatin, по
утверждениям многочисленных источников (естественно
- в первую очередь Intel), ну, уж точно "совсем
не совместимы":) со старыми платами: и блок питания
другой нужен (VRM 8.5, а не 8.4), и технология опять
более "тонкая" - 0.13мкм вместо 0.18, и
синхронизация там "новая", и питание ещё
более низкое, и, наконец, шина поменялась - AGTL вместо
AGTL+. Разберём по порядку.
AGTL.
Самое "главное" - "новая" шина.
Уже лишь абсолютная схожесть названий навевает некоторые
сомнения - вроде, то же самое, только без плюсика.
Который, видимо, обозначал те 0.25V, на которые понизился
уровень сигналов - в AGTL+ он равен 1.5V, а в AGTL
- 1.25V. Соответственно, из "официальных документов"
получается, что: "процессоры Tualatin не могут
корректно работать на старых материнских платах, которые
выдают напряжение на 20% выше необходимого (так как
уровень напряжения, подаваемый на входы процессора,
должен иметь разброс не более ±9%)". И, действительно,
если обратиться к "первоисточникам" (документация
на туалатины с сайта intel.com), то можно прочитать:
В п.4 чёрным по белому написано, что да, действительно,
1.25V +-9% (а разрабатывать - так, вообще, "с
прицелом" на +-3%) и ничего не попишешь. Однако
как-то подозрительно смотрятся пустующие колонки Min
и Max, да и такое "принципиальное" отличие
идёт лишь как примечание (а это читай - лишь рекомендация).
Очень уж смахивает на "откорректированный"
маркетологами вариант.
И, действительно, всё проясняется, если почитать страницей
раньше:
Чётко и ясно (без всяких пустых колонок:), максимум
- 1.75V. Вот такие "двойные стандарты".:)
Отсюда первый вывод - Vtt=1.5V (т.е. уровень сигналов,
такой как в "дотуалатиновских" платах) для
туалатинов совершенно безопасен, так как находится
существенно ниже возможного максимального значения
(а, значит, его можно ещё гнать и гнать:).
Дифференциальная синхронизация.
Другое "утверждение" - "новый"
способ синхронизации, "новый" сигнал BCLK#
(инвертированный BCLK). В AGTL+ используется для синхронизации
лишь "один" BCLK (c амплитудой 2.5V), а
тут появилась "новая" парочка из противоположных
по полярности BCLK/BCLK# (+1.25V и -1.25V) - так называемая
дифференциальная синхронизация. Как туманно объясняется
такой подход - для более стабильной работы на высоких
частотах. Однако всё в тех же первоисточниках чёрным
по белому написано:
Т.е. процессор сам определяет, какой способ
синхронизации использовать исходя из наличия сигнала
BCLK# на ножке Y33. Если он (BCLK#) там присутствует,
то тогда процессор переключается в режим дифференциальной
синхронизации, если же нет (а там - лишь аналоговое
опорное напряжение +1.25V), то переключается в "обычный",
старый (single-ended) режим с "одним" стробирующим
импульсом. Соответственно, процессор, вставленный
в систему, "не знающую" дифференциального
тактирования, просто переключится на "обычный"
способ синхронизации (т.к. поддерживает оба вида).
Остальные сигналы (типы/виды) у AGTL те же, что и
у AGTL+, потому на этом тему "новой" шины
можно закрыть.
VRM8.5
По поводу "более тонкой" технологии, а,
соответственно, и более низкого напряжения ядра. В
туалатинах, для возможности выставлять напряжение
с точностью до 0.025V был задействован уже ставший
в PPGA/FCPGA ненужным VID4 (т.к. он использовался
лишь при задании напряжения выше 2.05V, а это уже,
естественно, перестало быть актуальным). При установке
его (VID4) в "1" к "стандартному (т.е.
как у "старых" PPGA/FCPGA-процессоров, т.е.
VRM8.4) добавляется 0.025V. Поэтому этот сигнал (ножку)
так и назвали - "VID25mV" (см.табл.1).
В случае, если VID4 (VID25mV) равен "0",
то такая комбинация ничем не отличается от "старой"
(VRM8.4). Соответственно, просто принудительно закоротив
VID25mV "на землю" (для того, чтоб "старый"
БП-CPU случайно не выставил исходя из единицы на VID4
гигантское напряжение, так, например, у туалатина
с Vcc=1.475V, комбинация = 1/1/1/0/0, что соответствует
2.3V для "старого" VRM8.4), мы благополучно
решим эту проблему, т.е. получим "правильное"
напряжение с округлением до 0.5V в меньшую сторону.
А при желании, опять же, с "точностью" в
0.5V, всегда можно выставить нужное напряжение "вручную".
C новым "VRM-ом" появилась и парочка сигналов
- DYN_OE и VttPWRGD. Первый - разрешает установку
VID0-4 и BSEL0-1 в нужное значение, а второй - это
контролирует.
Дело в том, что в отличие от предыдущих процессоров
в туалатинах сигналы на "VID-ах" и "BSEL-ах"
не являются "аналоговыми" (т.е. просто задаются
закороткой внутри процессора их "на землю"
- "0" либо "Not Connected" - "1"),
а выставляются собственно самим процессором. Т.е.
изначально они пребывают в состоянии "NotConnected"
(т.е. все единицицы - 0V). После получения "1"
от ноги DYN_OE процессор выставляет на них нужное
значение и контролирует это по ножке VttPWRGD - если
там тоже "1" (а её и должен формировать
VRM8.5), то всё ОК.
"Как всегда";), обе эти ножки (AN3 - DYN_OE
и AK4 - VttPWRGD) в PPGA/FCPGA являются "землями".
Поэтому их обеих нужно изолировать при переделке.
Плюс сложность заключается в том, что на AK4 (VttPWRGD)
кроме изолирования от земли придётся подать "1"
(Vtt), т.к. иначе там получается нестабильная единица
(точнее, там вообще не единица, а "бесконечное
сопротивление"), что особенно проявляется при
резком возрастании нагрузки на процессор. Это, как
говорилось выше, составит некоторую (точнее - самую
главную) сложность при переделке "под туалатин",
однако обязательно для стабильной работы.
В конце - о распространённом заблуждении - "принципиальном"
отличии VRM8.5, который "умеет" понижать
питание с ростом тока потребления. Этот смешной вывод
был сделан из появившейся в документации на VRM8.5
таблицы:
На самом деле, конечно, всё банально - график представляет
собой лишь "стандартизацию" того, что и
так всегда присутствует в любом БП - снижение выходного
напряжения при возрастании тока нагрузки. Говоря утрированно,
он требует, чтоб выходное напряжение изменялось не
более, чем на ~0.15V во всём диапазоне изменения тока
потребления процессора (в 8.4 были точно такие же
"рамки", только не были расписаны точные
значения по всему диапазону изменения тока).
RESET2#.
Ну, и на последок, опять же, "как всегда":,
"размножился" сигнал RESET# - он появился
на, очередной и, конечно же:, "заземлённой"
ножке - AJ3. Здесь никаких отличий от "коппермайновского"
случая, способ "лечения" - просто изолировать
(AJ3).
Часть 1. Часть
3. Часть 4.
|