|
Курсовая: Разработка процессора с плавающей точкой
00
01
VI. Структурные схемы блоков процессора.
6.1. Блок памяти.
В данном курсовом проекте используется одноуровневая память данных ёмкостью
8Кб и длинной слова ОП 32 бит. Адрес данного к началу операции вычислен и
находится в адресном регистре EAR. В операциях с ПТ минимальный размер
данного 2 байта, поэтому адресация производится с точностью до двухбайтового
слова W. Адрес содержит 12 бит, из них старшие 10 адресуют слово W в MW.
В курсовом проекте адресуются данные длиной 16 и 32 бит. Они выбираются и
записываются в ОП за одно обращение. Адресация памяти для заданных форматов
приведена на рис. 6.1. Адрес данного формата m32 кратен двум. Адрес данного
формата m16 может быть любым в пределах ёмкости ОП.
При выборке из ОП читается всегда полное слово MW в регистр чтения-записи
RGRW[32:0]. Данное формата m32 совпадает с размером регистра RGRW.
При записи данное должно быть размещено в ОП в соответствии со своим форматом
и адресом, поскольку запись полного слова может привести к разрушению
информации в соседних полях слова памяти. Для этого память выполнена в виде
двух банков Б1, Б0, которые хранят соответственно двухбайтовые слова W1, W0
всех слов памяти. Управляют записью в банки биты разрешения записи Z1, Z0,
формируемые в зависимости о двух младших бит адреса (табл. 6.1).
Формирование битов разрешения записи для формата 16int. Табл. 6.1.
Младшие биты адреса EAR[1:0] | Биты разрешения | Z1 | Z0 | 00 | 0 | 1 | 01 | 1 | 0 |
W1 W0
FFF | m16 | m16 | FFD | m32 | . | . | . | . | 005 | m16 | m32 | 003 | m32 | m16 | 001 | m16 | m16 |
Рис. 6.1. Адресация памяти для форматов m16 и m32.
Схема организации памяти приведена на рис. 6.2. Здесь БП – блок памяти (банки
Б1-Б0), EAR – регистр исполнительного адреса, ФСРЗ – формирователь сигналов
разрешения записи Z1-Z0.
WR RD
10
Рис. 6.2. Схема организации памяти.
6.2. Блок преобразования форматов.
При разработке алгоритма Fist m16int описаны основные действия в БПФ.
Укрупнённая схема БПФ приведена на рис.6.3. Она включает в себя обратный
преобразователь форматов (ОПФ), коммутатор обратного позиционирования (КОП)
со схемой управления СУОП.
Коммутаторы управляются сигналами EAR[0:1]. Преобразователи управляют
специальные последовательности микрокодов, вырабатываемые БМУ в зависимости
от вида преобразования и его шага, а также от промежуточных результатов
преобразования.
EAR[0:1]
32 80
Рис.6.3. Укрупнённая схема БПФ.
79 78 64 63 0
S | E | M |
16383
15 П 64
K
CNTR | SH1 |
63 48
+1
инвертор |
RGD
79
63
EAR[0:1]
CNTR | 63 SH2 0 |
RGRW
31 16 15 0
Рис.6.4. Структурная схема блока ОПФ.
Структурная схема блока ОПФ для нормализованных чисел приведена выше
(рис.6.4).С помощью двух сумматоров SM1 и SM2 вычисляем истинный порядок П и
количество сдвигов k. На сдвигатель SH1 подаём значение мантиссы из RGD и
сдвигаем M на k разрядов вправо. Если знак числа S=0, то разряды 63-48
передаём без изменения, иначе берём ДК. Позиционирование в RGRW осуществляем
программируемого сдвигателя SH2 в зависимости от EAR[0:1].
6.3. Блок регистров.
Блок регистров БР (рис.6.6) включает в себя регистровый стек ST, регистр
тегов TW, регистр управления CW, регистр состояния SW, регистры 1-го и 2-го
операндов RGA, RGB, схему СхАиМ анализа и модификации TW, CW и SW, схему
сравнения и анализа операндов и 3-разрядный сумматор SM. Регистры операндов
могут быть отнесены и к блоку обработки данных БОД.
Выборка из ST происходит по шинам А и В, запись только по шине А. ST имеет
адресные входы А = ТОР (адресует вершину стека) и В = ТОР + i (адресует
регистр ST(i)). Чтение происходит по сигналу RD. Если при этом подан сигнал
разрешения обращения к ST(i) EI = 1, чтение происходит одновременно по обоим
адресам. Запись происходит по сигналу WR в ST(0) при EI = 0 и в ST(i) при EI
= 1.
Запись может производиться из регистров RGA и RGB, из блока преобразования
форматов БПФ и из регистра результата БОД. Необходимый выбор осуществляется с
помощью мультиплексора MX.
Схема анализа и модификации выполняет проверку и модификацию тэгов, установку
битов особых случаев, проверку масок, установку битов условия C3-C0 и другие
операции над TW, CW, и SW. Их содержимое может быть по соответствующим
командам передано в память или загружено из неё через БПФ.
Примечание: в данном курсовом проекте задействована лишь малая часть этой схемы.
6.4. Блок обработки данных.
6.4.1. Обобщённая схема БОД.
Бод выполняет арифметическую операцию FDiv над поступающими на его входы
операндами. Обобщённая схема БОД приведена на рис.6.5.
В неё входят регистры RG1 и RG2 первого и второго операндов, блок сравнения
операндов с кодами истинного нуля, блок выполнения операций БВО, регистр
результата RG3. Константы для сравнения с операндом поступают в блок
сравнения операндов (компаратор) из ПЗУ констант в составе БМУ. БОД разделяют
на схему обработки знаков, блок обработки порядков, блок обработки мантисс и
формирователь признака результата.
Из БР Из БР В БМУ
RG1 | | RG2 |
Из ПЗУ
констант
Блок выполнения операции | | Схема обработки знаков | Блок обработки порядков | Блок обработки мантисс | Формирователь признака результата | | | | | |
RG3 |
В БР В БМУ
Рис.6.5. Обобщённая структурная схема БОД.
| | | | | | | | | | | | Схема анализа и модификации |
| | | | | | | | | |
Рис.6.6. Структурная схема блока регистров.
6.4.2. Блок деления.
На основании алгоритма операции FDiv (раздел 5.1) разработан блок деления
(рис.6.7).
Регистры операндов RG1 и RG2 и регистр частного подразделяются на субрегистры
знаков (S1,S2,S3), порядков (E1,E2,E3) и мантисс (M1,M2,M3). Регистры мантисс
расширены до 68 бит для увеличения точности вычислений. Окончательный
результат получается в RG3 и округляется до 64 бит.
Схема обработки знаков определяет знак результата S3 в зависимости от знаков
операндов S1,S2.
Сумматор SME выполняет операцию вычитания порядков E1 – E2, а сумматор SM
выполняет операцию сложения числа, поступающего с выхода сумматора SME, и
константы 3FFFh.
Делитель мантисс DivM выполняет операцию деления мантисс.
3FFFh
В БР
| | | | | | | Нормализация и округление |
| |
В БМУ
Рис.6.7. Структурная схема блока деления.
6.4.3. Блок обработки знаков.
Структурная схема блока обработки знаков представлена на рис.6.8.
S1 S2
S3
Рис.6.8. Структурная схема блока обработки знаков.
6.4.4. Блок нормализации и округления.
Структурная схема блока нормализации и округления представлена на рис.6.9.
+1
+1
Рис.6.9. Структурная схема нормализации и округления.
6.5. Блок микропрограммного управления.
В состав БМУ (рис.6.10) входят регистр команд RGK, регистр RGMK, схема
управления последовательностью микрокоманд УМК, мультиплексор кода условия
МКУ, инвертор кода условия ИКУ, счётчик микрокоманд СМК, преобразователь кода
операций ПКОп, мультиплексор адреса МК МУАД, память констант ПЗУК.
ПЗУ МК содержит микропрограммы выполняемых операций. RGMK хранит выбранную
микрокоманду (микрокод) на время её исполнения. В микрокоманде выделяется
часть, которая управляет операционными блоками – ОП, БПФ, БР, БОД и часть,
которая управляет самим БМУ. В МК, которая управляет БМУ, входят следующие
поля: СНА – управление адресом следующей МК, СС – определяет проверяемое
логическое условие (ЛУ), I – бит инверсии условия, J – бит безусловного
перехода, Адр/К – поле адреса или константы, которое содержит адрес следующей
МК, адрес ПЗУ констант или небольшую константу К.
МКУ выделяет ЛУ, указанное СС, а ИКУ передаёт полученное значение Х на УПМ с
инверсией или без неё в зависимости от бита I.
ПКОп преобразует код операции в начальный адрес НА микропрограммы этой
операции или непосредственно в микрокод.
УПМ управляет мультиплексором адреса МК МУАД, в зависимости от полей СНА и J
МК и значения условия Х.
10 0
RGK
X
J
ЛУ
CHA
УпрП
Адр/К
УпрПФ HA
I
УпрБР
X
CC
К
+1
Конст
Чтение
Страницы: 1, 2, 3
|
|