Как на самом деле производят процессоры
Песок. В наших компьютерах в буквальном смысле песок, вернее — составляющий его кремний. Это основной элемент, благодаря которому в компьютерах всё работает. А вот как из песка получаются компьютеры.
Что такое процессор
Процессор — это небольшой чип внутри вашего компьютера или телефона, который производит все вычисления. Об основе вычислений мы уже писали — это транзисторы, которые собраны в сумматоры и другие функциональные блоки.
Если очень упрощённо — это сложная система кранов и труб, только вместо воды по ним течёт ток. Если правильным образом соединить эти трубы и краны, ток будет течь полезным для человека образом и получатся вычисления: сначала суммы, потом из сумм можно получить более сложные математические операции, потом числами можно закодировать текст, цвет, пиксели, графику, звук, 3D, игры, нейросети и что угодно ещё.
Кремний
Самый доступный источник кремния — песок. Но кремний, который получается из песка, на самом первом этапе недостаточно чистый: в нём есть 0,5% примесей. Может показаться, что чистота 99,5% — это круто, но для процессоров нужна чистота уровня 99,9999999%. Такой кремний называется электронным, и его можно получить после цепочки определённых химических реакций.
Когда цепочка заканчивается и остаётся только чистый кремний, можно начинать выращивать кристалл.
Кристалл и подложка
Кристаллы — это такие твёрдые тела, в которых атомы и молекулы вещества находятся в строгом порядке. Проще говоря, атомы в кристалле расположены предсказуемым образом в любой точке. Это позволяет точно понимать, как будет вести себя это вещество при любом воздействии на него. Именно это свойство кристаллической решётки используют на производстве процессоров.
Самые распространённые кристаллы — соль, драгоценные камни, лёд и графит в карандаше.
Большой кристалл можно получить, если кремний расплавить, а затем опустить туда заранее подготовленный маленький кристалл. Он сформирует вокруг себя новый слой кристаллической решётки, получившийся слой сделает то же самое, и в результате мы получим один большой кристалл. На производстве он весит под сотню килограмм, но при этом очень хрупкий.

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

Готовые отполированные пластины кремния.
Печатаем транзисторы
Когда диски отполированы, на них можно формировать процессоры. Процесс очень похож на то, как раньше печатали чёрно-белые фотографии: брали плёнку, светили сверху лампой, а снизу клали фотобумагу. Там, куда попадал свет, бумага становилось тёмной, а те места, которые закрыло чёрное изображение на плёнке, оставались белыми.
С транзисторами всё то же самое: на диск наносят специальный слой, который при попадании света реагирует с молекулами диска и изменяет его свойства. После такого облучения в этих местах диск начинает проводить ток чуть иначе — сильнее или слабее.
Чтобы так поменять только нужные участки, на пути света помещают фильтр — прямо как плёнку в фотопечати, — который закрывает те места, где менять ничего не надо.
Потом получившийся слой покрывают тонким слоем диэлектрика — это вещество, которое не проводит ток, типа изоленты. Это нужно, чтобы слои процессора не взаимодействовали друг с другом. Процесс повторяется несколько десятков раз. В результате получаются миллионы мельчайших транзисторов, которые теперь нужно соединить между собой.
Соединяем всё вместе
То, как соединяются между собой транзисторы в процессоре, называется процессорной архитектурой. У каждого поколения и модификации процессоров своя архитектура. Все производители держат в секрете тонкости архитектуры, потому что от этого может зависеть скорость работы или стоимость производства.
Так как транзисторов много, а связей между ними нужно сделать немало, то поступают так: наносят токопроводящий слой, ставят фильтр и закрепляют проводники в нужном месте. Потом слой диэлектрика и снова токопроводящий слой. В результате выходит бутерброд из проводников, которые друг другу не мешают, а транзисторы получают нужные соединения.

Токопроводящие дорожки крупным планом. На фото они уже в несколько слоёв и не мешают друг другу.
В чём сложность
Современные процессоры производятся на нанометровом уровне, то есть размеры элементов измеряются нанометрами, это очень мало.
Если, например, во время печати очень толстый мальчик упадёт на пол в соседнем цехе, еле заметная ударная волна прокатится по перекрытиям завода и печатная форма немного сдвинется, а напечатанные таким образом транзисторы окажутся бракованными. Пылинка, попавшая на пластину во время печати — это, считай, загубленное ядро процессора.
Поэтому на заводах, где делают процессоры, соблюдаются жёсткие стандарты чистоты, все ходят в масках и костюмах, на всех воздуховодах стоят фильтры, а сами заводы находятся на сейсмических подушках, чтобы толчки земной коры не мешали производить процессоры.
Крышка и упаковка
Когда дорожки готовы, диск отправляют на тесты. Там смотрят на то, как работает каждый процессор, как он греется и сколько ему нужно энергии, заодно проверяют на брак.
В зависимости от результатов процессоры с одной пластины могут получить разную маркировку и продаваться по разной стоимости. Те процессоры, которые получились более удачными, становятся дорогими серверными продуктами. Те, где кто-то рядом чихнул или вздохнул, имеют некоторые несовершенства и дефекты, их могут отправить на потребительскую линию.
После тестов диск разрезают на готовые процессорные ядра.

Пластина со множеством одинаковых процессорных ядер.

Робот вырезает ядра из готовой пластины.
После этого к ядру процессора добавляют контакты, чтобы можно было вставить его в материнскую плату, и накрывают крышкой. Чёрный или металлический прямоугольник, из которого торчат ножки, — это как раз крышка.
Крышка выполняет две функции: защищает сам кристалл от повреждений и отводит от него тепло во время работы. Дело в том, что миллионы транзисторов при работе нагреваются, и если процессор не остужать, то он перегреется и кристалл может испортиться. Чтобы такого не произошло, на крышку процессора ставят воздушные кулеры или делают водяное охлаждение.
Система на чипе
Чипы процессоров уже настолько маленькие, что под одной крышкой можно поместить какое-нибудь ещё устройство. Например, видеосистему — то, что обсчитывает картинку перед выводом на экран. Или устройство радиосвязи с антенной.
В какой-то момент на маленьком чипе площадью около 1 см2 уже можно было поместить процессор, видео, модем и блютус, сделать всё нужное для поддержки памяти и периферии — в общем, система на чипе. Подключаете к этому хозяйству экран, нужное количество антенн, портов и кнопок, а главное — здоровенную батарею, и у вас готовый смартфон. По сути, все «мозги» вашего смартфона находятся на одном маленьком чипе, а 80% пространства за экраном занимает батарея.
Как делают процессоры | Журнал Популярная Механика
Вы когда-нибудь задумывались, как одна и та же компания может 23 года кряду лидировать на рынке микропроцессоров? Или почему в течение тех же двух десятков лет мы, покупая компьютер для дома или офиса, выбираем между процессорами всего двух марок (за редчайшими исключениями), невзирая на антимонопольное законодательство и конкуренцию?
Производство микросхем — весьма непростое дело, и закрытость этого рынка диктуется в первую очередь особенностями главенствующей в наши дни технологии фотолитографии. Микроскопические электронные схемы проецируются на кремниевую пластину через фотошаблоны, стоимость каждого из которых может достигать $200 000. А между тем для изготовления одного чипа требуется не меньше 50 таких масок. Добавьте к этому стоимость «проб и ошибок» при разработке новых моделей, и вы поймете, что производить процессоры могут только очень большие компании очень большими тиражами.
А что делать научным лабораториям и высокотехнологичным стартапам, которым необходимы нестандартные схемы? Как быть военным, для которых закупать процессоры у «вероятного противника» — мягко говоря, не комильфо?
Мы побывали на российском производственном участке голландской компании Mapper, благодаря которой изготовление микросхем может перестать быть уделом небожителей и превратится в занятие для простых смертных. Ну или почти простых. Здесь, на территории Технополиса «Москва» при финансовой поддержке корпорации «Роснано» производится ключевой компонент технологии Mapper — электронно-оптическая система.
Однако прежде чем разбираться в нюансах безмасочной литографии Mapper, стоит вспомнить основы обычной фотолитографии.

Принципиальная схема установки Mapper
Неповоротливый свет
На современном процессоре Intel Core i7 может располагаться около 2 млрд транзисторов (в зависимости от модели), размер каждого из которых — 14 нм. В погоне за вычислительной мощностью производители ежегодно уменьшают размеры транзисторов и увеличивают их число. Вероятным технологическим пределом в этой гонке можно считать 5 нм: на таких расстояниях начинают проявляться квантовые эффекты, из-за которых электроны в соседних ячейках могут вести себя непредсказуемо.
Чтобы нанести на кремниевую пластину микроскопические полупроводниковые структуры, используют процесс, похожий на работу с фотоувеличителем. Разве что цель у него обратная — сделать изображение как можно меньше. Пластину (или защитную пленку) покрывают фоторезистом — полимерным фоточувствительным материалом, который меняет свои свойства при облучении светом. Требуемый рисунок чипа экспонируют на фоторезист через маску и собирающую линзу. Напечатанные пластины, как правило, в четыре раза меньше, чем маски.
Транзисторный ликбез Такие вещества, как кремний или германий, имеют по четыре электрона на внешнем энергетическом уровне. Они образуют красивые кристаллы, похожие на металл. Но, в отличие от металла, они не проводят электрический ток: все их электроны задействованы в мощных ковалентных связях и не могут двигаться. Однако все меняется, если добавить к ним немного донорной примеси из вещества с пятью электронами на внешнем уровне (фосфора или мышьяка). Четыре электрона вступают в связь с кремнием, а один остается свободным. Кремний с донорной примесью (n-типа) — неплохой проводник. Если добавить к кремнию акцепторную примесь из вещества с тремя электронами на внешнем уровне (бор, индий), аналогичным образом образуются «дырки», виртуальный аналог положительного заряда. В таком случае речь идет о полупроводнике p-типа. Соединив проводники p- и n-типа, мы получим диод — полупроводниковый прибор, пропускающий ток только в одном направлении. Комбинация p-n-p или n-p-n дает нам транзистор — через него ток протекает только в том случае, если на центральный проводник подается определенное напряжение.
Свои коррективы в этот процесс вносит дифракция света: луч, проходя через отверстия маски, немного преломляется, и вместо одной точки экспонируется серия концентрических кругов, как от брошенного в омут камня. К счастью, дифракция находится в обратной зависимости от длины волны, чем и пользуются инженеры, применяя свет ультрафиолетового диапазона с длиной волны 195 нм. Почему не еще меньше? Просто более короткая волна не будет преломляться собирающей линзой, лучи будут проходить насквозь, не фокусируясь. Увеличить собирающую способность линзы тоже нельзя — не позволит сферическая аберрация: каждый луч будет проходить оптическую ось в своей точке, нарушая фокусировку.
Максимальная ширина контура, которую можно отобразить с помощью фотолитографии, — 70 нм. Чипы с более высоким разрешением печатают в несколько приемов: наносят 70-нанометровые контуры, протравливают схему, а затем экспонируют следующую часть через новую маску.
Сейчас в разработке находится технология фотолитографии в глубоком ультрафиолете, с применением света с экстремальной длиной волны около 13,5 нм. Технология предполагает использование вакуума и многослойных зеркал с отражением на основе межслойной интерференции. Маска тоже будет не просвечивающим, а отражающим элементом. Зеркала лишены явления преломления, поэтому могут работать со светом любой длины волны. Но пока это лишь концепция, которую, возможно, станут применять в будущем.
Как сегодня делают процессоры

Идеально отполированную круглую кремниевую пластину диаметром 30 см покрывают тонким слоем фоторезиста. Равномерно распределить фоторезист помогает центробежная сила.

Будущая схема экспонируется на фоторезист через маску. Этот процесс повторяется многократно, потому что из одной пластины получается множество чипов.

Та часть фоторезиста, которая подверглась ультрафиолетовому излучению, становится растворимой и с легкостью удаляется с помощью химикатов.

Участки кремниевой пластины, не защищенные фоторезистом, подвергаются химическому травлению. На их месте образуются углубления.

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

Под воздействием электрического поля ионы примесей разгоняются до скоростей более 300 000 км/ч и проникают в кремний, придавая ему свойства полупроводника.

После удаления остатков фоторезиста на пластине остаются готовые транзисторы. Сверху наносят слой диэлектрика, в котором по все той же технологии протравливают отверстия под контакты.

Пластину помещают в раствор сульфата меди, и с помощью электролиза на нее наносят проводящий слой. Затем весь слой снимают шлифовкой, а контакты в отверстиях остаются.

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

Только теперь пластину распиливают на множество отдельных чипов. Каждый «кристалл» тестируют и лишь затем устанавливают на плату с контактами и накрывают серебряной крышкой-радиатором.
13 000 телевизоров
Альтернативой фотолитографии считают электролитографию, когда экспонируют не светом, а электронами, и не фото-, а электрорезист. Электронный пучок легко фокусируется в точку минимального размера, вплоть до 1 нм. Технология напоминает электронно-лучевую трубку телевизора: сфокусированный поток электронов отклоняется управляющими катушками, рисуя изображение на кремниевой пластине.
До последнего времени эта технология не могла конкурировать с традиционным методом из-за низкой скорости. Чтобы электрорезист среагировал на облучение, он должен принять определенное количество электронов на единицу площади, поэтому один луч может экспонировать в лучшем случае 1 см2/ч. Это приемлемо для единичных заказов от лабораторий, однако неприменимо в промышленности.
К сожалению, решить проблему, увеличив энергию луча, невозможно: одноименные заряды отталкиваются, поэтому при увеличении тока пучок электронов становится шире. Зато можно увеличить количество лучей, экспонируя несколько зон одновременно. И если несколько — это 13 000, как в технологии Mapper, то, согласно расчетам, можно печатать уже десять полноценных чипов в час.
Конечно, объединить в одном устройстве 13 000 электронно-лучевых трубок было бы невозможно. В случае Mapper излучение из источника направляется на коллиматорную линзу, которая формирует широкий параллельный пучок электронов. На его пути встает апертурная матрица, которая превращает его в 13 000 отдельных лучей. Лучи проходят через матрицу бланкеров — кремниевую пластину с 13 000 отверстий. Около каждого из них располагается отклоняющий электрод. Если на него подается ток, электроны «промахиваются» мимо своего отверстия, и один из 13 000 лучей выключается.
Пройдя бланкеры, лучи направляются к матрице дефлекторов, каждый из которых может отклонять свой луч на пару микронов вправо или влево относительно движения пластины (так что Mapper все же напоминает 13 000 кинескопов). Наконец, каждый луч дополнительно фокусируется собственной микролинзой, после чего направляется к электрорезисту. На сегодняшний день технология Mapper прошла тестирование во французском научно-исследовательском институте микроэлектроники CEA-Leti и в компании TSMC, которая производит микропроцессоры для ведущих игроков рынка (в том числе и для Apple iPhone 6S). Ключевые компоненты системы, включая кремниевые электронные линзы, производятся на московском заводе.
Технология Mapper обещает новые перспективы не только исследовательским лабораториям и мелкосерийным (в том числе военным) производствам, но и крупным игрокам. В настоящее время для тестирования прототипов новых процессоров приходится изготавливать точно такие же фотошаблоны, как для массового производства. Возможность относительно быстрого прототипирования схем обещает не только снизить стоимость разработки, но и ускорить прогресс в этой области. Что в конечном счете на руку массовому потребителю электроники, то есть всем нам.
Статья «Крафтовый процессор» опубликована в журнале «Популярная механика» (№2, Февраль 2016).Процесс проектирования процессора — i2HARD
Статьи • 30 Августа 2019 • Админ Геннадий
Теперь, когда мы знаем, как работают процессоры на высоком уровне, пришло время заглянуть внутрь процессора, чтобы понять, как устроены его внутренние компоненты. Эта статья является второй частью нашей серии, посвященной устройству процессоров. Если вы не читали первую часть, советуем ознакомиться с ней прежде, чем вы начнете читать дальше, поскольку в этой статье мы будем использовать понятия, освещенные ранее.
Как вы, вероятно, знаете, процессоры и большинство других современных цифровых технологий основаны на транзисторах. Самый простой способ представить транзистор – это управляемый переключатель с тремя контактами. Когда затвор включен, ток пропускается через транзистор. А когда выключен, транзистор ток не проводит. Точно так же, как и выключатель света на вашей стене, только транзистор гораздо меньше, гораздо быстрее и может управляться электрически.
В современных процессорах используются два основных типа транзисторов: pMOS и nMOS. Транзистор nMOS позволяет току течь, когда подается ненулевое напряжение на затвор, а транзистор pMOS – наоборот, проводит ток, когда напряжение на затворе стремится к нулю. Комбинируя эти типы транзисторов, мы можем создать логические вентили CMOS. В третьей части серии мы ещё остановимся подробней на физике работы процессоров.
Логический вентиль (логический элемент, гейт) – это простейшее устройство, которое принимает входной сигнал, выполняет некоторые операции и выводит результат в виде выходного сигнала. Например, вентиль AND (И) включит свой выход тогда и только тогда, когда все входы в вентиль включены. Инвертор или вентиль отрицания NOT (НЕ) включит свой выход, если вход отключен. Объединив эти два гейта, мы получим логический элемент NAND (И-НЕ), который включает свой выход, если и только если ни один из входов не включен. К другим логическим гейтам, с иной логической функциональностью, относятся OR (ИЛИ), NOR (ИЛИ-НЕ), XOR (Исключающее ИЛИ) и XNOR (Исключающее ИЛИ с инверсией).
Ниже показаны схемы двух основных логических элементов, реализованных с помощью транзисторов: вентиль отрицания (инвертор) и вентиль NAND (И-НЕ). В инверторе сверху находится транзистор pMOS, подключенный к питанию, а снизу транзистор nMOS, подключенный к земле. Транзисторы pMOS обозначаются с небольшим кружочком на затворе. Поскольку устройства pMOS срабатывают при отключенном входе, а устройства nMOS наоборот – при включенном, то несложно понять, что сигнал на выходе всегда будет противоположным сигналу на входе. Глядя на вентиль NAND, мы видим, что для него требуются четыре транзистора и что выход будет включен, пока хотя бы один из входов отключен. По такому же принципу, как формируются приведенные примеры элементарных транзисторных схем, проектируются и более сложные логические гейты и прочие схемы внутри процессоров.
Трудно представить, как из таких простейших кирпичиков – логических элементов – может получиться функционирующий компьютер. Сперва из нескольких отдельных вентилей создаётся простейшее устройство, способное выполнять какую-то простую функцию. Затем из нескольких таких простых устройств создаётся более сложное, выполняющее более сложную задачу. Процесс объединения отдельных компонентов для получения требуемой функциональности – это именно то, что применяется сегодня при создании чипов. Современные чипы имеют мил
Процессор своими руками — Robohunter
Сколько я себя помню, всегда мечтал сделать процессор. Наконец, вчера я его сделал. Не бог весть что: 8 бит, RISC, текущая рабочая частота — 4 кГц, но он работает. Пока что в программе моделирования логических цепей, но все мы знаем: «сегодня — на модели, завтра — на деле!».
Под катом несколько анимаций, краткое введение в двоичную логику для самых маленьких, короткий рассказ про основные микросхемы логики процессора и, собственно, схема.
Двоичная система счисления (для тех, кто не в курсе) — это такая система счисления, в которой нет цифр больше единицы. Такое определение многих сбивает с толку, пока они не вспомнят, что в десятичной системе счисления нет цифр больше девятки.
Двоичная система используется в компьютерах потому, что числа в ней легко кодировать напряжением: есть напряжение — значит, единица; нет напряжения — значит, ноль. Кроме того, «ноль» и «один» легко можно понимать как «ложно» и «истинно». Более того, большая часть устройств, работающих в двоичной системе счисления, обычно относится к числам как к массиву «истинностей» и «ложностей», то есть оперирует с числами как с логическими величинами. Для самых маленьких и тех, кто не в курсе, я расскажу и покажу, как работают простейшие элементы двоичной логики.
Элемент «Буфер»
Представьте, что вы сидите в своей комнате, а ваш друг — на кухне. Вы кричите ему: «Друг, скажи, в коридоре горит свет?». Друг отвечает: «Да, горит!» или «Нет, не горит». Ваш друг — буфер между источником сигнала (лампочкой в коридоре) и приемником (вами). Более того, ваш друг — не какой-нибудь там обычный буфер, а буфер управляемый. Он был бы обычным буфером, если бы постоянно кричал: «Лампочка светится» или «Лампочка не светится».
Элемент «Не» — NOT
А теперь представьте, что ваш друг — шутник, который всегда говорит неправду. И если лампочка в коридоре светится, то он скажет вам «Нет, в коридоре совсем-совсем темно», а если не светится — то «Да, в коридоре свет горит». Если у вас есть такой друг на самом деле, значит, он воплощение элемента «Не».
Элемент «Или» — OR
Для объяснения сути элемента «Или» одной лампочки и одного друга, к сожалению, не хватит. Нужно две лампочки. Итак, у вас в коридоре две лампочки — торшер, к примеру, и люстра. Вы кричите: «Друг, скажи, хотя бы одна лампочка в коридоре светит?», и ваш друг отвечает «Да» или «Нет». Очевидно, что для ответа «Нет» все лампочки обязательно должны быть выключены.
Элемент «И» — AND
Та же самая квартира, вы, друг на кухне, торшер и люстра в коридоре. На ваш вопрос «В коридоре обе лампочки горят?» вы получаете ответ «Да» или «Нет». Поздравляю, теперь ваш друг — это элемент «И».
Элемент «Исключающее Или» — XOR
Повторим еще раз эксперимент для элемента «Или», но переформулируем свой вопрос к другу: «Друг, скажи, в коридоре только одна лампочка светит?». Честный друг ответит на такой вопрос «Да» только в том случае, если в коридоре действительно горит только одна лампочка.
Четвертьсумматор
Четвертьсумматором называют элемент «Исключающее Или». Почему? Давайте разберемся.
Составим таблицу сложения для двух чисел в двоичной системе счисления:
0+0= 0
0+1= 1
1+0= 1
1+1= 10
Теперь запишем таблицу истинности элемента «Исключающее Или». Для этого обозначим светящуюся лампочку за 1, потухшую — за 0, и ответы друга «Да»/«Нет» как 1 и 0 соответственно.
0 XOR 0 = 0
0 XOR 1 = 1
1 XOR 0 = 1
1 XOR 1 = 0
Очень похоже, не так ли? Таблица сложения и таблица истинности «Исключающего Или» совпадают полностью, кроме одного-единственного случая. И этот случай называется «Переполнение».
Полусумматор
При переполнении результат сложения уже не помещается в столько же разрядов, во сколько помещались слагаемые. Слагаемые — два однозначных числа (одна значащая цифра, понимаете?), а сумма — уже двузначное (две значащих цифры). Две цифры одной лампочкой («Светится»/«Не светится») уже не передать. Нужно две лампочки. Нужно — сделаем!
Кроме XOR, для сумматора нам потребуется элемент «И» (AND).
0 XOR 0 = 0 0 AND 0 = 0
0 XOR 1 = 1 0 AND 1 = 0
1 XOR 0 = 1 1 AND 0 = 0
1 XOR 1 = 0 1 AND 1 = 1
Тадам!
0+0= 00
0+1= 01
1+0= 01
1+1= 10
Наша вундервафля полусумматор работает. Его можно считать простейшим специализированным процессором, который складывает два числа. Полусумматор называется полусумматором потому, что с его помощью нельзя учитывать перенос (результат работы другого сумматора), то есть нельзя складывать три однозначных двоичных числа. В связи с этим из нескольких одноразрядных полусумматоров нельзя сделать один многоразрядный.
Я не буду вдаваться в подробности работы полных и многоразрядных сумматоров, просто надеюсь, что основную идею вы уловили.
Мультиплексор
Предлагаю снова включить воображение. Итак, представьте. Вы живете в частном одноквартирном доме, возле двери этого дома стоит ваш почтовый ящик. Выходя на прогулку, вы замечаете странного почтальона, который стоит возле этого самого почтового ящика. И вот что он делает: достает кучу писем из сумки, читает номер на почтовом ящике, и в зависимости от номера на ящике бросает в него то или иное письмо. Почтальон работает мультиплексором. Он определенным образом (номер на конверте) определяет, какой отправить сигнал (письмо) по сигнальной линии (почтовый ящик).
Мультплексоры состоят обычно только из сочетаний элементов «И», «Или» и «Не». У одноразрядного мультиплексора один вход называется «выбор адреса», два входа с общим названием «входной сигнал» и один выход, который так и называется: «выходной сигнал».
Когда на «выбор адреса» подается 0, то «выходной сигнал» становится таким же, как первый «входной сигнал». Соответственно, когда на «выбор» подается 1, то «выходной сигнал» становится равным второму «входному сигналу».
Демультиплексор
А вот эта штучка работает с точностью до наоборот. На «выбор адреса» даем адрес, на «вход данных» даем данные, на выходе с номером «адрес» имеем данные со входа.
Счетчик
Для понимания работы счетчика вам опять понадобится ваш друг. Позовите его из кухни (надеюсь, он не сильно там скучал, и, главное, не съел всю вашу еду), и попросите делать вот что: пусть он запомнит число 0. Каждый раз, когда вы будете прикасаться к нему, он должен прибавить единицу к тому числу, которое помнит, сказать результат и запомнить его. Когда результат будет равен (допустим) 3, он должен выкрикнуть «Абракадабра!» и отвечать при следующем прикосновении, что сейчас он помнит число 0. Немного сложно? Смотрите:
Вы прикасаетесь к другу. Друг говорит «Один».
Вы прикасаетесь к другу. Друг говорит «Два».
Вы прикасаетесь к другу. Друг говорит «Три». Друг выкрикивает «Хабрахабр!». Критическая атака! Вы временно парализованы и не можете двигаться.
Вы прикасаетесь к другу. Друг говорит «Ноль».
Ну, и так далее. Очень просто, верно?
Вы, конечно, поняли, что ваш друг сейчас — это счетчик. Прикосновение к другу можно считать «тактирующим сигналом» или, попросту говоря, сигналом продолжения счета. Крик «Абракадабра» показывает, что запомненное значение в счетчике — максимальное, и что при следующем тактирующем сигнале счетчик будет установлен в ноль. Есть два отличия двоичного счетчика от вашего друга. Первое: настоящий двоичный счетчик выдает запомненное значение в двоичном виде. Второе: он всегда делает только то, что вы ему говорите, и никогда не опускается до дурацких шуточек, способных нарушить работу всей процессорной системы.
Триггер
Давайте продолжим издеваться над вашим несчастным (возможно, даже воображаемым) другом. Пусть теперь он запомнит число ноль. Когда вы касаетесь его левой руки, он должен запоминать число ноль, а когда правой — число один. При вопросе «Какое число ты помнишь?» друг должен всегда отвечать то число, которое запоминал — ноль или один.
Простейшей запоминающей ячейкой является RS-триггер («триггер» значит «переключатель»). RS-триггер может хранить в себе один бит данных («ноль»/«один»), и имеет два входа. Вход Set/Установка (совсем как левая рука вашего друга) записывает в триггер «один», а вход Reset/Сброс (соответственно, правая рука) — «ноль».
Регистр
Немного сложнее устроен регистр. Ваш друг превращается в регистр тогда, когда вы просите его что-нибудь запомнить, а потом говорите «Эй, напомни мне, что я говорил тебе запомнить?», и друг правильно отвечает.
Регистр обычно может хранить в себе чуть больше, чем один бит. У него обязательно есть вход данных, выход данных и вход разрешения записи. С выхода данных вы в любой момент можете прочитать то, что в этом регистре записано. На вход данных вы можете подавать те данные, которые хотите в этот регистр записать. Можете подавать данные до тех пор, пока не надоест. В регистр все равно ничего не запишется до тех пор, пока на вход разрешения записи не подать один, то есть «логическую единицу».
Сдвиговый регистр
Вы когда-нибудь стояли в очередях? Наверняка стояли. Значит, вы представляете, каково быть данными в сдвиговом регистре. Люди приходят и становятся в конец очереди. Первый человек в очереди заходит в кабинет к большой шишке. Тот, кто был вторым в очереди, становится первым, а тот, кто был третьим — теперь второй, и так далее. Очередь — это такой хитрый сдвиговый регистр, из которого «данные» (ну, то есть люди) могут убегать по делам, предварительно предупредив соседей по очереди. В настоящем сдвиговом регистре, разумеется, «данные» из очереди сбегать не могут.
Итак, у сдвигового регистра есть вход данных (через него данные попадают в «очередь») и выход данных (из которого можно прочитать самую первую запись в «очереди»). Еще у сдвигового регистра есть вход «сдвинуть регистр». Как только на этот вход приходит «логическая единица», вся очередь сдвигается.
Есть одно важное различие между очередью и сдвиговым регистром. Если сдвиговый регистр расчитан на четыре записи (например, на четыре байта), то первая в очереди запись дойдет до выхода из регистра только после четырех сигналов на вход «сдвинуть регистр».
Оперативная память
Если много-много триггеров объединить в регистры, а много-много регистров объединить в одной микросхеме, то получится микросхема оперативной памяти. У микросхемы памяти обычно есть вход адреса, двунаправленный вход данных (то есть в этот вход можно записывать, и с него же можно считывать) и вход разрешения записи. На вход адреса подаем какое-нибудь число, и это число выберет определенную ячейку памяти. После этого на входе/выходе данных мы можем прочитать то, что записано в эту самую ячейку.
Теперь мы одновременно подадим на вход/выход данных то, что хотим в эту ячейку записать, а на вход разрешения записи — «логическую единицу». Результат немного предсказуем, не так ли?
BitBitJump
Процессоры иногда делят на CISC — те, которые умеют выполнять много разных команд, и RISC — те, которые умеют выполнять мало команд, но выполняют их хорошо. Одним прекрасным вечером мне подумалось: а было бы здорово, если бы можно было сделать полноценный процессор, который умеет выполнять всего одну команду. Вскоре я узнал, что существует целый класс однокомандных процессоров — OISC, чаще всего они используют команду Subleq (вычесть, и если меньше или равно нулю, то перейти) или Subeq (вычесть, и если равно нулю, то перейти). Изучая различные варианты OISC-процессоров, я нашел в сети сайт Олега Мазонки, который разработал простейший однокомандный язык BitBitJump. Единственная команда этого языка так и называется — BitBitJump (скопировать бит и перейти по адресу). Этот, безусловно эзотерический, язык является полным по Тьюрингу — то есть на нем можно реализовать любой компьютерный алгоритм.
Подробное описание BitBitJump и ассемблер для этого языка можно найти на сайте разработчика. Для описания алгоритма работы процессора достаточно знать следующее:
1. При включении процессора в регистрах PC, A и B записаны 0
2. Считываем ячейку памяти с адресом PC и сохраняем прочитанное в регистр A
3. Увеличиваем PC
4. Считываем ячейку памяти с адресом PC и сохраняем прочитанное в регистр B
5. Увеличиваем PC
6. Записываем в ячейку с адресом, записанным в регистре B, содержимое бита с адресом А.
7. Считываем ячейку памяти с адресом PC и сохраняем прочитанное в регистр B
8. Записываем в регистр PC содержимое регистра B
9. Переходим к пункту 2 нашего плана10. PROFIT!!!
К сожалению, алгоритм бесконечный, и потому PROFIT достигнут не будет.
Собственно, схема
Схема строилась стихийно, поэтому правят бал в ней страх, ужас и кавардак. Тем не менее, она работает, и работает прилично. Чтобы включить процессор, нужно:
1. Ввести программу в ОЗУ
2. Нажать на включатель
3. Установить счетчик в положение 4 (это можно делать и аппаратно, но схема стала бы еще более громоздкой)
4. Включить тактовый генератор
Как видите, использованы один регистр, один сдвиговый регистр, одна микросхема ОЗУ, два двоичных счетчика, один демультиплексор (представленный компараторами), два мультиплексора и немного чистой логики.
Можете скачать схему в формате circ для программы Logisim, и поиграться.
Что дальше?
Во-первых, можно увеличить разрядность процессора — заменив 8-битные элементы на 16-битные.
Во-вторых, можно вынести ОЗУ из процессора, и добавить несложную схему, которая будет приостанавливать процессор, изменять ОЗУ и снова включать процессор. Такая схема будет выполнять функции простого контроллера ввода-вывода. Тогда можно будет сделать на базе этого процессора калькулятор, контроллер или еще какую-нибудь забавную бесполезную штуку.
В-третьих, можно воплотить всю эту схему в железе. Что я собираюсь сделать. Как только сделаю — обязательно расскажу и покажу.
Спасибо всем за внимание!
P.S. Ссылки (для тех, кому лень читать):
1. Процессоры URISC — ru.wikipedia.org/wiki/Urisc
2. Сайт языка BitBitJump — mazonka.com/bbj/index.html
3. Программа для моделирования логических схем Logisim — http://ozark.hendrix.edu/~burch/logisim/
4. Самодельный URISC (ORISC) процессор для Logisim — narod.ru/disk/31367690001/oo.circ.html
Источник: HabraHabr
Производство процессоров в картинках — ITC.ua
Современные микропроцессоры – одни из сложнейших устройств, изготавливаемых человеком. Производство полупроводникового кристалла намного более ресурсоемко, чем, скажем, возведение многоэтажного дома или организация крупнейшего выставочного мероприятия. Однако благодаря массовому выпуску CPU в денежном эквиваленте мы этого не замечаем, да и редко кто задумывается обо всей грандиозности элементов, занимающих столь видное место внутри системного блока. Мы решили изучить детали производства процессоров и поведать о них в данном материале. Благо в Сети сегодня достаточно информации на эту тему, а специализированная подборка презентаций и слайдов корпорации Intel позволяет выполнить поставленную задачу максимально наглядно. Предприятия других гигантов полупроводниковой индустрии работают по тому же принципу, поэтому с уверенностью можно сказать, что все современные микросхемы проходят идентичный путь создания.
Первое, о чем стоит упомянуть, – строительный материал для процессоров. Кремний (англ. silicon) – второй после кислорода наиболее распространенный элемент на планете. Он является природным полупроводником и используется как основной материал для производства чипов всевозможных микросхем. Больше всего кремния содержится в обычном песке (особенно кварце) в виде диоксида кремния (SiO2).
Впрочем, кремний – не единственный материал. Самый близкий его родственник и заменитель – германий, однако в процессе совершенствования производства ученые выявляют хорошие полупроводниковые свойства у соединений других элементов и готовятся опробовать их на практике или уже это делают.
1 Кремний проходит многоступенчатый процесс очистки: сырье для микросхем не может содержать больше примесей, чем один чужеродный атом на миллиард.
2 Кремний расплавляют в специальной емкости и, опустив внутрь постоянно охлаждаемый вращающийся стержень, «наматывают» на него благодаря силам поверхностного натяжения вещество.
3 В итоге получаются продольные заготовки (монокристаллы) круглого сечения, каждая массой около 100 кг.
4 Заготовку нарезают на отдельные кремниевые диски – пластины, на которых будут расположены сотни микропроцессоров. Для этих целей используются станки с алмазными режущими дисками или проволочно-абразивные установки.
5 Подложки полируют до зеркального блеска, чтобы устранить все дефекты на поверхности. Следующий шаг – нанесение тончайшего фотополимерного слоя.
6 Обработанная подложка подвергается воздействию жесткого ультрафиолетового излучения. В фотополимерном слое происходит химическая реакция: свет, проходя через многочисленные трафареты, повторяет рисунки слоев CPU.
7 Реальный размер наносимого изображения в несколько раз меньше собственно трафарета.
8 Участки, «протравленные» излучением, вымываются. На кремниевой подложке получается рисунок, который затем подвергается закреплению.
9 Следующий этап изготовления одного слоя – ионизация, в процессе которой свободные от полимера участки кремния бомбардируются ионами.
10 В местах их попадания изменяются свойства электрической проводимости.
11 Оставшийся полимер удаляют, и транзистор почти готов. В изолирующих слоях делаются отверстия, которые благодаря химической реакции заполняются атомами меди, используемыми в качестве контактов.
12 Соединение транзисторов представляет собой многоуровневую разводку. Если взглянуть в микроскоп, на кристалле можно заметить множество металлических проводников и помещенных между ними атомов кремния или его современных заменителей.
13 Часть готовой подложки проходит первый тест на функциональность. На этом этапе на каждый из выбранных транзисторов подается ток, и автоматизированная система проверяет параметры работы полупроводника.
14 Подложка с помощью тончайших режущих кругов разрезается на отдельные части.
15 Годные кристаллы, полученные в результате данной операции, используются в производстве процессоров, а бракованные отправляются в отходы.
16 Отдельный кристалл, из которого будет сделан процессор, помещают между основанием (подложкой) CPU и теплорас-пределительной крышкой и «упаковывают».
17 В ходе окончательного тестирования готовые процессоры проверяются на соответствие требуемым параметрам и лишь затем сортируются. На основании полученных данных в них прошивается микрокод, позволяющий системе должным образом определить CPU.
18 Готовые устройства упаковываются и направляются на рынок.
Интересные факты о процессорах и их производстве
«Силиконовая долина» (Silicon Valley, США, Калифорния)
Получила свое название благодаря основному строительному элементу, использующемуся в производстве микрочипов.
«Почему пластины для производства процессоров круглые?» – наверняка спросите вы.
Для производства кремниевых кристаллов применяется технология, позволяющая получать только цилиндрические заготовки, которые затем режутся на части. До сих пор еще никому не удавалось изготовить квадратную пластину, лишенную дефектов.
Почему микрочипы квадратные?
Именно такая литография позволяет использовать площадь пластины с максимальной эффективностью.
Зачем процессорам столько ножек/контактов?
Помимо сигнальных линий каждый процессор для работы нуждается в стабильном питании. При энергопотреблении порядка 100–120 Вт и низком напряжении через контакты может протекать ток силой до 100 А. Значительная часть контактов CPU выделена именно под систему питания и дублируется.
Утилизация отходов производства
Раньше дефектные пластины, их остатки и бракованные микрочипы шли в отходы. На сегодняшний день ведутся разработки, позволяющие использовать их в качестве основы для производства солнечных батарей.
«Костюм кролика».
Такое название получил комбинезон белого цвета, который обязаны носить все рабочие производственных помещений. Делается это для поддержания максимальной чистоты и защиты от случайного попадания частиц пыли на производственные установки. «Костюм кролика» впервые был использован на фабриках по производству процессоров в 1973 году и с тех пор стал общепринятым стандартом.
99,9999%
Для производства процессоров пригоден только кремний высочайшей степени чистоты. Заготовки очищают спецхимией.
300 мм
Таков диаметр современных кремниевых пластин для производства процессоров.
1000 раз
Именно настолько чище воздух в помещениях фабрик для производства чипов, чем в операционной.
20 слоев
Процессорный кристалл очень тонкий (меньше миллиметра), но в нем умещаются более 20 слоев сложнейших структурных объединений транзисторов, которые выглядят как многоуровневые хайвеи.
2500
Именно столько кристаллов процессора Intel Atom (имеют наименьшую площадь среди cовременных CPU) размещаются на одной 300-миллиметровой пластине.
10 000 000 000 000 000 000
Сто квинтиллионов транзисторов в виде структурных элементов микрочипов отгружаются с фабрик каждый год. Это приблизительно в 100 раз больше, чем оценочное количество муравьев на планете.
A
Стоимость производства одного транзистора в процессоре сегодня равна цене печати одной буквы в газете.
В процессе подготовки статьи использовались материалы с официального веб-сайта корпорации Intel, www.intel.ua
Энтузиаст сделал самодельный процессор — «Хакер»
Как оказалось, создать собственный процессор по силам не только таким компаниям, как Intel и AMD, но и обычным энтузиастам.
Стив Чамберлин (Steve Chamberlin) из Калифорнии начал работу над проектом BMOW (Big Mess O’ Wires) в ноябре 2007. И хотя он является разработчиком игр, поставил перед собой задачу создать процессор с нуля, используя лишь логические элементы. При этом планировалось разработать не игрушку, а полноценный 8-битный процессор, способный выполнять реальные программы, соединяться с обычным компьютером и достаточно быстро работать. Надо сказать, что эти задачи были значительно превзойдены.
Так как Стив не является инженером, то решил действовать по-простому методу и соединял все элементы на плате вручную, для чего потребовалось более 1250 проводов. Тем не менее, процессор отлично функционирует на частоте 2 МГц и теоретически может работать на 3 МГц, но это пока что не тестировалось. Шина данных имеет ширину 8 бит, а шина адреса — 24 бита, что позволяет работать с 16 Мб оперативной памяти. Для начала энтузиаст использовал 512 Кб ROM для загрузчика и основного меню и 512 Кб RAM для программ.
Для подключения к компьютеру используется специальный чип — переходник с USB на TTL-логику. Кроме того, подключается стандартная клавиатура по PS/2 и текстовый LCD экранчик с выводом 24×2 символа. Также производится вывод на обычный VGA монитор с максимальным разрешением 512 x 480, а трехголосый программируемый генератор обеспечивает воспроизведение музыки и звуков.
Поделись новостью с друзьями:
Как работает процессор компьютера? | Losst
Процессор — это, без сомнения, главный компонент любого компьютера. Именно этот небольшой кусочек кремния, размером в несколько десятков миллиметров выполняет все те сложные задачи, которые вы ставите перед своим компьютером. Здесь выполняется операционная система, а также все программы. Но как все это работает? Этот вопрос мы попытаемся разобрать в нашей сегодняшней статье.
Процессор управляет данными на вашем компьютере и выполняют миллионы инструкций в секунду. И под словом процессор, я подразумеваю именно то, что оно на самом деле означает — небольшой чип из кремния, который фактически выполняет все операции на компьютере. Перед тем как перейти к рассмотрению как работает процессор, нужно сначала подробно рассмотреть что это такое и из чего он состоит.
Содержание статьи:
Что такое процессор или CPU?
Сначала давайте рассмотрим что такое процессор. CPU или central processing unit (центральное обрабатывающее устройство) — который представляет из себя микросхему с огромным количеством транзисторов, сделанную на кристалле кремния. Первый в мире процессор был разработан корпорацией Intel в 1971 году. Все началось с модели Intel 4004. Он умел выполнять только вычислительные операции и мог обрабатывать только 4 байта данных. Следующая модель вышла в 1974 году — Intel 8080 и мог обрабатывать уже 8 бит информации. Дальше были 80286, 80386, 80486. Именно от этих процессоров произошло название архитектуры.
Тактовая частота процессора 8088 была 5 МГц, а количество операций в секунду только 330 000 что намного меньше чем в современных процессоров. Современные устройства имеют частоту до 10 ГГц и несколько миллионов операций в секунду.
Мы не будем рассматривать транзисторы, переместимся на уровень выше. Каждый процессор состоит из таких компонентов:
- Ядро — здесь выполняется вся обработка информации и математические операции, ядер может быть несколько;
- Дешифратор команд — этот компонент относится к ядру, он преобразует программные команды в набор сигналов, которые будут выполнять транзисторы ядра;
- Кэш — область сверхбыстрой памяти, небольшого объема, в которой хранятся данные, прочитанные из ОЗУ;
- Регистры — это очень быстрые ячейки памяти, в которых хранятся сейчас обрабатываемые данные. Их есть всего несколько и они имеют ограниченный размер — 8, 16 или 32 бит именно от этот зависит разрядность процессора;
- Сопроцессор — отдельное ядро, которое оптимизировано только для выполнения определенных операций, например, обработки видео или шифрования данных;
- Адресная шина — для связи со всеми, подключенными к материнской плате устройствами, может иметь ширину 8, 16 или 32 бит;
- Шина данных — для связи с оперативной памятью. С помощью нее процессор может записывать данные в память или читать их оттуда. Шина памяти может быть 8, 16 и 32 бит, это количество данных, которое можно передать за один раз;
- Шина синхронизации — позволяет контролировать частоту процессора и такты работы;
- Шина перезапуска — для обнуления состояния процессора;
Главным компонентом можно считать ядро или вычислительное-арифметическое устройство, а также регистры процессора. Все остальное помогает работать этим двум компонентам. Давайте рассмотрим какими бывают регистры и какое у них предназначение.
- Регистры A, B, C — предназначены для хранения данных во время обработки, да, их только три, но этого вполне достаточно;
- EIP — содержит адрес следующей инструкции программы в оперативной памяти;
- ESP — адрес данных в оперативной памяти;
- Z — содержит результат последней операции сравнения;
Конечно, это далеко не все регистры памяти, но эти самые главные и ими больше всего пользуется процессор во время выполнения программ. Ну а теперь, когда вы знаете из чего состоит процессор, можно рассмотреть как он работает.
Как работает процессор компьютера?
Вычислительное ядро процессора может выполнять только математические операции, операции сравнения и перемещение данных между ячейками и оперативной памятью, но этого вполне достаточно, чтобы вы могли играть игры, смотреть фильмы и просматривать веб-страницы и многое другое.
Фактически любая программа состоит из таких команд: переместить, сложить, умножить, делить, разница и перейти к инструкции если выполняется условие сравнения. Конечно, это далеко не все команды, есть другие, которые объединяют между собой уже перечисленные или упрощают их использование.
Все перемещения данных выполняются с помощью инструкции перемещения (mov), эта инструкция перемещает данные между ячейками регистров, между регистрами и оперативной памятью, между памятью и жестким диском. Для арифметических операций есть специальные инструкции. А инструкции перехода нужны для выполнения условий, например, проверить значение регистра A и если оно не равно нулю, то перейти к инструкции по нужному адресу. Также с помощью инструкций перехода можно создавать циклы.
Все это очень хорошо, но как же все эти компоненты взаимодействуют между собой? И как транзисторы понимают инструкции? Работой всего процессора управляет дешифратор инструкций. Он заставляет каждый компонент делать то, что ему положено. Давайте рассмотрим что происходит когда нужно выполнить программу.
На первом этапе дешифратор загружает адрес первой инструкции программы в памяти в регистр следующей инструкции EIP, для этого он активирует канал чтения и открывает транзистор-защелку чтобы пустить данные в регистр EIP.
Во втором тактовом цикле дешифратор инструкций преобразует команду в набор сигналов для транзисторов вычислительного ядра, которые выполняют ее и записывают результат в один из регистров, например, С.
На третьем цикле дешифратор увеличивает адрес следующей команды на единицу, так, чтобы он указывал на следующую инструкцию в памяти. Далее, дешифратор переходит к загрузке следующей команды и так до окончания программы.
Каждая инструкция уже закодирована последовательностью транзисторов, и преобразованная в сигналы, она вызывает физические изменения в процессоре, например, изменению положения защелки, которая позволяет записать данные в ячейку памяти и так далее. На выполнение разных команд нужно разное количество тактов, например, для одной команды может понадобиться 5 тактов, а для другой, более сложной до 20. Но все это еще зависит от количества транзисторов в самом процессоре.
Ну с этим все понятно, но это все будет работать только если выполняется одна программа, а если их несколько и все одновременно. Можно предположить, что у процессора есть несколько ядер, и тогда на каждом ядре выполняется отдельная программ. Но нет, на самом деле там таких ограничений нет.
В один определенный момент может выполняться только одна программа. Все процессорное время разделено между всеми запущенными программами, каждая программа выполняется несколько тактов, затем процессор передается другой программе, а все содержимое регистров сохраняется в оперативную память. Когда управление возвращается этой программе, то в регистры грузятся ранее сохраненные значения.
Выводы
Вот и все, в этой статье мы рассмотрели как работает процессор компьютера, что такое процессор и из чего он состоит. Возможно, это немного сложно, но мы рассмотрели все более просто. Надеюсь, теперь вам стало более ясно то, как работает это очень сложное устройство.
На завершение видео об истории создания процессоров: