Сопроцессоры
Сопроцессор- специальная интегральная схема, которая работает в содружестве с главным процессором. Обычно сопроцессор настраивается на выполнение какой-нибудь специфические функции - математической операции или графического представления. И эту операцию сопроцесссор может реализовать во много раз быстрее, чем главный процессор. Таким образом компьютеp с сопроцессором работает намного проворнее.
Сопроцессор - это обычный микропроцессор, но не столь универсальный. Обычно сопроцессор разрабатывается как специальное устройство по реализации конкретно определенной функции. Так репертуар сопроцессора ограничен, он может реализовывать выделенные для него функции как никто другой.
Как и любой другой микpопpоцессоp, сопроцессор работает по тем же принципам. Он просто выполняет программы содержащие последовательность микpопpоцессоpных команд. Сопроцессор не держит под управлением основную массу цепей компьютеpа.
В обычном режиме микpопpоцессоp выполняет все функции компьютеpа. И лишь когда встречается задача с которой лучше справится сопроцессор, ему передаются данные и команды управления, а центральный процессор ожидает результаты.
Сопроцессоры, большей частью использующиеся в PC, являются математическими сопроцессорами. В математике они специализируются по умножению и делению чисел.
Математические сопроцессоры называют ещё процессорами с плавающей запятой, потому что они особенно ярко проявляют свои возможности в этой области математики. Числа с плавающей запятой часто используются в научных расчетах и представляются, как правило, мантиссой и ординатой.
Преимущество, получаемое от установки математического сопроцессора, зависит от того какие задачи решаются на компьютере. Согласно утверждению Intel сопроцессор может уменьшить время выполнения математических операций, таких как умножение,деление, возведение в степень на 80% и более. Скорость выполнения простых операций, таких как сложение и вычитание практически не уменьшается.
С практической точки зрения, производительность системы, касающейся подготовки текстов и ведения базы данных - функций , не требующих сложных математических расчётов, не может быть улучшена математическим сопроцессором.
Сопроцессор и главный микропроцессор могут работать на разных тактовых частотах (от собственных тактовых генераторов).
Когда отношение частот микропроцессора и сопроцессора выражается целым числом, они работают синхронно и могут передавать информацию друг другу оптимальным образом. Несинхронизированая работа требует, чтобы один или другой из них ожидал завершения цикла своего партнёра, что влечёт за собой появление небольшого, но реального периода ожидания.
Семейство сопроцессоров Intel составляют: 8087, 80287, 80387, 80387SX.
Каждый из них специально разработан для работы с соответствующим микропроцессором главного семейства Intel. Каждый из этих четырёх имеет свои характерные особенности. Ограничения по единовременной обработке информации в 8, 16, 32 бит остались далеко позади. Сопроцессоры Intel брабатывают сразу 80 бит. Каждый сопроцессор содержит восемь 80-битных регистров, в которых он и осуществляет свои вычисления. Они работают с 32-, 64- или 80-битными числами с плавающей запятой; 32- или 64-битными целыми числами. Как правило сопроцессоры работают как придатки центрального.
Оба процессора висят на адресно-информационных линиях компьютера и выполняют каждый свои команды по мере их появления в программе. Сопроцессоры могут выполнять свои функции параллельно с работой центрального процессора, то есть оба мозга в данном случае думают одновременно, потому что каждый из них читает свои команды прямо с шины, и центральному процессору не приходится прерываться, чтобы выдать команду сопроцессору.
8087:
Этот сопроцессор бал разработан специально для использования с Intel 8086, 8088, 80186, 80188. Поэтому у него идентичные с этими микропроцессорами возможности по адресации и восприятию информации. Причём этот сопроцессор сам настраивается на размер шины данных - восьми или шестнадцатибитную (8086 или 8088 семейства). Он устанавливается в стандартный 40-контактный разъём и увеличивает список команд компьютера на 68 едениц.
Существуют три модификации этого сопроцессора, различающихся по частоте: 5, 8, 10 Мгц.
80287:
Точно так же, 80286 является расширением 8086, 80287 является развитием 8087. Главным достоинством 80287 служит возможность функционировать как в реальном,так и в защищенном режиме 80286 микропроцессора. Он имеет возможность адресации ко всем 16М памяти.
80287 почти полностью совместим с 8087 и может использоватьпочти всё программное обеспечение последнего. Главное функциональное отличие этих сопроцессоров в способе обработки сбойных ситуаций. При выявлении ошибки эти чипы могут вести себя по разному. Впрчем программное обеспечение может скомпенсировать эти расхождения.
80287 размещается в 40-контактном DIP-корпусе. Но не в пример своему младшему собрату, 80287 может работать с отличной от центрального микропроцессора тактовой частотой. Хотя 80287 напрямую подключается к тактовому генератору центрального микропроцессора, в него встроена цепь делителя, которая уменьшает внутреннюю частоту в три раза.
Используя свой собственный генератор, 80287 может существенно повысить свою производительность.
Так же, как и у 8087, 80287 различают четыре модификации, различающихся по частоте.
80287 совместим с 80386 микропроцессором. Однако они работают на разных частотах, и, следовательно, требуется специальный интерфейс для доступа к шине данных 80386. Более того, так как 80287 - 16-битный чип, все взаимосвязи с 80386 должны осуществляться 16-битными словами, что потенциально уменьшает производительность.
80387 и 80387SX
Точно так же, как Intel, учтя уроки прошлого, произвёл 80386, 80387 стал дальнейшей разработкой 80287 сопроцессора. Оставаясь командно совместимым с 80287, 80387 увеличил скорость манипуляций данными. Но опять-таки имелись расхождения в обработке ошыбок. Зато возможности 80387 были больше - он реализовывал все трансцендентные и логарифмические функции.
80387SX - всесторонне похож на 80387, но предназначается для работы на 16-битной шине 80386SX вместо 32-битной шины данных.
80387 и 80387SX могут выполнять все программы для
80287. Обратное не эквивалентно. Главной проблемой 387-х являются немного отличающиеся результаты вычислений трансцендентальной функции от 80287.
80387 работает на той же частоте что и центральный процессор. Имеются соответствующие модификации этого сопроцессора вплоть до 25 Мгц.