Основы вычислительных систем
При создании компьютера одновременно проектируют и систему команд (СК) для него. Существенное влияние на выбор операций для их включения в СК оказывают:
· элементная база и технологический уровень производства компьютеров;
· класс решаемых задач, определяющий необходимый набор операций, воплощаемых в отдельные команды;
· системы команд для компьютеров аналогичного класса;
· требования к быстродействию обработки данных, что может породить создание команд с большой длиной слова (VLIW-команды).
Анализ задач показывает, что в смесях программ доминирующую роль играют команды пересылки и процессорные команды, использующие регистры и простые режимы адресации.
На сегодняшний день наибольшее распространение получили следующие структуры команд: одноадресные (1A), двухадресные (2A), трехадресные (3A), безадресные (БА), команды с большой длиной слова (VLIW – БДС) (рис. 3.1):
1А ~ |
| КОП | А1 |
|
|
|
|
|
|
|
|
|
|
|
|
2А ~ |
| КОП | А1 | А2 |
|
|
|
|
|
|
|
|
|
|
|
3А ~ |
| КОП | А1 | А2 | А3 |
|
|
|
|
|
|
|
|
|
|
БА ~ |
| КОП |
|
|
|
|
|
|
|
|
|
|
|
|
|
БДС ~ |
| КОП | Адреса | Теги | Дескрипторы |
| |
Рис. 3.1. Структуры команд
Причем операнд может указываться как адресом, так и непосредственно в структуре команды.
В случае БА-команд операнды выбираются и результаты помещаются в стек (магазин, гнездо). Типичными первыми представителями БА-компьютеров являются KDF-9 и МВК "Эльбрус". Их характерной особенностью является наличие стековой памяти.
Стек – это область оперативной памяти, которая используется для временного хранения данных и операций. Доступ к элементам стека осуществляется по принципу FILO (first in, last out) – первым вошел, последним вышел. Кроме того, доступ к элементам стека осуществляется только через его вершину, т. е. пользователю "виден" лишь тот элемент, который помещен в стек последним.
Сформированное множество процессов необходимо распределить по процессорам для выполнения. Неизвестен эффективный способ априорного определения числа процессоров, для которого может быть получено наилучшее среди всех возможных распределение.