Полная версия

Главная arrow Информатика arrow Архитектура ЭВМ и систем

  • Увеличить шрифт
  • Уменьшить шрифт


<<   СОДЕРЖАНИЕ   >>

Глава 20. Компьютеры SIMD и другие

20.1. Массивно параллельные и векторные процессоры

Общие сведения о системах SIMD

При решении научно-технических и инженерных задач часто возникает необходимость вычисления векторных величин. Вектором называют совокупность (массив, матрицу, группу) данных, расположенных в ячейках памяти с упорядоченными адресами. При векторной обработке данных с помощью одной команды выполняется операция (например, сложение) над всеми элементами вектора. Для реализации векторной обработки в состав процессора вводят дополнительные средства (векторные регистры, векторные команды и т.д.).

Векторные команды способствуют повышению быстродействия процессора за счет уменьшения потерь времени на организацию вычислительного цикла благодаря тому, что в команде:

  • • для выполняемой операции задается конфигурация активных частей конвейера. Отметим, что в целях достижения повышенного быстродействия может быть использовано несколько арифметических конвейеров, а отдельные устройства конвейерной линии могут содержать собственные конвейеры для выполнения возложенных на них подфункций;
  • • указывается начало вектора в памяти (или блоке регистров) и его длина, размер и тип элементов вектора (целое число, число с плавающей точкой и т.д.), а также местоположение вектора-результата. Таким образом, векторная команда наряду с обеспечением содержательной операции над элементами вектора выполняет функции управления вычислительным циклом.

Системы, ориентированные на вычислительные задачи векторных величин, называют системами S/A/Z) (Single-Instruction-Multiple-Data – одиночный поток команд и множественный поток данных) или матричными системами [9]. В таких системах вся последовательность команд формируется в управляющем процессоре и направляется к процессорным элементам данных (процессорам – см. рис. 17.5Д; § 17.2), состоящим из простейших узлов (ALU, память) в виде регулярной решетки и обеспечивающим простое взаимодействие с соседними узлами. В системах SIMD помимо векторных команд также используются скалярные команды, выполняющие обычные команды над одиночными данными Рассмотрим два вида процессоров для обработки векторных величин. Несмотря на то что процессоры выполняют одни и те же команды (например, попарно складывают элементы для двух векторов), между ними имеются существенные отличия.

 
<<   СОДЕРЖАНИЕ   >>