Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
glava13.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
182.78 Кб
Скачать

Оглавление

Глава 13 Вычислительные системы класса simd 1

Векторные и векторно-конвейерные ВС 1

Особенности векторного процессора 2

Достоинства векторного процессора 3

Матричные ВС 3

Ассоциативные ВС 4

Систолические ВС 5

Классификация систолических структур 5

VLIW-вычислительные системы 6

Глава 13 Вычислительные системы класса simd

SIMD-системы (Single Instruction Multiply Data) были первыми вычислительными системами, состоящими из большого числа процессоров. К классу SIMD относится ВС, где множество элементов данных подвергается параллельной, но однотипной обработке. В настоящее время принято считать, что класс SIMD составляют следующие системы:

  1. векторные и векторно-конвейерные;

  2. матричные;

  3. ассоциативные;

  4. систолические;

  5. VLIW-вычислительные системы.

Векторные и векторно-конвейерные вс

Область применения векторно-конвейерных ВС – задачи моделирования реальных процессов и объектов, для которых характерна обработка больших регулярных массивов чисел в форме с плавающей запятой. Такие массивы представляются матрицами и векторами, а алгоритмы их обработки описываются в терминах матричных операций.

Для обработки массивов требуются средства векторной обработки, позволяющие с помощью единой команды производить действие сразу над всеми элементами массивов.

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

Характеристики вектора:

  • шаг по индексу — шаг, с которым элементы вектора извлекаются из памяти;

  • длина вектора — число составляющих его элементов.

Процессор, в котором операндами некоторых команд могут выступать векторы — векторный процессор.

Особенности векторного процессора

1) Обработка всех n компонентов векторов-операндов задается одной векторной командой.

2) Элементы векторов представляются числами в форме с плавающей запятой (ПЗ).

3) АЛУ векторного процессора может быть реализовано в виде:

    • конвейерного АЛУ - единого конвейерного устройства, способного выполнять все предусмотренные операции над числами с ПЗ

    • с помощью массива АЛУ, состоящего из отдельных блоков сложения и умножения, а иногда и блока для вычисления обратной величины. Каждый из таких блоков также конвейеризирован.

(структура векторного процессора)

Набор векторных регистров (Va, Vb, Vc,...) имеется в любом векторным процессоре.

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

1) загрузки векторного регистра содержимым последовательных ячеек памяти, указанных адресом первой ячейки этой последовательности;

2) выполнения операций над всеми элементами векторов, находящихся в векторных регистрах;

3) сохранения содержимого векторного регистра в последовательности ячеек памяти, указанных адресом первой ячейки этой последовательности;

  • регистр длины вектора - определяет, сколько элементов фактически содержит обрабатываемый в данный момент вектор, то есть сколько индивидуальных операций с элементами нужно сделать;

  • регистр максимальной длины вектора - определяет максимальное число элементов вектора, которое может быть одновременно обработано аппаратурой процессора. Этот регистр используется при разделении очень длинных векторов на сегменты, длина которых соответствует максимальному числу элементов, обрабатываемых аппаратурой за один прием.

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

  • регистр вектора индексов служит для выполнения операций упаковки/распаковки для получения вектора, содержащего ненулевые элементы и для обратной операции соответственно. В векторе индексов каждому элементу исходного вектора соответствует один бит. Нулевое значение бита свидетельствует, что соответствующий элемент исходного вектора равен нулю.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]