CRUSOE компании Transmeta

1. Засекреченная разработка

Больше 2 лет представители компании Transmeta c загадочным видом пугали весь компьютерный мир сообщениями о своем секретном процессоре Crusoe. Практически никаких подробностей о нем до сих пор не разглашалось. Сайт компании содержал лишь одну надпись:


"We rethought the microprocessor to create a whole new world of mobility. Arriving January 19th, 2000. The Crusoe Processor."

Известно было лишь то, что секретный процессор будет чем-то "совершенно новым". Можно было бы скептически относиться к этим сообщениям, если бы не были известны факты о самой компании.

Компания Transmeta основана около 5 лет назад в Силиконовой Долине. Ее президент Дэвид Дитцел раньше работал на такие крупные компании, как AT&T Bell Labs и Sun Microsystems Inc. Активное участие в разработке процессора принимает Линус Торвалдс, создатель Linux. На Transmeta работает группа опытных инженеров из MIPS. О серьезности намерений компании можно судить по тому, что в финансировании разработки участвуют один из создателей Microsoft Пол Аллен, известнейший финансист Джордж Сорос и Банк Бостона.


Именно эти люди сделали Crusoe

Следует отметить, что несколько лет назад, когда Дэвид Дитцел еще был одним из ведущих разработчиков Sun, он активно сотрудничал с Борисом Бабаяном, который сейчас разрабатывает процессор "Эльбрус-2000" (E2K) и имел доступ ко многим техническим материалам по E2K. Вероятно, под впечатлением от E2K у Дитцела и родилась идея создать свой процессор.

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

Как уже было отмечено выше, до 19 Января 2000 года о новом процессоре было известно немногое. По заявлению инженеров Transmeta это должен быть процессор с очень низким потреблением энергии и имеющий VLIW-архитектуру. Эта постRISC архитектура также будет применяться в процессорах Itanium и E2K. Кроме того, для Crusoe реализована патентованная технология бинарной компиляции "Сode Morphing", позволяющая процессору эмулировать любой набор инструкций. Теоретически, этот процессор может работать под управлением таких разных операционных систем, как Windows 9x, Linux, Windows CE или Palm OS. Подобный подход позволяет реализовать полную эмуляцию x86- совместимого процессора без нарушения патентов Intel.

Интересен тот факт, что в 1996-1997 годах Московский центр Sparc-технологий разработал по заказу Transmeta оптимизированную и высокоточную программную реализацию трансцендентных математических функций, которые аппаратно реализованы на архитектурной платформе IA-32 (Intel x86/87). Фактически, МЦСТ помог своим конкурентам.

В российском процессоре E2K тоже должна быть реализована технология двоичной компиляции (кстати, также запатентованная). Как заявил Борис Бабаян, схожесть двух технологий обусловлена тесным общением с ним Дэвида Дитцела во время совместной работы в Sun Microsystems. Однако, по словам Бабаяна, вариант, реализованный для процессора E2K более совершенный.

Проведем краткий экскурс в архитектуру VLIW. Это сокращение от словосочетания Very Long Instruction Word (очень длинное командное слово). VLIW базируется на множественезависимых функциональныхустройств процессора. В таких машинах вместо того, чтобы пытаться параллельно выдавать в эти устройства независимые команды, несколько операций упаковываются в одну очень длинную команду. При этом ответственность за выбор параллельно выдаваемых для выполнения операций полностью ложится на компилятор, а аппаратные средства, необходимые для реализации суперскалярной обработки, просто отсутствуют. Это весьма прагматичный подход. В результате, процессор не тратит время на анализ потока команд для выявления параллельных команд.

Лозунг архитектуры VLIW - упрощение управляющей логики как средство повышения частоты. Как говорит Дитцел: "Люди всегда хотят добавить функциональности. Поэтому, главная забота руководителя разработчиков - не усложнять процессор".

Наибольшой минус VLIW состоит в том, что быстродействие программ очень сильно зависит от компилятора. Но кто сомневается в профессионализме Линуса Торвалдса, пусть первый бросит в меня камень. Торвалдс очень хороший программист и способен написать для Crusoe очень эффективный компилятор.

Подобный баланс между аппаратной и программной частями проекта Crusoe позволяет сделать очень простой и компактный кристалл, работающий на высокой частоте. Компактный кристалл требует при работе мало энергии и имеет низкую себестоимость. Действительно, по заявлению инженеров Transmeta, их процессор будет расходовать менее 1 ватта и идеально подходит для мобильных компьютеров. Все эти замечательные свойства Crusoe, позволяют Торвалдсу заявить, что его детище может составить серьезную конкуренцию Intel.


Характеристики Mobile PII Mobile PII Mobile PIII TM3120 TM5400
Тех. процесс 0,25 0,25 shrink 0,18 0,22 0,18
On-chip L1 Cache 32KB 32KB 32KB 96KB 128KB
On-chip L2 Cache 0 256KB 256KB 0 256KB
Размер кристалла 130 кв. мм 180 кв. мм. 106 кв. мм. 77кв. мм. 73кв. мм.

2. Все тайное становится явным

После нескольких лет тайны, журналисты и аналитики наконец были приглашены провести лучшую часть среды, 19 января 2000 года, на вилле у подножия гор в Саратоге вместе с компанией Transmeta. Здесь в 21 час по тихоокеанскому времени (в это время в Москве уже наступило утро 20 января) были представлены образцы Crusoe и раскрыты все подробности об этом таинственном процессоре.

Теперь мы можем описать Crusoe подробнее, основываясь на официальных материалах. На презентации было представлено две модификации процессора: TM3120 и TM5400. Оба процессора реализуют концепцию "System-On-Chip" и содержат контроллеры памяти и шины PCI. Процессоры будут производиться на заводах IBM по 0,22 и 0,18 микронной технологии соответственно.


Характеристики TM3120 TM5400
Частота 333-400MHz 500-700MHz
Кэш L1 96KB 128KB
Кэш L2 - 256KB
Поддержка памяти SDRAM (от 66 до 133MHz) SDRAM (от 66 до 133MHz)
DDR-SDRAM (от 100 до 166MHz)
Северный мост Встроенный Встроенный
Корпус 474 BGA 474 BGA

Ядро Crusoe состоит из двух целочисленных АЛУ, одного блока операций с плавающей точкой, блока управления памяти и блока управления ветвлениями. В процессоре содержится 64 целочисленных регистра. 128 битное процессорное слово, называемое "молекулой" состоит из четырех RISC-подобных инструкций, называемых "атомами". Все атомы выполняются параллельно. Формат молекулы напрямую определяет, куда будут направлены инструкции. Это очень упрощает устройство управления. Молекулы выполняются в последовательном порядке.

3. "Code Morphing" или самый умный процессор

Технология "Code Morphing" заключается в том, что с помощью специального транслятора, встроенного в ROM, готовые программы транслируются из x86 кода в код VLIW. Этот транслятор является первой программой, которую исполняет процессор после загрузки. Он располагается в специально выделенном адресном пространстве, которое недоступно другим программам. Трансляция может производиться один раз. Транслированный VLIW-код помещается в специальный кэш, откуда при необходимости он может быть повторно загружен. В некоторых программах, таких как MS Word за короткий отрезок времени могут встретиться множество различных процедур, которые не будут повторяться. Потенциально это может значительно уменьшить скорость исполнения такого кода. Для нейтрализации этого недостатка, "Code Morphing" обладает способностью обучаться и оптимизировать выполнение такой программы. Из-за этой "интеллектуальности", существует проблема с традиционными тестами производительности. Они могут протестировать процессор в процессе обучения, не дав ему возможности проявить свой "интеллект". В результате такой тест покажет очень низкое быстродействие. Реальные программы, например проигрыватели DVD многократно выполняют один и тот же участот кода. Crusoe покажет на такой программе великолепное быстродействие. Из практики программирования известно, что небольшая часть кода (часто меньше 10%) может требовать до 95% общего времени выполнения программы. Эвристический алгоритм "Code Morphing" может распознать такие участки и попытаться их дополнительно оптимизировать. С другой стороны этот алгоритм не станет тратить время на оптимизацию участка, который выполняется лишь один раз.


Что такое Code Morphing

Так-как программы x86 не взаимодействуют напрямую с ядром, появляется возможность легко модифицировать набор внутренних VLIW инструкций. Кроме того, программное обеспечение "Code Morphing" может быть легко модернизировано.

4. Процессор TM3120

Процессор TM3120Процессор TM3120 идеален для нового класса мобильных Internet - устройств (WebPad), весящих менее килограмма. На частоте до 400 МГц и минимальном потреблении энергии до 20мВт он способен обеспечить на одной зарядке батарей целый день автономной работы. В нормальном рабочем режиме этот TM3120 потребляет менее 1 ватта, что в 4 раза меньше, чем аналогичные по функциональности процессоры. TM3120 предоставляет достаточную производительность для выполнения любых приложений: от интернет-серфинга, до проигрывания видеоклипов MPEG. TM3120 совместим со всеми операционными системами, выполняющимися на процессорах семейства x86. Transmeta ожидает, что основной операционной системой для интернет-устройств на основе этого процессора будет Linux.


WebPad

5. Процессор TM5400

Процессор TM5400Второй из семейства Crusoe - более мощный процессор TM5400. Он разработан специально для ультра-легких (весящих менее 2 килограммов) ноутбуков. TM5400 может работать на частоте до 700Мгц и имеет минимальное потребление энергии 8мВт. Ноутбуки на основе этого процессора смогут работать со стандартными офисными программами до 8 часов на одной зарядке батарей. "Тяжелые" приложения, например проигрывание DVD сокращают этот срок до 4 часов. Для снижения энергопотребления, процессор TM5400 использует патентованную технологию "LongRun™", которая позволяет подстраивать частоту и напряжение питания процессора в зависимости от его загрузки (у Intel тоже существует похожая технология - SpeedStep™). Среднее потребление энергии составляет около 1 ватта. максимальное потребление - до 2 ватт. Чип может работать без охлаждения. Даже при проигрывании DVD температура микросхемы не превышает 48 градусов.

Основными операционными системами для этого процессора должны стать Windows 98, Windows 2000 и различные версии Linux.


сверху PIII, снизу Crusoe TM5400. Оба играют DVD. Почуствуйте разницу

6. Результаты тестирование систем на основе Crusoe и Mobile Pentium III

Для тестирования Transmeta использовала систему тестов собственной разработки. В них основное внимание уделяется вопросам энергосбережения. Результатами теста являются три основных показателя: производительность - (WCR), энергосбережение - (WCE) и эффективность - (WCRE). Эти метрики вычисляются по следующим формулам:
WCR = (Объем Работы) / (Время Для Завершения Этой Работы)
WCE = (Объем Работы) / (Сэкономленная Энергия)>
WCRE = (WCR) / (Сэкономленная Энергия)

Для тестирования на платформе Windows в качестве типичных офисных приложений использовались MS Word, Excel, PowerPoint, Outlook и Internet Explorer. Кроме офисных приложений тестировались Quake, MP3 и DVD проигрыватели. Конечно все эти бенчмарки в "попугаях" остаются на совести компании, но хотя бы приблизительное представление о производительности и экономичности они дают.

Конфигурация систем, использованных для тестирования:

Система на основе Pentium III
Ноутбук от одного из ведущих производителей (какой именно не сообщается).

  • Процессор Mobile Pentium III 500Mhz (ядро Coppermine 0.18 микрон, 1.54 Вольт);
  • Память 64M PC-100 SDRAM;
  • Чипсет - мобильный вариант 440BX.

Система на основе TM5400

  • Платформа Transmeta FTM;
  • Процессор работает на частотах от 266 до 533 Mhz при напряжении от 1.225 до 1.6 Вольта;
  • Память 64M PC-133 SDRAM.

Система на основе TM3120

  • Платформа Transmeta FTM.
  • Процессор работает на частоте 400Mhz при 1.5 вольтах.
  • Память 64M PC-133 SDRAM.

На всех системах был включен режим максимального энергосбережения.


Тестирование при сильной загрузке - Load Operating System (LOS)
Windows 98 SE Pentium III TM5400 TM3120 Единицы измерения
Энергопотребление процессора + сев. мост 10,30 2,76 3,37 Ватты
Производительность (WCR) 60,0 55,2 50,7 Единицы WCR
Энергосбережение (WCE) 5,85 20,00 15,00 Единицы WCE
Эффективность (WCRE) 328 1030 712 Единицы WCRE

Тестирование при свободной системе - Windows Desktop Idle (WDI)
Windows 98 SE Pentium III TM5400 TM3120 Единицы измерения
Энергопотребление процессора + сев. мост 5,04 0,80 1,16 Ватты
Производительность (WCR) 60,0 60,0 60,0 Единицы WCR
Энергосбережение (WCE) 11,90 75,50 51,80 Единицы WCE
Эффективность (WCRE) 143 906 619 Единицы WCRE

Работа в MS Office 2000 - (O2K)
Windows 98 SE Pentium III TM5400 TM3120 Единицы измерения
Энергопотребление процессора + сев. мост 7,10 2,00 2,74 Ватты
Производительность (WCR) 60,0 48,0 44,9 Единицы WCR
Энергосбережение (WCE) 8,45 24,00 16,40 Единицы WCE
Эффективность (WCRE) 63 144 92 Единицы WCRE

Cофтверное проигрывание DVD (DVD)
Windows 98 SE Pentium III TM5400 TM3120 Единицы измерения
Энергопотребление процессора + сев. мост 6,78 2,17 2,87 Ватты
Производительность (WCR) 60,0 60,0 60,0 Единицы WCR
Энергосбережение (WCE) 8,85 27,60 20,90 Единицы WCE
Эффективность (WCRE) 53 166 125 Единицы WCRE

Производительность (в единицах WCR)

Энергосбережение (в единицах WCE)

Эффективность (в единицах WCRE)

В ближайшее время начнутся продажи TM3120. Первые продукты с его использованием должны появиться во втором квартале. Процессор TM5400 должен появится в продаже в середине года. Цены на процессоры семейства Crusoe приведены в таблице.


Процессор Цена
TM3120 333 МГц $65
TM3120 400 МГц $89
TM5400 500 МГц $119
TM5400 700 МГц $329

Как мы можем видеть, на рынке Palm-устройств в лице TM3120 уже сейчас появилась реальная угроза RISC-процессорам типа StrongARM. С другой стороны, TM5400 - это весьма сильный конкурент для мобильных x86-процессоров Intel и AMD. Технологии, реализованные в Crusoe очень впечатляют. Инженеров Transmeta можно поздравить с удачной разработкой. Только остается на душе горький осадок: почему Crusoe уже работает, а наш E2K так и остался в виде компьютерной модели.