Классификация и организация вычислительных систем. Михайлов Б.М - 65 стр.

UptoLike

соответствует максимальному числу элементов, обрабатываемых аппаратурой за один
прием.
Достаточно часто приходится выполнять такие операции, в которых должны
участвовать не все элементы векторов. Векторный процессор обеспечивает данный
режим с помощью регистра маски вектора. В этом регистре каждому элементу
вектора соответствует один бит. Установка бита в единицу разрешает запись
соответствующего элемента вектора результата в выходной векторный регистр, а
сброс в ноль — запрещает.
Как уже упоминалось, элементы векторов в памяти расположены регулярно, и
при выполнении векторных операций достаточно указать значение шага по индексу.
Существуют, однако, случаи, когда необходимо обрабатывать только ненулевые
элементы векторов. Для поддержки подобных операций в системе команд ВП
предусмотрены операции упаковки/распаковки (gather/scatter). Операция упаковки
формирует вектор, содержащий только ненулевые элементы исходного вектора, а
операция распаковки производит обратное преобразование. Обе этих задачи
векторный процессор решает с помощью вектора индексов, для хранения которого
используется регистр вектора индексов, по структуре аналогичный регистру маски. В
векторе индексов каждому элементу исходного вектора соответствует один бит.
Нулевое значение бита свидетельствует, что соответствующий элемент исходного
вектора равен нулю.
Использование векторных команд окупается благодаря двум качествам. Во-
первых, вместо многократной выборки одних и тех же команд достаточно произвести
выборку только одной векторной команды, что позволяет сократить издержки за счет
устройства управления и уменьшить требования к пропускной способности памяти.
Во-вторых, векторная команда обеспечивает процессор упорядоченными данными.
Когда инициируется векторная команда, ВС знает, что ей нужно извлечь n пар
операндов, расположенных в памяти регулярным образом. Таким образом, процессор
может указать памяти на необходимость начать извлечение таких пар. Если
используется память с чередованием адресов, эти пары могут быть получены со
скоростью одной пары за цикл процессора и направлены для обработки в
конвейеризированный функциональный блок. При отсутствии чередования адресов
соответствует максимальному числу элементов, обрабатываемых аппаратурой за один
прием.
Достаточно часто приходится выполнять такие операции, в которых должны
участвовать не все элементы векторов. Векторный процессор обеспечивает данный
режим с помощью регистра маски вектора. В этом регистре каждому элементу
вектора соответствует один бит. Установка бита в единицу разрешает запись
соответствующего элемента вектора результата в выходной векторный регистр, а
сброс в ноль — запрещает.
     Как уже упоминалось, элементы векторов в памяти расположены регулярно, и
при выполнении векторных операций достаточно указать значение шага по индексу.
Существуют, однако, случаи, когда необходимо обрабатывать только ненулевые
элементы векторов. Для поддержки подобных операций в системе команд ВП
предусмотрены операции упаковки/распаковки (gather/scatter). Операция упаковки
формирует вектор, содержащий только ненулевые элементы исходного вектора, а
операция распаковки производит обратное преобразование. Обе этих задачи
векторный процессор решает с помощью вектора индексов, для хранения которого
используется регистр вектора индексов, по структуре аналогичный регистру маски. В
векторе индексов каждому элементу исходного вектора соответствует один бит.
Нулевое значение бита свидетельствует, что соответствующий элемент исходного
вектора равен нулю.
     Использование векторных команд окупается благодаря двум качествам. Во-
первых, вместо многократной выборки одних и тех же команд достаточно произвести
выборку только одной векторной команды, что позволяет сократить издержки за счет
устройства управления и уменьшить требования к пропускной способности памяти.
Во-вторых, векторная команда обеспечивает процессор упорядоченными данными.
Когда инициируется векторная команда, ВС знает, что ей нужно извлечь n пар
операндов, расположенных в памяти регулярным образом. Таким образом, процессор
может указать памяти на необходимость начать извлечение таких пар. Если
используется память с чередованием адресов, эти пары могут быть получены со
скоростью одной пары за цикл процессора и направлены для обработки в
конвейеризированный функциональный блок. При отсутствии чередования адресов