8.3 Пути построения вычислительных систем
==167
После того, как определена разрядность системы, остаётся выбрать производителя. Каждая из семи стековых машин, детально описанных в книге, имеет свой набор параметров сложности, универсальности и производительности. Эти параметры определяют пригодность к тому ли иному применению. Одним из вопросов является выбор между постоянной и подгружаемой системой команд.
8.3.1 Выбор между постоянной и подгружаемой системой команд
Спор о том, должна ли управляющая логика иметь постоянную систему команд или управляться подгружаемым микрокодом, давно идёт среди проектировщиков компьютеров. Преимуществом постоянного набора является быстрота выполнения тех действий, которые напрямую поддерживаются аппаратурой, а недостатком - явно видимое стремление поддерживать только простые команды [* а кому нужна сложность, пусть используют CISC ] , вынуждая строить длинные последовательности команд для синтеза сложных конструкций.
Машины с подгружаемым микрокодом более универсальны, так как для реализации очень сложных операций можно создавать длинные последовательности микрокоманд. Каждую инструкцию можно рассматривать как вызов микрокодовой подпрограммы [* объектно-ориентированный подход на «минус первом» уровне ] . В машинах, хранящих микрокод в оперативной памяти, возможно дополнение набора команд специфическими для конкретного приложения инструкциями, существенно ускоряющими работу.
Все стековые машины с постоянным набором команд [* и декодированными инструкциями ] поддерживают некоторые составные операции, сочетающие действия со стеком данных, арифметические операции и выходы из процедур. Уровень сложности команд, достигаемый машинами с постоянным набором, сильно приближается к микрокоду. Фирма Novix называет формат инструкций NC4016 подвидом «внешнего микрокода» .
==168
В стековых машинах с подгружаемым микрокодом простые операции, подобные сложению, часто выполняются дольше, чем в машинах с фиксированной системой команд. С другой стороны, в машинах с фиксированной системой команд может не хватить кода операции для сложных действий, например, арифметики двойной точности, а в машинах с подгружаемым микрокодом можно добавлять специальный код операции, заместить или модифицировать имеющуюся команду. В общем случае такая гибкость позволяет достичь большего, чем простое сокращение разницы в быстродействии двух процессоров. Ответ на вопрос какое же из вычислительных устройств быстрее в каком-либо конкретном приложении не может быть получен без проработки обоих вариантов решения. До начала выбора процессора очень важно точно выяснить требования, предъявляемые задачей.
8.3.2 Влияние степени интеграции на стоимость и производительность системы
В дополнение к различиям реализации между постоянным и изменяемым набором команд 16-разрядные процессоры, обсуждавшиеся в Части _4 , демонстрируют полный диапазон возможных вариантов уровня интеграции, то есть объёма аппаратной части системы, помещаемой на кристалл процессора. Чем больше функций системы там располагается, тем выше уровень интеграции. Кроме того, выбор между ценой и производительностью следует делать с учётом минимального числа и номенклатуры компонентов, необходимых для запуска устройства.
WISC CPU/16 демонстрирует самый низкий уровень интеграции среди всех представленных моделей. При его создании использовались десятки стандартных логических микросхем, но это позволило избежать больших первоначальных расходов на изготовление заказной микросхемы.
Простым однокристальным процессором является MISC M17 . Для стеков в нём используется программная память, и это всё, что нужно для работы, кроме процессора. Уровень интеграции довольно высок, а сложность системы низка. За простоту конструкции приходится расплачиваться меньшей производительностью, чем была бы возможна при отдельной стековой памяти.
Novix NC4016 также является однокристальным процессором со сравнимым с M17 уровнем интеграции. Неудивительно, что созданные по одной технологии они имеют сравнимые площади кристаллов. Основным отличием является использование в NC4016 отдельных микросхем стеков, обеспечивающих большую потенциальную скорость обработки при той же частоте тактирования из-за увеличенной производительности шины памяти. Цена - необходимость в использовании на системном уровне большего числа компонентов.
Степень интеграции RTX 2000 фирмы Harris выше, чем в NC4016, за счёт добавления в микросхему процессора стековой памяти. Это уменьшает сложность системы и повышает возможную скорость работы, так как внутренняя память может быть быстрее, чем внешняя. Цена - увеличение площади процессора, которое может быть не очень значительным, потому что в RTX 2000 используется иная технология проектирования, хорошо подходящая для создания встроенной памяти. Заказные микросхемы с ядром RTX 2000 могут включать в свой состав программную и стековую память, образуя однокристальную вычислительную систему.
==169
Похоже, что будущие стековые компьютеры будут иметь много уровней быстродействия и системной интеграции, требующей поддержки внешними компонентами, а также вариантов разрядности каналов передачи данных ( 16- и 32-битные для большинства вычислений, возможно, 24-битные для обработки сигналов и 36-битные для архитектур, использующих «маркированные» данные ). Все эти характеристики следует учитывать при выборе процессора по цене, производительности и иным требованиям целевой системы.
==169