
Оригинал: Anandtech
Перевод: Дмитрий Чеканов
Дата: 13.02.2002
Сейчас про эту огромную корпорацию ходит много слухов. Некоторые считают, что Intel решила отойти от развития IA-64 в пользу x86-64. Есть и другое мнение: компанией движет чистый маркетинг, а не технология. Но вряд ли это верно, сомнительно, что команда менеджеров сможет разобраться в дизайне процессора. Intel движут все же технологические инновации, и чтобы это доказать пришлось заглянуть внутрь Intel. Мы посетили лаборатории компании в Хиллсборо, Орегон.
Рабочая площадка инженеров – архитектурные лаборатории Intel
И начнем мы с архитектурных лабораторий Intel (Intel Architecture Labs). Главное здесь – это новые технологии, теории и идеи, над которыми каждое утро начинают работать талантливые инженеры. Когда-нибудь эти теории и идеи воплотятся в реальные продукты, но инженеров мало волнуют продажи Pentium 4. Они - ученые, и главное для них – продвижение технологических границ.
На осеннем IDF 2001 мы стали свидетелями демонстрации 5 ГГц 32-битного
ALU на стенде Intel. Эта заслуга принадлежит именно архитектурным лабораториям Intel.
У исследовательских лабораторий есть пять направлений деятельности:
1) Производительность. Достаточно очевидная цель. Для прироста производительности инженеры пытаются найти пути увеличения тактовой частоты и повышения эффективности вычислений. Производится анализ современных программных продуктов для оптимизации будущих процессоров под различные типы нагрузки.
2) Мощность. Одна из самых больших проблем при разработке процессоров заключается в энергопотреблении и рассеивании тепла. Улучшения в этой области сразу же открывают новые возможности для увеличения производительности.
3) Интеграция. Мы уже привыкли к надежности современных процессоров, но таких результатов непросто достичь, учитывая сотни миллионов транзисторов, находящихся на столь небольшой площади. В лабораториях занимаются исследованиями по увеличению надежности работы процессоров в различных условиях.
4) Функциональность. Как мы уже упомянули, инженеры изучают работу различных приложений. В результате этих исследований происходит доработка исполнительных модулей, которые будут в следующих моделях процессоров. Иногда улучшения касаются даже низкоуровневой оптимизации перемещения данных внутри процессора и т.д. Благодаря лабораторным исследованиям появились такие технологии, как MMX, SSE, SSE2 и HyperThreading. Не говоря уже о безымянных технологиях в новых процессорах, которые сейчас просто не упоминают.
5) Инструменты и методы. Инженеры занимаются разработкой инструментальных средств и различных методик для помощи четырем перечисленным направлениям.
Сейчас вы уже представляете себе общие направления работы архитектурных лабораторий. Пришло время посмотреть на текущие исследования.
Набор технологий
Главной целью архитектурных лабораторий является создание набора технологий, которые инженеры по дизайну смогут использовать в будущих продуктах. К примеру, инженеры архитектурных лабораторий могут создать ALU с двойной скоростью в рамках тестирования новой теории, и это ALU может быть реализовано (в той или иной форме) в процессоре типа Pentium 4.
Мы специально привели пример с ALU, потому что именно над этим модулем производится множество экспериментов. Вряд ли имеет смысл тратить драгоценное время на создание различных модулей, которые могут быть никогда не реализованы. Однако разработка полезной логической схемы типа ALU не только позволит протестировать новые технологии, но и сам улучшенный модуль ALU может быть включен в следующее поколение продуктов.
Одна из таких новых технологий, завороживших умы инженеров в настоящее
время, заключается в транзисторах с адаптивным подмагничиванием корпуса
(adaptive body biasing transistor). Здесь задействовано большое количество
математической теории и аналоговой схематики, но, говоря обычным языком,
технология заключается в управлении прикладываемым к корпусу транзистора
напряжением, что позволяет транзистору переключаться медленнее или быстрее.
Прикладывая положительное напряжение смещения, можно заставить транзистор
переключаться быстрее, обычное напряжение смещения приведет к обычной скорости,
нулевое напряжение смещение уменьшит скорость переключения.
Суть технологии кажется простой, но ее применения многочисленны. Как
вы знаете, скорость работы сложной микросхемы зависит от скорости самой
медленной ее части. Например, если большинство транзисторов микросхемы
могут переключаться на 10 ГГц, и небольшая их часть – на 8 ГГц, то вся
микросхема (то есть процессор) будет ограничена 8 ГГц. С помощью адаптивного
подмагничивания корпуса можно увеличить скорость медленных транзисторов
до скорости остальных (то есть до 10 ГГц). Это может привести к значительному
увеличению доли выхода годных кристаллов, поскольку сейчас можно будет
проще заставить транзисторы работать на более высоких частотах. Тем более
при переходе к процессорам, оснащенным сотнями миллионов транзисторов,
увеличивается вероятность появления транзисторов, переключающихся медленнее
остальных. И здесь придет на помощь новая технология.
Улучшение схемы суммирования
Нас также заинтересовала и технология совершенно новой схемы сумматора.
Схема используется для целочисленных вычислений и является важной частью
любого ALU. Сложение двух числе в большинстве современных процессоров производится
с помощью метода «дополнение до 2». Чем этот метод отличается от обычного
сложения? Ничем, если вам нужно сложить два положительных числа, при этом
происходит побитовое сложение. Рассмотрим два 4-битных числа, 2 и 4.
0 0 1 0
+0 1 0 0
=0 1 1 0
Необходимость в методе «дополнение до 2» появляется при использовании
отрицательных чисел. Мы опустим причины и рассмотрим суть. При нахождении
отрицательного числа (или дополнения числа) с помощью «дополнения до 2»
берется положительное число, меняются все биты и добавляется 1. Например,
возьмем число 6 и найдем -6.
0 1 1 0 (6)
1 0 0 1
+ 1
=1 0 1 0 (-6)
Что же здесь такого принципиального? Представьте себе, как ваш быстрый
процессор производит ряд сложений, и ему вдруг понадобилось вычесть число.
Процессор должен приостановить свои вычисления и найти с помощью указанного
выше метода дополнение числа. Учитывая увеличивающееся число ступеней конвейера,
такая работа не лучшим образом сказывается на производительности. Поэтому
современные ALU используют двухканальную логику домино (Dual Rail Domino).
Теория этой логики заключается в нахождении дополнения параллельно с
вычислением самого числа. Теперь если вам нужно вычесть число, вам не придется
ждать, пока будет вычислено дополнение. Однако проблема такого подхода
очевидна: нам нужно в два раза больше элементов для реализации одного сумматора.
ALU с удвоенной скоростью в Pentium 4 на самом деле только 16-битное,
то есть для вычисления 32-битного числа нам нужен один такт. По всей видимости,
Intel перейдет в будущем к 32-битному ALU (учитывая, что все продемонстрированные
высокоскоростные ALU являлись 32-битными), что означает увеличение элементов
в схеме ALU для вычисления 32-битных целых чисел и 32-битных дополнений.
В результате мы приходим к необходимости уменьшения размера новых сумматоров.
Intel неохотно делится информацией о методе такого уменьшения, который
они называют генератором сигнала дополнения (Complementary Signal Generator,
CSG), поскольку его функция как логического устройства заключается в генерации
дополнения к числу с помощью сигнала. Intel CSG потребляет меньше энергии
по сравнению с обычными сумматорами и использует меньшее число транзисторов,
что будет немаловажно при переходе к высокоскоростным много-ГГц 32-битным
ALU.
10 ГГц с воздушным охлаждением – уже сегодня
Кульминацией всех упомянутых технологий является 10 ГГц 32-битное ALU с
воздушным охлаждением при обычной комнатной температуре.
Частота 10 ГГц
Тактовый сигнал ALU. Четкость сигнала снижена из-за внешних помех
Тестовая установка с 10 ГГц ALU
Многоядерные процессоры по-Intel-овски
За последнее десятилетие улучшение производительности процессора достигалось
главным образом за счет максимально возможного увеличения параллелизма
на уровне инструкций (ILP). Идея такого параллелизма заключается в одновременном
исполнении нескольких инструкций. Тогда исполнительные устройства не простаивают
и вычисления происходят быстрее.
Но нельзя бесконечно увеличивать параллелизм на уровне инструкций, рано
или поздно он перестанет приносить свои плоды. По этой причине производители
процессоров устремили свой взор в сторону параллелизма на уровне потоков
(TLP), заключающегося в параллельном выполнении максимально возможного
числа потоков. И AMD и Intel работают над способами улучшения TLP. По слухам,
AMD тестирует многоядерную версию процессора SledgeHammer, а Intel не так
давно анонсировала технологию Hyper-Threading, позволяющую одновременно
выполнять несколько потоков на одном процессоре. Подробнее с технологией
HyperThreading вы можете ознакомиться в нашей
статье.
В архитектурных лабораториях Intel тестируется эффективность многоядерного
процессора. Самый простой подход заключается в помещении двух одинаковых
параллельно работающих ядер в одну упаковку, однако как мы уже подчеркивали
раньше, многое здесь зависит именно от упаковки. Intel же тестирует
несколько более интересное и элегантное решение.
С увеличивающимся вниманием к энергопотреблению современных процессоров,
инженеры Intel провели тяжелую работу по обеспечению работы будущих поколений
процессоров без водяного или экстремального охлаждения. При использовании
же двух параллельно работающих ядер мы быстро столкнемся с проблемой потребления
энергии и рассеивания тепла.
Идея Intel подразумевает использование двух ядер, но они необязательно
должны обладать одинаковыми характеристиками. Достаточно большие задержки
процессора происходят при ожидании данных с диска или оперативной памяти,
в таких случаях работа на полной тактовой частоте не столь эффективна.
Следовательно, пусть у нас будет два ядра, одно с высокой производительностью
и одно с низкой. Благодаря этому мы сможем сэкономить энергию и потенциально
даже транзисторы, поскольку мы сократим функциональность медленного ядра.
Скоростное ядро будет использоваться для вычисления критических данных,
второе же ядро – для вычислений данных, зависящих от медленных подсистем
типа оперативной памяти или диска. Сейчас пока что не анонсирован ни один
продукт с такой технологией, но как показывают исследования Intel, данная
технология еще себя покажет. Помните, в архитектурных лабораториях движущей
силой являются не конечные продукты, а технологии. Поэтому работа ведется
не над каким-то конечным продуктом, а над идеями, которые могут быть воплощены
во всей линейке будущих процессоров.
Еще одна роль Intel: тестирование процессоров
Давайте перейдем от идей, до воплощения которых наверняка пройдут годы,
к настоящему. Когда мы обновляем нашу систему до Athlon XP 2000+ или Pentium
4 2,2 ГГц, мы редко задумываемся о времени, потраченном компаниями на разработку
и тестирование новых процессоров. Обычно на это уходит 6-8 месяцев.
Когда процессор успешно разработан и готов к реализации в виде кусочка
кремния, выходит первая версия ядра со степпингом A0. Перед тем, как процессор
попадет в компьютеры пользователей, он посылается группе инженеров Intel,
которые пытаются обнаружить различные проблемы и недостатки.
Дальше нам снимать не позволили, однако за этими дверями скрываются интересные вещи.
Проблемы на уровне кремния выявляются с помощью лазерного зондирования
напряжения (Laser Voltage Probe, LVP), суть этого процесса понятна по названию.
Один из инженеров Intel назвал устройство зондирования «ярким авометром»,
что довольно точно отражает его суть. Авометр представляет собой огромную
машину, которая исследует участки кремния и сравнивает работающую логику
с предполагаемым результатом. К примеру, оператор машины сидит за рабочей
станцией и управляет позиционированием лазера на кристалле. После успешного
позиционирования машина выдает оператору вид наблюдаемой электромагнитной
волны вместе с изображением тестируемых транзисторов. На другом экране
выводится полная логическая диаграмма данного участка, с которой оператор
и производит сравнения.
После выявления проблемы, она передается разработчикам архитектуры чипа.
Разработчики стараются решить проблему, но вместо отбраковки плохого кристалла
и выпуска полностью нового чипа (где проблема может быть решена),
производится «хирургическое вмешательство» в поврежденный участок, что
ускоряет выпуск готового процессора.
Если в вашей машине возникла проблема в электропроводке, вы можете починить
ее сами, поскольку вы будете работать с проводами длиной в единицы сантиметров,
при этом до них легко добраться (относительно легко, конечно же). Но что
делать, если возникла проблема в проводке внутри процессора? Вместо проводов
длиной несколько сантиметров нам нужно работать с проводками длиной 0,03
микрона. Если вы как-то доберетесь до кристалла, не повредив его, вы даже
не сможете найти эти проводки.
Для работы над такого рода ошибками Intel использует сфокусированную
ионную пушку (Focused Ion Beam, FIB). Пушка – это еще одна огромная машина,
работающая с крошечным кусочком кремния, но вместо обнаружения проблем
она их решает.
Два наших «экскурсовода» от Intel запретили снимать за этой дверью. Там находится ионная пушка.
Предположим, с помощью лазерного зондирования напряжения один оператор
нашел лишний переход НЕ-И, который должен быть шунтирован. Для этого следует
обрезать входящую и выходящую дорожки, а потом создать новое соединение.
Для работы ионной пушки нужно срезать кремниевое ядро примерно до 1,7
мкм в высоту. При этом следует соблюдать максимальную осторожность. Любая
оплошность приведет к поломке ядра. Поэтому Intel использует еще ряд машин
для подготовки ядра к обработке ионной пушкой.
После необходимой подготовки ионная пушка обрежет проводки и прикрепит
новые по команде оператора. В зависимости от сложности схемы средняя операция
по ремонту занимает от нескольких часов до многих дней. И все это лишь
для добавления или удаления проводов длиной в сотые микрона. Имейте это
в виду при негодовании по поводу очередной задержки Intel или AMD при выпуске
нового процессора.
Тестовые лаборатории Intel
Intel хорошо известна своими тестовыми лабораториям (Validation Labs).
Многие будут возмущаться, что разница в цене между процессорами Intel и
решениями от конкурентов связана с чрезмерными расходами на тестирование.
Справедливо это или нет – пусть решают покупатели, но именно по этой причине
позиции Intel столь сильны на корпоративном рынке.
Тестовые лаборатории разделены на две части: лаборатории тестирования
систем (System Validation) и лаборатории тестирования совместимости (Compatibility
Validation). Лаборатории тестирования систем отвечают за проверку работоспособности
процессора (или процессоров) на различных системах. Если Intel гарантирует
работу процессора в двухпроцессорных конфигурациях, это означает, что системы
на базе этих процессоров в такой конфигурации подверглись ширенному тестированию.
Лаборатории тестирования совместимости больше ориентированы на конечного
пользователя, поскольку они тестирую совместимость приложений с продуктами
Intel.
Лаборатории тестирования систем
Мы прошли по нескольким лабораториям тестирования систем (на самом деле
их там огромное количество). Инженеры проводили различные тесты (разработанные
внутри корпорации) на однопроцессорных и многопроцессорных конфигурациях
на базе будущего Pluma.
Для тестирования используются специальные скрипты, создающие примерно
1 миллион тестов в сутки. В результате каждый процессор и чипсет суммарно
прогоняется через примерно 1 миллиард тестов в лабораториях Intel.
Как нам сказали, у Intel самые строгие требования к тестированию по сравнению
с другими производителями чипсетов, что приводит к более позднему выпуску
Intel-овских чипсетов с новыми возможностями типа поддержки DDR или PC133
SDRAM.
Тестовые системы
Эти компьютеры подготавливают данные для тестовых систем
В этом зале находятся тысячи компьютеров, непрерывно тестирующих платформы и продукты Intel
Тесты подготавливаются и передаются на тестовые платформы с помощью
тысячи других компьютеров, работающих в режиме распределенных вычислений
для оптимального распределения нагрузки. Все ошибки записываются и исследуются
до тех пор, пока не будет выявлен источник, а ошибка не будет решена.
Лаборатории тестирования совместимости
После того, как платформа пройдет через лабораторию тестирования систем,
она попадает в следующую лабораторию по тестированию совместимости, приближенную
к тому, с чем сталкивается конечный пользователь. В лаборатории производятся
различные тесты, начиная от сетевых тестов и заканчивая играми (чем занимается
большинство инженеров). Платформы оснащаются различным типом аппаратного
обеспечения для тестирования совместимости.
Тестирование в лаборатории
Еще одно тестирование
И снова тестирование
Самая приятная часть работы
Для лучшего понимания вопроса нам предоставили данные о тестировании,
через которые прошла платформа SCB2. По ним вы можете получить представление
о типичном тестировании серверных платформ.
Плата расширенно тестировалась с пятью операционными системами (большинство
производителей материнских плат тестируют только с двумя, некоторые добавляют
варианты ОС на различных языках, другие проводят расширенные тесты под
четырьмя ОС). Добавим к этому поверхностное тестирование еще под несколькими
ОС.
Плата также тестировалась с:
более чем 15-ю модулями памяти
более чем с 4-мя картами Fiber channel
более чем с 10-ю сетевыми картами
с 5-ю SCSI контроллерами
более чем с 5-ю CD/DVD приводами
более чем с 1-ю жесткими дисками
более чем с 7-ю устройствами хранения данных
более чем с 10-ю различными эталонными корпусами
плюс множество устройств ввода-вывода и модемов
Плата прошла более 10 000 суммарных часов тестирования, что равняется
1,5 годам чистого тестирования перед поступлением в продажу.
Перейдем к продуктам
Во время посещения 15-тысячного жилого кампуса Intel в Хиллсбро нам показали
демонстрации нескольких продуктов. Как мы отметили, компания сместила акцент
на сетевые продукты, особенно на беспроводные решения. Сам кампус полностью
оснащен беспроводной сетью, в которой работают сотрудники Intel.
Самой интересной сетевой новинкой для нас стала первая в мире сертифицированная Universal Plug’n’Play (UPNP) карта AnyPoing Networking Gateway 1300

Чем же этот Интернет-шлюз отличается от обычного кабельного/DSL маршрутизатора?
Из-за поддержки UPnP он сам распознается Windows XP как устройство. Далее
шлюз может автоматически открывать и закрывать порты в зависимости от требований
приложений, что избавляет вас производить ручную настройку. Конечно, вы
можете по-прежнему ограничить работу шлюза, но новичкам такое устройство
придется по вкусу.

Как и с любыми упрощениями технологии, здесь возникают проблемы с безопасностью,
но их всегда можно должным образом решить.
Заканчиваем на Itanium
Поскольку это репортаж, а не обычная статья, то и привычное заключение
здесь не подойдет. Давайте в конце немножко подискутируем по поводу Itanium
и его будущего. Не так давно появились слухи, гласящие об отходе Intel
от Itanium и IA-64 по причине небольшого успеха платформы и слишком маленькой
рыночной ниши. На самом деле, архитектура IA-64 с самого начала разрабатывалась
в качестве нишевого решения. Говоря словами Intel, Itanium был необходим
для разработки следующего поколения микропроцессоров. Вы не встретите Itanium
или IA-64 в большинстве серверных платформ или в большинстве мощных рабочих
станциях. Архитектура IA-64 была разработана для самых требовательных из
high-end приложений, и, таким образом, она занимает вертикальный рынок.
16-процессорный (и более) серверный рынок принял Itanium и IA-64, ранее
же на этом рынке господствовала Sun.
AMD, с другой стороны, реализовала совершенно другой подход с технологией
x86-64 в Hammer. Хотя архитектура Hammer нацелена на совместную работу
в многопроцессорных системах, она не пойдет на тот же рынок, что и IA-64.
Вместо этого, x86-64 будет нацелена на рынок high-end рабочих станций и
серверов, постепенно спускаясь на основной компьютерный рынок. Архитектура
же Itanium, наоборот, не предполагается для реализации на основном рынке.
Хотя на рынке обычных компьютеров и появятся несколько инновационных решений
на базе Itanium и будущих IA-64 процессоров, вряд ли вам так уж будет необходима
эта архитектура.
Но таким заключением мы вовсе не исключаем возможность работы Intel
над другим 64-битным проектом, который будет конкурировать с линейкой AMD
x86-64. Если этот подход покажет свою эффективность, Intel наверняка будет
готова выступить со своим решением.
Гуляя по Портланду можно наткнуться на знакомые имена