Процессор обычного настольного компьютера, работая на частоте 3 ГГц, успевает за секунду переключить свои транзисторы три миллиарда раз. Электрон же в медной дорожке на материнской плате дрейфует со скоростью доли миллиметра в секунду - медленнее, чем ползет садовая улитка (подробнее об этом мы рассказывали в статье Скорость электрического тока).
Контраст выглядит парадоксальным: как техника, построенная на таких «медленных» носителях заряда, успевает выполнять миллиарды операций? В предыдущей статье мы разобрались, что работу в цепи выполняют электроны, а команду им отдает электрическое поле. Тот же принцип объясняет и быстродействие компьютера.
Быстродействие - это частота переключений
Современный процессор представляет собой кристалл кремния, на котором сформированы десятки миллиардов транзисторов. Каждый транзистор - микроскопический переключатель с двумя состояниями: открыт и пропускает ток, что соответствует логической единице, либо закрыт, что соответствует нулю.
Когда говорят, что процессор работает на частоте 3 ГГц, речь идет о том, что тактовый генератор задает ритм из трех миллиардов переключений в секунду. Быстродействие определяется тем, как быстро транзисторы меняют состояние, а вовсе не тем, как быстро электроны пробегают от одного края кристалла к другому.
Рассмотрим простейший логический элемент - инвертор, который превращает единицу на входе в ноль на выходе и наоборот. Входное напряжение управляет транзистором: высокое открывает его, низкое закрывает. Транзистор переключает ток в выходной цепи, и выходное напряжение меняется на противоположное. Время всей этой операции - это время перезаряда емкостей внутри элемента, а не время пробега электронов на какое-то расстояние.
Волна падения и скорость костяшки
Наглядную картину дает ряд домино. Выстроим сотню костяшек и толкнем первую. Каждая костяшка падает медленно, а волна падения бежит по ряду быстро. Скорость падения отдельной костяшки здесь аналог дрейфовой скорости электрона, скорость волны - аналог распространения электрического поля.
Процессор напоминает такой ряд, в котором костяшки к тому же сами мгновенно встают обратно: число циклов «упал - поднялся» за секунду и есть тактовая частота, а скорость падения каждой отдельной костяшки на нее почти не влияет.
Электроны уже на местах
Здесь кроется и ответ на вопрос из заголовка. Электронов не нужно «подвозить» издалека: они уже присутствуют в каждом кубическом микроне проводника и полупроводника. Когда транзистор переключается, поле в его канале изменяется практически мгновенно, и ближайшие электроны приходят в движение сразу. Ток возникает в нужном месте, не дожидаясь прихода зарядов с другого конца кристалла, - подобно тому, как зрители на стадионе встают по команде диктора одновременно, а не ждут, пока к ним кто-то прибежит с дальней трибуны.
Почему ничтожные расстояния решают все
Размеры современных транзисторов измеряются десятками нанометров, а напряжение питания составляет около вольта. Вольт, приложенный к каналу длиной в десятки нанометров, создает поле с напряженностью порядка миллиона вольт на сантиметр.
В таком поле дрейфовая скорость носителей в кремнии перестает зависеть от напряженности и насыщается на уровне около 107 см/с, то есть 100 км/с. Это в миллиард раз быстрее дрейфа в бытовой проводке. Канал длиной 10 нм носитель пролетает за десятые доли пикосекунды, что на порядки меньше длительности одного такта. Получается, что внутри кристалла электроны физически не успевают «устать» от движения - слишком малы расстояния и слишком велики поля.
Что на самом деле ограничивает частоту
Если не скорость электронов, то что же мешает поднимать частоту бесконечно? Сдерживающих факторов несколько, и все они связаны не с дрейфом носителей. Все эти факторы сведены в таблицу ниже.
|
Фактор |
Физическая причина |
Следствие |
|
RC-задержки |
Каждый узел схемы обладает емкостью, которую приходится перезаряжать через сопротивление |
Конечное время переключения транзистора |
|
Задержка распространения |
Поле в межсоединениях чипа идет со скоростью 0,5-0,7 от световой |
За такт 0,33 нс сигнал проходит лишь несколько сантиметров |
|
Тепловыделение |
Динамическая мощность пропорциональна квадрату напряжения и частоте: P = C·U2·f |
Тепло растет быстрее, чем частота |
|
Синхронизация |
Тактовый сигнал обязан приходить ко всем блокам кристалла одновременно |
Разброс задержек ограничивает ритм всего процессора |
Поясним на числах. На частоте 3 ГГц длительность такта - треть наносекунды. Свет за это время проходит 10 сантиметров, а сигнал в медных межсоединениях чипа и того меньше. А с теплом дело обстоит еще хуже: для роста частоты приходится поднимать и напряжение, поэтому удвоение гигагерц дает более чем удвоение тепловыделения. Именно поэтому процессор на 10 ГГц грелся бы как небольшая электроплита.
Как индустрия уткнулась в стену пяти гигагерц
В начале 2000-х гонка частот казалась бесконечной. В 2001 году Intel выпустила Pentium 4 с частотой 2 ГГц - первый процессор, совершавший два миллиарда тактов в секунду.
Архитектура NetBurst проектировалась специально под наращивание частоты, и инженеры компании всерьез намеревались со временем выйти на 10 ГГц. Однако ядро Prescott так и не смогло преодолеть 4 ГГц из-за тепловыделения, а 7 мая 2004 года Intel официально объявила о прекращении работ над ядром Tejas, для которого планировались частоты от 7 ГГц и выше. Инженерные ресурсы бросили на двухъядерные решения. Гонка остановилась на отметке 3,8 ГГц.
Выходит, гонка закончилась не потому, что электроны вдруг стали еще медленнее, - они здесь вообще ни при чем. Производители уперлись в тепло и задержки распространения сигнала. С тех пор производительность наращивают иначе: больше ядер, шире параллелизм, совершеннее архитектура. Современные процессоры превышают 6 ГГц лишь в кратковременном турборежиме, а десятигигагерцовая планка в базовой частоте не взята до сих пор.
Быстрые электроны все-таки существуют
Справедливости ради заметим: электроны в принципе умеют двигаться быстро. Уже в металле без всякого тока они хаотично носятся с тепловыми скоростями в сотни километров в секунду, но движение это беспорядочно и тока не создает.
А в вакууме электрон разгоняется по-настоящему: в кинескопе при анодном напряжении 25 кВ электронный луч летит к экрану примерно с третью скорости света. Та же картина в электронных лампах и ускорителях частиц. Но в кристалле процессора вакуума нет: носители пробираются сквозь решетку кремния, сталкиваясь с атомами, и их упорядоченная скорость ограничена упомянутым выше насыщением.
О чем умалчивает реклама
В рекламных проспектах частоту подают иначе: «5 ГГц - это пять миллиардов операций в секунду, молниеносная скорость!» На деле 5 ГГц - лишь ритм тактового генератора. За один такт процессор может выполнить несколько операций, а может не закончить ни одной, если команда сложная или данные задержались в памяти.
Реальная производительность зависит от архитектуры, объема кэша, числа ядер и качества программного кода. Неслучайно в характеристиках процессоров нигде не упоминается скорость электронов: параметр, не имеющий к быстродействию отношения, маркетологам не нужен. Так же неверно и расхожее представление, будто электроны внутри чипа летают со скоростью света, - со скоростью, близкой к световой, там распространяется только поле.
Поиск способов обойти даже ограничения медных межсоединений уже идет. В оптоэлектронных линиях связи сигнал между частями системы переносят фотоны по волноводам, и медные дорожки с их сопротивлением и емкостью остаются не у дел.
Первые образцы процессоров с оптическими межсоединениями показаны в лабораториях. Если технология дойдет до серийных кристаллов, быстродействие снова начнет расти - и снова безо всякой гонки электронов, по-прежнему медленных и по-прежнему незаменимых.
Андрей Повный
