История развития процессоров с 1971 года до наших дне
15 ноября 2001 года исполнилось 30 лет со дня появления первого микропроцессора. Обратите внимание, что первый процессор был выпущен за 10 лет до появления первого компьютера IBM PC.
🕛 23.09.2009, 21:16
За эти годы быстродействие процессора увеличилось более чем в 18 500 раз (с 0,108 МГц до 2 ГГц). История создания первого микропроцессора Intel 4004 описана в главе 1. Процессор 4004 был представлен 15 ноября 1971 года; он работал на частоте 108 кГц (108 000 тактов в секунду, или всего 0,1 МГц). Процессор 4004 содержал 2 300 транзисторов и производился с использованием 10-микронной технологии. Это означает, что каждая линия, дорожка или транзистор располагались от других элементов на расстоянии около 10 микрон (миллионная часть метра). Данные передавались блоками по 4 бита за такт, а максимальный адресуемый объем памяти был равен 640 байт. Процессор 4004 предназначался для использования в калькуляторах, однако в конечном итоге нашел и другие применения в связи с широкими возможностями программирования. Например, процессор 4004 использовался для управления светофорами, при анализе крови и даже в исследовательской ракете Pioneer 10, запущенной NASA!В апреле 1972 года Intel выпустила процессор 8008, который работал на частоте 200 кГц. Он содержал 3 500 транзисторов и производился все по той же 10-микронной технологии.
Шина данных была 8-разрядной, что позволяло адресовать 16 Кбайт памяти. Этот процессор предназначался для использования в терминалах и программируемых калькуляторах.
Следующая модель процессора, 8080, была анонсирована в апреле 1974 года. Этот процессор содержал 6 000 транзисторов и мог адресовать уже 64 Кбайт памяти. На нем был собран первый персональный компьютер (не PC) Altair 8800. В этом компьютере использовалась операционная система CP/M, а Microsoft разработала для него интерпретатор языка BASIC. Это была первая массовая модель компьютера, для которого были написаны тысячи программ.
Со временем процессор 8080 стал настолько известен, что его начали копировать. В конце 1975 года несколько бывших инженеров Intel, занимавшихся разработкой процессора 8080, создали компанию Zilog. В июле 1976 года эта компания выпустила процессор Z-80, который представлял собой значительно улучшенную версию 8080. Этот процессор был несовместим с 8080 по контактным выводам, но сочетал в себе множество различных функций, например интерфейс памяти и схему обновления ОЗУ (RAM), что давало возможность разработать более дешевые и простые компьютеры. В Z-80 был также включен расширенный набор команд процессора 8080, позволяющий использовать его программное обеспечение. В этот процессор вошли новые команды и внутренние регистры, поэтому программное обеспечение, разработанное для Z-80, могло использоваться практически со всеми версиями 8080. Первоначально процессор Z-80 работал на частоте 2,5 МГц (более поздние версии работали уже на частоте 10 МГц), содержал 8,5 тыс. транзисторов и мог адресовать 64 Кбайт памяти.
Компания Radio Shack выбрала процессор Z-80 для своего первого персонального компьютера TRS-80 Model 1. Следует заметить, что Z-80 стал первым процессором, используемым во многих новаторских системах, в том числе Osborne и Kaypro. Этому примеру последовали другие компании, и вскоре Z-80 стал стандартным процессором для систем, работающих с операционной системой CP/M и наиболее распространенным программным обеспечением того времени.
Компания Intel не остановилась на достигнутом и в марте 1976 года выпустила процессор 8085, который содержал 6 500 транзисторов, работал на частоте 5 МГц и производился по 3-микронной технологии.
В этом же году компания MOS Technologies выпустила процессор 6502, который был абсолютно непохож на процессоры Intel. Он был разработан группой инженеров компании Motorola. Эта же группа работала над созданием процессора 6800, который в будущем трансформировался в семейство процессоров 68000. Цена первой версии процессора 8080 достигала 300 долларов, в то время как 8-разрядный процессор 6502 стоил всего около 25 долларов. Такая цена была вполне приемлема для Стива Возняка (Steve Wozniak), и он встроил процессор 6502 в новые модели Apple I и Apple II. Процессор 6502 использовался также в системах, созданных компанией Commodore и другими производителями. Этот процессор и его преемники с успехом работали в игровых компьютерных системах, в число которых вошла приставка Nintendo Entertainment System (NES). Компания Motorola продолжила работу над созданием серии процессоров 68000, которые впоследствии были использованы в компьютерах Apple Macintosh. В настоящее время в этих системах применяется процессор PowerPC, являющийся преемником 68000.
В июне 1978 года Intel выпустила процессор 8086, который содержал набор команд под кодовым названием х86. Этот же набор команд до сих пор поддерживается в самых современных процессорах Pentium III. Процессор 8086 был полностью 16-разрядным - внутренние регистры и шина данных. Он содержал 29 000 транзисторов и работал на частоте 5 МГц. Благодаря 20-разрядной шине адреса он мог адресовать 1 Мбайт памяти. При создании процессора 8086 обратная совместимость с 8080 не предусматривалась. Но в то же время значительное сходство их команд и языка позволили использовать более ранние версии программного обеспечения. Это свойство впоследствии сыграло важную роль в развитии программного обеспечения ПК, включая операционную систему CP/M (8080).
Несмотря на высокую эффективность процессора 8086, его цена была все же слишком высока по меркам того времени и, что гораздо важнее, для его работы требовалась дорогая микросхема поддержки 16-разрядной шины данных. Чтобы уменьшить себестоимость процессора, в 1979 году Intel выпустила упрощенную версию 8086, которая получила название 8088.
Процессор 8088 использовал те же внутреннее ядро и 16-разрядные регистры, что и 8086, мог адресовать 1 Мбайт памяти, но, в отличие от предыдущей версии, использовал внешнюю 8-разрядную шину данных. Это позволило обеспечить обратную совместимость с ранее разработанным 8-разрядным процессором 8085 и тем самым значительно снизить стоимость создаваемых системных плат и компьютеров. Именно поэтому IBM выбрала для своего первого ПК “урезанный” процессор 8088, а не 8086.
Это решение имело далеко идущие последствия для всей компьютерной индустрии. Процессор 8088 был полностью программно-совместимым с 8086, что позволяло использовать 16-разрядное программное обеспечение. В процессорах 8085 и 8080 использовался очень похожий набор команд, поэтому программы, написанные для процессоров предыдущих версий, можно было легко преобразовать для процессора 8088. Это, в свою очередь, позволяло разрабатывать разнообразные программы для IBM РС, что явилось залогом его будущего успеха. Не желая останавливаться на полпути, Intel была вынуждена обеспечить поддержку обратной совместимости 8088/8086 с большей частью процессоров, выпущенных в то время.
В те годы еще поддерживалась обратная совместимость процессоров, что ничуть не мешало вводить различные новшества или дополнительные возможности. Одним из основных изменений стал переход от 16-разрядной внутренней архитектуры процессора 286 и более ранних версий к 32-разрядной внутренней архитектуре 386-го и последующих процессоров, относящихся к категории IA-32 (32-разрядная архитектура Intel). Эта архитектура была представлена в 1985 году, однако потребовалось 10 лет, чтобы на рынке появились такие операционные системы, как Windows 95 (частично 32-разрядные) и Windows NT (требующие использования исключительно 32-разрядных драйверов). И только еще через шесть лет появилась операционная система Windows XP, которая была 32-разрядной как на уровне драйверов, так и на уровне всех компонентов. Итак, на адаптацию 32-разрядных вычислений потребовалось 16 лет. А для компьютерной индустрии это довольно длительный срок.
Теперь наблюдается очередной “скачок” в развитии архитектуры ПК - компании Intel и AMD представили 64-разрядные расширения для 32-разрядной архитектуры Intel. Еще несколько лет назад Intel представила архитектуру IA-64 (Intel Architecture, 64-bit - 64-разрядная архитектура Intel), выпустив процессоры Itanium и Itanium 2, однако данная архитектура была абсолютно несовместима с 32-разрядной архитектурой. Архитектура IA-64 была анонсирована в 1994 году в рамках проекта по разработке компаниями Intel и HP нового процессора с кодовым именем Merced; первые технические детали были опубликованы в октябре 1997 года. В результате в 2001 году был выпущен процессор Itanium, поддерживающий архитектуру IA-64.
К сожалению, IA-64 не являлась расширением архитектуры IA-32, а была совершенно новой архитектурой. Это хорошо для рынка серверов (для этого IA-64 и разрабатывалась), однако совершенно неприемлемо для мира ПК, который всегда требует обратной совместимости. Хотя архитектура IA-64 и поддерживает эмуляцию IA-32, при этом обеспечивается очень низкая производительность.
Компания AMD пошла по другому пути и разработала 64-разрядные расширения для архитектуры IA-32. В результате появилась архитектура AMD64 (которая также называется x86-64). Через некоторое время Intel представила собственный набор 64-разрядных расширений, который назвала EM64T (IA-32e). Расширения Intel практически идентичны расширениям AMD, что означает их совместимость на программном уровне. В результате впервые в истории сложилась ситуация, когда Intel следовала за AMD в разработке архитектуры ПК.
Для того чтобы 64-разрядные вычисления стали реальностью, необходимы 64-разрядные операционные системы и драйверы. В апреле 2005 года компания Microsoft начала распространять пробную версию Windows XP Professional x64 Edition (поддерживает дополнительные инструкции AMD64 и EM64T); основные поставщики компьютеров уже поставляют готовые системы с предустановленной Windows XP Professional x64. Основные производители оборудования также разработали 64-разрядные драйверы для текущих и достаточно современных моделей устройств. Выпускаются и 64-разрядные версии Linux, благодаря чему каких-либо серьезных препятствий для перехода к 64-разрядным вычислениям нет.
Последним достижением можно считать выпуск компаниями Intel и AMD двухъядерных процессоров. Они содержат два ядра на одной подложке; в результате один процессор теоретически может выполнять работу двух процессоров. Хотя двухъядерные процессоры не обеспечивают значительного увеличения быстродействия в играх (которые в основном предполагают выполнение данных в один поток), они просто незаменимы в многозадачных средах. Если вы когда-нибудь пытались одновременно выполнять проверку компьютера на вирусы, работать с электронной почтой, а также при этом запускать какие-то другие приложения, то наверняка знаете, что такая нагрузка может “поставить на колени” даже самый быстрый одноядерный процессор. Поскольку двухъядерные процессоры сейчас выпускаются обеими компаниями, Intel и AMD, шансы на то, что вам удастся выполнить работу гораздо быстрее благодаря многозадачности, значительно возрастают. Современные двухъядерные процессоры также поддерживают 64-разрядные расширения AMD64 или EM64T, что позволяет воспользоваться преимуществами как двухъядерности, так и 64-разрядных вычислений.
Персональные компьютеры прошли долгий путь развития. Первый используемый в ПК процессор 8088 содержал 29 тыс. транзисторов и работал с частотой 4,77 МГц. Процессор AMD Athlon 64 FX содержит больше 105 млн. транзисторов, процессор Pentium 4 670 (ядро Prescott) работает с частотой 3,8 ГГц и содержит 169 млн. транзисторов, преимущественно благодаря наличию кэш-памяти второго уровня L2 объемом 2 Мбайт. Двухъядерные процессоры, содержащие два ядра и кэш-память на одной подложке, характеризуются еще большим количеством транзисторов. Процессор Intel Pentium D содержит 230 млн. транзисторов, а AMD Athlon 64 X2 - более 233 млн. Двухъядерная архитектура и постепенно увеличивающийся объем кэш-памяти - основные тенденции в развитии современных процессорных архитектур, обеспечивающие значительное повышение быстродействия.
Все это является практическим подтверждением закона Мура, в соответствии с которым быстродействие процессоров и количество содержащихся в них транзисторов удваивается каждые 1,5-2 года.