Основные группы и форматы команд процессоров платформы С5000

Система команд процессора 5402 содержит 203 команды, условно разбитые на 4 группы.

Арифметические команды. Группа содержит 79 команд и включает в себя 6 подгрупп:

• Команды сложения (13 команд)

• Команды вычитания (13 команд)

• Команды умножения (10 команд)

• Команды умножения со сложением (14 команд)

• Команды умножения с вычитанием (8 команд)

• Команды с двойным операндом (32 бита) (6 команд)

• Проблемно-ориентированные команды (15 команд)

Логические команды. Группа содержит 24 команды и включает в себя 5 подгрупп:

• Команды И (AND) (5 команд)

• Команды ИЛИ (OR) (5 команд)

• Команды исключающее ИЛИ (XOR) (5 команд)

• Команды сравнения (5 команд)

• Команды сдвига (6 команд)

Команды управления программой. Группа содержит 36 команды и включает в себя 7 подгрупп:

• Команды перехода (6 команд)

• Команды вызова (5 команд)

• Команды прерывания (2 команды)

• Команды возврата (6 команд)

• Команды повторения (5 команд)

• Команды управления стеком (5 команд)

• Разные команды управления программой (7 команд)

Команды загрузки и сохранения. Группа содержит 64 команды и включает в себя 8 подгрупп:

• Команды загрузки (21 команда)

• Команды сохранения (14 команд)

• Команды условного сохранения (4 команды)

• Команды параллельной загрузки и сохранения (2 команды)

• Команды параллельной загрузки и умножения (4 команды)

• Команды параллельного сохранения и сложения/вычитания (2 команды)

• Команды параллельного сохранения и умножения (5 команд)

• Разные команды типа загрузки и сохранения (12 команд)

Есть ряд многоцикловых команд, которые при повторении выполняются за один такт (табл.4.6).

Таблица 4.6. Многоцикловые команды, выполняемые за один цикл при повторении

В системе команд имеется целый ряд команд, не допускающих повторения: команды с помещением результата в память, команды передачи управления, команды повторения, команды прерывания и некоторые другие команды. Отдельные команды одного операнда в памяти данных не могут быть повторены при использовании длинного смещения или абсолютного адреса (например, *ARn(lk), *+ARn(lk), *+ARn(lk)% и *(lk)).

В зависимости от длины команды и количества циклов выполнения все команды разбиты на 36 классов.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: