Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

Проектирование процессора с плавающей точкой

Определение 1

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

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

Процессор с плавающей точкой

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

В состав процессора с плавающей точкой входят следующие модули:

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

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

Используемый командный набор

Команда FSub ST(ì), ST является командой вычитания, которая выполняет вычитание операнда источника из операнда получателя и осуществляет возврат итогового результата к получателю.

ST(ì) ← ST(ì) – ST

«Проектирование процессора с плавающей точкой» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Найди решение своей задачи среди 1 000 000 ответов
Найти

Первый операнд располагается на вершине стека, а второй находится в регистре ST(ì). У обоих операндов форматом является 80real.

При осуществлении этой операции вероятны некоторые особые случаи:

  • Р — означает неточность результата.
  • U – означает признак антипереполнения.
  • O – означает признак переполнения.
  • D – означает признак денормализованного (субнормального) операнда.
  • I – означает признак недействительной операции.

Формат команды вычитания представлен на рисунке ниже:

Формат команды вычитания. Автор24 — интернет-биржа студенческих работ

Рисунок 1. Формат команды вычитания. Автор24 — интернет-биржа студенческих работ

Значение бита R указывает на возврат результата в верхушку стека, если R=0, или в ST(ì), в случае, если R=1. В приведённом примере итог пересылается в ST(ì) и значит R=1. Значение бита P=1 (Pop) означает, что по завершении процедуры выполняется выборка из стека. В поле Коп записывается код операции.

Команда FILD m32ìnt является командой загрузки операнда из памяти в стек. Она выполняет вычитание единицы из указателя стека ТОР и передаёт операнд на новый верхний уровень стека ST, но предварительно преобразует формат в расширенной точности.

TOP ← TOP – 1; S T ← m32ìnt

При выполнении данной операции также вероятны особые случаи:

  • I – означает признак недействительной операции.
  • D – означает признак денормализованного операнда.

Формат данной команды представлен ниже:

Формат команды. Автор24 — интернет-биржа студенческих работ

Рисунок 2. Формат команды. Автор24 — интернет-биржа студенческих работ

Адресация операнда m32ìnt задаётся в полях mod, r/m, sìb и dìsp, в которых:

  • mod – определяет способ задания адреса.
  • r/m - если mod ≠ 11 – является указателем регистров, которые участвуют в процессе адресации; если mod=11 – является адресом регистра.

Вычисление адреса производится процессором, работающим с целыми числами. Перед началом операции адрес уже определён. Нулевой бит первого байта задаёт тип операции. В приведённом примере бит[0]=1, что означает пересылку данных из памяти в стек.

В поле MF задаётся тип операнда. В данном примере, при m32ìnt MF=01. В поле Коп задаётся код операции.

Форматы данных

Процессор может работать с информационными данными в следующих целочисленных форматах:

  1. Целочисленный формат слова или 16int.
  2. Целочисленное слово короткого формата или 32int.
  3. Целочисленное слово длинного формата или 64int.

А также возможна работа процессора в следующих вещественных форматах:

  1. Вещественный формат обычной точности или 32real.
  2. Вещественный формат двойной точности или 64real.
  3. Вещественный формат повышенной (расширенной) точности или 80real.

Знаковый бит S задаёт наличие числового знака. Бинарные целочисленные величины отображаются при помощи дополнительного кода. Цифры вещественных чисел, отличные от нуля, располагаются в мантиссе М=(F0).(F1)(F2)…(Fn), представленной прямым кодом. Поле Е указывает реальное расположение бинарной точки среди разрядов мантиссы. Задание порядка выполняется в смещённом формате, и он равняется фактическому порядку П, который увеличен на величину смещения D:

Е = П + D.

Параметрические данные форматов показаны в таблице ниже:

Параметрические данные форматов. Автор24 — интернет-биржа студенческих работ

Рисунок 3. Параметрические данные форматов. Автор24 — интернет-биржа студенческих работ

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

Программная модель процессора

Программная модель процессора изображена на рисунке ниже:

Программная модель процессора. Автор24 — интернет-биржа студенческих работ

Рисунок 4. Программная модель процессора. Автор24 — интернет-биржа студенческих работ

Она состоит из следующих компонентов:

  1. Закольцованный стек, состоящий из восьми регистров R0-R7.
  2. Тэговое слово TW.
  3. Слово, определяющее состояние, SW.
  4. Слово, определяющее управление, CW.

Стек сохраняет числовые данные в расширенном формате. А в соответствующих регистровых полях (S, Е и М) указываются знак, порядок и мантисса.

Воспользуйся нейросетью от Автор24
Не понимаешь, как писать работу?
Попробовать ИИ
Дата написания статьи: 22.05.2020
Найди решение своей задачи среди 1 000 000 ответов
Крупнейшая русскоязычная библиотека студенческих решенных задач
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot