17. Промежуточный вариант
17. Промежуточный вариант
Уговаривая кого-нибудь прийти на работу в Intel, Энди Гроув обычно предсказывал компании великое будущее. Его собственная уверенность в этом очень помогала ему. Но иногда фантазия уводила его слишком далеко.
Так было и в случае с Биллом Лэттином, одним из ведущих экспертов компании Motorola по процессам производства полупроводников. Гроув общался с Лэттином в 1971 году и настойчиво приглашал его на работу в Intel.
"Стиль Гроува был ужасно грубым, — вспоминал Лэттин, — В моем случае это не сработало… Его аргументы звучали так: у Motorola нет шансов, мы дадим ей пинка под зад".
Лэттин ответил вежливым отказом и вернулся к работе в Motorola, полный решимости приложить все усилия, чтобы опровергнуть слова своего собеседника. Когда Intel разработала чип памяти 1102 для Honeywell, Лэттин получил от последней копию спецификации и возглавил небольшую команду, создававшую копию чипа. Motorola в качестве второго источника производила также чип 1103, и к тому времени команда была уверена в способности разработать собственный чип памяти. Однако каждый год Гроув, заезжая в Финикс, предлагал Лэттину приехать на собеседование по поводу найма на работу в Intel.
"Энди все время говорил мне, что я играю за аутсайдеров. Это только вдохновляло меня на то, чтобы работать в своей команде еще усерднее".
Через некоторое время Лэттину удалось одержать моральную победу над Гроувом. Когда Intel выпустила свой первый 8-битный микропроцессор, Лэттин начал реализовывать в Motorola программу создания более мощного 8-битного процессора. Вскоре после того, как появился чип 8080 Intel, Motorola вышла на рынок с новым чипом, названным 6800. Предложение Motorola вызвало шок в Intel: 6800 был интереснее чипа Intel по многим показателям. Самое главное, для него требовался один источник питания напряжением 5 вольт, в то время как для 8080 — три.
Почему Гроув так стремился переманить этого инженера? Отчасти потому, что он сам его учил и знал его достоинства. Когда Гроув читал курс лекций по физике полупроводников в Университете Беркли, одновременно продолжая работать в Fairchild, Лэттин был одним из самых многообещающих студентов. Гроува часто раздражало, что Лэттин подвергал курс ревизии, далеко не все принимал на веру, поэтому учителю приходилось с ним нелегко.
А может быть, причина была не только в этом? Биография Лэттина сильно отличалась от биографии Гроува, эмигранта из Венгрии, который, прежде чем попасть в Беркли, закончил городской колледж. Лэттин плохо учился в средней школе и затем пошел добровольцем в Военно-морской флот США. Однако в их историях было нечто общее: не обещающее много хорошего начало и продвижение от сырого таланта к высотам науки. Свое первое настоящее образование Лэттин получил во флотской школе электронной техники, а после того как ушел в религию, стал заниматься в церковной школе в Портленде, штат Орегон. Затем Лэттин поступил на работу в местную компанию техником по электронике и начал обучаться на вечернем отделении. После двух лет обучения в колледже Ventura Junior (Южная Калифорния) он перевелся в Беркли, где решил получить степень магистра. В 1975 году, уже работая менеджером целого отдела Motorola, занимавшегося MOS-технологией, и отвечая за все запоминающие устройства и микропроцессоры, он в свободное время писал докторскую диссертацию, в то время как Гроув продолжал уговаривать его перейти в Intel.
Но внутренняя политика, в конце концов, заставила Лэттина сдаться. После спада в электронной промышленности во втором полугодии 1974 года Motorola предложила ему вместе со всем отделом переехать из Финикса в Остин (штат Техас). Прежде чем согласиться, Лэттин добился от своего босса обещания, что инженеры, которые поедут с ним, сохранят работу. Летом 1975 года переезд состоялся. Через четыре недели человек, давший обещание Лэттину, сам был уволен, а его преемник потребовал сокращения штата. Лэттин сказал своему новому боссу, что скорее уволится сам, чем нарушит обещание, данное инженерам. Через несколько недель он перешел в Intel, а следом за ним последовало еще полдюжины блестящих инженеров Motorola.
Сначала Лэттин возглавил команду, работавшую над очень передовой архитектурой, получившей название 8800. Поскольку при этом число его подчиненных с трех сотен в Motorola сократилось до пяти человек, это его не очень впечатлило. Однако затем он увлекся процессором, который создавала его команда. Как обычно, Intel не пыталась внести новые улучшения в чип 8080; ее целью был революционный скачок в микропроцессорной технологии. Новый чип должен был содержать защиту от ошибок и самоконтроль, а также обеспечивать настоящую многозадачность и инструкции переменной длины. Самое главное: он должен был распознавать различные типы данных и поддерживать объектно-ориентированный подход, который вошел в моду в компьютерном бизнесе только десятилетие спустя. Предполагалось, что он станет самым крупным чипом из всех ранее созданных Intel: 300 мил (тысячных долей дюйма) с каждой стороны. Для сравнения: размер чипа 8080 составлял 166 х 125 мил. Это было очень смелым шагом; поскольку дефекты распределялись на кремниевой пластине случайным образом, Intel приходилось проводить исследование по кластерам, чтобы выяснить, каковы шансы найти такой большой и безупречный участок пластины, чтобы разместить на нем чип.
Лэттин был поражен тем, что увидел в планах проекта, и решил переговорить с Гордоном Муром, главой компании и одновременно мечтателем.
— Гордон, ты хочешь, чтобы я стал руководителем программы создания этой штуки, — начал он, — Но этот компьютер столь изощренный, что я не могу сказать, хорошая ли это архитектура… Она не похожа на 6800. Это попытка интегрировать концепции ЭВМ в микропроцессор.
Мура это не смущало. При всех успехах чипа 8080, Intel еще не могла серьезно претендовать на вхождение в компьютерный бизнес. Архитекторы компьютеров все еще высмеивали ее процессоры как слишком слабые и не обладавшие нужными свойствами, чтобы стать серьезной базой для архитектуры ЭВМ. Мур был уверен, что новая разработка откроет Intel путь в компьютерный бизнес. Лэттин ушел от него вдохновленный, убежденный в том, что высшее руководство компании поддерживает проект на все сто процентов.
Однако докладывать каждый месяц о продвижении работ над проектом 8800 Лэттину приходилось не Муру, а Гроуву. Взявшись за новый процессор, он стал ответственным за все трудности, с которыми сталкивалась его команда. Их было немало, а при введенной Гроувом системе руководства путем установления целей и проверки ключевых результатов, при регулярных встречах один на один для точного выяснения, что происходит, спрятаться было не за что.
"При каждом отчете график смещался, — вспоминает Лэттин. — Энди хотел, чтобы график строго соблюдался, факты были точными, в то время как мы находились в процессе исследования. При каждом отчете мне устраивали порку — и очень жестокую. Культура Motorola, где не было такой конфронтации, мне была ближе".
Лэттин оказался между двух огней: с одной стороны, его донимал своими требованиями Гроув и, с другой, его подчиненные не хотели брать на себя ответственность за принимаемые решения. Особенно трудно было с Джастином Рэттнером, блестящим архитектором, занимающимся окончательной спецификацией нового чипа. Он никак не мог довести дело до конца, и Лэттину приходилось оставаться в кабинете до поздней ночи и лист за листом распечатывать спецификацию, пытаясь уложиться в срок и избежать очередной унизительной порки.
После одного особенно неприятного разговора Лэттин покорно попросил Гроува:
— Энди, если ты хочешь меня критиковать, тебе придется потратить немного времени, чтобы подготовить меня к этому.
Более умудренные головы в Intel могли бы подсказать Лэттину, что такое сильное давление сопутствовало великим технологическим прорывам. Компания будет месяц за месяцем повышать напряжение, но не похоронит проект 8800. И что бы там ни говорили, она выделит на исследования столько времени, денег, терпения и технических знаний, сколько необходимо.
Сохраняя приверженность проекту Лэттина, Intel приняла на работу еще одного аса маркетинга, который должен был направить свои усилия на то, чтобы вывести компанию на уровень серьезного бизнеса в области микропроцессоров. Это был Билл Давидов, и его появление свидетельствовало о том, что компания осознала: нельзя больше отмахиваться от микропроцессоров как от рынка, нацеленного на любителей и производителей калькуляторов. До этого момента те, кто работал над запоминающими устройствами, считали финансирование микропроцессорных проектов пустой тратой средств. "Хватит разбрасываться, — говорили они. — Большие деньги лежат в области компьютерной памяти. У микропроцессоров неплохая реклама, но они не приносят прибыли. Мы должны прикрыть этот бизнес и сконцентрироваться на том, в чем мы сильны".
Аргумент Давидова по поводу 8800 оказался простым, но эффективным. Он согласился, что работа над радикально новым процессором должна быть продолжена, но поставил вопрос жестко: нужно ли Intel что-то для того, чтобы отбиваться от конкурентов, пока он не готов? Все, что компания имела, — это чип 8085, модифицированный 8080, в котором вслед за Zilog были применены не использованные раньше коды операций. Однако стало известно, что Zilog разрабатывает новый 16-битный чип Z8000, кроме того, Билл Лэттин знал, что еще при нем Motorola начала разработку 16-битного проекта 68000.
Давидов некоторое время обдумывал, как не предвзято оценить новый проект и связанные с ним проблемы. Он остановил свой выбор на молодом инженере-программисте по имени Стив Морс, проработавшем в компании меньше года и поэтому еще не ставшем четким сторонником или противником проекта. Давидов попросил его оценить проект нового чипа. Блестящий и целеустремленный ученый, Морс, как и Гроув, несколько лет преподавал в Беркли. Можно было ожидать, что он подойдет к задаче строго. Морс взял себе в помощники молодого инженера Intel, одного из своих бывших студентов.
Отчет Морса, поданный в апреле 1976 года, ограничивался оценкой дефектов архитектуры в разработке нового чипа. На пятидесяти семи страницах описывались: пятнадцать ошибок и упущений в спецификации; девять пунктов, которые требовали уточнения, чтобы спецификация имела смысл; четыре проблемы, которые могли снизить эффективную рабочую скорость процессора до черепашьей; тридцать семь пунктов, относящихся к программированию, различной степени значимости, по мнению Морса. В отчете ни слова не говорилось о том, что процессор безнадежен и следует прекратить его разработку. Но строчка за строчкой, пункт за пунктом отчет отказывал в доверии новому чипу.
Intel уже слишком много поставила на проект, чтобы похоронить всю работу из-за мнения двух молодых ученых. Но Давидов и его коллеги не могли закрывать глаза на факты. Морс обнаружил достаточно проблем, чтобы понять, что в ближайшие годы этот процессор не будет произведен. Если Intel промедлит, ей нечего будет противопоставить суперчипам, обещанным Zilog и Motorola. Всем было ясно, что произойдет с технологической компанией, если она позволит другим развивать свои лучшие идеи.
— Терри, на разработку процессора вам дается десять недель.
Билл Давидов посмотрел на лица собравшихся за столом, чтобы увидеть их реакцию. Участники совещания — мужчины в возрасте около тридцати лет, все в рубашках с расстегнутыми воротничками. Все отстаивали свои позиции, крича и ругаясь со своими коллегами-инженерами и стуча по столу, чтобы довести свою точку зрения до других. Лишенная окон комната за прошедшие два часа наполнилась табачным дымом, предлагались идея за идеей, сразу же отвергавшиеся как "сумасшедшие" и "идиотские" теми, кто думал иначе. Однако постепенно стали приходить к консенсусу.
Настало время принимать решение. Давидов был самым старшим в этой комнате — 41 год. Работа генеральным менеджером отдела придавала ему авторитет, или "власть должности", как любили говорить молодые. Однако у него были сила и опыт, в особенности после руководства исследовательскими лабораториями в General Electric и производством мини-ЭВМ в Hewlett-Packard — это давало ему "власть знания". Когда он говорил, остальные понимали, что слушают человека, связанного с компьютерной индустрией двадцать четыре года.
Терри Опдендейк, к которому обращался Давидов, являл собой пародию на менеджера Intel: очень молодой, очень талантливый, очень дерзкий. После окончания школы он познавал азы программирования в Hewlett-Packard. Теперь, в двадцать восемь лет, он руководил отделом, чего в любой другой компании ему пришлось бы ждать еще лет десять. Для него "конструктивная конфронтация", культивировавшаяся в Intel была естественной. От своих датских предков он унаследовал упрямство и вкус к борьбе. Хотя он никогда не считал Intel приятным местом, позднее он называл компанию "самой возбуждающей, стимулирующей, требовательной, бодрящей и утомительной". Но даже Опдендейк не мог заставить свою команду инженеров разработать архитектуру нового чипа за десять недель.
Он, конечно, понимал, почему установлен такой жесткий срок. Даже после того, как будут решены все основные вопросы, связанные с архитектурой процессора, останется еще очень много работы. Сначала делается базовый чертеж схемы, затем следует проверка, месяцы уходят на создание прототипов и настройку, наконец, создается образец из кремния… А ведь надо еще заниматься отладкой производственного процесса, чтобы обеспечить разумную себестоимость. Отсутствие в чертеже единственного соединения из сотен тысяч транзисторов может заставить их вновь вернуться за чертежные доски. Когда все стадии были расписаны по срокам, решение стало неизбежным: чтобы завершить проект за установленный Давидовым годовой срок, на разработку базовой архитектуры можно было выделить только десять недель.
Несмотря на свою молодость, Опдендейк знал, что, согласившись под давлением собравшихся с этим требованием, он пойдет против существующей в индустрии мудрости: один человек, один чип, один год. Срок в десять недель вряд ли был реалистичным. Но, если он обязуется подготовить архитектуру за десять недель, обратного пути не будет. В другой компании он мог бы найти уважительные причины и сказать, что обещание было дано при условии выполнения чего-то, что не произошло. В Intel же, несомненно, Энди Гроув сохранит повестку дня данного совещания, а месяцы спустя с видом триумфатора вытащит этот листок, дословно процитирует сказанное и потребует ответа. Инстинкт самосохранения подсказывал Опдендейку, что надо отказаться.
Но в этом случае датские предки подвели его. Понимая, что срок в десять недель не реален, он тем не менее не смог убедить своих коллег дать ему больше времени. Они тоже знали, что, когда архитектура будет завершена, им будут поставлены такие же жесткие сроки; поэтому дать Опдендейку больше времени означало оставить меньше себе. К концу совещания он принял десятинедельный срок. Идя по коридору, Опдендейк утешал себя одной мыслью: по крайней мере, не надо искать специалиста по разработке архитектуры чипа. Стив Морс показал себя одаренным инженером в предшествующем проекте. Как автор того злосчастного отчета, он был основным критиком 8800. Справедливость требовала, чтобы он стал архитектором промежуточного варианта. Участие остальных должно было состоять в том, чтобы архитектура подходила и разработчикам схемы, и производственникам. Но основную часть работы в течение всех десяти недель должен взять на себя Морс. Это был бы первый случай, когда архитектуру процессора доверили специалисту по программированию, а не по аппаратным средствам, но это могло оказаться не недостатком, а преимуществом. Опдендейк знал, что первые процессоры Intel были разработаны людьми, мало смыслившими в компьютерном программировании. Опыт, полученный во время работы в HP, помог ему увидеть те свойства, которые сделали бы использование 8080 трудным и неудобным, и успешно внести изменения, сделавшие его более "дружелюбным". Он считал: предложить прототип 8080 программисту, привыкшему к простоте использования ЭВМ фирмы IBM, это то же самое, что предложить телефон, предназначенный для военных, бабуле, которая хочет позвонить внукам.
Морсу не нужно было подсказывать, как смотреть на вещи с точки зрения программиста. Кроме того, молодой инженер-программист обладал качеством, очень важным для разработки архитектуры чипов: академической дисциплинированностью. Это можно было заметить не только в строгом подходе к своей работе, но и во всем, что он делал. К примеру, когда Морс решил проследить корни своей эмигрантской семьи, он проводил часы в отделе регистрации Эллис-Айленда, кропотливо проверяя возможные неточности в написании его фамилии и сверяя корабли, на которых его родители и их родственники прибыли из Центральной Европы. Окончив расследование, Морс снял копии с документов и искусно наклеил их в несколько альбомов вместе с фотографиями, причем все кромки были строго выровнены, а все снимки аккуратно подписаны. Такое пристальное внимание к мелочам было заметно и в его работе над каждым чипом.
Итак, в мае 1976 года Стив Морс приступил к работе над архитектурой нового процессора Intel. Каждое утро ровно в восемь он встречался с Опдендейком и отчитывался о проделанной работе. Остаток дня, иногда до поздней ночи, он работал над своим проектом с карандашом и бумагой, изредка пользуясь счетной машинкой, которых в то время еще было мало. Очень важно было поддерживать связь с людьми, которые будут работать с процессором на следующем этапе. Для этого Морс бегал из одного здания в Санта-Кларе в другое или в пристройку на другой стороне центрального шоссе. Тем временем в задачу Опдендейка входило отбивать политические атаки.
В сущности, задача, поставленная перед Морсом, была проста. Если новый 16-битный чип должен давать значительное увеличение скорости по сравнению с 8-битным 8080-м, он должен отличаться по ряду параметров. Но Intel хотела добиться, чтобы потребители обращались к ней повторно. Как один из способов добиться этого рассматривалась возможность перевода на более высокий уровень системы, разработанной для менее мощного процессора, при замене которого новым она будет работать. Для этого, в идеале, новый процессор должен быть совместим с любой программой, написанной для 8080.
Вскоре Морс понял, что достичь обеих целей одновременно нереально. Чип 8080 предлагал программистам набор из 111 возможных инструкций; для его разработки требовалось 133. Но это не был просто старый набор плюс 22 новые инструкции. Некоторые из старых инструкций исключались. Когда сотрудники Intel, ответственные за маркетинг, узнали об этом, они ужаснулись. Не означает ли это вроде бы небольшое изменение, спрашивали они, что программы, написанные для чипа 8080, не будут работать с новой моделью? Вовсе нет, отвечал Морс. Нужна лишь небольшая схема трансляции. Она обеспечит соответствие исключенным инструкциям для 8080-го одной или нескольких инструкций нового процессора, которые будут давать тот же результат. Таким образом, время, затраченное потребителями на изучение сложностей 8080-го, не пропадет даром: они смогут по-прежнему использовать программы, написанные для старого чипа. В своей рекламе и спецификациях Intel продолжит писать волшебное слово "совместимый".
Необходимость сделать новый процессор совместимым со старым создавала еще одну, более серьезную проблему: что делать с емкостью памяти. Когда Intel разрабатывала чип 8080, прошло совсем немного времени с момента выпуска чипа 1103, запоминающие устройства оставались дорогостоящим и дефицитным товаром. С тех пор Intel усовершенствовала как производство, так и свои разработки и могла уже производить гораздо больше чипов. Еще важнее то, что на рынок вышли и конкуренты, а это привело к резкому снижению цен. В 1976 году цены на устройства памяти составляли менее десятой доли их стоимости четыре года тому назад. Поэтому потребители начали задумываться о продуктах, для которых требовался не только более быстродействующий процессор, но и больший объем памяти. Как мог Морс обеспечить больший объем хранения информации и в то же время сохранить совместимость с прежней моделью, причем не увеличивая время на реализацию своих идей, чтобы и Опдендейк мог уложиться в отведенный срок?
Морсу приходилось отталкиваться от проекта 8080, в соответствии с которым процессор назначал "адрес" каждому месту, где хранились числа, подобно ярлыкам классификатора. Адреса представляли собой 16-битные двоичные числа, что позволяло обозначить 65 536 различных адресов. Этот потолок был приемлем, когда разработчикам требовалось экономно использовать память. Однако теперь потребителям понадобился больший объем, они настаивали на преодолении барьера в 64 Кбайт.
Для этого, очевидно, нужно было сделать адреса длиннее. Добавив еще четыре двоичные цифры, Морс мог сразу увеличить допустимый объем памяти в 16 раз и получить более миллиона адресов — мегабайт памяти. Но тогда вставал вопрос: сможет ли новая система адресации работать с программами, написанными для старой системы? И здесь Морс проявил себя блестяще. Он решил группировать адреса по шестнадцать в "сегменте", При работе со старыми программами для 8080-го старые адреса все равно работали: поскольку получилось 65 536 сегментов, старый короткий адрес означал бы первую ячейку в каждом из сегментов. При написании программ для нового процессора можно было использовать более длинные адреса, добавив в конце 4 бит для обозначения остальных 15 адресов сегмента.
У такого подхода был один недостаток. Новый процессор обрабатывал числа одновременно по 16 бит, а система "сегментной адресации" требовала 20 бит. Это означало, что для работы с 20-битными адресами процессор должен был делать некоторые забавные операции, используя "регистр сегмента", сдвигающий 16-битные адреса на 4 бит влево, а затем обратно, чтобы они имели смысл в 20-битной системе адресации.
То, что создал Морс (а затем разработчики схем и операторы на производстве, в течение одного года превратившие чип в продукт, готовый к продаже), можно было назвать сырой, небрежной разработкой. Тем не менее задача была решена блестяще. Пользователи старого, медленного 8-битного чипа 8080 получили возможность реализовать гораздо более быструю 16-битную обработку данных. Теперь они могли строить системы с объемом памяти в мегабайт. Самое главное, благодаря этой разработке они могли осуществить минимальную модификацию и по-прежнему работать со всеми программами, написанными для старого процессора. Чтобы отразить эти два выгодных преимущества (совместимость с предшественником и одновременно более высокую производительность), новому чипу присвоили серийный номер 8086. Он был выпущен в июне 1978 года.
Контраст между задержками при работе над 8800-м и быстрой разработкой 8086-го можно объяснить двумя ключевыми моментами. Во-первых, 8800-й страдал от того, что в IBM называли "синдромом второй системы". Дело в том, что при разработке новой компьютерной системы всегда приходится отказываться от части неплохих идей — и в следующей разработке практически невозможно отказаться от соблазна включить в нее все эти идеи. Во-вторых, нереально короткий срок и необходимость обеспечения совместимости стали стимулом для блестящего проявления способностей Морса. Ограничив возможность маневра, руководители (как учитель, который задает тему сочинения, вместо того, чтобы разрешить ученикам писать, о чем они хотят), вынудили его сфокусировать свое творчество в одном направлении.
В момент, когда 8086-й был запущен в производство, еще нельзя было ничего сказать о том, как он будет выглядеть по сравнению с еще не вышедшими продуктами Motorola и Zilog. Но в результате стремительной программы разработки Intel со своими микропроцессорами по-прежнему оставалась в числе ведущих игроков. Главная битва была впереди.