Аппаратные средства персональных компьютеров. Самоучитель, стр. 13

К двоичные числам добавляется символ "Ь", например 100111b.

Для обозначения десятичных чисел в большинстве случаев не применяют дополнительных символов, хотя иногда может добавляться символ "D". В основном, такой способ выделения десятичных чисел применяется в литературе по языку Ассемблера.

Таблица 2.1. Системы счисления
Аппаратные средства персональных компьютеров. Самоучитель - i_032.png

Итак, возвращаясь к процессорам, заметим, что для вычисления дробных чисел используются специальные подпрограммы, которым требуется не один машинный такт, за который процессор может сложить два целых числа, а значительно больше. То есть при использовании в прикладной программе дробных чисел скорость работы компьютера резко снижается. Еще хуже дело обстоит, когда нужно рассчитать траекторию точек на окружности, используя тригонометрические функции – компьютер может задуматься очень надолго.

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

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

Математические сопроцессоры выпускались для процессоров 8086/8088, 80256, 80386 и имели маркировку 8087, 80287 и 80387. С первыми процессорами 486, в которых не было блока сопроцессора, можно было использовать сопроцессор 80387.

Пользователь для ускорения работы своего персонального компьютера мог купить сопроцессор и самостоятельно установить его в соответствующий сокет. Так как сопроцессоры были дорогими, то вместо микросхемы 80287 можно было установить 8087, а вместо 80387 – 80287.

Процессор Intel 486

10 апреля 1989 г. было объявлено о выпуске процессора Intel 486DX. Архитектура процессора не была повторением или улучшением Intel 386, а представляла совершенно оригинальное решение. Фактически, это была настоящая вычислительная машина, выполненная на одном кристалле кремния, у которой имелась оперативная память, периферийные устройства и даже набор микропрограмм для обработки внешних команд. По сути это означало возможность совершенствования внутреннего устройства микросхемы процессора, не меняя внешнего интерфейса. То есть появлялась возможность многократно увеличивать производительность компьютера, меняя только процессор (для компьютеров с процессором Intel 386, например, нужно было повышать тактовую частоту, но это требовало серьезной доработки системной платы, поэтому чаще всего процессор с частотой 33 и 40 МГц припаивался, а не устанавливался в сокет).

Если рассмотреть внутреннее устройство нового процессора, то оказывалось, что он только внешне напоминал Intel 386, хоть и работал с системой команд х86. "Внутри" использовался RISC-процессор, который имел сокращенный набор команд х86, а остальные команды, которые он не мог выполнять непосредственно, преобразовывались вспомогательными блоками в цепочку инструкций. Такое оригинальное решение было вызвано тем, что программисты использовали, в большинстве случаев, ограниченный набор команд процессоров х86 (CISC-процессоров), а остальные появлялись в программах крайне редко. Поэтому использование ядром сокращенного набора команд позволяло упростить конструкцию микросхемы и увеличить скорость работы процессора.

Примечание

CISC (Complex Instruction Command Set)  – процессор с полным набором команд, в частности, это процессоры семейства х86. Набор команд CISC (концепция CISC) был разработан для удобства программистов, которые в те давние времена вынуждены были писать программы для маломощных компьютеров на языке Ассемблера (очень кропотливая и нудная работа!). Для ускорения процесса разработки программ в систему команд CISC были введены удобные команды, которые как бы представляли собой маленькие подпрограммы. В итоге, команды CISC-процессора имеют разную длину и время выполнения. К тому же CISC-процессор не отличается высокой производительностью, т. к. для выполнения некоторых команд требуется несколько машинных тактов.

RISC (Reduced Instruction Set Computer)  – процессор с сокращенным набором команд. В процессорах с набором команд (концепцией) RISC все команды имеют одинаковую длину и формат, а также простую адресацию памяти. Каждая команда выполняет только простые действия за один такт. Программный код для таких процессоров легко поддается оптимизации, поэтому удается получить большую производительность для одной и той же технологии.

Разделение внутренней архитектуры на ядро и периферийные блоки в дальнейшем позволило организовать работу ядра на повышенной частоте. То есть интерфейс процессора работал на тактовой частоте, которую поддерживала системная плата, а ядро функционировало на более высокой, например, удвоенной или утроенной тактовой частоте.

Так как использование математического сопроцессора в компьютерах оказалось отличным способом повышения производительности, то в процессоре Intel 486 его разместили непосредственно на кристалле, сохранив программную совместимость с сопроцессором 80387.

Дополнительным способом повышения производительности оказалось решение разместить на кристалле также и кэш первого уровня. Теперь кэш второго уровня, который оставался на системной плате, использовался только тогда, когда не хватало объема внутреннего кэша.

Кроме изменения внутренней архитектуры, в процессоре Intel 486 появилась возможность работать с внешней памятью в пакетном режиме. Данный режим характеризуется тем, что процессор может прочитать или записать данные в ОЗУ целым блоком, не указывая каждый раз конкретную ячейку памяти. Так, указав адрес начала требуемого блока памяти чипсету (микросхемам системной платы, которые отвечают за работу с памятью и интерфейсами), процессор последовательно обращается к ячейкам памяти, тем самым сокращая время для пересылки данных.

Такие нововведения в архитектуру процессора в дальнейшем позволили совершенствовать как сам процессор, так и конструкцию системной платы, а также создавать новые типы микросхем оперативной памяти. Заметим, что пакетный режим стал наиболее популярным в настоящее время для процессоров класса 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-объекты. Но, как следует заметить, прямой зависимости между теми или иными показателями нет, тем более, что каждый тест рассчитан на определенный круг типов процессоров.