- •Предмет проектування
- •Загальні вимоги до процесора
- •Вихідні данні для розробки проиесора
- •Результати проектування
- •Послідовність виконаним курсового проекту’.
- •Уточнення структури системи
- •Розробка архітектури зовнішніх виводів
- •Вибір форматів даних
- •Визначення структури реєстрової пам'яті.
- •512 М фізичної пам'яті. При роботі з сегментом 2 не використовується ні кеш,
- •Вибір форматів команд
- •Розробка системи команд
- •Внутрішня організацій
- •Основні алгоритми функціонування
- •Алгоритми виконання окремих операцій
- •2.10. Розробка алгоритмів виконання основних операцій на шині
- •Оформлення курсового проекту'.
-
Вибір форматів команд
При виборі форматів слід виходити з принципів RISC-обробки, відповідно до яких використовується мінімальна кількість форматів команд. Найбільш бажаним є використання одного (32-розрядного) формат}'. Прийнятним можна також вважати варіант, коли команди мають різну довжину.
OP Rl R2 RS
15 9 6 6 5 3 2 O
OP
Rl R2
disp
15
9
ε
6 5
3
2
O
disp
31 ж 16
Рисунок 2.8 Формати операційних 32-розрядних команд
|
7 P |
Ip 5 р |
5 р |
і P |
13 P |
|
OP |
SCC DEST |
SRSl |
гмм |
SRS2 |
3 |
|
Рисунок 2.9 Формати команд різної довжини
На рисунках 2.8 і 2.9 наведені можливі формати команд.
На рисунку 2.8 показані формати команд, відповідні другому випадку. Операційні команди (рисунок 2.8, а) мають довжину 16 розрядів і містять 4 поля: 7-розрядне поле коду операції (OP) і три 3-розрядних поля для завдання регістрів джерел і приймача. Типова двомісна операція типу додавання виконується за схемою Rl Я <R2> * <R3>.
Команди звернення до пам'яті, звернення до підпрограм, переходів, а також команди, що використовують безпосередні операнди мають довжину 32 розряду (рис. 2.8, б).
Крім полів OP, Rl і R2 є 19-розрядне поле змішення (disp). Адреса пам'яті визначається складанням вміст>' R2 і disp: А = <R2> + disp. На рис. 2.9 показаний приклад 32-розрядного формату.
Команда на рис. 2.9 містить 6 полів: 7-розрядне поле коду операції (OP), 1-розрядне поле SCC дозволяє, або забороняє установку прапорців. Поля DESTj SRSl і SRS2 задають, відповідно, регістр-приймач і регістри- джерела даних.
Однорозрядне поле IMM визначає зміст 13-розрядного поля SRS2. Якщо IMM = 0, то вміст зазначеного поля інтерпретується як номер регістра, в іншому випадку-розглядається як 13-розрядна константа. У командах звернення до пам'яті воно використовується як зміщення. При цьому адреса пам'яті визначається як А = <SRS1> + SRS2.
-
Розробка системи команд
Результати проектування слід оформити у вигляді таблиці: Таблиця 2.1 Система команд
№ |
\1 IIiMOH іка |
Назва |
Зміст |
Прапорець |
Код |
|||
|
|
|
|
C |
Z |
S |
|
|
1 |
ADD |
Додавання с ФК |
Rl = <R2> + <R3> |
+ |
+ |
+ |
0000001 |
|
|
|
|
|
|
|
|
|
|
п |
JMP |
Безумовний перехід |
A = <R2> + disp |
|
|
|
1010101 |
Система команд повинна бути функціонально повною і включати, як мінімум, наступні команди:
-
звернення до пам'яті з читання та запису;
-
цілочисельні арифметичні дії для чисел із знаком і без знака (додавання,
віднімання, множення, ділення, порівняння);
23
S
-
арифметичні з ПК (додавання, віднімання, множення, ділення., порівняння);
-
логічні (порозрядне "І", ".АБО" і "Що виключає АБО");
-
зрушень на довільне число тактів;
-
умовних і безумовних переходів;
-
роботи з підпрограмами;
-
завантаження в регістри безпосередніх операндів;
-
вводу-виводу;
-
управління обчислювальним процесом.