Синтез центрального обрабатывающего устройства ЦВМ
Введение
Целью данного курсового проектирования является практическое
закрепление основных разделов дисциплины «Цифровые ЭВМ», посвященных изучению
принципов структурной и функциональной организации цифровых вычислительных
машин и их узлов, путем проектирования основных блоков компьютера.
Объектом курсового проектирования является центральное
обрабатывающее устройство (ЦОУ), реализующее заданную совокупность команд из
системы команд абстрактной ЦВМ[1].
1. Постановка задачи
обрабатывающий процессорный архитектура автомат
Объектом курсового проектирования является центральное
обрабатывающее устройство (ЦОУ), реализующее заданную совокупность команд из
системы команд абстрактной ЦВМ.
Предполагается, что проектированию подлежит процессор с
традиционной принстонской архитектурой.
К функциям процессорного блока относятся:
управление потоком обработки команд исполняемой компьютером
программы;
управление процессом исполнения команд;
управление процессом взаимодействия всех блоков ЦОУ.
ЦОУ обеспечивает реализацию хранящейся в ОП программы,
команды которой принадлежат ограниченному (в учебных целях) множеству типовых
команд, исполняемых компьютером. К ним относятся:
арифметическая команда,
логическая команда,
команда пересылки данных
(команда обмена данными между регистровой памятью (РП) процессора и ОП),
команда обращения к
устройству ввода / вывода,
команда передачи
управления,
команда «стоп».
Процессор, обеспечивающий исполнение каждой команды, должен:
1) осуществить выборку команды из ОП в строгом соответствии с
форматом команды,
2) расшифровать код операции в команде,
) выполнить расшифрованную операцию,
) подготовить компьютер к выполнению следующей
команды.
Обобщенная структурная схема процессора, в котором связь
между составляющими этот процессор компонентами осуществляется через систему
управляемых раздельных шин, приведена на рисунке 1.
Рисунок 1. Обобщенная структурная схема процессора
На рисунке 1 используются следующие сокращения:
УУ - устройство управления;
ГСС - генератор синхросигналов,
АЛУ - арифметико-логическое устройство;
РП - сверхоперативная регистровая память;
СмА - сумматор адресный;
БУР - блок управляющих регистров, в числе которых:
РК - регистр команд,
СчАК - счетчик адреса
команд,
РПР - регистр признака
результата,
РКП - регистр кода
прерывания (регистр флагов прерывания),
ТП - триггер переходов;
БВР - блок внутренних регистров прямого доступа (ВР1, …, ВРk),
используемых для эффективной организации процесса исполнения
команд;
ОСВ - внешние осведомительные сигналы;
УСВ - внешние управляющие сигналы;
Д - данные.
Исходные данные для курсового проектирования:
Перечень аппаратно поддерживаемых типов данных:
· F4 - 32-разрядные числа в
формате с плавающей точкой (данные для арифметической команды);
· L1 - двоичный вектор
длиной 1 байт (данные для логической команды);
· I2 - 16-разрядные целые
числа (данные для команд обращения к памяти).
Типы команд:
· Арифметическая команда - вычитание с
плавающей точкой (-);
· Логическая команда - дизъюнкция (V) над вектором длиной 1
байт;
· Команда передачи управления - условный
переход по маске;
· Команда обращения к памяти - запись в
память полуслова;
· Команда ввода / вывода - передача байта из
МВВ в процессор;
· Команда «Стоп».
Способы адресации операндов в команде - непосредственная,
прямая, регистровая, косвенная через регистр, относительная.
Основные характеристики ОП:
· - емкость ОП в мегабайтах;
· - ширина выборки (разрядность слова ОП в
байтах);
Характеристики РП:
· - емкость РП - определяется количеством
регистров в блоке.
· Тип - универсальная регистровая память (один блок как для
регистров общего назначения (РОН), так и для регистров, предназначенных для
хранения чисел в формате с плавающей точкой (РПТ)).
· Разрядность регистра - 4 байта.
Тип устройства управления - управляющий автомат с
программируемой логикой.
Способ адресации микрокоманд (МК) в микропрограммах (МП) -
естественная адресация.
Способ кодирования поля МО в МК - горизонтально-вертикальный.
2. Описание форматов команд и обрабатываемых
данных
.1
Форматы данных
На рисунке 2 показаны основные структурные единицы данных,
обрабатываемых проектируемым устройством (а) и форматы их представления в
процессе обработки (б).
Целые числа могут быть представлены как со знаком (S), так и без знака (для
представления адресов). Числа со знаком представляются в дополнительном коде.
Диапазон представления целых чисел - [2n, 2n1], где n - количество разрядов
числа без учета разряда знака.
Двоичные числа с плавающей точкой представляются в виде двух чисел
с фиксированной точкой: порядка (Р) и мантиссы (М), при этом Р - целое со
знаком, . В случае так называемой нормализованной
мантиссы для двоичной системы счисления. Диапазон
представления чисел с плавающей точкой - .
2.2 Описание форматов команд
Будем считать, что проектируемое устройство, реализующее пять
определенных вариантом задания команд, является фрагментом процессора,
реализующего от 128 до 256 команд. При этом в поле КОП команды будем выделять
три поля: КОП (0:1) - для кода формата команды (или кода длины команды), КОП
(2:4) - для кода класса команды, КОП (5:7) - для номера команды в списке
класса.
ЦОУ реализует следующие команды:
. Вычитание чисел с плавающей точкой. Способы
адресации: регистровый для первого операнда, относительный - для второго. Длина
команды - 4 байта: КОП (0:7); R1 (8:11) - адрес РП, содержащего первый операнд; B2 (12:15) - регистр
базового адреса ячейки ОП; D (16:31) - смещение. Поскольку под смещение отведено 16 бит, то размер
сегмента 2D = 64 Кб. Тогда общее количество сегментов 227-16=2048.
Команда формирует следующие флаги: переполнение порядка, исчезновение порядка,
потеря значимости. Возможные прерывания: нарушение адресации, нарушение
спецификации.
КОП
|
R1
|
B1
|
D
|
0 7
|
8 11
|
12 15
|
16 31
|
2. Дизъюнкция над векторами длиной 1 байт. Способы
адресации: регистровый для первого операнда, косвенный через регистр - для
второго. Длина команды - 2 байта: КОП (0:7); R1 (8:11) - адрес РП,
содержащего первый операнд; R2R(12:15) - регистр с адресом ячейки ОП. Возможные прерывания -
нарушение адресации.
КОП
|
R1
|
R2r
|
0 7
|
8 11
|
12 15
|
3.
Запись данных длиной в полуслово из РП в ОП. Способ адресации: регистровый для
первого операнда, косвенный - для второго. Длина команды - 4 байта: КОП (0:7); R1 (8:11) - адрес РП,
содержащего пересылаемые данные; Ау(16:31) - ячейка ОП, содержащая
исполнительный адрес. Косвенный адрес позволяется обратиться к первым 64 Кб оперативной
памяти, по которому храниться исполнительный адрес данных для выполнения
логической операции. Возможные
прерывания: нарушение адресации, нарушение спецификации.
4. Условный переход по маске. Способ адресации -
косвенный через регистр. Длина команды - 2 байта: КОП (0:7); M1 (8:11) - маска; R2 (12:15) - регистр с
адресом ОП.
M1
|
Разр.
|
|
0
|
8
|
|
1
|
9
|
|
2
|
10
|
|
3
|
11
|
|
|
|
|
КОП
|
R1
|
R2r
|
0 7
|
8 11
|
12 15
|
5. Передача байта из МВВ в процессор. Способ адресации
- прямая. Длина команды - 2 байта: КОП (0:7); НУВВ (8:15) - номер устройства
ввода-вывода. Общее количество адресуемых УВВ - 256.
Для заданных команд подобраны все способы адресации. Сведем
полученную систему команд в таблицу 1.
Таблица 1. Система команд
Номер класса
|
Номер команды
|
Название
|
Содержание
|
ПР
|
Флаги
|
Код двоичный
|
h- код
|
|
|
|
|
|
|
01
|
234
|
567
|
|
3
|
2
|
Вычитание с ПТ
|
(R1):=(R1)+((B1)+D)
|
>0 <0 =0
|
A, S, ППР, ИП,
ПЗ
|
10
|
011
|
9А
|
4
|
1
|
Поразрядное ИЛИ
|
(R1):=(R1)
V((R2))
|
0
|
A
|
01
|
100
|
001
|
61
|
1
|
3
|
Запись из РП в
ОП
|
((A)):=®
|
нет
|
A, S
|
10
|
001
|
011
|
4В
|
6
|
1
|
Условный
переход по маске
|
(СчАК):=(R2),
если М1
|
нет
|
A, S
|
01
|
110
|
001
|
71
|
7
|
5
|
Ввод
|
(ПортД):=
(НУВВ)
|
нет
|
нет
|
01
|
111
|
101
|
3D
|
|
|
Стоп
|
Стоп
|
|
|
11
|
111
|
111
|
FF
|
3.
Содержательная ГСА функционирования ЦОУ
Алгоритм работы ЦОУ должен обеспечивать выполнение следующих
действий:
) Выборка команды;
) Выполнение команды;
) Если обнаружены нарушения адресации или спецификации
- сформировать прерывание;
) Подготовиться к выборке следующей команды.
Если очередная команда Стоп, то ЦОУ прекращает работу. Схема
алгоритма функционирования ЦОУ представлена на рисунке 3.
Рисунок 3. Схема алгоритма функционирования ЦОУ
Длины команд составляют 2 и 4 байта, а ширина выборки - 8
байт. Корректный адрес команды при таких предположениях должен быть кратен 2, а
его значение не превышать предельно допустимое, определяемое емкостью ОП.
Пример размещения команд в ОП представлен на рисунке 4.
Рисунок 4.