Такие нововведения в архитектуру процессора в дальнейшем позволили совершенствовать как сам процессор, так и конструкцию системной платы, а также создавать новые типы микросхем оперативной памяти. Заметим, что пакетный режим стал наиболее популярным в настоящее время для процессоров класса Pentium.
Процессоры DX, DX2, DX4…
   Второе поколение 32-разрядных процессоров выпускалось длительное время. Было разработано множество различных их модификаций, причем в совершенствовании архитектуры 486 процессора приняли активное участие конкуренты корпорации Intel, которые разработали уникальные, зачастую даже более эффективные модели процессоров, конструктивно и программно совместимых с продукцией корпорации Intel. Можно сказать, что на конструкции процессора 486 мировая компьютерная промышленность отрабатывала те технологии, которые сегодня стали стандартом для современных компьютеров с процессорами Pentium и Athlon.
   Первые процессоры Intel 486DX имели тактовую частоту 25 МГц, выполняя 20 млн. операций в секунду (специальные тестовые программы показывали следующие значения производительности: 16,8 SPECint92, 7,40 SPECfp92). В 1990 г. начат выпуск процессоров с тактовой частотой 33 МГц (27 млн. операций в секунду, 22,4 SPECint92), в 1991 г.  – 50 МГц (41 млн. операций в секунду, 33,4 SPECint92, 14,5 SPECfp92).
   Примечание
   Специалистам, да и простым пользователям, всегда интересно знать, какой процессор более быстрый, более производительный и т. д. Для первых поколений процессоров, у которых была достаточно похожая архитектура, можно было использовать показатель MIPS (Mega Instruction Per Second), который говорит о том, сколько миллионов элементарных операций в секунду может выполнить процессор. Но вот при появлении процессоров с сильно различающейся архитектурой такой показатель перестал устраивать, т. к. один процессор быстрее выполнял математические операции, а другой лучше работал с графикой. Для сравнения различных процессоров стали использовать специальные комбинированные тесты, в которых использовались различные наборы операций, вначале – это операции с целыми и вещественными числами, а потом обработка изображений (чаще всего, моделирование 2D– и 3D-объектов).
   Наиболее популярной единицей измерения производительности для первых 32-разрядных процессоров стал индекс ICOMP Index, который предложила корпорация Intel. Этот индекс вычислялся на основе ряда тестов, в том числе тестов SPEC, которые представляли собой смесь из операций с числами. В дальнейшем, когда производительность процессоров стала слишком велика для этих тестов, были придуманы другие тесты, например популярны некоторые версии теста Intel Media Benchmark, в котором моделируются различные 3D-объекты. Но, как следует заметить, прямой зависимости между теми или иными показателями нет, тем более, что каждый тест рассчитан на определенный круг типов процессоров.
   Количество транзисторов в микросхеме процессора впервые перевалило миллионную отметку – 1 200 000 по технологии 1 мкм, а в процессорах с тактовой частотой 50 МГц применялась уже 0,8 мкм технология. Размер адресуемой памяти составлял 4 Гбайт, а виртуальной памяти 64 Тбайт, что повторяло возможности Intel 386.
   Следуя принципам, отработанным при выпуске процессоров Intel 386, в 1991 г. появился упрощенный вариант Intel 486SX. Основное отличие этого процессора от базового состояло в том, что в нем отсутствовал математический сопроцессор.
   Процессор Intel 486SX выпускался с тактовыми частотами: 16 МГц (13 млн. операций в секунду), 20 МГц (16,5 млн. операций в секунду), 25 МГц (20 млн. операций в секунду, 12 SPECint92) и 33 МГц (27 млн. операций в секунду, 15,86 SPECint92). Количество транзисторов на кристалле составляло 1 185 000 (технология 1 мкм) и 900 000 (технология 0,8 мкм).
   Для модернизации компьютеров, в которых использовался процессор Intel 486SX, корпорация предложила интересный в то время вариант – замену старого процессора на специальный процессор. Такая операция позволяла за небольшие деньги резко повысить потребительские свойства компьютера, заменив один только процессор. Выпускались такие процессоры под названием Intel OverDrive. Правда, стоит отметить, что в России процессоры Intel OverDrive оказались большой редкостью, да и эффективнее оказалось одновременно заменить и процессор, и системную плату на более новые.
   Для ноутбуков, которые к этому времени стали очень популярны, в ноябре 1992 г. был выпущен процессор Intel 486SL. Первый процессор работал на тактовой частоте 20 МГц (15,4 млн. операций в секунду), в дальнейшем частота возросла до 25 МГц (19 млн. операций в секунду) и 33 МГц (25 млн. операций в секунду). Количество транзисторов составило 1,4 млн. (технология 0,8 мкм).
   Самая важная техническая характеристика для ноутбука – это энергопотребление, поэтому пусть вас не удивляет, что процессор Intel 486SL не обладал рекордной производительностью. Для снижения потребления тока даже был уменьшен объем адресуемой памяти до величины 64 Мбайт. Зато такой компьютер в дипломате мог долгое время работать от внутренних аккумуляторов, что сделало ноутбуки популярными среди бизнесменов.
   Дальнейшее развитие семейства процессоров 486 пошло по пути использования для синхронизации ядра умноженной тактовой частоты системной платы. Первый такой вариант – процессор Intel DX2 – был представлен 3 марта 1992 г. (рис. 2.8). Цифра "2" после символов "DX" означала, что ядро работает на удвоенной частоте. Для первой модели Intel 486 DX50, который работал на тактовой частоте 50 МГц (41 млн. операций в секунду, 29,9 SPECint92, 14,2 SPECfp92), на системной плате нужно было установить специальными перемычками-джамперами частоту 25 МГц, а коэффициент умножения 2. Следующая модель с тактовой частотой 66 МГц появилась в августе 1992 г. (54 млн. операций в секунду, 39,6 SPECint92, 18,8 SPECfp92).
   Рис. 2.8. Процессор 486DX2
 
   Как вы понимаете, раз у пользователя есть возможность самому устанавливать для процессора величину тактовой частоты, то появляется искушение «разогнать» процессор, чтобы он работал на более высокой частоте. Заметим, что так большинство компьютерщиков и поступало (до сих пор это любимое занятие не только любителей, но и профессиональных программистов). Правда, не все экземпляры процессоров могли быть разогнаны на существенную величину, но, например, заставить 50-мегагерцовый процессор работать на частоте 66 МГц почти всегда возможно.
   Количество транзисторов в процессорах Intel 486DX2 составило 1,2 млн. (технология 0,8 мкм).
   Следующий рывок в повышении тактовой частоты ядра был реализован в процессоре Intel 486DX4, который появился в 1994 г., правда, цифра "4" не обозначала учетверение частоты. Коэффициент умножения тактовой частоты оказался равен 3. Выпускались две модели этого процессора: с тактовой частотой 75 МГц (53 млн. операций в секунду, 41,3 SPECint92, 20,1 SPECfp92) и 100 МГц (70,7 млн. операций в секунду, 54,59 SPECint92, 26,91 SPECfp92).
   Количество транзисторов составило 1,6 млн. (технология 0,6 мкм).
   Производительность компьютеров с процессором Intel 486DX4 оказалась настолько велика, что, если бы не настойчивость корпорации Intel по внедрению процессоров Pentium, он до сих пор мог быть образцом для подражания. Так, Intel 486DX4 позволяет комфортно использовать любые офисные приложения для операционной системы Windows 95/98. Но поскольку ряд фирм стали очень серьезно конкурировать с корпорацией Intel, производство этих процессоров было передано третьим фирмам. Сама корпорация Intel предложила пользователям процессоры нового поколения – Pentium.
Процессоры, совместимые с Intel 486
   Хотите верьте, хотите нет, но очень многие пользователи в те времена предпочитали пользоваться не дорогими процессорами Intel 486DX4, а более дешевыми производства фирм AMD и Cyrix. Причем делали такой выбор не только из-за низкой цены – хотя это и немаловажно – а за более высокую их производительность для ряда приложений.
   Создав процессор Intel 486, конструкторы корпорации Intel неожиданно для себя открыли поле деятельности для своих конкурентов. Ведь как раньше можно было совершенствовать выпускающийся промышленностью процессор? Приходилось покупать лицензию и дорабатывать второстепенные узлы или разрабатывать свой, новый с другой архитектурой.
   Первый путь не дает возможности каких-либо прорывов, т. к. улучшать получалось только какой-нибудь параметр, а второй – нехорош тем, что теряется совместимость, что ведет к необходимости организации производства нового типа компьютеров.
   Если вспомнить примеры, то путь совершенствования второстепенных узлов был избран фирмами Юго-Восточной Азии при производстве аналогов процессоров Intel 386. Кстати, многие системные платы комплектовались такими дешевыми процессорами, но у них не было особого технического преимущества перед образцом – процессором, разработанным корпорацией Intel. По этому пути пошли и в СССР, выпустив в свое время аналоги 8086 и 80286.
   Второй путь чреват тем, что компьютеры с процессором, который несовместим с семейством х86, будут производиться очень ограниченным кругом фирм. Соответственно, цена на них будет значительно выше, а объем производства ниже. Наглядный пример – компьютеры фирмы Apple, которые превосходят IBM PC совместимые компьютеры в области работы с графикой, но дороже почти в два-три раза. В России из-за этого они – большая редкость, если не считать старых учебных компьютеров "Агат", собранных на 16-разрядном процессоре корпорации Motorola.
   Уникальная же архитектура процессора 486 позволяла без потери совместимости создавать совершенно новые процессоры, которые могли обрабатывать данные по другим алгоритмам. Особенно преуспели в этом фирмы AMD и Cyrix. Оригинальные модели процессоров этих фирм выпускались несколько позднее появления следующего варианта Intel 486, но зато обладали какой-либо интересной особенностью.
   Конечно, первые процессоры AMD и Cyrix не слишком отличались от аналогов, производимых корпорацией Intel, но старшие модели, появившиеся тогда, когда корпорация Intel уже начала производить процессоры Pentium, имели явно более предпочтительные параметры, правда, конкурировать со следующим поколением процессоров семейства х86 они, тем не менее, не могли.
   Процессоры фирм AMD и Cyrix можно было устанавливать почти на все системные платы, предназначенные для Intel 486. Производители системных плат разрабатывали свою продукцию, учитывая возможность установки пользователями процессоров Intel, AMD и Cyrix. Для этого на системной плате устанавливалось множество джамперов, с помощью которых системная плата настраивалась на работу с тем или иным процессором.
   Процессоры AMD отличались от Intel 486 пониженным питанием. Величина напряжения указывалась при маркировке. Последние модели имели возможность снижения энергопотребления (такая технология была внедрена корпорацией Intel лишь во втором поколении Pentium).
   Максимальная частота, достигнутая в процессоре AMD-K5, составила 133 МГц при коэффициенте умножения, равном 4. Правда, не все системные платы могли поддерживать такие частотные параметры, поэтому приходилось использовать процессор на частоте 100 или 120 МГц.
   В последней модели Ат5х86-Р75 использовались решения, которые были реализованы в процессорах Pentium.
   Для процессоров Cyrix справедливо все, что было сказано о процессорах AMD. Но при использовании этих процессоров надо учитывать то, что их внутренний математический сопроцессор был более эффективен, чем у процессоров других фирм.
   Последняя модель Cyrix 5x86 по архитектуре достаточно близка к процессорам Pentium.
   Из остальных фирм, которые производили процессоры семейства 486, можно упомянуть корпорацию IBM и Texas Instruments. Компьютеры с такими процессорами производства этих фирм изредка можно встретить в России. Но, следует заметить, что особых отличий от Intel 486 у них нет, разве что процессоры Texas Instruments ближе к аналогам фирмы AMD.

Процессоры Pentium

   Кому-то кажется, что процессоры Pentium появились совсем недавно. Кто-то считает, что до Pentium вообще не было компьютеров, заслуживающих внимания. Иногда при разговоре о процессорах 386 («тройках» в просторечии) собеседник никак не может сообразить, что речь идет не о Pentium III. Если же вспомнить историю, то о первом процессоре Pentium было объявлено в далеком марте 1993 г., т. е. тогда, когда семейство процессоров 486 было в зените славы, a Intel DX4 еще только проектировался.
   Первые процессоры Pentium имели тактовые частоты 60 МГц (100 млн. операций в секунду, 70,4 SPECint92, 55,1 SPECfp92) и 66 МГц (112 млн. операций в секунду, 77,9 SPECint92, 63,6 SPECfp92). Умножение частоты для ядра не использовалось. В то время такие частотные характеристики не особо поражали воображение, да и работа программ, которые, в основном, разрабатывались как 16-разрядные приложения, не вызывала особого восторга. К тому же, в первых партиях процессоров Pentium через некоторое время была обнаружена ошибка при делении чисел, которая проявлялась только при определенных соотношениях операндов.
   Количество транзисторов на кристалле нового процессора в очередной раз достигло рекордной отметки в 3,1 млн. (технология 0,8 мкм). На рис. 2.9 показан внешний вид процессора Pentium. Число контактов у корпуса процессора со штырьковыми выводами стало равным 273. Возможности работы с памятью были аналогичны предшествующему поколению – адресуемая память равна 4 Гбайт, виртуальная память до 64 Тбайт. Но зато можно было использовать при страничной адресации до 4 Мбайт, вместо 4 Кбайт, как в 486 процессорах.
   Рис. 2.9. Процессор Pentium
 
   Чтобы понять, почему еще несколько лет параллельно развивались два поколения процессоров, надо вспомнить, что наиболее популярная операционная система Windows 3.1 была лишь надстройкой – оболочкой над MS-DOS. А эта операционная система, к сожалению, не использовала 32-разрядные возможности процессоров, поэтому программисты разрабатывали почти все программы как 16-разрядные. 32-разрядная операционная система Windows 95, если вспомнить, появилась только через два года.
   Но все же реализованные именно в процессорах Pentium принципы обработки информации позволили к настоящему времени превратить обычный персональный компьютер в нечто большее, чем в простую машину для обработки цифр и текстов.
   Наиболее интересное новшество, примененное в процессорах,  – это использование механизма предсказаний (правда, не так, как это делают гадалки). Как должны выполняться компьютерные программы – шаг за шагом, инструкция за инструкцией. Точно так, как считают в первом классе два плюс два – к результату прибавим еще одно число.
   Но ряд команд получают данные от внешней памяти и разнообразных внешних устройств, которые не отличаются быстродействием, а некоторые команды требуют больше циклов для своего выполнения. Процессор Pentium, в тех случаях, когда данные для выполнения текущей операции еще не готовы, продолжает вычисления, обрабатывая дальнейшие инструкции. К тому времени, когда будет выполнена инструкция, данные для которой поступили с опозданием, процессор уже обсчитает множество последующих команд.
   Обычно, по результатам выполнения таких "медленных" инструкций в программе делается выбор между несколькими возможностями: как бы решить – идти налево или направо. Вот тут и полезен механизм предсказания. Блок предсказаний предугадывает наиболее вероятное направление дальнейших вычислений. В том случае, если выбор был правильным, все выполненные к этому моменту команды будут считаться "правильными", и процессор продолжит дальнейшие вычисления. Если же предсказание было неверным – а это бывает примерно в 20 % случаев,  – то процессору ничего не остается делать, как заново начать обрабатывать инструкции, идущие за такой командой.
   В дальнейшем механизм предсказаний был дополнен возможностью выполнения команд не в том порядке, как они следуют в программе.
   Такие особенности архитектуры процессоров Pentium (а также самых последних моделей 486) эффективно повышают производительность процессора, не требуя повышения тактовой частоты, т. е. рассматриваемый нами процессор с тактовой частотой 100 МГц будет работать так, как обычный процессор, работающий на частоте 130 или 170 МГц. (Обратите внимание, что механизм предсказаний в каждой последующей модели процессора Pentium совершенствуется, но тонкости технологий интересны, в основном, системным программистам).
   Кроме того, для повышения производительности в процессорах Pentium была применена суперскалярная архитектура. Это громкое название говорит о том, что в процессоре имеются два параллельно работающих конвейера.
   Начиная с 8086, процессор загружал "за раз" не одну инструкцию для выполнения, а несколько, помещая их в очередь – конвейер. Теперь один конвейер – "основной", или U-конвейер – остался аналогичен такому же, как у 486 процессора, а второй, V-конвейер – работает с сокращенным числом команд. То есть процессор Pentium может выполнять в один и тот же момент сразу две разные инструкции.
   Следующая, наиболее отличительная особенность процессоров Pentium состоит в том, что шина данных у них 64-разрядная, хотя работают они с 32-разрядной арифметикой. Часто из-за этого их ошибочно относят к 64-разрядным процессорам, но на самом деле они принадлежат к семейству 32-разрядных процессоров. Только в процессоре Itanium разработчики корпорации Intel действительно полностью реализовали 64-разрядную архитектуру.
   Удвоение разрядности шины данных позволяет ускорить работу с внешней оперативной памятью. Используя возможности 64-разрядной шины, можно за один такт считать или записать в память сразу несколько инструкций или 8-байтных данных. Правда, не всегда производительность компьютера возрастает в два раза, т. к. частенько важен лишь один байт данных или одна 16-разрядная инструкция. В этих случаях "лишние" данные отбрасываются.
Кэш
   В процессорах семейства Pentium, опять-таки для повышения производительности компьютера, серьезной доработке подвергся механизм кэширования оперативной памяти.
   Тактовая частота ядра современных процессоров в настоящее время возросла в 1000 раз и превысила 2000 МГц, а вот частотные характеристики оперативной памяти сильно отстают. Например, модули дешевой динамической памяти работают на частоте всего 133 МГц.
   Разрыв обозначился уже при появлении первых 16-разрядных процессоров. Микросхемы памяти, которые могли работать на той же скорости, что и процессор, оказались слишком дорогими для применения в персональных компьютерах. А дешевые микросхемы динамической памяти, которые позволяли хранить много данных, увы, не отличались быстродействием. Поэтому разработчики компьютеров использовали принцип организации памяти, который применяли в больших ЭВМ.
   Так как процессор в каждый момент времени работает с ограниченным адресным пространством, то необходимые для текущей работы данные можно хранить в дорогостоящих, но быстрых микросхемах. Основная же память выполняется на медленных, но зато дешевых микросхемах, позволяющих хранить много данных. Поэтому процессор, используя такое разделение памяти, большую часть времени использует быструю память и обращается к основной только при необходимости. Такой вид быстродействующей памяти был назван кэшем (от англ. cache — склад, тайник).
   Технология изготовления процессоров совершенствовалась. Возможности кэша, выполненного на отдельных микросхемах и расположенного на системной плате, были быстро исчерпаны. Для дальнейшего повышения производительности компьютера кэш решили разделить на две части – традиционный кэш на системной плате оставили неизменным, а на кристалле процессора организовали еще один кэш, который должен работать на тактовой частоте процессора. Такой принцип организации памяти был реализован в некоторых 386 процессорах, а, начиная с процессоров Intel 486, стал обязателен. Кэш, расположенный на кристалле процессора, получил название – первичный кэш (LI Cache) или внутренний кэш.
   В дальнейшем, для эффективного использования 64-разрядной шины в семействе процессоров Pentium добавили еще два уровня – вторичный кэш L2 Cache и L3 Cache.
   Кэширование памяти является "прозрачным" для программ и программистов, т. е. процессор и чипсет системной платы в большинстве случаев сами определяют необходимые данные, которые будут храниться в кэше. Кроме того, они следят за тем, чтобы данные в кэше и основной памяти соответствовали друг другу, т. к. к оперативной памяти может обращаться не только процессор, но и внешние устройства.
   Механизм кэширования в каждом из последующих типов процессоров Pentium подвергался серьезной доработке. Фактически, в современных процессорах на кристалле вместе с блоками обработки данных расположена внутренняя оперативная память – кэш, которая по своим размерам превосходит объем всей памяти (ОЗУ, винчестер), которой когда-то оперировал компьютер с процессором 386. Следует заметить, что размер первичного кэша чаще всего бывает равен 8, 16 или 32 Кбайт, а вторичного – 256 или 512 Кбайт. Хотя, например, в некоторых процессорах вторичный кэш может достигать и 1 Мбайт или вообще отсутствовать. У новейших процессоров внешний кэш не применяется.
   Чтобы понять сложность организации механизма кэширования данных, надо учесть, что каждый уровень кэша работает на своей тактовой частоте. Например, первичный кэш должен действовать на частоте ядра процессора. Вторичный кэш (внутренний) часто синхронизируется на половинной частоте ядра процессора. Внешний кэш, самый медленный, использует частоту системной платы, которая в большинстве случаев не превышает 133 МГц.
Второе поколение процессоров Pentium
   О втором поколении процессоров Pentium было объявлено в марте 1994 г. Тактовая частота для них составляла 90 МГц (149,8 млн. операций в секунду, 2,74 SPECint95, 2,39 SPECfp95) и 100 МГц (166,3 млн. операций в секунду, 3,30 SPECint95, 2,59 SPECfp95). Количество транзисторов выросло до 3,2 млн. (технология 0,6 мкм).
   Для снижения тепловыделения, которое у первого поколения Pentium достигало 16 Вт, напряжение питания было уменьшено до 3,3 В, что и позволило повысить тактовую частоту. В последующих моделях процессоров Pentium второго поколения дополнительно снизили напряжение питания ядра процессора до величины в 2,9 В.
   Вообще, принцип уменьшения напряжения питания оказался очень привлекательным с точки зрения повышения частоты процессора и надежности его работы, например, в Pentium 4 была достигнута величина в 1 В.
   Так как удалось успешно избавиться от чрезмерного нагрева кристалла, то появилась возможность наращивать тактовую частоту ядра процессора. Для процессоров Pentium используют четыре коэффициента умножения – 1,5, 2, 2,5 и 3. Комбинируя тактовую частоту системной платы и коэффициент умножения, удалось получить ряд частот для ядра процессора вплоть до 200 МГц. Именно в соответствии с этим рядом выпускались следующие процессоры:
   • в октябре 1994 г. было объявлено о выпуске процессор Pentium с тактовой частотой 75 МГц (126,5 млн. операций в секунду, 2,31 SPECint95, 2,02 SPECfp95);
   • в марте 1995 г. начато производство процессора Pentium с тактовой частотой 120 МГц (203 млн. операций в секунду, 3,72 SPECint95, 2,81 SPECfp95);
   • наконец, в июне 1995 г. появился процессор Pentium с тактовой частотой 133 МГц (218,9 млн. операций в секунду, 4,01 SPECint95, 3,50 SPECfp95), который оказался популярным в России, т. к. позволял эффективно работать с операционной системой Windows 95. При производстве процессора использовалась 0,35 мкм технология, а количество транзисторов на кристалле составило 3,3 млн.;
   • совершенствуя процесс изготовления микросхем, корпорация Intel в январе 1996 г. представила процессор Pentium с тактовой частотой 150 и 166 МГц (4,58 SPECint95, 3,92 SPECfp95);
   • последний процессор Pentium этого поколения работал с тактовой частотой 200 МГц (5,17 SPECint95, 4,32 SPECfp95). Для этого процессора дополнительно начал указываться новый индекс производительности iCOMP Index 2.0, который оказался равным 142.
   Процессоры Pentium второго поколения могут работать с тактовыми частотами ядра 75, 90, 100, 120, 133, 150, 166, 180 и 200 МГц. На системной плате предусмотрена возможность задания тактовой частоты 50, 60 и 66,66 МГц. Если проанализировать эти два ряда и учесть коэффициенты умножения, то можно заметить, что одну и ту же частоту можно получить разными способами, например, 150 МГц реализуются комбинациями 50 МГц х 3 и 60 МГц х х 2,5. С точки зрения математики оба варианта дают абсолютно одинаковый результат, но для компьютера в каждом варианте есть свои преимущества и недостатки. Второй вариант, например, за счет более высокой тактовой частоты системной шины позволяет увеличить производительность компьютера, но, в то же время, для ряда системных плат и периферийных устройств возможна неустойчивая работа.
   Продолжая оказывать помощь пользователям в модернизации технически устаревших компьютеров, корпорация Intel выпускала ряд процессоров Pentium OverDrive. Например, для замены процессоров Pentium первого поколения предлагались процессоры Pentium OverDrive 120 и 133 МГц, а для модернизации компьютеров с процессорами второго поколения с тактовыми частотами 75, 90 и 100 МГц – Pentium OverDrive 125, 150 и 166 МГц. Конечно, следует заметить, что, как и в случае с Intel OverDrive 486, такие процессоры оказались дорогими и, соответственно, в России не получили популярности, тем более, что всегда выгоднее было купить сразу новые процессор и системную плату.