Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
All.docx
Скачиваний:
4
Добавлен:
06.09.2019
Размер:
842.46 Кб
Скачать

8 (1). Векторний процесор. Структура алу

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

Рассмотрим возможные подходы к архитектуре средств векторной обра-ботки.  Наиболее  распространенные  из  них  сводятся  к  трем  группам:

        конвейерное  АЛУ;

        массив  АЛУ;

        массив  процессорных  элементов.

Последний вариант представляет собой многопроцессорную систему, из-вестную как матричная ВС. Понятие векторного процессора имеет отношение     к двум  первым  группам.  Эти  две  категории  иллюстрирует  рис. 7.3.   

В варианте с конвейерным АЛУ (рис. 7.3, а) обработка элементов векто-  ров производится конвейерным АЛУ для чисел с плавающей запятой (ПЗ). Опе-рации с числами в форме с ПЗ достаточно сложны, но поддаются разбиению на отдельные шаги. Например, сложение двух чисел сводится к четырем этапам: сравнению порядков, сдвигу мантиссы меньшего из чисел, сложению мантисс и нормализации результата (рис. 7.4, а). Каждый этап может быть реализован с помощью отдельной ступени конвейерного АЛУ (рис. 7.4, б). Очередной элемент вектора подается на вход конвейера, как только освобождается первая ступень (рис. 7.4, в). Ясно,  что  такой  вариант  вполне  годится  для  обработки  векторов.

Рис. 7.3. Варианты  векторных  вычислений: а – с  конвейерным  АЛУ;

б – с  несколькими  АЛУ 

Одновременные операции над элементами векторов можно проводить и       с  помощью  нескольких  параллельно  используемых   АЛУ,   каждое  из которых

отвечает за одну пару элементов (рис. 7.3, б). Такого рода обработка, когда каждое  из  АЛУ  является  конвейерным,  показана  на  рис. 7.5, а.

Р ис. 7.4. Обработка  векторов: а – структура  арифметического  конвейера  для  чисел  с  плавающей  запятой; б – обозначение  конвейера;

 в – обработка  векторов  в  конвейерном  АЛУ.

 

Если параллельно используются конвейерные АЛУ, то возможен еще один уровень конвейеризации, что иллюстрирует рис. 7.5, б. Вычислительные системы, где реализована эта идея, называются векторно-конвейерными. Коммерческие векторно-конвейерные ВС, в состав которых для обеспечения универсальности включен  также  скалярный  процессор,  известны  как  суперЭВМ.

 

 

 

Рис. 7.5. Обработка  векторов: а – параллельная  обработка  векторов  несколькими конвейерными  АЛУ; б – конвейерная  обработка  векторов  четырьмя  АЛУ

8(2)_C конспекта. Векторный процессор. Структуры алу.

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

Векторные АЛУ бывают 2х типов: 1)конвейерное АЛУ; 2) массив АЛУ.

В варианте с конвейерным АЛУ (рис. 13.4, а) обработка элементов векторов производится конвейерным АЛУ для чисел с плавающей запятой (ПЗ), а в варианте с несколькими АЛУ (рис. 13.4б) элементы обрабатываются попарно несколькими АЛУ. Операции производятся с числами в форме с ПЗ, они достаточно сложны, что приводит к большим аппаратным затратам. Чаще используется первый вариант, так как в нем аппаратные затраты меньше. Сложение двух чисел может быть сведено к трем этапам: установка порядков, сложение мантисс и нормализация результата. (Так он давал на лекции, в книге есть еще одни этап-видно на рисунке, думаю, лучше написать так, как в лекции было).

Структура векторной АЛУ имеет такой вид:

Функции элементов.

Скалярный процессор:

-обеспечивает выборку команд из памяти;

-декодирует команду (скалярная-выполняет, векторная-передает дальше)

Контроллер:

-определяет тип вект. операции;

-выделяет информацию о типе адреса, который передает на генератор адресов;

-пересылает управляющую информацию для конв. АЛУ;

Генератор:

-генерирует адреса векторов, которые поступают в память для выборки их в локальную память;

Локальная память (может отсутствовать) – это набор специальных векторных регистров; ускоряет работу с памятью.

Структура векторного процессора из учебника:

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

Из Википедии :

Абсолютное большинство процессоров являются скалярными или близкими к ним. Векторные процессоры были распространены в сфере научных вычислений, где они являлись основой большинства суперкомпьютеров начиная с 1980-х до 1990-х. Но резкое увеличение производительности и активная разработка новых процессоров привели к вытеснению векторных процессоров из сферы повседневных процессоров.

В большинстве современных микропроцессоров имеются векторные расширения (см. SSE). Кроме того, современные видеокарты и физические ускорители можно рассматривать как векторные сопроцессоры.

SSE (англ. Streaming SIMD Extensions, потоковое SIMD-расширение процессора) — это SIMD (англ. Single Instruction, Multiple Data, Одна инструкция — множество данных) набор инструкций.

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