Чип 8087 обеспечивал быстрые вычисления с плавающей запятой для первого IBM PC и со временем стал частью x86-архитектуры, используемой и сегодня. Одна необычная особенность 8087 — многоуровневое ПЗУ (ROM, Read-Only Memory), где каждая ячейка кодировала два бита (четыре уровня), что давало плотность примерно вдвое выше обычного ПЗУ. Вместо хранения двоичных данных каждая ячейка ПЗУ 8087 хранила одно из четырёх уровневых значений, которое затем декодировалось в два двоичных бита. Поскольку 8087 требовалось большое ПЗУ микрокода(примеч.1)Читать полностью »
Рубрика «сопроцессор»
Два бита на транзистор: ПЗУ микрокода повышенной плотности в FPU-сопроцессоре Intel 8087
2026-01-16 в 12:03, admin, рубрики: fpu, Intel 8087, NMOS, компаратор, микрокод, микрофотографии кристалла, многоуровневая память, ПЗУ, сопроцессорАнализ кристалла сдвигового регистра у математического сопроцессора 8087
2020-06-22 в 11:00, admin, рубрики: 8086, 8087, Производство и разработка электроники, сопроцессор, старое железоЧисла с плавающей запятой необходимы для научного программирования, однако первые процессоры напрямую поддерживали лишь операции с целыми числами. Но ранние микропроцессоры всё же могли производить операции с числами с плавающей запятой. Такие операции просто разбивались на множество целочисленных, манипуляции с экспонентой и дробной частью. Иначе говоря, поддержка плавающей запятой не сделала возможной операции с ней в принципе – она просто серьёзно их ускорила. Существует ещё один способ представления нецелых чисел – это числа с фиксированной запятой, у которых есть неизменное количество цифр после десятичного разделителя. С ними работать проще, однако с их помощью можно представить диапазон заметно меньшего размера.
Хотя операции с плавающей запятой на мейнфреймах были обычным делом уже в 1950-х и 1960-х годах, только в 1980-м Intel представила сопроцессор с плавающей запятой 8087 для микрокомпьютеров.
8087 не был первым чипом с поддержкой плавающей запятой. National Semiconductor представила MM57109 Number Cruncher Unit [«перемалыватель цифр»] – так его реально назвали – в 1977-м. Это был, по сути, чип от научного калькулятора на 12 цифр в новом корпусе, работающий с десятичными значениями в двоичном представлении, и требовавший ввода данных в обратной польской записи. Чип работал до абсурдного медленно: к примеру, на вычисление тангенса могло уйти до секунды. AMD представила свой первый чип с поддержкой плавающей запятой, Am9511, в 1978-м. Этот чип поддерживал 32-битные числа с плавающей запятой, и на вычисление тангенса тратил до 1,4 мс. В итоге Intel купила у AMD лицензию на Am9511 и продавала его как 8231. 8087 на 10 МГц, для сравнения, мог вычислить тангенс за 54 мкс, работая с 80-битным числом с плавающей запятой. Вот насколько быстродействие и точность 8087 были выше его предшественников.
Читать полностью »
Извлекаем константы с кристалла математического сопроцессора 8087
2020-05-21 в 7:00, admin, рубрики: 8086, 8087, 8088, cordic, intel, ROM, константы, ПЗУ, Производство и разработка электроники, реверс-инжиниринг, сопроцессорВ 1980 году Intel представила чип 8087 для ускорения обработки чисел с плавающей запятой на 8086-х процессорах, и его использовали в оригинальном IBM PC. Поскольку первые микропроцессоры работали только с целыми числами, арифметика с числами с плавающей запятой была медленной, а с трансцендентными функциями вроде арктангенса или логарифмов дела обстояли ещё хуже. Добавление чипа сопроцессора 8087 к системе было способно ускорить операции с числами с плавающей запятой до ста раз.
Я вскрыл чип 8087 и сделал несколько его фотографий под микроскопом. На фото ниже показан крохотный кремниевый кристалл чипа. По его бокам крохотные проводники соединяют его с 40 внешними ногами. Разметка основных функциональных блоков на картинке сделана мною благодаря реверс-инжинирингу. Если внимательно изучить чип, то можно извлечь из его ПЗУ различные константы – такие числа, как π, используемые чипом в вычислениях.

Кристалл чипа от Intel 8087 для работы с плавающей запятой с отмеченными основными функциональными блоками. ПЗУ с константами отмечен зелёным. Кликабельно.
Читать полностью »
Заглядывая внутрь сопроцессора Intel 8087
2018-09-30 в 9:55, admin, рубрики: intel, Intel 8087, Блог компании ua-hosting.company, Компьютерное железо, математический сопроцессор, Процессоры, сопроцессорНемного истории развития линейки восьмиразрядных процессоров, выпускаемых компанией Intel
Линейка восьмиразрядных процессоров начинает свою историю с апреля 1972 года. Intel 8008 вообще изначально планировался для использования в калькуляторах, устройствах ввода-вывода, но производитель хорошенько «поразмыслив», решил найти линейке новое предназначение — быть центральным процессором ПК. В зависимости от модификаций процессоров тактовая частота составляла 500 или 800 КГц, а производительность равнялась 45000-160000 операций в секунду.

Intel C8008
Читать полностью »
Векторизация кода преобразования координат в пространстве на Intel® Xeon Phi™ с помощью низкоуровневых инструкций
2016-07-13 в 7:35, admin, рубрики: AVX-512, KNC, simd, Алгоритмы, Блог компании Intel, Блог компании Singularis, векторизация, высокая производительность, интринсики, матрицы преобразований, сопроцессорВведение
При решении задач моделирования движения объектов в трехмерном пространстве практически всегда требуется использование операций пространственных преобразований, связанных с умножением матриц преобразований и векторов. Для задачи N тел эта операция используется многократно для задания поворота и смещения тела относительно начала координат. Матрица пространственного преобразования имеет размерность 4х4, а размерность вектора, к которому применяется преобразование, соответственно 4x1. Рассмотрим оптимизацию выполнения такой операции с большим числом матриц и векторов под архитектуру Intel® Xeon Phi™.
Quaternion Encryption Scheme (QES) на FPGA, XeonPhi, GPU
2014-06-19 в 8:17, admin, рубрики: c++, fpga, nvidia tesla, opencl, Алгоритмы, высокая производительность, ПЛИС, сопроцессор, шифрование, метки: fpga, nvidia tesla, opencl, ПЛИС, сопроцессор, шифрование -na-FPGA-XeonPhi-GPU.jpg)
Привет!
Шифрование данных с помощью кватернионов выполнялось на FPGA DE5-NET, XeonPhi 7120P, GPU Tesla k20.
У всех троих приблизительно одинаковая пиковая производительность, но имеется разница в энергопотреблении.
Дабы не нагромождать статью лишней информацией предлагаю вам ознакомиться с краткой информацией о том что такое кватернион и матрица поворота в соответствующих статьях википедии.
Каким же образом можно зашифровать и расшифровать данные с помощью кватернионов? Довольно просто!
Для начала возьмем кватернион: q = w + x*i + y*j + z*k и составим на его основе матрицу поворота, которую назовем, например P(q).
Прим. картинка ниже из википедии и матрица там названа Q.
Боремся с ошибками акселерометра, гироскопа, M7, цифрового компаса и других датчиков в iPhone 5S и не только
2013-10-08 в 21:40, admin, рубрики: apple, iphone, iPhone 5S, motion, акселерометр, гироскоп, дополненная реальность, компас, разработка под iOS, сопроцессор, метки: iphone 5s, motion, акселерометр, гироскоп, дополненная реальность, компас, сопроцессор 
Многие наслышаны о проблеме с неоткалиброванными датчиками в новом iPhone 5S – инструмент «уровень», встроенный в родной компас iOS 7 показывает отклонение в несколько градусов, если устройство положить на плоскую поверхность, например, стол.
Если кратко, то в той или иной степени проблема ориентации датчиков присутствовала всегда и на всех устройствах с iOS. Ранее проблему не наблюдали так часто в виду отсутствия встроенного в мобильную OS приложения позволяющего измерять уровень. Аналогичная проблема имеет место быть и на других мобильных устройствах оснащенных акселерометром, поскольку принципы везде заложены одинаковые – с этим не понаслышке должен быть знаком каждый разработчик, которому приходилось иметь дело с различными датчиками движения и ориентации.
Я разрабатываю приложения с использованием датчиков акселерометра, гироскопа и цифрового компаса, ровно с тех самых пор, как разработчикам стал доступен API, практически с самого начала – будучи автором одного из самых популярных компасов для iOS с проблемами калибровки акселерометра и точности других датчиков я столкнулся еще несколько лет назад.
Способ решения проблемы достаточно тривиален и уже заложен в большую часть, как прикладных, так и игровых приложений, которые тем или иным образом используют датчики гравитации, движения и магнитного поля – калибровка, о которой должен позаботиться любой уважающий себя и своих пользователей разработчик. В зависимости от того, насколько сложно приложение и какие задачи оно решает, с технической точки зрения разработчика, реализация решения может быть и простой и сложной. Но принцип одинаков для всех.
Приглашаю разработчиков и пользователей приложений разобраться, как это работает, откуда берутся эти ошибки, почему не стоит излишне беспокоиться о проблемах акселерометра и почему не нужно бежать бегом в магазин для замены «бракованного» устройства – новое устройство вряд ли будет намного лучше, а проблемы с ошибками датчиков решаются другими способами.Читать полностью »

-na-FPGA-XeonPhi-GPU-2.png)