Продолжая выпускать все более и более скоростные процессоры — а тактовая частота их последних моделей уже преодолела рубеж 1 ГГц, — компании Intel и AMD идут на существенный риск.

Основная сложность заключена в тестировании. Поскольку внутренняя частота микропроцессора намного опережает частоту системной шины, эксперты утверждают, что проверить логику функционирования высокопроизводительных процессоров без заметного увеличения сроков и стоимости тестирования сегодня невозможно, а невыполнение этих условий часто приводит к выпуску некондиционных процессоров. Максимальная же частота шины сейчас варьируется в пределах от 133 до 200 МГц. «Мы уперлись в стену. Можно уже сейчас выпустить двухгигагерцевый процессор, но как доказать его надежность? — утверждает Джо Джоунс, директор компании Bridgepoint, специализирующейся на тестировании полупроводниковых устройств. — Мы сами загнали себя в угол».

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

Представители Ассоциации полупроводниковой индустрии (SIA — Semiconductor Industry Association) полностью согласны с такой постановкой вопроса и считают, что разработка встроенных средств самотестирования микросхем является одной из тех важнейших задач, без решения которых отрасль не сможет обеспечить дальнейшего соблюдения закона Мура и далее наращивать тактовую частоту процессоров.

Однако для выполнения рекомендаций SIA производителям микропроцессоров пришлось бы пойти на радикальное и дорогостоящее изменение архитектуры своих изделий, к которому они пока еще не готовы.

В настоящее время высокопроизводительные микропроцессоры тестируются путем выполнения ряда известных алгоритмов и сравнения полученных результатов с эталонными. Однако этот подход «черного ящика» не позволяет узнать, что происходит внутри микропроцессора, и лишь подтверждает получение ожидаемых результатов при выполнении некоторого ограниченного набора тестов.

Высокая скорость при сомнительной надежности

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

Это мнение разделяет и Дейв Ренхофф, директор по операциям компании Credence Systems, специализирующейся на выпуске тестового оборудования: «Пытаясь предложить процедуру тестирования для микропроцессоров следующего поколения, их поставщики упрутся лбом в стену».

Представители Intel и AMD попытались возразить, заявив, что уверены в надежности своих технологий тестирования.

Однако аналитик компании Insight 64 Натан Бруквуд заметил, что на самом деле исследователи Intel и AMD уже столкнулись с физическими ограничениями: «То, что инженеры и тестировщики продолжают действовать точно так же, как они действовали раньше, вызывает опасения. Но индустрия движется по пути эволюционного, а не революционного развития. И изменения, которые регулярно вносятся в процесс тестирования с учетом повышения сложности технологий, хотя и не носят принципиального характера, постепенно все же меняют ситуацию».

На международной конференции ITC 2000, проходившей в октябре в Атлантик-Сити, специалисты обсуждали вопросы тестирования высокоскоростных полупроводниковых устройств и повышения их надежности. Однозначного решения здесь пока не существует — на протяжении всей конференции ее участники пытались найти какой-то приемлемый вариант, но в кулуарах звучали в основном сомнения.

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

Разработчикам аппаратных компонентов нужно разрешить два вопроса. Первый касается так называемого «условия гонки» и связан с недостаточно точной синхронизацией данных, циркулирующих внутри процессора на различных скоростях. Это приводит к ошибкам в вычислениях. При такой ситуации действия сложения, к примеру, станут выполняться раньше действий умножения. В итоге логика работы нарушается, и результаты получаются неверными. Во-вторых, в микропроцессоре имеются специальные арбитры, которые определяют время и порядок выполнения условных переходов. Но когда тактовая частота повышается, команды, корректно работавшие в медленных системах, начинают выполняться в ином порядке, и это также приводит к неверным результатам.

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