Арифметический сопроцессор что это windows 10

Сопроцессор Сопроцессор — специализированный процессор, расширяющий возможности центрального процессора компьютерной системы, но оформленный как отдельный

Сопроцессор — специализированный процессор, расширяющий возможности центрального процессора компьютерной системы, но оформленный как отдельный функциональный модуль. Физически сопроцессор может быть отдельной микросхемой или может быть встроен в центральный процессор (как это делается в случае математического сопроцессора в процессорах для ПК начиная с Intel 486DX).

Сопроцессоры могут входить в набор логики, разработанный одной конкретной фирмой (например Intel выпускала в комплекте с процессором 8086 сопроцессоры 8087 и 8089) или выпускаться сторонним производителем (например, Weitek (англ.) 1064 для Motorola m68k и 1067 для Intel 80286).

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

В этой статье не хватает ссылок на источники информации.

Wikimedia Foundation . 2010 .

Смотреть что такое «Сопроцессор» в других словарях:

сопроцессор — сопроцессор … Орфографический словарь-справочник

сопроцессор — сущ., кол во синонимов: 1 • процессор (18) Словарь синонимов ASIS. В.Н. Тришин. 2013 … Словарь синонимов

сопроцессор — сопроц ессор, а … Русский орфографический словарь

сопроцессор — а; м. [англ. coprocessor] Информ. Устройство компьютера, предназначенное для расширения возможностей выполнения операций … Энциклопедический словарь

сопроцессор — а; м. (англ. coprocessor); информ. Устройство компьютера, предназначенное для расширения возможностей выполнения операций … Словарь многих выражений

сопроцессор — со/процесс/ор/ … Морфемно-орфографический словарь

Математический сопроцессор — 80×287 в колодке на базовой плате персонального компьютера … Википедия

арифметический сопроцессор MC68881 — Разработан фирмой Motorola для поддержки микропроцессора MC68030 при выполнении операций с плавающей точкой по стандарту IEЕЕ 754 с одинарной, двойной и увеличенной точностью, а также при вычислении тригонометрических функций. Тактовые частоты… … Справочник технического переводчика

арифметический сопроцессор i8087 фирмы Intel — (для МП типов: i8086, i8088) Выполняет с помощью 68 команд арифметические операции над десятичными и целыми числами, а также над 20 разрядными числами с плавающей точкой. Сопроцессор работает параллельно с основным микропроцессором и ускоряет… … Справочник технического переводчика

арифметический сопроцессор — Микропроцессор, специализированный для выполнения сложных арифметических операций, главным образом операций с плавающей точкой в 100 раз быстрее, чем программным путем. [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике… … Справочник технического переводчика

Сопроцессор

  • Сопроцессор — специализированный процессор, расширяющий возможности центрального процессора компьютерной системы, но оформленный как отдельный функциональный модуль. Физически сопроцессор может быть отдельной микросхемой или может быть встроен в центральный процессор (как это делается в случае математического сопроцессора в процессорах для ПК начиная с Intel 486DX).

Различают следующие виды сопроцессоров:

* математические сопроцессоры общего назначения, обычно ускоряющие вычисления с плавающей запятой,

* сопроцессоры ввода-вывода (например — Intel 8089), разгружающие центральный процессор от контроля за операциями ввода-вывода или расширяющие стандартное адресное пространство процессора,

сопроцессоры для выполнения каких-либо узкоспециализированных вычислений.Сопроцессоры могут входить в набор логики, разработанный одной конкретной фирмой (например, Intel выпускала для процессоров 8086 и 8088 сопроцессоры 8087 и 8089, Motorola — сопроцессор Motorola 68881) или выпускаться сторонним производителем (например, Weitek (англ.) 1064 для Motorola m68k и 1067 для Intel 80286).

Связанные понятия

AMP или ASMP (от англ.: Asymmetric multiprocessing, рус.: Асимметричная многопроцессорная обработка или Асимметричное мультипроцессирование) — тип многопроцессорной обработки, который использовался до того, как была создана технология симметричного мультипроцессирования (SMP); также использовался как более дешевая альтернатива в системах, которые поддерживали SMP.

О типе данных в БД см. BLOB.Блоб (от англ. binary linked object — объект двоичной компоновки) — объектный файл без публично доступных исходных кодов, загружаемый в ядро операционной системы. Обычно этот термин применяется только по отношению к модулям, загружаемым в ядро свободной или открытой операционной системы; термин редко применяется по отношению к коду, выполняющемуся не в режиме ядра, например, код BIOS, микропрограммный код устройств, программы, выполняющиеся в пользовательском режиме.

Программи́руемая логи́ческая интегра́льная схе́ма (ПЛИС, англ. programmable logic device, PLD) — электронный компонент (интегральная микросхема), используемый для создания конфигурируемых цифровых электронных схем. В отличие от обычных цифровых микросхем, логика работы ПЛИС не определяется при изготовлении, а задаётся посредством программирования (проектирования). Для программирования используются программатор и IDE (отладочная среда), позволяющие задать желаемую структуру цифрового устройства в.

Adblock
detector

Еще одно устройство, которое мы опишем
в этом томе — арифметический сопроцессор
фирмы Intel. В старых моделях компьютеров
сопроцессор устанавливался на системной
плате в отдельной панельке и подключался
непосредственно к центральному
процессору. Современные процессоры
Pentium содержат встроенный
арифметический сопроцессор.

Арифметический сопроцессор предназначен
для выполнения операций над числами в
формате с плавающей точкой (вещественные
числа) и длинными целыми числами. Он
значительно (в десятки раз) ускоряет
вычисления, связанные с вещественными
числами. Сопроцессор может вычислять
такие функции, как синус, косинус,
тангенс, логарифмы и так далее. Разумеется,
что с помощью сопроцессора можно
выполнять и простейшие арифметические
операции сложения, вычитания, умножения
и деления.

Основная область применения арифметического
сопроцессора — научные расчеты и машинная
графика. Некоторые пакеты САПР, например,
Autocad, отказываются работать, если в
машине отсутствует сопроцессор.

Сопроцессор запускается центральным
процессором. После запуска он выполняет
все вычисления самостоятельно и
параллельно с работой центрального
процессора. Если центральный процессор
выдает очередную команду сопроцессору
в момент времени, когда тот еще не
закончил выполнение предыдущей команды,
центральный процессор переводится в
состояние ожидания. Если же сопроцессор
ничем не занят, центральный процессор,
выдав команду сопроцессору, продолжает
свою работу, не дожидаясь завершения
вычисления. Впрочем, есть специальные
средства синхронизации (команда FWAIT).

Как программировать сопроцессор?

Команды, предназначенные для выполнения
сопроцессором, записываются в программе
как обычные машинные команды центрального
процессора. Но все эти команды начинаются
с байта, соответствующего команде
центрального процессора ESC. Встретив
такую команду, процессор передает ее
сопроцессору, а сам продолжает выполнение
программы со следующей команды.

Ассемблерные мнемоники всех команд
сопроцессора начинаются с буквы F,
например: FADD, FDIV, FSUB и так далее. Команды
сопроцессора могут адресоваться к
операндам, аналогично обычным командам
центрального процессора. Операндами
могут быть либо данные, расположенные
в основной памяти компьютера, либо
внутренние регистры сопроцессора.

Для команд арифметического сопроцессора
возможны все виды адресации данных,
используемые центральным процессором.

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

Вещественные числа

Перед тем как приступить к изучению
форматов вещественных чисел, используемых
сопроцессором, вспомним о числах с
плавающей точкой, встречающихся в
научных расчетах.

В общем виде эти числа можно записать
следующим образом:

(знак)(мантисса)*10(знак)(порядок)

Например: -1.35*105.

Здесь знак — это минус, мантисса — 1.35,
порядок — 5. Порядок тоже может иметь
знак. В этом представлении чисел для
вас вряд ли есть что либо новое. Вспомним
также такое понятие, как норамализованное
представление чисел:

  • если целая часть мантиссы числа состоит
    из одной цифры, не равной нулю, то число
    с плавающей точкой называется
    нормализованным

В чем преимущества использования
нормализованных чисел?

В том, что для фиксированной разрядной
сетки числа (то есть для фиксированного
количества цифр в числе) нормализованные
числа имеют наибольшую точность. Кроме
того, нормализованное представление
исключает неоднозначность — каждое
число с плавающей точкой может быть
представлено различными (ненормализованными)
способами:

123.5678*105= 12.35678*106= 1.235678*107= 0.1235678*108

Для тех, кто программировал на языках
высокого уровня, знакомо следующее
представление чисел с плавающей точкой:

(знак)(мантисса)E(знак)(порядок)

Например, -5.35E-2 означает число -5.35*10-2.
Такое представление называется научной
нотацией.

Арифметический сопроцессор может
работать с вещественными числами в трех
форматах:

  • одинарной точности;

  • двойной точности;

  • расширенной точности

Эти числа занимают в памяти, соответственно,
4, 8 или 10 байт (рис. 10.1).

Рис. 10.1. Различные
представления вещественных чисел

В любом представлении старший бит
определяет знак вещественного числа:

  • 0 — положительное число;

  • 1 — отрицательное число

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

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

Так как здесь используется двоичное
представление чисел, сформулируем
определение нормализованного числа
для двоичного представления:

  • если целая часть мантисса числа в
    двоичном представлении равна 1, то число
    с плавающей точкой называется
    нормализованным

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

Для наглядности представим мантиссу
числа в следующей форме:

n.nnnnnnnnnn…n

Здесь символом n обозначается либо 0,
либо 1. Нормализованные числа в самой
левой позиции содержат 1, поэтому их
можно изобразить еще и в таком виде:

1.nnnnnnnnnn…n

Представление с расширенной точностью
используется сопроцессором для выполнения
всех операций. И даже более — все операции
с числами сопроцессор выполняет над
числами только в формате с расширенной
точностью. В этом формате хранится и
«лишний» бит целой части
нормализованного числа.

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

Поле порядка — это степень числа 2, на
которую умножается мантисса, плюс
смещение, равное 127 для одинарной
точности, 1023 — для двойной точности и
16383 — для расширенной точности.

Для того, чтобы определить абсолютное
значение числа с плавающей точкой, можно
воспользоваться следующими формулами:

Одинарная точность:

1.(цифры
мантиссы)*2(P-127)

Двойная точность:

1.(цифры
мантиссы)*2(P-1023)

Расширенная точность:

1.(цифры
мантиссы)*2(P-16383)

Знак числа, как мы уже говорили,
определяется старшим битом.

Приведем конкретный пример. Пусть мы
имеем число с одинарной точностью,
которое в двоичном виде выглядит
следующим образом:

1
01111110 11000000000000000000000

Для этого числа знаковый бит равен 1
(отрицательное число), порядок равен
126, мантисса — 11 (в двоичной системе
счисления).

Значение этого числа равно:

1.11 *
2(126-127)= -1.75 * 2-1= -0,875

Рассмотрим теперь особые случаи
представления вещественных чисел.

  • нуль— это такое число, у которого
    порядок и мантисса равны нулю. Нуль
    может иметь положительный или
    отрицательный знаки, которые игнорируются
    в операциях сравнения. Таким образом,
    имеется два нуля — положительный и
    отрицательный;

  • наименьшее положительное число
    это число, которое имеет нулевой знаковый
    бит, значение порядка, равное 1, и значение
    мантиссы, равное нулю. В зависимости
    от представления наименьшее положительное
    число имеет следующие значения:
    1,17*10-38(одинарная точность),
    2.23*10-308(двойная точность),
    3.37*10-4932(расширенная точность);

  • наибольшее отрицательное число
    полностью совпадает с наименьшим
    положительным числом, но имеет бит
    знака, установленный в 1;

  • наибольшее положительное число
    это число, которое имеет нулевой знаковый
    бит, поле порядка, в котором все биты
    кроме самого младшего, равны 1, и содержит
    единицы во всех разрядах мантиссы. В
    зависимости от представления наибольшее
    положительное число имеет следующие
    значения: 3.37*1038(одинарная
    точность), 1.67*10308(двойная точность),
    1.2*104932(расширенная точность);

  • наименьшее отрицательное число
    полностью совпадает с наибольшим
    положительным числом, но имеет бит
    знака, установленный в 1;

  • положительная и отрицательная
    бесконечность
    — это число содержит
    все единицы в поле порядка и все нули
    в поле мантиссы. В зависимости от
    состояния знакового бита может быть
    положительная и отрицательная
    бесконечности. Бесконечность может
    получиться, например, как результат
    деления конечного числа на нуль;

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

  • неопределенность— содержит в поле
    порядка все единицы, а в поле мантиссы
    — число 1000..0 (для одинарной и двойной
    точности) или 11000..0 (для расширенной
    точности, так как в этом формате хранится
    старший бит мантиссы).

Для большей наглядности сведем все
возможные представления вещественных
чисел вместе на рис. 10.2.

Рис. 10.2. Возможные
предстваления вещественных чисел

Соседние файлы в папке несколько программ

  • #
  • #
  • #
  • #

    03.06.20141.56 Кб6MAIN_2.CPP

  • #

    03.06.2014361 б9TIMER.CPP

После обновления системы до Windows 10 с Windows 7 или Windows 8 ваш компьютер может работать медленно. Затем вы проверили статус драйвера в диспетчере устройств и увидели устройство с именем Сопроцессор с желтым восклицательным знаком рядом с ним. Вы не представляете, что это за устройство и как убрать желтую метку. Не волнуйся. Вы можете исправить эту проблему с драйвером с помощью методов, описанных в этой публикации.

Сопроцессор с желтой меткой в ​​диспетчере устройств означает, что проблема с драйвером чипсета , в основном драйвер чипсета Nvidia nForce. Чтобы решить эту проблему, достаточно обновить драйвер набора микросхем.

Есть два простых способа обновить драйвер набора микросхем. Вы можете попробовать оба из них, пока не решите проблему.



  1. Обновите драйвер вручную через диспетчер устройств
  2. Обновите драйвер автоматически с помощью Driver Easy

Метод 1. Обновите драйвер вручную через диспетчер устройств.

Если у вас есть проблемы с драйверами, такие как проблемы с драйверами набора микросхем, вы можете легко обновить драйвер из Windows. Вы можете обновить драйвер через Центр обновления Windows или Диспетчер устройств. Тогда вам не нужно заходить на сайт производителя, чтобы проверить наличие последней версии драйвера. Поскольку вы знаете, как открыть диспетчер устройств, вы можете обновить драйвер через диспетчер устройств.

Возможно, Windows не предоставляет последнюю версию драйвера. Если вы пробовали этот метод, но он вам не подходит, попробуйте метод 2.

Чтобы обновить драйвер сопроцессора в диспетчере устройств, вам просто нужно выполнить следующие шаги (следующие снимки экрана приведены только для справки.):

1) Открыть Диспетчер устройств .



2) Дважды щелкните Сопроцессор , чтобы открыть окно свойств драйвера.

3) Перейти к Водитель вкладку и щелкните Обновить драйвер .

4) Нажмите Автоматический поиск обновленного программного обеспечения драйвера .

5) После завершения обновления проверьте, по-прежнему ли вы видите Сопроцессор с желтой меткой в ​​диспетчере устройств.

Метод 2: обновите драйвер автоматически с помощью Driver Easy

Метод 1 может решить проблему, но если это не так или вы не уверены, что играете с драйверами вручную,вы можете сделать это автоматически с Водитель Easy .

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

Вы можете автоматически обновлять драйверы с помощью БЕСПЛАТНОЙ или Pro версии Driver Easy. Но с версией Pro требуется всего 2 клика (и вы получаете полную поддержку и 30-дневную гарантию возврата денег):

1) Скачать и установите Driver Easy.

2) Запустите Driver Easy и нажмите Сканировать сейчас . Затем Driver Easy просканирует ваш компьютер и обнаружит проблемы с драйверами.

3) Щелкните значок Обновить рядом с отмеченным драйвером набора микросхем, чтобы автоматически загрузить и установить правильную версию этого драйвера (вы можете сделать это в БЕСПЛАТНОЙ версии).

Или нажмите Обновить все для автоматической загрузки и установки правильной версии все драйверы, которые отсутствуют или устарели в вашей системе (для этого требуется Pro версия — вам будет предложено выполнить обновление, когда вы нажмете «Обновить все»).

4) После обновления драйвера проверьте, по-прежнему ли вы видите сопроцессор с желтой меткой в ​​диспетчере устройств.

Надеюсь, вы сможете легко исправить проблему с драйвером сопроцессора в Windows 10 с помощью описанных выше методов. Если у вас есть вопросы или идеи, оставьте свой комментарий ниже. 😛

Содержание

  1. Что такое сопроцессор в диспетчере устройств
  2. Что такое сопроцессор: общее понимание
  3. Основное предназначение сопроцессора
  4. Типы сопроцессоров
  5. Основные команды сопроцессора
  6. Генераторы звука
  7. Графические процессоры
  8. Вероятностные процессоры
  9. Драйвер сопроцессора: что делать при появлении ошибок, связанных с его отсутствием?
  10. Сопроцессор — что такое? Описание и отзывы о работе
  11. Что такое сопроцессор: общее понимание
  12. Основное предназначение сопроцессора
  13. Типы сопроцессоров
  14. Основные команды сопроцессора
  15. Генераторы звука
  16. Графические процессоры
  17. Вероятностные процессоры
  18. Драйвер сопроцессора: что делать при появлении ошибок, связанных с его отсутствием?

Что такое сопроцессор в диспетчере устройств

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

Что такое сопроцессор: общее понимание

Прежде всего давайте посмотрим, что это вообще такое и для чего нужно. Исходя из названия этого устройства, нетрудно сделать вывод о том, что это какой-то дополнительный процессор, который установлен в компьютерной системе вместе с главным (центральным). Как и ЦП, сопроцессор монтируется на материнской плате. Однако следует различать основные варианты его установки. Что касается устройства сопроцессора, он может быть представлен и в виде отдельной микросхемы (чипа), для которого на «материнке» отведено специальное место для монтажа (шина), и в виде компонента, встроенного прямо в центральный процессор.

Основное предназначение сопроцессора

С самым простым определением пока сложностей вроде бы нет. Но давайте посмотрим, что такое сопроцессор с точки зрения функций, которые на него возложены. Поскольку он является своего рода дополнительным компонентом, который работает только в паре с центральным процессором, можно предположить, что он нужен только для того, чтобы в некотором смысле разгрузить ЦП, сняв с него выполнение некоторых ресурсоемких задач.

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

Типы сопроцессоров

В большинстве своем сопроцессоры можно условно разделить на три больших класса:

  • математические;
  • сопроцессоры ввода/вывода;
  • сопроцессоры для выполнения узконаправленных задач.

Математические сопроцессоры предназначены для выполнения вычислений либо с целыми числами с общей разрядностью 32 и 64 бита, либо для вычислений с плавающей запятой, при которых разрядность данных повышается до 80 бит.

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

Узконаправленных задач в компьютерных технологиях можно насчитать достаточно много (на этом остановимся отдельно), однако в качестве наиболее яркого примера можно привести всевозможные логические микросхемы, входящие в соответствующие цепочки обработки данных (например, в свое время очень широкое распространение получили сопроцессоры серии 8087 для ЦП линеек 8086 и 8088 от Intel, хотя именно сопроцессоры для связки с ЦП могут выпускаться и сторонними производителями).

Основные команды сопроцессора

Что такое сопроцессор, немного разобрались. Теперь отдельно стоит сказать несколько слов об основных командах.

Полный набор содержит порядка 80 базовых команд, однако наиболее существенными и часто применяемыми являются следующие:

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

Генераторы звука

А вот сейчас многие (если не все) пользователи очень сильно удивятся, поскольку речь пойдет об устройствах, которые известны всем и каждому. И в качестве простейшего примера приведем самые обычные звуковые карты, которые в некотором смысле тоже можно отнести к сопроцессорам узко ориентированного направления, связанного с воспроизведением или генерированием звука. В компьютерной терминологии их очень часто называют саунд-модулями.

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

  • интегрированные;
  • устанавливаемые на материнской плате в слотах PCI;
  • внешние (подключаемые через другие интерфейсы, например, USB).

Графические процессоры

Видеокарты тоже относятся к разряду сопроцессоров, однако для них наиболее употребительным является обозначение вроде графического процессора, чипа или адаптера. Этот тип устройств по большей части относится к оборудованию, которое разгружает ЦП и ОЗУ в плане вычислительных операций с плавающей запятой, которые наиболее часто применяются в современных компьютерных играх или при обработке графики или видео.

Такие адаптеры разделяют всего на два типа: интегрированные и дискретные.

Само собой разумеется, что для корректной работы вышеописанных устройств в качестве соответствующих сопроцессоров драйвер в Windows-системах просто необходим. Без такого управляющего программного обеспечения все это «железо» станет грудой металлолома и работать попросту не будет. И именно поэтому, когда выдается какое-то сообщение, касающееся отсутствия или невозможности инициализации драйвера, это не всегда может относиться исключительно к описываемому компоненту ЦП.

Вероятностные процессоры

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

Драйвер сопроцессора: что делать при появлении ошибок, связанных с его отсутствием?

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

Но что делать, если речь идет об ошибке работы основного сопроцессора. Windows 7, впрочем, как и все остальные системы этого семейства, в плане поиска наиболее соответствующего ПО особо не перетруждается, а устанавливает именно то программное обеспечение, что ей кажется наиболее подходящим. И отзывы специалистов подтверждают это в полной мере. Из-за этого устройство потом может работать некорректно или не работать вовсе.

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

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

Сопроцессор использовался для выполнений операций с плавающей точкой для старых процессоров intel 80386 dx и старше. Сейчас сопроцессор, а так же много других прибамбасов сразу же вживляются в основной процессор, но не об этом речь. Как решить эту проблему?

В идеале нужно зайти на сайт производителя материнской платы и скачать драйвера на чипсет, для этого нужно знать модель и дату выпуска материнской платы и видео карты. Но есть более простой вариант решения этой (а так-же других, сопутствующих, а которых вы и не подозревали до поры) проблемы скачать набор драйверов от компании Nvidia:

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

Бред какой то. Это глюк винды просто. Потому что драйвер на сопроцессор,это абсурдно. Сопроцессор – специализированный процессор, расширяющий возможности центрального процессора компьютерной системы, но оформленный как отдельный функциональный модуль (с) Википедия.
В настольных ПК архитектуры IBM PC сопроцессор встроен в CPU (и уже давно,начиная с Intel 486DX). И для работы с сопроцессором не нужно ни чего дополнительного.

Это 100% глюк винды,она что-то другое обозвала сопроцессором. А может перевод кривоват. 21 декабря 2011

Источник

Сопроцессор — что такое? Описание и отзывы о работе

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

Что такое сопроцессор: общее понимание

Прежде всего давайте посмотрим, что это вообще такое и для чего нужно. Исходя из названия этого устройства, нетрудно сделать вывод о том, что это какой-то дополнительный процессор, который установлен в компьютерной системе вместе с главным (центральным). Как и ЦП, сопроцессор монтируется на материнской плате. Однако следует различать основные варианты его установки. Что касается устройства сопроцессора, он может быть представлен и в виде отдельной микросхемы (чипа), для которого на «материнке» отведено специальное место для монтажа (шина), и в виде компонента, встроенного прямо в центральный процессор.

Основное предназначение сопроцессора

С самым простым определением пока сложностей вроде бы нет. Но давайте посмотрим, что такое сопроцессор с точки зрения функций, которые на него возложены. Поскольку он является своего рода дополнительным компонентом, который работает только в паре с центральным процессором, можно предположить, что он нужен только для того, чтобы в некотором смысле разгрузить ЦП, сняв с него выполнение некоторых ресурсоемких задач.

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

Типы сопроцессоров

В большинстве своем сопроцессоры можно условно разделить на три больших класса:

  • математические;
  • сопроцессоры ввода/вывода;
  • сопроцессоры для выполнения узконаправленных задач.

Математические сопроцессоры предназначены для выполнения вычислений либо с целыми числами с общей разрядностью 32 и 64 бита, либо для вычислений с плавающей запятой, при которых разрядность данных повышается до 80 бит.

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

Узконаправленных задач в компьютерных технологиях можно насчитать достаточно много (на этом остановимся отдельно), однако в качестве наиболее яркого примера можно привести всевозможные логические микросхемы, входящие в соответствующие цепочки обработки данных (например, в свое время очень широкое распространение получили сопроцессоры серии 8087 для ЦП линеек 8086 и 8088 от Intel, хотя именно сопроцессоры для связки с ЦП могут выпускаться и сторонними производителями).

Основные команды сопроцессора

Что такое сопроцессор, немного разобрались. Теперь отдельно стоит сказать несколько слов об основных командах.

Полный набор содержит порядка 80 базовых команд, однако наиболее существенными и часто применяемыми являются следующие:

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

Генераторы звука

А вот сейчас многие (если не все) пользователи очень сильно удивятся, поскольку речь пойдет об устройствах, которые известны всем и каждому. И в качестве простейшего примера приведем самые обычные звуковые карты, которые в некотором смысле тоже можно отнести к сопроцессорам узко ориентированного направления, связанного с воспроизведением или генерированием звука. В компьютерной терминологии их очень часто называют саунд-модулями.

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

  • интегрированные;
  • устанавливаемые на материнской плате в слотах PCI;
  • внешние (подключаемые через другие интерфейсы, например, USB).

Графические процессоры

Видеокарты тоже относятся к разряду сопроцессоров, однако для них наиболее употребительным является обозначение вроде графического процессора, чипа или адаптера. Этот тип устройств по большей части относится к оборудованию, которое разгружает ЦП и ОЗУ в плане вычислительных операций с плавающей запятой, которые наиболее часто применяются в современных компьютерных играх или при обработке графики или видео.

Такие адаптеры разделяют всего на два типа: интегрированные и дискретные.

Само собой разумеется, что для корректной работы вышеописанных устройств в качестве соответствующих сопроцессоров драйвер в Windows-системах просто необходим. Без такого управляющего программного обеспечения все это «железо» станет грудой металлолома и работать попросту не будет. И именно поэтому, когда выдается какое-то сообщение, касающееся отсутствия или невозможности инициализации драйвера, это не всегда может относиться исключительно к описываемому компоненту ЦП.

Вероятностные процессоры

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

Драйвер сопроцессора: что делать при появлении ошибок, связанных с его отсутствием?

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

Но что делать, если речь идет об ошибке работы основного сопроцессора. Windows 7, впрочем, как и все остальные системы этого семейства, в плане поиска наиболее соответствующего ПО особо не перетруждается, а устанавливает именно то программное обеспечение, что ей кажется наиболее подходящим. И отзывы специалистов подтверждают это в полной мере. Из-за этого устройство потом может работать некорректно или не работать вовсе.

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

Источник

Всем привет Сегодня моя задача состоит в том чтобы написать вам значение такого слова как FPU, ну вернее это даже не слово, а аббревиатура. И расшифровывается она как Floating Point Unit и знаете что это такое? Это блок, производящий операции с плавающей точкой, ну типа с запятой. Также можно сказать что это математический сопроцессор.

FPU помогает процессору (CPU) выполнять математические операции. Раньше, ну очень и очень давно FPU был отдельно, а уже потом в 1989-ом году он стал частью процессора. Хотя все равно все это древность.

Вот нашел картинку в тему, что тут показано, то это конечно я не особо понимаю:

Однако меня удивляет то, что я раньше не слышал про FPU, учитывая тот факт, что такие слова как Northwood и Prescott (они на картинке выше написано), то эти слова мне хорошо знакомы: это ядра процессоров Pentium 4. Я просто в прошлом был большой фанат Pentium 4..

Ладно, вот что еще интересного я узнал. Знаете есть программа под названием AIDA64? Ну это программа для того чтобы узнать температуру процессора, видеокарты, да в общем всего что только можно. Ну так вот, в этой программе также есть стресс-тест, можно протестировать компьютер на выносливость так бы сказать. Ну так вот, если этот тест запустить, ну то есть открыть окно теста, то вот там будет перечень того, что будет протестировано, ну и вот среди этих галочек тут есть также такое как Stress FPU:

Ну я так понимаю, что FPU это и есть математический сопроцессор, верно? Хотя не знаю, бред это или нет, но вот на другом сайте написано что FPU в AIDA64 это тест вентиляторов для охлаждения, ну которые стоят в компьютере… Но вроде это неверная информация, думаю что FPU это все таки сопроцессор

Вот нашел плату, смотрите:

Честно скажу, что я не знаю где именно, но тут вроде как есть сопроцессор FPU Intel 287-10, то есть он идет вроде как отдельно. Но где именно находится, то точно не могу сказать, увы. В любом случае все это сильная древность. Сейчас FPU уже сидит в самом проце и вообще о нем мало кто знает, ибо не особо интересно Однако я вот о чем подумал, а на производительность он влияет как-то?

Вот и все ребята на этом, надеюсь что вам тут все было понятно, заходите в гости ко мне еще!

На главную!
процессор
17.05.2017

From Wikipedia, the free encyclopedia

AM9511-1 arithmetic coprocessor

A coprocessor is a computer processor used to supplement the functions of the primary processor (the CPU). Operations performed by the coprocessor may be floating-point arithmetic, graphics, signal processing, string processing, cryptography or I/O interfacing with peripheral devices. By offloading processor-intensive tasks from the main processor, coprocessors can accelerate system performance. Coprocessors allow a line of computers to be customized, so that customers who do not need the extra performance do not need to pay for it.

Functionality[edit]

Coprocessors vary in their degree of autonomy. Some (such as FPUs) rely on direct control via coprocessor instructions, embedded in the CPU’s instruction stream. Others are independent processors in their own right, capable of working asynchronously; they are still not optimized for general-purpose code, or they are incapable of it due to a limited instruction set focused on accelerating specific tasks. It is common for these to be driven by direct memory access (DMA), with the host processor (a CPU) building a command list. The PlayStation 2’s Emotion Engine contained an unusual DSP-like SIMD vector unit capable of both modes of operation.

History[edit]

To make the best use of mainframe computer processor time, input/output tasks were delegated to separate systems called Channel I/O. The mainframe would not require any I/O processing at all, instead would just set parameters for an input or output operation and then signal the channel processor to carry out the whole of the operation. By dedicating relatively simple sub-processors to handle time-consuming I/O formatting and processing, overall system performance was improved.

Coprocessors for floating-point arithmetic first appeared in desktop computers in the 1970s and became common throughout the 1980s and into the early 1990s. Early 8-bit and 16-bit processors used software to carry out floating-point arithmetic operations. Where a coprocessor was supported, floating-point calculations could be carried out many times faster. Math coprocessors were popular purchases for users of computer-aided design (CAD) software and scientific and engineering calculations. Some floating-point units, such as the AMD 9511, Intel 8231/8232 and Weitek FPUs were treated as peripheral devices, while others such as the Intel 8087, Motorola 68881 and National 32081 were more closely integrated with the CPU.

Another form of coprocessor was a video display coprocessor, as used in the Atari 8-bit family, TI-99/4A, and MSX home computers, which were called «Video Display Controllers». The Amiga custom chipset includes such a unit known as the Copper, as well as a blitter for accelerating bitmap manipulation in memory.

As microprocessors developed, the cost of integrating the floating point arithmetic functions into the processor declined. High processor speeds also made a closely integrated coprocessor difficult to implement. Separately packaged mathematics coprocessors are now uncommon in desktop computers. The demand for a dedicated graphics coprocessor has grown, however, particularly due to the increasing demand for realistic 3D graphics in computer games.

Intel[edit]

Main article: x87

i8087 and i80287 microarchitecture

The original IBM PC included a socket for the Intel 8087 floating-point coprocessor (aka FPU) which was a popular option for people using the PC for computer-aided design or mathematics-intensive calculations. In that architecture, the coprocessor speeds up floating-point arithmetic on the order of fiftyfold. Users that only used the PC for word processing, for example, saved the high cost of the coprocessor, which would not have accelerated performance of text manipulation operations.

The 8087 was tightly integrated with the 8086/8088 and responded to floating-point machine code operation codes inserted in the 8088 instruction stream. An 8088 processor without an 8087 could not interpret these instructions, requiring separate versions of programs for FPU and non-FPU systems, or at least a test at run time to detect the FPU and select appropriate mathematical library functions.

Intel 80386DX CPU with 80387DX math coprocessor

Another coprocessor for the 8086/8088 central processor was the 8089 input/output coprocessor. It used the same programming technique as 8087 for input/output operations, such as transfer of data from memory to a peripheral device, and so reducing the load on the CPU. But IBM didn’t use it in IBM PC design and Intel stopped development of this type of coprocessor.

The Intel 80386 microprocessor used an optional «math» coprocessor (the 80387) to perform floating point operations directly in hardware. The Intel 80486DX processor included floating-point hardware on the chip. Intel released a cost-reduced processor, the 80486SX, that had no floating point hardware, and also sold an 80487SX coprocessor that essentially disabled the main processor when installed, since the 80487SX was a complete 80486DX with a different set of pin connections.[1]

Intel processors later than the 80486 integrated floating-point hardware on the main processor chip; the advances in integration eliminated the cost advantage of selling the floating point processor as an optional element. It would be very difficult to adapt circuit-board techniques adequate at 75 MHz processor speed to meet the time-delay, power consumption, and radio-frequency interference standards required at gigahertz-range clock speeds. These on-chip floating point processors are still referred to as coprocessors because they operate in parallel with the main CPU.

During the era of 8- and 16-bit desktop computers another common source of floating-point coprocessors was Weitek. These coprocessors had a different instruction set from the Intel coprocessors, and used a different socket, which not all motherboards supported. The Weitek processors did not provide transcendental mathematics functions (for example, trigonometric functions) like the Intel x87 family, and required specific software libraries to support their functions.[2]

Motorola[edit]

The Motorola 68000 family had the 68881/68882 coprocessors which provided similar floating-point speed acceleration as for the Intel processors. Computers using the 68000 family but not equipped with the hardware floating point processor could trap and emulate the floating-point instructions in software, which, although slower, allowed one binary version of the program to be distributed for both cases. The 68451 memory-management coprocessor was designed to work with the 68020 processor.[3]

Modern coprocessors[edit]

As of 2001, dedicated Graphics Processing Units (GPUs) in the form of graphics cards are commonplace. Certain models of sound cards have been fitted with dedicated processors providing digital multichannel mixing and real-time DSP effects as early as 1990 to 1994 (the Gravis Ultrasound and Sound Blaster AWE32 being typical examples), while the Sound Blaster Audigy and the Sound Blaster X-Fi are more recent examples.

In 2006, AGEIA announced an add-in card for computers that it called the PhysX PPU. PhysX was designed to perform complex physics computations so that the CPU and GPU do not have to perform these time-consuming calculations. It was designed for video games, although other mathematical uses could theoretically be developed for it. In 2008, Nvidia purchased the company and phased out the PhysX card line; the functionality was added through software allowing their GPUs to render PhysX on cores normally used for graphics processing, using their Nvidia PhysX engine software.

In 2006, BigFoot Systems unveiled a PCI add-in card they christened the KillerNIC which ran its own special Linux kernel on a FreeScale PowerQUICC running at 400 MHz, calling the FreeScale chip a Network Processing Unit or NPU.

The SpursEngine is a media-oriented add-in card with a coprocessor based on the Cell microarchitecture. The SPUs are themselves vector coprocessors.

In 2008, Khronos Group released the OpenCL with the aim to support general-purpose CPUs, ATI/AMD and Nvidia GPUs (and other accelerators) with a single common language for compute kernels.

In 2010s, some mobile computation devices had implemented the sensor hub as a coprocessor. Examples of coprocessors used for handling sensor integration in mobile devices include the Apple M7 and M8 motion coprocessors, the Qualcomm Snapdragon Sensor Core and Qualcomm Hexagon, and the Holographic Processing Unit for the Microsoft HoloLens.

In 2012, Intel announced the Intel Xeon Phi coprocessor.[4]

As of 2016, various companies are developing coprocessors aimed at accelerating artificial neural networks for vision and other cognitive tasks (e.g. vision processing units, TrueNorth, and Zeroth), and as of 2018, such AI chips are in smartphones such as from Apple, and several Android phone vendors.

Other coprocessors[edit]

  • The MIPS architecture supports up to four coprocessor units, used for memory management, floating-point arithmetic, and two undefined coprocessors for other tasks such as graphics accelerators.[5]
  • Using FPGA (field-programmable gate arrays), custom coprocessors can be created for acceleration of particular processing tasks such as digital signal processing (e.g. Zynq, combines ARM cores with FPGA on a single die).
  • TLS/SSL accelerators, used on servers; such accelerators used to be cards, but in modern times are instructions for crypto in mainstream CPUs.
  • Some multi-core chips can be programmed so that one of their processors is the primary processor, and the other processors are supporting coprocessors.
  • China’s Matrix 2000 128 core PCI-e coprocessor is a proprietary accelerator that requires a CPU to run it, and has been employed in an upgrade of the 17,792 node Tianhe-2 supercomputer (2 Intel Knights Bridge+ 2 Matrix 2000 each), now dubbed 2A, roughly doubling its speed at 95 petaflops, exceeding the world’s fastest supercomputer.[6]
  • A range of coprocessors were available for Acorn BBC Micro computers. Rather than special-purpose graphics or arithmetic devices, these were general-purpose CPUs (such as 8086, Zilog Z80, or 6502) to which particular types of task were assigned by the operating system, off-loading them from the computer’s main CPU and resulting in acceleration. In addition, a BBC Micro fitted with a coprocessor was able to run machine code software designed for other systems, such as CP/M and DOS which are written for 8086 processors.

Trends[edit]

Over time CPUs have tended to grow to absorb the functionality of the most popular coprocessors. FPUs are now considered an integral part of a processors’ main pipeline; SIMD units gave multimedia its acceleration, taking over the role of various DSP accelerator cards; and even GPUs have become integrated on CPU dies. Nonetheless, specialized units remain popular away from desktop machines, and for additional power, and allow continued evolution independently of the main processor product lines.

See also[edit]

  • Multiprocessing, the use of two or more CPUs within a single computer system
  • Torrenza, an initiative to implement coprocessor support for AMD processors
  • OpenCL framework for writing programs that execute across heterogeneous platforms
  • Asymmetric multiprocessing
  • AI accelerator

References[edit]

  1. ^ Scott Mueller, Upgrading and repairing PCs 15th edition, Que Publishing, 2003 ISBN 0-7897-2974-1, pages 108–110
  2. ^ Scott Mueller, Upgrading and Repairing PCs, Second Edition, Que Publishing, 1992 ISBN 0-88022-856-3, pp. 412-413
  3. ^ William Ford, William R. Topp
    Assembly language and systems programming for the M68000 family Jones & Bartlett Learning, 1992 ISBN 0-7637-0357-5 page 892 and ff.
  4. ^ «Intel Delivers New Architecture for Discovery with Intel® Xeon Phi™ Coprocessors». Newsroom.intel.com. 2012-11-12. Archived from the original on 2013-06-03. Retrieved 2013-06-16.
  5. ^ Erin Farquhar, Philip Bunce, The MIPS programmer’s handbook, Morgan Kaufmann, 1994 ISBN 1-55860-297-6, appendix A3 page 330
  6. ^ «China’s Tianhe-2A will Use Proprietary Accelerator and Boast 95 Petaflops Peak». hpcwire.com. 25 September 2017. Retrieved 7 April 2018.

From Wikipedia, the free encyclopedia

AM9511-1 arithmetic coprocessor

A coprocessor is a computer processor used to supplement the functions of the primary processor (the CPU). Operations performed by the coprocessor may be floating-point arithmetic, graphics, signal processing, string processing, cryptography or I/O interfacing with peripheral devices. By offloading processor-intensive tasks from the main processor, coprocessors can accelerate system performance. Coprocessors allow a line of computers to be customized, so that customers who do not need the extra performance do not need to pay for it.

Functionality[edit]

Coprocessors vary in their degree of autonomy. Some (such as FPUs) rely on direct control via coprocessor instructions, embedded in the CPU’s instruction stream. Others are independent processors in their own right, capable of working asynchronously; they are still not optimized for general-purpose code, or they are incapable of it due to a limited instruction set focused on accelerating specific tasks. It is common for these to be driven by direct memory access (DMA), with the host processor (a CPU) building a command list. The PlayStation 2’s Emotion Engine contained an unusual DSP-like SIMD vector unit capable of both modes of operation.

History[edit]

To make the best use of mainframe computer processor time, input/output tasks were delegated to separate systems called Channel I/O. The mainframe would not require any I/O processing at all, instead would just set parameters for an input or output operation and then signal the channel processor to carry out the whole of the operation. By dedicating relatively simple sub-processors to handle time-consuming I/O formatting and processing, overall system performance was improved.

Coprocessors for floating-point arithmetic first appeared in desktop computers in the 1970s and became common throughout the 1980s and into the early 1990s. Early 8-bit and 16-bit processors used software to carry out floating-point arithmetic operations. Where a coprocessor was supported, floating-point calculations could be carried out many times faster. Math coprocessors were popular purchases for users of computer-aided design (CAD) software and scientific and engineering calculations. Some floating-point units, such as the AMD 9511, Intel 8231/8232 and Weitek FPUs were treated as peripheral devices, while others such as the Intel 8087, Motorola 68881 and National 32081 were more closely integrated with the CPU.

Another form of coprocessor was a video display coprocessor, as used in the Atari 8-bit family, TI-99/4A, and MSX home computers, which were called «Video Display Controllers». The Amiga custom chipset includes such a unit known as the Copper, as well as a blitter for accelerating bitmap manipulation in memory.

As microprocessors developed, the cost of integrating the floating point arithmetic functions into the processor declined. High processor speeds also made a closely integrated coprocessor difficult to implement. Separately packaged mathematics coprocessors are now uncommon in desktop computers. The demand for a dedicated graphics coprocessor has grown, however, particularly due to the increasing demand for realistic 3D graphics in computer games.

Intel[edit]

Main article: x87

i8087 and i80287 microarchitecture

The original IBM PC included a socket for the Intel 8087 floating-point coprocessor (aka FPU) which was a popular option for people using the PC for computer-aided design or mathematics-intensive calculations. In that architecture, the coprocessor speeds up floating-point arithmetic on the order of fiftyfold. Users that only used the PC for word processing, for example, saved the high cost of the coprocessor, which would not have accelerated performance of text manipulation operations.

The 8087 was tightly integrated with the 8086/8088 and responded to floating-point machine code operation codes inserted in the 8088 instruction stream. An 8088 processor without an 8087 could not interpret these instructions, requiring separate versions of programs for FPU and non-FPU systems, or at least a test at run time to detect the FPU and select appropriate mathematical library functions.

Intel 80386DX CPU with 80387DX math coprocessor

Another coprocessor for the 8086/8088 central processor was the 8089 input/output coprocessor. It used the same programming technique as 8087 for input/output operations, such as transfer of data from memory to a peripheral device, and so reducing the load on the CPU. But IBM didn’t use it in IBM PC design and Intel stopped development of this type of coprocessor.

The Intel 80386 microprocessor used an optional «math» coprocessor (the 80387) to perform floating point operations directly in hardware. The Intel 80486DX processor included floating-point hardware on the chip. Intel released a cost-reduced processor, the 80486SX, that had no floating point hardware, and also sold an 80487SX coprocessor that essentially disabled the main processor when installed, since the 80487SX was a complete 80486DX with a different set of pin connections.[1]

Intel processors later than the 80486 integrated floating-point hardware on the main processor chip; the advances in integration eliminated the cost advantage of selling the floating point processor as an optional element. It would be very difficult to adapt circuit-board techniques adequate at 75 MHz processor speed to meet the time-delay, power consumption, and radio-frequency interference standards required at gigahertz-range clock speeds. These on-chip floating point processors are still referred to as coprocessors because they operate in parallel with the main CPU.

During the era of 8- and 16-bit desktop computers another common source of floating-point coprocessors was Weitek. These coprocessors had a different instruction set from the Intel coprocessors, and used a different socket, which not all motherboards supported. The Weitek processors did not provide transcendental mathematics functions (for example, trigonometric functions) like the Intel x87 family, and required specific software libraries to support their functions.[2]

Motorola[edit]

The Motorola 68000 family had the 68881/68882 coprocessors which provided similar floating-point speed acceleration as for the Intel processors. Computers using the 68000 family but not equipped with the hardware floating point processor could trap and emulate the floating-point instructions in software, which, although slower, allowed one binary version of the program to be distributed for both cases. The 68451 memory-management coprocessor was designed to work with the 68020 processor.[3]

Modern coprocessors[edit]

As of 2001, dedicated Graphics Processing Units (GPUs) in the form of graphics cards are commonplace. Certain models of sound cards have been fitted with dedicated processors providing digital multichannel mixing and real-time DSP effects as early as 1990 to 1994 (the Gravis Ultrasound and Sound Blaster AWE32 being typical examples), while the Sound Blaster Audigy and the Sound Blaster X-Fi are more recent examples.

In 2006, AGEIA announced an add-in card for computers that it called the PhysX PPU. PhysX was designed to perform complex physics computations so that the CPU and GPU do not have to perform these time-consuming calculations. It was designed for video games, although other mathematical uses could theoretically be developed for it. In 2008, Nvidia purchased the company and phased out the PhysX card line; the functionality was added through software allowing their GPUs to render PhysX on cores normally used for graphics processing, using their Nvidia PhysX engine software.

In 2006, BigFoot Systems unveiled a PCI add-in card they christened the KillerNIC which ran its own special Linux kernel on a FreeScale PowerQUICC running at 400 MHz, calling the FreeScale chip a Network Processing Unit or NPU.

The SpursEngine is a media-oriented add-in card with a coprocessor based on the Cell microarchitecture. The SPUs are themselves vector coprocessors.

In 2008, Khronos Group released the OpenCL with the aim to support general-purpose CPUs, ATI/AMD and Nvidia GPUs (and other accelerators) with a single common language for compute kernels.

In 2010s, some mobile computation devices had implemented the sensor hub as a coprocessor. Examples of coprocessors used for handling sensor integration in mobile devices include the Apple M7 and M8 motion coprocessors, the Qualcomm Snapdragon Sensor Core and Qualcomm Hexagon, and the Holographic Processing Unit for the Microsoft HoloLens.

In 2012, Intel announced the Intel Xeon Phi coprocessor.[4]

As of 2016, various companies are developing coprocessors aimed at accelerating artificial neural networks for vision and other cognitive tasks (e.g. vision processing units, TrueNorth, and Zeroth), and as of 2018, such AI chips are in smartphones such as from Apple, and several Android phone vendors.

Other coprocessors[edit]

  • The MIPS architecture supports up to four coprocessor units, used for memory management, floating-point arithmetic, and two undefined coprocessors for other tasks such as graphics accelerators.[5]
  • Using FPGA (field-programmable gate arrays), custom coprocessors can be created for acceleration of particular processing tasks such as digital signal processing (e.g. Zynq, combines ARM cores with FPGA on a single die).
  • TLS/SSL accelerators, used on servers; such accelerators used to be cards, but in modern times are instructions for crypto in mainstream CPUs.
  • Some multi-core chips can be programmed so that one of their processors is the primary processor, and the other processors are supporting coprocessors.
  • China’s Matrix 2000 128 core PCI-e coprocessor is a proprietary accelerator that requires a CPU to run it, and has been employed in an upgrade of the 17,792 node Tianhe-2 supercomputer (2 Intel Knights Bridge+ 2 Matrix 2000 each), now dubbed 2A, roughly doubling its speed at 95 petaflops, exceeding the world’s fastest supercomputer.[6]
  • A range of coprocessors were available for Acorn BBC Micro computers. Rather than special-purpose graphics or arithmetic devices, these were general-purpose CPUs (such as 8086, Zilog Z80, or 6502) to which particular types of task were assigned by the operating system, off-loading them from the computer’s main CPU and resulting in acceleration. In addition, a BBC Micro fitted with a coprocessor was able to run machine code software designed for other systems, such as CP/M and DOS which are written for 8086 processors.

Trends[edit]

Over time CPUs have tended to grow to absorb the functionality of the most popular coprocessors. FPUs are now considered an integral part of a processors’ main pipeline; SIMD units gave multimedia its acceleration, taking over the role of various DSP accelerator cards; and even GPUs have become integrated on CPU dies. Nonetheless, specialized units remain popular away from desktop machines, and for additional power, and allow continued evolution independently of the main processor product lines.

See also[edit]

  • Multiprocessing, the use of two or more CPUs within a single computer system
  • Torrenza, an initiative to implement coprocessor support for AMD processors
  • OpenCL framework for writing programs that execute across heterogeneous platforms
  • Asymmetric multiprocessing
  • AI accelerator

References[edit]

  1. ^ Scott Mueller, Upgrading and repairing PCs 15th edition, Que Publishing, 2003 ISBN 0-7897-2974-1, pages 108–110
  2. ^ Scott Mueller, Upgrading and Repairing PCs, Second Edition, Que Publishing, 1992 ISBN 0-88022-856-3, pp. 412-413
  3. ^ William Ford, William R. Topp
    Assembly language and systems programming for the M68000 family Jones & Bartlett Learning, 1992 ISBN 0-7637-0357-5 page 892 and ff.
  4. ^ «Intel Delivers New Architecture for Discovery with Intel® Xeon Phi™ Coprocessors». Newsroom.intel.com. 2012-11-12. Archived from the original on 2013-06-03. Retrieved 2013-06-16.
  5. ^ Erin Farquhar, Philip Bunce, The MIPS programmer’s handbook, Morgan Kaufmann, 1994 ISBN 1-55860-297-6, appendix A3 page 330
  6. ^ «China’s Tianhe-2A will Use Proprietary Accelerator and Boast 95 Petaflops Peak». hpcwire.com. 25 September 2017. Retrieved 7 April 2018.

Понравилась статья? Поделить с друзьями:
  • Архиватор exe скачать бесплатно для windows 10
  • Арендовать удаленный компьютер с windows 10
  • Апгрейд windows server 2016 до windows server 2019
  • Архиватор arj для windows 10 64 bit скачать
  • Арендовать виртуальный рабочий стол windows 10