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