Министерство образования и науки Российской Федерации
Государственное образовательное учреждение высшего профессионального образования
«РЯЗАНСКИЙ ГОСУДАРСТВЕННЫЙ РАДИОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Кафедра ЭВМ
|
К защите Руководитель проекта
дата, подпись |
Пояснительная записка к курсовому проекту
по дисциплине
«Организация ЭВМ и систем»
по теме
«Проектирование процессора с плавающей точкой»
Выполнил студент группы 043
Колбасин П.Д. ____________________
дата сдачи на проверку, подпись
Руководитель проекта
ассистент Свирина А.Г. ________________ ____________________
оценка дата защиты, подпись
Рязань 2011
Техническое задание
-
Система команд:
-
FSubRP ST(i), ST – обратное вычитание;
-
FLd m32real – загрузка.
-
Емкость ОП:
-
4 кбайт.
-
Длина слова ОП:
-
64 бит.
-
Моделирование:
-
32real → 80real.
Обозначения и сокращения
Содержание
Введение
Описание команд
-
FSubRP ST(i), ST – обратное вычитание.
Команда обратного вычитания, вычитает операнд из источника и исключает из стека, а затем возвращает разность в получатель.
ST(i) ← ST – ST(i);
TOP ← TOP + 1.
Оба операнда находятся в регистровом стеке в формате 80real.
Особые случаи:
-
P – неточный результат (точность);
-
U – антипереполнение;
-
O – переполнение;
-
D – денормализованный операнд;
-
I – недействительная операция.
Формат команды предсавлен на рис.1.
Рис. 1. Формат команды FSubRP ST(i), ST
Команда этого формата осуществляет операцию над вершиной стека и регистром ST(i). Бит R (Reverse) показывает, возвращается ли результат в вершину стека (R=0) или в ST(i) (R=1). Бит P=1 (Pop) указывает, что после операции производится извлечение из стека.
-
FLd m32real – загрузка.
Команда загрузки (загрузка вещественных чисел обычной точности) производит уменьшение на еденицу указателя стека TOP и передачу операнда m32real в новую вершину стека ST без преобразований.
TOP ← TOP-1;
ST(0) ← m32real.
Особые случаи:
-
I – недействительная операция;
-
D – денормализованный операнд.
Формат команды представлен на рис.2.
Рис. 2. Формат команды FLd m32real
Команда этого формата осуществляет обращение к памяти по адресу, определяемому полями mod, r/m, sib и disp. Адрес вычисляется целочисленным процессором. К началу операции он уже сформирован, и эти поля больше не используются. Бит [0] первого байта команды определяет тип операции.
В данном случае бит [0] =1: передача данного из памяти в стек или наоборот.
Поле MF (Memory Format) определяет тип операнда: 00 - m32real.
Форматы данных
-
Внутренний формат.
Во внутренних операциях процессор с плавающей точкой использует представление вещественных чисел в формате с расширенной точностью (рис.3). Длина формата 80 бит.
Рис. 3. Внутренний формат РТ
Мантисса М представлена в прямом коде и содержит 64 бита, причем вес старшего ее бита равен 1.
Смещенный порядок содержит 15 бит, величина смещения 16383. Истинный порядок изменяется от –16382 до 16383. Смещенные порядки 00..0В и 11..1В зарезервированы для специальных значений.
Числа в формате РТ имеют явный бит F0. Значение в формате РТ равно:
(-1)S • 2(Е-смещение РТ) • (F0)(F1)…(F63).
-
Внешний формат.
В данном курсовом проекте рассматривается внутренний формат: 32real - обычная точность (ОТ).
Формат ОТ представлен на рис. 4. Длина формата 32 бита.
Рис. 4. Внешний формат ОТ
Значащие цифры числа находятся в поле мантиссы (М). Длина мантиссы 23 бита. Поле порядка (Е) показывает фактическое положение двоичной точки в разрядах мантиссы. Длина порядка 8 бит. Бит знака S определяет знак числа. Мантисса представлена в прямом коде. Порядок Е задается в смещенной форме; он равен истинному порядку (П), увеличенному на значение смещения – смещение ОТ=127:
Е=П+смещение ОТ.
Истинный порядок изменяется от –126 до 127.
Данные, пересылаемые из памяти в процессор, преобразуются в формат РТ. При записи в память данное преобразуется в формат получателя.