Революционный микропроцессор Intel 8008 был впервые выпущен более 50 лет назад.
Это был первый 8-битный микропроцессор Intel и предшественник семейства процессоров x86, которые вы, возможно, используете прямо сейчас. Найти хорошие фотографии матрицы 8008 не удалось, поэтому я вскрыл одну из них и сделал несколько подробных снимков. Эти новые фотографии матрицы вы найдете в этой статье, вместе с обсуждением внутреннего строения 8008.
На фотографии ниже показана крошечная кремниевая матрица внутри корпуса 8008. Провода и транзисторы, из которых состоит чип, едва видны. Квадратики снаружи — это 18 контактов, которые соединены с внешними выводами крошечными проводами.
Фотография микропроцессора 8008
На правом краю чипа можно увидеть надпись «8008», а на нижнем — «© Intel 1971».
Справа вверху — инициалы HF Хэла Фини (Hal Feeney), который занимался разработкой логики и физической компоновкой чипа. Другими ключевыми разработчиками 8008 были Тед Хофф, Стэн Мазор и Федерико Фаггин.
Внутри микросхемы
На схеме ниже показаны некоторые из основных функциональных блоков микросхемы. Слева расположен 8-разрядный арифметико-логический блок (ALU), который выполняет фактические вычисления данных.
Для хранения входных значений ALU использует два временных регистра. Эти регистры занимают значительную площадь на чипе, но не потому, что они какие-то сложные, а потому, что им нужны большие транзисторы для передачи сигналов через схему ALU.
Схема микропроцессора 8008 с изображением основных компонентов.
Под регистрами находится схема уско́ренного переноса. При сложении и вычитании эта схема вычисляет все восемь значений переноса параллельно для повышения производительности. Поскольку перенос младшего порядка зависит только от младших битов, а переносы старших порядков зависят от нескольких битов, блок схемы имеет треугольную форму.
Треугольная компоновка ALU необычна. В большинстве процессоров схемы для каждого бита складываются в обычный прямоугольник (bit-slice layout). Однако в 8008-м восемь блоков (по одному на каждый бит) расположены нестандартно, чтобы вписаться в пространство, оставленное треугольным генератором переноса. ALU поддерживает восемь простых операций.
В центре микросхемы находится регистр инструкций и логика декодирования инструкций, которая определяет значение каждой 8-битной машинной инструкции. Декодирование осуществляется с помощью программируемого логического массива (PLA), — набора логических элементов, которые соответствуют битовым шаблонам и генерируют соответствующие управляющие сигналы для остальных частей микросхемы. Справа расположены блоки памяти. Семь регистров 8008 находятся в правом верхнем углу. В правом нижнем углу находится стек адресов, состоящий из восьми 14-битных адресных слов. В отличие от большинства процессоров, стек вызовов 8008 хранится на чипе, а не в памяти. Счетчик программы является частью этого стека адресов, что делает вызовы и возвраты подпрограмм очень простыми. Для этого 8008 использует динамическую память.
Физическая структура микросхемы очень близка к блок-схеме, приведенной в руководстве пользователя 8008 (см. ниже); блоки расположены на микросхеме почти в тех же местах, что и на блок-схеме.
Блок-схема микропроцессора 8008, из руководства пользователя.
Структура чипа
Что показано на фотографии чипа? Для наших целей можно представить чип как состоящий из трёх слоёв. На приведённом ниже рисунке детально показан каждый из этих слоёв. Самый верхний слой — это металлическая проводка, которая наиболее заметна и, как неудивительно, имеет металлический блеск. Под этим слоем расположен слой поликремния, который под микроскопом кажется оранжевым. Провода в верхнем слое преимущественно горизонтальны.
Крупный план матрицы 8008, на котором видны металлический слой, поликремний и допированный кремний.
Основой чипа является кремниевая пластина, которая на фотографии выглядит фиолетово-серой. Хотя чистый кремний сам по себе имеет низкую электропроводность, его легируют примесями для создания полупроводящих свойств. Слой кремния расположен в нижней части и может быть сложно различим, но вы можете заметить черные линии вдоль границ между легированным и нелегированным кремнием. На фотографии также видны несколько вертикальных кремниевых ‘проводов’.
Транзисторы — ключевой компонент микросхемы, и каждый транзистор образуется в точке пересечения поликремниевой проволоки с легированным кремнием. На фотографии места, где поликремний формирует транзисторы, выглядят более ярким оранжевым цветом.
Почему микросхема с 18 пинами?
Одна из неудобных особенностей 8008 заключается в том, что у него всего 18 выводов, что делает его медленнее и намного сложнее в использовании. 8008 использует 14 битов адреса и 8 битов данных, поэтому при 18 выводах не хватает контактов для каждого сигнала. Вместо этого у микросхемы есть 8 выводов данных, которые повторно используются в трех циклах для передачи младших битов адреса, старших битов адреса и битов данных. Компьютеру, использующему 8008, требуется множество вспомогательных микросхем для взаимодействия с этой неудобной архитектурой шины.
Транзисторы — ключевой компонент микросхемы, и транзистор образуется там, где поликремниевая проволока пересекает легированный кремний. На фотографии поликремний выглядит более ярким оранжевым цветом в том месте, где он образует транзистор.
Не было никаких веских причин заставлять микросхему иметь 18 выводов. Корпуса с 40 или 48 выводами были привычны для других производителей, но 16 выводов были «религией Intel».6 Только с большой неохотой они перешли на 18 выводов. К моменту выхода процессора 8080 несколькими годами позже Intel смирилась с 40-контактными чипами. Процессор 8080 был гораздо более популярен, отчасти потому, что имел более простую конструкцию шины, допускаемую 40-контактным корпусом.
Пути питания и передачи данных в микросхеме
Шина данных обеспечивает прохождение данных через микросхему. На схеме ниже показана 8-битная шина данных 8008 с цветами радуги для 8 линий данных. Шина данных подключается к 8 выводам данных вдоль внешней стороны верхней половины микросхемы. Шина проходит между ALU слева, регистром инструкций (вверху по центру), регистрами и стеком справа. Кроме того, шина данных делится пополам слева с обеих сторон ALU.
Фотография микропроцессора 8008. Шина питания показана красным и синим цветами. Шина данных показана 8 цветами радуги.
Красные и синие линии на диаграмме обозначают маршруты питания. Маршрутизация питания — это важный аспект микропроцессоров, который часто недооценивается. Питание направляется через металлический слой из-за его низкого сопротивления. Однако в ранних микропроцессорах используется только один металлический слой, поэтому распределение питания должно быть тщательно спланировано, чтобы избежать пересечений маршрутов. На приведенной выше диаграмме синим цветом обозначены линии Vcc, а красным — Vdd. Питание поступает через вывод Vcc слева и вывод Vdd справа, после чего оно разветвляется на тонкие, пересекающиеся провода, питающие все компоненты микросхемы.
Регистровый файл
Чтобы показать, как выглядит чип в деталях, я увеличил регистровый файл 8008 на фотографии ниже. Регистровый файл состоит из сетки ячеек динамической оперативной памяти (DRAM) размером 8 на 7, каждая из которых использует три транзистора для хранения одного бита.8 (Вы можете увидеть транзисторы в виде маленьких прямоугольников, где оранжевый поликремний приобретает немного более яркий цвет). Каждый ряд — это один из семи 8-битных регистров 8008 (A, B, C, D, E, H, L). Слева вы видите семь пар горизонтальных проводов: линии выбора чтения и выбора записи для каждого регистра. Сверху видны восемь вертикальных проводов для чтения или записи содержимого каждого бита, а также 5 более толстых проводов для подачи напряжения Vcc. Использование DRAM для регистров (а не более распространенных статических защелок) — интересный выбор. Поскольку в то время Intel была первичной компанией по производству памяти.
Регистровый файл в микросхеме 8008. Микросхема имеет семь 8-битных регистров: A, B, C, D, E, H, L
Как работает PMOS
В 8008 используются транзисторы PMOS. Если немного упростить, то можно представить PMOS-транзистор как переключатель между двумя проволоками из кремния, управляемый входом затвора (из поликремния). Переключатель закрывается, когда на его входе затвор низкий уровень, и он может поднять выходной уровень. Если вы знакомы с NMOS-транзисторами, используемыми в микропроцессорах типа 6502, PMOS может показаться вам немного непонятным, потому что все происходит наоборот.
Примером является PMOS NAND-затвор, где транзисторы выключаются при высоком уровне на входах, а включаются при низком уровне. Это обеспечивает реализацию логической функции NAND. Для совместимости с TTL-схемами, микросхема 8008 использует нестандартные напряжения: -9 В и +5 В. Эти нестандартные напряжения позволяют правильно функционировать PMOS-транзисторам и обеспечивают совместимость с другими устройствами в системе.
NAND-затвор, реализованный с помощью PMOS-логики.
Из-за технических особенностей резистор на самом деле реализован с использованием транзистора. На приведенной схеме показано, как транзистор подключен в качестве подтягивающего резистора. На детали справа изображена эта схема на чипе: металлический провод -9 В сверху соединен с источником питания, транзистор расположен в середине, а выход — кремниевый провод внизу, который является выходом схемы.
В PMOS подтягивающий резистор (слева) реализуется с помощью транзистора (в центре). На фотографии справа показан реальный подтягивающий резистор в микропроцессоре 8008.
История 8008
Непростая история 8008 начинается с Datapoint 2200, Datapoint 2200 был популярным программируемым терминалом того времени, хотя его также называют первым персональным компьютером. Вместо микропроцессора Datapoint 2200 содержал процессор размером с плату, собранный из отдельных микросхем TTL. Datapoint и Intel решили, что можно заменить эту плату одним MOS-чипом, и Intel начала проект 8008 для создания этого чипа. Чуть позже Texas Instruments также согласилась создать однокристальный процессор для Datapoint. Оба чипа были разработаны для совместимости с 8-битным набором инструкций и архитектурой Datapoint 2200.
Процессор 8008 был впервые публично описан в журнале «Electronic Design» от 25 октября 1970 года. Хотя Intel утверждала, что чип будет поставлен в январе 1971 года, фактическая поставка состоялась более чем через год, в апреле 1972 года.
В марте 1971 года компания Texas Instruments завершила разработку своего процессорного чипа, назвав его TMC 1795. Отложив проект, Intel закончила чип 8008 позже, примерно в конце 1971 года. По ряду причин Datapoint отказалась от обоих микропроцессоров и создала более быстрый процессор на основе более новых микросхем TTL, включая микросхему ALU 74181.
TI безуспешно пыталась продать процессор TMC 1795 таким компаниям, как Ford, но в итоге отказалась от него, сосредоточившись на высокоприбыльных микросхемах для калькуляторов. Intel, напротив, продвигала 8008-й как микропроцессор общего назначения, что в итоге привело к появлению архитектуры x86, которую вы, скорее всего, используете прямо сейчас. Хотя TI была первой с 8-битным процессором, но именно Intel сделала свой чип популярным, положив начало индустрии микропроцессоров.
Семейное дерево 8008 и ряда связанных с ним процессоров. Черные стрелки указывают на обратную совместимость. Светлые стрелки указывают на значительные изменения в архитектуре.
На диаграмме выше представлено «семейное дерево» процессоров 8008 и некоторых родственных им.Архитектура Datapoint 2200 была использована в TMC 1795, Intel 8008 и следующей версии Datapoint 220011. Таким образом, на основе набора инструкций и архитектуры Datapoint 2200 были созданы четыре совершенно разных процессора. Процессор Intel 8080 был значительно улучшенной версией 8008. В нем был существенно расширен набор инструкций 8008, а инструкции машинного кода были упорядочены для повышения эффективности. Процессор 8080 использовался в таких революционных ранних моделях микрокомпьютеров, как Altair и Imsai. После работы над 4004 и 8080 дизайнеры Федерико Фаггин и Масатоши Шима ушли из Intel, чтобы создать микропроцессор Zilog Z-80, который усовершенствовал 8080 и стал очень популярным.
Переход к 16-битному процессору 8086 был гораздо менее эволюционным. Большинство ассемблерных кодов 8080 можно было преобразовать для работы на 8086, но это было нетривиально, поскольку набор инструкций и архитектура были радикально изменены. Тем не менее, некоторые характеристики Datapoint 2200 до сих пор присутствуют в современных процессорах x86. Например, Datapoint 2200 имел последовательный процессор, обрабатывающий байты по одному биту за раз. Поскольку младший бит должен быть обработан первым, Datapoint 2200 был little-endian. Для совместимости процессор 8008 имел младший порядок, и он до сих пор используется в процессорах Intel. Еще одной особенностью Datapoint 2200 был наличие флага четности, поскольку подсчет четности был важен для обмена данными между терминалами. Флаг четности сохранился и в архитектуре x86.
Архитектурно 8008 не связан с 4-битным процессором Intel 400412. 8008 ни в коем случае не является 8-битной версией 4-битного 4004. Схожие названия — чисто маркетинговое решение; на этапе разработки 8008 носил непривлекательное название «1201».
Как 8008 вошел в историю полупроводниковых технологий
В микросхемах 4004 и 8008 использовался режим PMOS с усилением кремниевого затвора — полупроводниковая технология, которая применялась недолго.
В 8008 (и современных процессорах) используются МОП-транзисторы. Эти транзисторы прошли долгий путь к признанию, будучи более медленными и менее надежными, чем биполярные транзисторы, использовавшиеся в большинстве компьютеров 1960-х годов. К концу 1960-х годов МОП-интегральные схемы стали более популярными; стандартной технологией были PMOS-транзисторы с металлическими затворами. Затворы транзисторов состояли из металла, который также использовался для соединения компонентов микросхемы. По сути, микросхемы состояли из двух функциональных слоев: собственно кремния и металлической проводки поверх него. Эта технология использовалась во многих микросхемах калькуляторов Texas Instruments, а также в микросхеме TMC 1795 (микросхема, имевшая тот же набор инструкций, что и 8008).
Ключевым инновационным решением, сделавшим 8008 практичным, стал самовыравнивающийся затвор — транзистор с затвором из поликремния, а не металла. Хотя эта технология была изобретена компаниями Fairchild и Bell Labs, именно Intel продвинула ее вперед. Транзисторы с поликремниевым затвором имели гораздо лучшие характеристики, чем транзисторы с металлическим затвором (по сложным полупроводниковым причинам). Кроме того, добавление поликремниевого слоя значительно упрощало маршрутизацию сигналов в чипе, что делало чипы более плотными. На диаграмме ниже показано преимущество самосовмещенных затворов: TMC 1795 с металлическим затвором больше, чем микросхемы 4004 и 8008 вместе взятые.
Процессоры Intel 4004 и 8008 гораздо плотнее, чем чип TMC 1795 от Texas Instruments, во многом благодаря использованию самовыравнивающихся затворов.
Вскоре после этого полупроводниковая технология снова усовершенствовалась благодаря использованию NMOS-транзисторов вместо PMOS-транзисторов. Хотя изначально PMOS-транзисторы было проще производить, NMOS-транзисторы работают быстрее, поэтому, как только NMOS-транзисторы стали производиться достаточно быстро, они оказались в выигрыше.
NMOS привели к появлению более мощных чипов, таких как Intel 8080 и Motorola 6800 (оба — 1974 год). Еще одним технологическим достижением этого времени стала ионная имплантация для изменения характеристик транзисторов. Это позволило создать транзисторы в режиме обеднения для использования в качестве подтягивающих резисторов. Эти транзисторы повысили производительность микросхем и снизили энергопотребление.
Комбинация NMOS-транзисторов и подтягивающих резисторов в режиме обеднения использовалась в большинстве микропроцессоров конца 1970-х — начала 1980-х годов, таких как 6502 (1975), Z-80 (1976), 68000 (1979), а также в микросхемах Intel от 8085 (1976) до 80286 (1982).
В середине 1980-х годов верх взяла технология КМОП (CMOS), использующая NMOS- и PMOS-транзисторы для значительного снижения энергопотребления, в результате чего появились такие микросхемы, как 80386 (1986), 68020 (1984) и ARM1 (1985). Теперь почти все микросхемы — КМОП.
Как видите, 1970-е годы стали временем больших изменений в технологии полупроводниковых микросхем. Микросхемы 4004 и 8008 были созданы, когда технологические достижения пересеклись с правильным рынком.
Как сделать фотографии матрицы
В этом разделе мы рассмотрим, как я сделал фотографии матрицы чипа 8008. Первый шаг — разобрать упаковку микросхемы, чтобы обнажить матрицу. Большинство микросхем поставляются в упаковках из эпоксидной смолы, которую можно растворить с помощью опасных видов кислот
Микропроцессор 8008 в керамическом корпусе
Поскольку я предпочел бы избежать применения кипящей азотной кислоты, я использовал более простой подход. Модель 8008 также выпускается в керамическом корпусе (см. выше), который я приобрел на eBay. Постучав зубилом по микросхеме вдоль шва, вы разделите два керамических слоя. На фото ниже показана нижняя половина керамического корпуса с обнаженной матрицей. Большинство металлических штырьков удалено, но их положение в корпусе видно.
Внутри корпуса микропроцессора 8008 видна кремниевая матрица.
После того как матрица раскрыта, ее можно сфотографировать с помощью микроскопа. Стандартный микроскоп светит снизу, что не очень подходит для фотографий матриц. Вместо этого я использовал металлографический микроскоп, который светит сверху, освещая чип.
Я сделал 48 фотографий через микроскоп, а затем с помощью программы объединения Hugin объединил их в одно изображение высокого разрешения (подробности). Наконец, я настроил контрастность изображения, чтобы сделать структуры чипа более заметными. Оригинальное изображение (примерно такое, какое вы видите через микроскоп) приведено ниже для сравнения.
Фотография микропроцессора 8008
Заключение
Я сделал подробные фотографии матрицы 8008, на которых видна использованная в ней схемотехника. Хотя 8008 не был первым микропроцессором или даже первым 8-битным микропроцессором, он стал поистине революционным, положив начало микропроцессорной революции и приведя к появлению архитектуры x86, которая доминировала в персональных компьютерах на протяжении десятилетий.
Немного рекламы
Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас, оформив заказ или порекомендовав знакомым, облачные VPS для разработчиков от $4.99, уникальный аналог entry-level серверов, который был придуман нами для Вас: Вся правда о VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps от $19 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).
Dell R730xd в 2 раза дешевле в дата-центре Maincubes Tier IV в Амстердаме? Только у нас 2 х Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 ТВ от $199 в Нидерландах! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — от $99! Читайте о том Как построить инфраструктуру корп. класса c применением серверов Dell R730xd Е5-2650 v4 стоимостью 9000 евро за копейки?