Составители:
89
Восприятие виртуальной машины как реализации модели определенного
вычислителя позволяет использовать в проектировании такие общеизвестные
понятия как ISA (Instruction Set Architecture) и микроархитектура. ISA
определяет инструкции, регистры, режимы адресации, типы данных и другое,
которые поддерживает определенный вычислитель. Микроархитектура в свою
очередь определяет принципы внутренней организации вычислителя,
позволяющие реализовать заданную ISA. Одна и та же ISA может быть
реализована
с помощью различных микроархитектур.
Одним из важных свойств ISA, накладывающих определенные
ограничения на микроархитектуру, является аспект времени (конвейеры,
параллелизм на уровне инструкций и т.д.).
При построении компонентов ВсС можно оперировать следующими
понятиями:
• Базовая вычислительная платформа, в свою очередь является виртуальной
машиной;
• Виртуализация;
• ISA;
• Микроархитектура.
Виртуальной машиной можно
считать конкретную реализацию заданной
ISA в рамках выбранной микроархитектуры. В таком случае основной задачей
высокоуровневого проектирования становится выбор ISA с последующим
выбором микроархитектуры реализации. При всем этом не следует понимать
реализацию как чисто программную или аппаратную, возможны смешанные
варианты, приводящие к многоуровнемым реализациям микроархитектуры для
определенного типа базовой вычислительной платформы.
Для зафиксированной
ISA эффективная микроархитектура жестко
привязана к особенностям базовой вычислительной платформы (нижележащей
виртуальной машины), которые сложно зафиксировать в случае встраиваемых
систем, ввиду частой смены элементной базы.
2.2.4.2 Проектирование микроархитектуры ВсС на основе композиции «шаблон
– конфигурация»
Инструкции (функциональные примитивы, методы) можно рассматривать
как управляющие воздействия, призванные изменить или получить состояние
отдельных компонентов системы.
Каждая ISA описывает типы данных, логику вычислительного процесса и
отдельные инструкции. При этом действия, выполняемые вычислителем, также
описываются в терминах поведения некоторого абстрактного нижележащего
вычислителя (стек, адресные пространства, передача пакетов и т.д.).
Страницы
- « первая
- ‹ предыдущая
- …
- 88
- 89
- 90
- 91
- 92
- …
- следующая ›
- последняя »
